export interface ApaPaymentInput { amount: string; note?: string | null; } export interface ApaReconcileInput { spentAmount?: string; refundAmount?: string; settle?: boolean; note?: string | null; } /** * Fetch the booking_charter_details row for a charter booking. Used by * APA UI to show paid / spent / refund balances + settled timestamp. */ export declare function useCharterDetails(bookingId: string | null | undefined, options?: { enabled?: boolean; }): import("@tanstack/react-query").UseQueryResult | null; voyageId: string | null; suiteId: string | null; yachtId: string | null; voyageDisplayName: string | null; suiteDisplayName: string | null; yachtName: string | null; charterAreaSnapshot: string | null; guestCount: number; quotedCurrency: string; quotedSuitePrice: string | null; quotedPortFee: string | null; quotedCharterFee: string | null; apaPercent: string | null; apaAmount: string | null; quotedTotal: string; mybaTemplateIdSnapshot: string | null; mybaContractId: string | null; apaPaidAmount: string | null; apaSpentAmount: string | null; apaRefundAmount: string | null; apaSettledAt: string | null; connectorBookingRef: string | null; connectorStatus: string | null; notes: string | null; createdAt: string; updatedAt: string; }>, Error>; /** * Record an APA payment for a whole-yacht booking. Adds to apaPaidAmount. * Per-suite bookings reject with 400 (server-side guard). */ export declare function useRecordApaPayment(): import("@tanstack/react-query").UseMutationResult<{ bookingId: string; bookingMode: "per_suite" | "whole_yacht"; source: "local" | "external"; sourceProvider: string | null; sourceRef: Record | null; voyageId: string | null; suiteId: string | null; yachtId: string | null; voyageDisplayName: string | null; suiteDisplayName: string | null; yachtName: string | null; charterAreaSnapshot: string | null; guestCount: number; quotedCurrency: string; quotedSuitePrice: string | null; quotedPortFee: string | null; quotedCharterFee: string | null; apaPercent: string | null; apaAmount: string | null; quotedTotal: string; mybaTemplateIdSnapshot: string | null; mybaContractId: string | null; apaPaidAmount: string | null; apaSpentAmount: string | null; apaRefundAmount: string | null; apaSettledAt: string | null; connectorBookingRef: string | null; connectorStatus: string | null; notes: string | null; createdAt: string; updatedAt: string; }, Error, { bookingId: string; input: ApaPaymentInput; }, unknown>; /** * Post-charter APA reconciliation. Records what was actually spent on * board + any refund due back to the charterer; optionally settles. */ export declare function useReconcileApa(): import("@tanstack/react-query").UseMutationResult<{ bookingId: string; bookingMode: "per_suite" | "whole_yacht"; source: "local" | "external"; sourceProvider: string | null; sourceRef: Record | null; voyageId: string | null; suiteId: string | null; yachtId: string | null; voyageDisplayName: string | null; suiteDisplayName: string | null; yachtName: string | null; charterAreaSnapshot: string | null; guestCount: number; quotedCurrency: string; quotedSuitePrice: string | null; quotedPortFee: string | null; quotedCharterFee: string | null; apaPercent: string | null; apaAmount: string | null; quotedTotal: string; mybaTemplateIdSnapshot: string | null; mybaContractId: string | null; apaPaidAmount: string | null; apaSpentAmount: string | null; apaRefundAmount: string | null; apaSettledAt: string | null; connectorBookingRef: string | null; connectorStatus: string | null; notes: string | null; createdAt: string; updatedAt: string; }, Error, { bookingId: string; input: ApaReconcileInput; }, unknown>;