import { axiosClient } from "@/lib/axios";

export interface AdminInvoicePayment {
  id: string;
  amount: string;
  method: string;
  status: string;
  transactionRef: string | null;
  paidAt: string | null;
  createdAt: string;
}

export interface AdminInvoiceDetail {
  id: string;
  invoiceNumber: string;
  status: string;
  subtotal: string;
  gstAmount: string;
  totalAmount: string;
  dueDate: string | null;
  createdAt: string;
  client: { id: string; name: string; email: string; companyName: string | null };
  items: { id: string; quantity: number; price: string; service: { id: string; name: string; category: string } }[];
  payments: AdminInvoicePayment[];
}

export const adminPaymentService = {
  getInvoice: async (invoiceId: string): Promise<AdminInvoiceDetail> => {
    const res = await axiosClient.get(`/payments/admin/invoices/${invoiceId}`);
    return res.data.data;
  },
};
