import { apiClient } from '@/lib/api-client' import type { Contact } from '@/types/crm' export interface ContactFilters { page?: number pageSize?: number search?: string ownerId?: number } export interface ContactPayload { name: string email?: string | null phone?: string | null owner_id?: number | null } export type ContactUpdatePayload = Partial> const mapFilters = (filters?: ContactFilters) => ({ page: filters?.page, page_size: filters?.pageSize, search: filters?.search, owner_id: filters?.ownerId, }) export const listContacts = (filters?: ContactFilters) => apiClient.get('/contacts/', { params: mapFilters(filters) }) export const createContact = (payload: ContactPayload) => apiClient.post('/contacts/', payload) export const updateContact = (contactId: number, payload: ContactUpdatePayload) => apiClient.patch(`/contacts/${contactId}`, payload) export const deleteContact = (contactId: number) => apiClient.delete(`/contacts/${contactId}`)