import { request } from "./http"; export interface TvaRate { id: number; name: string; rate: number; created_at: string; updated_at: string; } export interface TvaRateListResponse { data: TvaRate[]; } export interface TvaRateResponse { data: TvaRate; } export interface CreateTvaRatePayload { name: string; rate: number; } export interface UpdateTvaRatePayload extends Partial { id: number; } export const TvaRateService = { async getAllTvaRates(): Promise { const response = await request({ url: "/api/tva-rates", method: "get", }); return response; }, async getTvaRate(id: number): Promise { const response = await request({ url: `/api/tva-rates/${id}`, method: "get", }); return response; }, async createTvaRate(payload: CreateTvaRatePayload): Promise { const response = await request({ url: "/api/tva-rates", method: "post", data: payload, }); return response; }, async updateTvaRate(payload: UpdateTvaRatePayload): Promise { const { id, ...updateData } = payload; const response = await request({ url: `/api/tva-rates/${id}`, method: "put", data: updateData, }); return response; }, async deleteTvaRate(id: number): Promise<{ success: boolean; message: string }> { const response = await request<{ success: boolean; message: string }>({ url: `/api/tva-rates/${id}`, method: "delete", }); return response; }, }; export default TvaRateService;