import { InvoicingCreditNotePayload } from '../../../entity/invoicing/creditNote/creditNotePayload'; import { InvoicingInvoice } from '../../../entity/invoicing/invoice/invoiceState'; import { ZeniAPIResponse } from '../../../responsePayload'; import { IssueCreditNoteFormLocalData, IssueCreditNoteLineItemDraft } from './issueCreditNoteState'; export interface IssueCreditNoteLineItemRequest { description: string; quantity: number; unit_amount: number; amount?: number; entity_type?: string; id?: string; } export interface IssueCreditNoteRequest { line_items: IssueCreditNoteLineItemRequest[]; reason_code?: string; type?: string; } export type IssueCreditNoteResponse = ZeniAPIResponse; export type CreateCreditNoteRequest = { customer_id: string; line_items: IssueCreditNoteLineItemRequest[]; reason_code?: string; reference_invoice_id?: string; type?: string; }; export type CreateCreditNoteResponse = ZeniAPIResponse; export declare const computeIssueCreditNoteTotal: (lineItems: IssueCreditNoteLineItemDraft[]) => number; export declare const localDataToIssueCreditNotePayload: (localData: IssueCreditNoteFormLocalData) => IssueCreditNoteRequest; export declare const initializeIssueCreditNoteDraftFromInvoice: (invoice: InvoicingInvoice) => IssueCreditNoteFormLocalData;