import api from './api'; // Types export interface AgentType { id: string; name: string; slug: string; description: string | null; } export interface AgentProfile { id: string; userId: string; firstName: string; lastName: string; slug: string; email: string | null; phone: string | null; bio: string | null; avatar: string | null; licenseNumber: string | null; experience: number | null; specializations: string[]; languages: string[]; serviceAreas: string[]; rating: number | null; reviewCount: number; isVerified: boolean; isFeatured: boolean; isActive: boolean; agentTypeId: string | null; agentType: AgentType | null; user?: { id: string; email: string; avatar: string | null; }; } interface ApiResponse { success: boolean; data: T; message?: string; } // Agents Service for Web class AgentsService { private basePath = '/agents'; async getMyProfile(): Promise { const response = await api.get>(`${this.basePath}/profile/me`); return response.data.data; } async getAgentById(id: string): Promise { const response = await api.get>(`${this.basePath}/${id}`); return response.data.data; } async updateProfile(data: Partial): Promise { const response = await api.put>(`${this.basePath}/profile`, data); return response.data.data; } } export const agentsService = new AgentsService();