import apiClient from './client' import type { NetworkDiagramResponse, NetworkDiagramListItem, NetworkDiagramCreate, NetworkDiagramUpdate, AIGenerateRequest, AIGenerateResponse, DiagramImportData, DiagramImportResponse, DiagramExportResponse, } from '@/types' export const networkDiagramsApi = { async list(params?: { client_name?: string; search?: string }): Promise { const response = await apiClient.get('/network-diagrams/', { params }) return response.data }, async get(id: string): Promise { const response = await apiClient.get(`/network-diagrams/${id}`) return response.data }, async create(data: NetworkDiagramCreate): Promise { const response = await apiClient.post('/network-diagrams/', data) return response.data }, async update(id: string, data: NetworkDiagramUpdate): Promise { const response = await apiClient.put(`/network-diagrams/${id}`, data) return response.data }, async archive(id: string): Promise { await apiClient.delete(`/network-diagrams/${id}`) }, async duplicate(id: string): Promise { const response = await apiClient.post(`/network-diagrams/${id}/duplicate`) return response.data }, async exportJson(id: string): Promise { const response = await apiClient.get(`/network-diagrams/${id}/export`) return response.data }, async importJson(data: DiagramImportData): Promise { const response = await apiClient.post('/network-diagrams/import', data) return response.data }, async aiGenerate(data: AIGenerateRequest): Promise { const response = await apiClient.post('/network-diagrams/ai-generate', data) return response.data }, async listClients(): Promise { const response = await apiClient.get('/network-diagrams/clients') return response.data }, }