import { type BookingStatusToolAction } from "./mcp-booking-status-replay.js"; import { bookingsService } from "./service.js"; export * from "./tools.js"; export declare const voyantToolContextContribution: import("@voyant-travel/tools").ToolContextContribution; export declare function loadBookingStatusConsequencePreview(db: Parameters[0], bookingId: string, action: BookingStatusToolAction, suppressNotifications: boolean, settlementHookAvailable: boolean): Promise<{ action: BookingStatusToolAction; bookingId: string; bookingNumber: string; currentStatus: "draft" | "confirmed" | "cancelled" | "on_hold" | "awaiting_payment" | "in_progress" | "completed" | "expired"; resultingStatus: string; pax: number | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; holdExpiresAt: string | null; notificationsSuppressed: boolean; closesPaymentSchedules: boolean; financialSettlement: { actionRequired: boolean; consequence: string; settlementRecorderAvailable: boolean; requiredDecisionOptions: string[]; paidInvoices: { id: string; invoiceNumber: string; currency: string; paidCents: number; status: string; }[]; paidByCurrency: Record; schedulesToClose: { currency: string; amountCents: number; status: string; }[]; } | null; fulfillmentProjection: { items: { id: string; itemType: "other" | "extra" | "service" | "unit" | "fee" | "tax" | "discount" | "adjustment" | "accommodation" | "transport"; status: "draft" | "confirmed" | "cancelled" | "fulfilled" | "on_hold" | "expired"; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; quantity: number; serviceDate: string | null; startsAt: string | null; endsAt: string | null; metadata: Record | null; participants: { id: string; travelerId: string; role: "other" | "traveler" | "occupant" | "beneficiary"; isPrimary: boolean; }[]; }[]; ticketSettings: { id: string; productId: string; fulfillmentMode: string; defaultDeliveryFormat: string; }[]; existingFulfillments: { id: string; }[]; travelers: { id: string; participantType: "other" | "traveler" | "occupant"; isPrimary: boolean; createdAt: string | null; }[]; } | null; allocations: { id: string; status: "confirmed" | "cancelled" | "fulfilled" | "expired" | "held" | "released"; availabilitySlotId: string | null; quantity: number; resultingStatus: string; restoresCapacity: boolean; }[]; }>; export declare function lockBookingStatusConsequenceState(db: Parameters[0], bookingId: string, action: BookingStatusToolAction): Promise;