import apiClient from './client'; // Fix: WEB-M5 — types from the shared contracts package. import type { LineItem, CreateLineItemRequest, UpdateLineItemEntry } from '@proposal-system/api-contracts'; export type { PricingMode, LineItemSource, LineItem, CreateLineItemRequest, UpdateLineItemEntry, } from '@proposal-system/api-contracts'; export const lineItemsApi = { getAll: async (proposalId: string): Promise => { const res = await apiClient.get(`/proposals/${proposalId}/line-items`); return res.data; }, create: async (proposalId: string, data: CreateLineItemRequest): Promise => { const res = await apiClient.post(`/proposals/${proposalId}/line-items`, data); return res.data; }, bulkUpdate: async (proposalId: string, lineItems: UpdateLineItemEntry[]): Promise => { const res = await apiClient.put(`/proposals/${proposalId}/line-items`, { lineItems }); return res.data; }, delete: async (proposalId: string, itemId: string): Promise => { await apiClient.delete(`/proposals/${proposalId}/line-items/${itemId}`); }, };