import type { Company, CompanyPortabilityExportResult, CompanyPortabilityImportRequest, CompanyPortabilityImportResult, CompanyPortabilityPreviewRequest, CompanyPortabilityPreviewResult, } from "@paperclipai/shared"; import { api } from "./client"; export type CompanyStats = Record; export const companiesApi = { list: () => api.get("/companies"), get: (companyId: string) => api.get(`/companies/${companyId}`), stats: () => api.get("/companies/stats"), create: (data: { name: string; description?: string | null; budgetMonthlyCents?: number; }) => api.post("/companies", data), update: ( companyId: string, data: Partial< Pick< Company, "name" | "description" | "status" | "budgetMonthlyCents" | "requireBoardApprovalForNewAgents" | "brandColor" | "logoAssetId" > >, ) => api.patch(`/companies/${companyId}`, data), archive: (companyId: string) => api.post(`/companies/${companyId}/archive`, {}), remove: (companyId: string) => api.delete<{ ok: true }>(`/companies/${companyId}`), exportBundle: ( companyId: string, data: { include?: { company?: boolean; agents?: boolean; projects?: boolean; issues?: boolean }; projects?: string[]; issues?: string[]; projectIssues?: string[]; }, ) => api.post(`/companies/${companyId}/export`, data), importPreview: (data: CompanyPortabilityPreviewRequest) => api.post("/companies/import/preview", data), importBundle: (data: CompanyPortabilityImportRequest) => api.post("/companies/import", data), };