import type { CreditNoteRecord, InvoiceAttachmentRecord, InvoiceRecord, LineItemRecord, PaymentRecord } from "../../index.js"; export interface InvoiceDetailCardProps { invoice: InvoiceRecord; className?: string; } export declare function InvoiceSummaryCard({ invoice, className }: InvoiceDetailCardProps): import("react").JSX.Element; export interface InvoiceLinksCardProps extends InvoiceDetailCardProps { onBookingOpen?: (bookingId: string, invoice: InvoiceRecord) => void; onPersonOpen?: (personId: string, invoice: InvoiceRecord) => void; onOrganizationOpen?: (organizationId: string, invoice: InvoiceRecord) => void; } export declare function InvoiceLinksCard({ invoice, className, onBookingOpen, onPersonOpen, onOrganizationOpen, }: InvoiceLinksCardProps): import("react").JSX.Element; export interface InvoiceLineItemsCardProps extends InvoiceDetailCardProps { lineItems: LineItemRecord[]; pending?: boolean; deletePending?: boolean; onCreate?: (invoice: InvoiceRecord) => void; onEdit?: (lineItem: LineItemRecord, invoice: InvoiceRecord) => void; onDelete?: (lineItemId: string) => Promise; } export declare function InvoiceLineItemsCard({ invoice, lineItems, pending, deletePending, onCreate, onEdit, onDelete, className, }: InvoiceLineItemsCardProps): import("react").JSX.Element; export interface InvoicePaymentsCardProps extends InvoiceDetailCardProps { payments: PaymentRecord[]; pending?: boolean; onCreate?: (invoice: InvoiceRecord) => void; } export declare function InvoicePaymentsCard({ invoice, payments, pending, onCreate, className, }: InvoicePaymentsCardProps): import("react").JSX.Element; export interface InvoiceCreditNotesCardProps extends InvoiceDetailCardProps { creditNotes: CreditNoteRecord[]; pending?: boolean; onCreate?: (invoice: InvoiceRecord) => void; } export declare function InvoiceCreditNotesCard({ invoice, creditNotes, pending, onCreate, className, }: InvoiceCreditNotesCardProps): import("react").JSX.Element; export interface InvoiceAttachmentsCardProps extends InvoiceDetailCardProps { attachments: InvoiceAttachmentRecord[]; pending?: boolean; deletePending?: boolean; getDownloadHref?: (attachment: InvoiceAttachmentRecord) => string | undefined; onCreate: () => void; onEdit: (attachment: InvoiceAttachmentRecord) => void; onDelete: (attachmentId: string) => Promise; } export declare function InvoiceAttachmentsCard({ attachments, pending, deletePending, getDownloadHref, onCreate, onEdit, onDelete, className, }: InvoiceAttachmentsCardProps): import("react").JSX.Element;