import { type FetchWithValidationOptions } from "./client.js"; import type { UseBookingOptions } from "./hooks/use-booking.js"; import type { UseBookingActivityOptions } from "./hooks/use-booking-activity.js"; import type { UseBookingTravelerDocumentsOptions } from "./hooks/use-booking-documents.js"; import type { UseBookingGroupOptions } from "./hooks/use-booking-group.js"; import type { UseBookingGroupForBookingOptions } from "./hooks/use-booking-group-for-booking.js"; import type { UseBookingGroupsOptions } from "./hooks/use-booking-groups.js"; import type { UseBookingItemTravelersOptions } from "./hooks/use-booking-item-travelers.js"; import type { UseBookingItemsOptions } from "./hooks/use-booking-items.js"; import type { UseBookingNotesOptions } from "./hooks/use-booking-notes.js"; import type { UseBookingsOptions } from "./hooks/use-bookings.js"; import type { UseSupplierStatusesOptions } from "./hooks/use-supplier-statuses.js"; import type { UseTravelersOptions } from "./hooks/use-travelers.js"; import { type PricingPreviewFilters, type TaxPreviewFilters } from "./query-keys.js"; export declare function getBookingsQueryOptions(client: FetchWithValidationOptions, options?: UseBookingsOptions): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; startsAt?: string | null | undefined; endsAt?: string | null | undefined; items?: { id: string; title: string; itemType: string; productId: string | null; productName?: string | null | undefined; startsAt?: string | null | undefined; endsAt?: string | null | undefined; }[] | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; }[]; total: number; limit: number; offset: number; }, readonly ["voyant", "bookings", "bookings", "list", import("./query-keys.js").BookingsListFilters], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "list", import("./query-keys.js").BookingsListFilters] & { [dataTagSymbol]: { data: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; startsAt?: string | null | undefined; endsAt?: string | null | undefined; items?: { id: string; title: string; itemType: string; productId: string | null; productName?: string | null | undefined; startsAt?: string | null | undefined; endsAt?: string | null | undefined; }[] | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; }[]; total: number; limit: number; offset: number; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingQueryOptions(client: FetchWithValidationOptions, id: string | null | undefined, options?: UseBookingOptions): import("@tanstack/react-query").OmitKeyof; createdAt: string; updatedAt: string; } | null; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; })[]; documents: { id: string; bookingId: string; travelerId: string | null; type: "other" | "visa" | "insurance" | "health" | "passport_copy"; fileName: string; fileUrl: string; expiresAt: string | null; notes: string | null; createdAt: string; }[]; startsAt?: string | null | undefined; endsAt?: string | null | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; }; }, Error, { data: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; items: { id: string; bookingId: string; title: string; description: string | null; itemType: "other" | "service" | "accommodation" | "unit" | "extra" | "fee" | "tax" | "discount" | "adjustment" | "transport"; status: "draft" | "expired" | "cancelled" | "fulfilled" | "on_hold" | "confirmed"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; costCurrency: string | null; unitCostAmountCents: number | null; totalCostAmountCents: number | null; notes: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; createdAt: string; updatedAt: string; productNameSnapshot?: string | null | undefined; optionNameSnapshot?: string | null | undefined; unitNameSnapshot?: string | null | undefined; departureLabelSnapshot?: string | null | undefined; }[]; travelers: ({ id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; } | { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelDetails: { travelerId: string; nationality: string | null; documentType: "other" | "passport" | "id_card" | "driver_license" | "visa" | null; documentNumber: string | null; documentExpiry: string | null; documentIssuingCountry: string | null; documentIssuingAuthority: string | null; documentPersonDocumentId: string | null; dateOfBirth: string | null; dietaryRequirements: string | null; accessibilityNeeds: string | null; isLeadTraveler: boolean; sharingGroupId: string | null; roomTypeId: string | null; bedPreference: "double" | "single" | "twin" | "no-preference" | null; allocations: Record; createdAt: string; updatedAt: string; } | null; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; })[]; documents: { id: string; bookingId: string; travelerId: string | null; type: "other" | "visa" | "insurance" | "health" | "passport_copy"; fileName: string; fileUrl: string; expiresAt: string | null; notes: string | null; createdAt: string; }[]; startsAt?: string | null | undefined; endsAt?: string | null | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; }; }, readonly ["voyant", "bookings", "bookings", "detail", string]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; items: { id: string; bookingId: string; title: string; description: string | null; itemType: "other" | "service" | "accommodation" | "unit" | "extra" | "fee" | "tax" | "discount" | "adjustment" | "transport"; status: "draft" | "expired" | "cancelled" | "fulfilled" | "on_hold" | "confirmed"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; costCurrency: string | null; unitCostAmountCents: number | null; totalCostAmountCents: number | null; notes: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; createdAt: string; updatedAt: string; productNameSnapshot?: string | null | undefined; optionNameSnapshot?: string | null | undefined; unitNameSnapshot?: string | null | undefined; departureLabelSnapshot?: string | null | undefined; }[]; travelers: ({ id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; } | { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelDetails: { travelerId: string; nationality: string | null; documentType: "other" | "passport" | "id_card" | "driver_license" | "visa" | null; documentNumber: string | null; documentExpiry: string | null; documentIssuingCountry: string | null; documentIssuingAuthority: string | null; documentPersonDocumentId: string | null; dateOfBirth: string | null; dietaryRequirements: string | null; accessibilityNeeds: string | null; isLeadTraveler: boolean; sharingGroupId: string | null; roomTypeId: string | null; bedPreference: "double" | "single" | "twin" | "no-preference" | null; allocations: Record; createdAt: string; updatedAt: string; } | null; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; })[]; documents: { id: string; bookingId: string; travelerId: string | null; type: "other" | "visa" | "insurance" | "health" | "passport_copy"; fileName: string; fileUrl: string; expiresAt: string | null; notes: string | null; createdAt: string; }[]; startsAt?: string | null | undefined; endsAt?: string | null | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; }; }, readonly ["voyant", "bookings", "bookings", "detail", string], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string] & { [dataTagSymbol]: { data: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; items: { id: string; bookingId: string; title: string; description: string | null; itemType: "other" | "service" | "accommodation" | "unit" | "extra" | "fee" | "tax" | "discount" | "adjustment" | "transport"; status: "draft" | "expired" | "cancelled" | "fulfilled" | "on_hold" | "confirmed"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; costCurrency: string | null; unitCostAmountCents: number | null; totalCostAmountCents: number | null; notes: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; createdAt: string; updatedAt: string; productNameSnapshot?: string | null | undefined; optionNameSnapshot?: string | null | undefined; unitNameSnapshot?: string | null | undefined; departureLabelSnapshot?: string | null | undefined; }[]; travelers: ({ id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; } | { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelDetails: { travelerId: string; nationality: string | null; documentType: "other" | "passport" | "id_card" | "driver_license" | "visa" | null; documentNumber: string | null; documentExpiry: string | null; documentIssuingCountry: string | null; documentIssuingAuthority: string | null; documentPersonDocumentId: string | null; dateOfBirth: string | null; dietaryRequirements: string | null; accessibilityNeeds: string | null; isLeadTraveler: boolean; sharingGroupId: string | null; roomTypeId: string | null; bedPreference: "double" | "single" | "twin" | "no-preference" | null; allocations: Record; createdAt: string; updatedAt: string; } | null; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; })[]; documents: { id: string; bookingId: string; travelerId: string | null; type: "other" | "visa" | "insurance" | "health" | "passport_copy"; fileName: string; fileUrl: string; expiresAt: string | null; notes: string | null; createdAt: string; }[]; startsAt?: string | null | undefined; endsAt?: string | null | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; }; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingItemsQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, options?: UseBookingItemsOptions): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingId: string; title: string; description: string | null; itemType: "other" | "service" | "accommodation" | "unit" | "extra" | "fee" | "tax" | "discount" | "adjustment" | "transport"; status: "draft" | "expired" | "cancelled" | "fulfilled" | "on_hold" | "confirmed"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; costCurrency: string | null; unitCostAmountCents: number | null; totalCostAmountCents: number | null; notes: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; createdAt: string; updatedAt: string; productNameSnapshot?: string | null | undefined; optionNameSnapshot?: string | null | undefined; unitNameSnapshot?: string | null | undefined; departureLabelSnapshot?: string | null | undefined; }[]; }, readonly ["voyant", "bookings", "bookings", "detail", string, "items"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string, "items"] & { [dataTagSymbol]: { data: { id: string; bookingId: string; title: string; description: string | null; itemType: "other" | "service" | "accommodation" | "unit" | "extra" | "fee" | "tax" | "discount" | "adjustment" | "transport"; status: "draft" | "expired" | "cancelled" | "fulfilled" | "on_hold" | "confirmed"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; costCurrency: string | null; unitCostAmountCents: number | null; totalCostAmountCents: number | null; notes: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; createdAt: string; updatedAt: string; productNameSnapshot?: string | null | undefined; optionNameSnapshot?: string | null | undefined; unitNameSnapshot?: string | null | undefined; departureLabelSnapshot?: string | null | undefined; }[]; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingItemTravelersQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, itemId: string | null | undefined, options?: UseBookingItemTravelersOptions): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingItemId: string; travelerId: string; role: "other" | "traveler" | "occupant" | "primary_contact" | "service_assignee" | "beneficiary"; isPrimary: boolean; createdAt: string; }[]; }, readonly ["voyant", "bookings", "bookings", "detail", string, "items", string, "travelers"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string, "items", string, "travelers"] & { [dataTagSymbol]: { data: { id: string; bookingItemId: string; travelerId: string; role: "other" | "traveler" | "occupant" | "primary_contact" | "service_assignee" | "beneficiary"; isPrimary: boolean; createdAt: string; }[]; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingTravelerDocumentsQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, options?: UseBookingTravelerDocumentsOptions): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingId: string; travelerId: string | null; type: "other" | "visa" | "insurance" | "health" | "passport_copy"; fileName: string; fileUrl: string; expiresAt: string | null; notes: string | null; createdAt: string; }[]; }, readonly ["voyant", "bookings", "bookings", "detail", string, "documents"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string, "documents"] & { [dataTagSymbol]: { data: { id: string; bookingId: string; travelerId: string | null; type: "other" | "visa" | "insurance" | "health" | "passport_copy"; fileName: string; fileUrl: string; expiresAt: string | null; notes: string | null; createdAt: string; }[]; }; [dataTagErrorSymbol]: Error; }; }; export declare function getTravelersQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, options?: UseTravelersOptions): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }[]; }, readonly ["voyant", "bookings", "bookings", "detail", string, "travelers"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string, "travelers"] & { [dataTagSymbol]: { data: { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }[]; }; [dataTagErrorSymbol]: Error; }; }; export declare function getSharingGroupsForSlotQueryOptions(client: FetchWithValidationOptions, slotId: string | null | undefined): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; label: string; occupancy: number; roomTypeId: string | null; bookingIds: string[]; }[]; }, readonly ["voyant", "bookings", "sharing-groups", "slot", string], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "sharing-groups", "slot", string] & { [dataTagSymbol]: { data: { id: string; label: string; occupancy: number; roomTypeId: string | null; bookingIds: string[]; }[]; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingsBySharingGroupQueryOptions(client: FetchWithValidationOptions, slotId: string | null | undefined, groupId: string | null | undefined): import("@tanstack/react-query").OmitKeyof; travelerCategory?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }[]; }, Error, { data: { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; bookingNumber: string; personId: string | null; isLeadTraveler: boolean; sharingGroupId: string; roomTypeId: string | null; bedPreference: string | null; allocations: Record; travelerCategory?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }[]; }, readonly ["voyant", "bookings", "sharing-groups", "slot", string, string, "travelers"]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; bookingNumber: string; personId: string | null; isLeadTraveler: boolean; sharingGroupId: string; roomTypeId: string | null; bedPreference: string | null; allocations: Record; travelerCategory?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }[]; }, readonly ["voyant", "bookings", "sharing-groups", "slot", string, string, "travelers"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "sharing-groups", "slot", string, string, "travelers"] & { [dataTagSymbol]: { data: { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; bookingNumber: string; personId: string | null; isLeadTraveler: boolean; sharingGroupId: string; roomTypeId: string | null; bedPreference: string | null; allocations: Record; travelerCategory?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }[]; }; [dataTagErrorSymbol]: Error; }; }; /** * Fetch a single traveler with PII unmasked. Backend authorizes via * the same policy as `/travel-details` (staff or `bookings-pii:read`) * and audit-logs the access. Used by the "click to reveal" eye button * in the operator's traveler list — fetched lazily so unauthenticated * pageloads don't trigger reveal logs. */ export declare function getTravelerRevealQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, travelerId: string | null | undefined): import("@tanstack/react-query").OmitKeyof; createdAt: string; updatedAt: string; } | null; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }; }, Error, { data: { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelDetails: { travelerId: string; nationality: string | null; documentType: "other" | "passport" | "id_card" | "driver_license" | "visa" | null; documentNumber: string | null; documentExpiry: string | null; documentIssuingCountry: string | null; documentIssuingAuthority: string | null; documentPersonDocumentId: string | null; dateOfBirth: string | null; dietaryRequirements: string | null; accessibilityNeeds: string | null; isLeadTraveler: boolean; sharingGroupId: string | null; roomTypeId: string | null; bedPreference: "double" | "single" | "twin" | "no-preference" | null; allocations: Record; createdAt: string; updatedAt: string; } | null; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }; }, string[]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelDetails: { travelerId: string; nationality: string | null; documentType: "other" | "passport" | "id_card" | "driver_license" | "visa" | null; documentNumber: string | null; documentExpiry: string | null; documentIssuingCountry: string | null; documentIssuingAuthority: string | null; documentPersonDocumentId: string | null; dateOfBirth: string | null; dietaryRequirements: string | null; accessibilityNeeds: string | null; isLeadTraveler: boolean; sharingGroupId: string | null; roomTypeId: string | null; bedPreference: "double" | "single" | "twin" | "no-preference" | null; allocations: Record; createdAt: string; updatedAt: string; } | null; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }; }, string[], never> | undefined; } & { queryKey: string[] & { [dataTagSymbol]: { data: { id: string; bookingId: string; participantType: string; firstName: string; lastName: string; email: string | null; phone: string | null; specialRequests: string | null; isPrimary: boolean; createdAt: string; travelDetails: { travelerId: string; nationality: string | null; documentType: "other" | "passport" | "id_card" | "driver_license" | "visa" | null; documentNumber: string | null; documentExpiry: string | null; documentIssuingCountry: string | null; documentIssuingAuthority: string | null; documentPersonDocumentId: string | null; dateOfBirth: string | null; dietaryRequirements: string | null; accessibilityNeeds: string | null; isLeadTraveler: boolean; sharingGroupId: string | null; roomTypeId: string | null; bedPreference: "double" | "single" | "twin" | "no-preference" | null; allocations: Record; createdAt: string; updatedAt: string; } | null; travelerCategory?: string | null | undefined; personId?: string | null | undefined; preferredLanguage?: string | null | undefined; notes?: string | null | undefined; updatedAt?: string | undefined; }; }; [dataTagErrorSymbol]: Error; }; }; export declare function getSupplierStatusesQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, options?: UseSupplierStatusesOptions): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingId: string; supplierServiceId: string | null; serviceName: string; status: "cancelled" | "pending" | "confirmed" | "rejected"; supplierReference: string | null; costCurrency: string; costAmountCents: number; notes: string | null; confirmedAt: string | null; createdAt: string; updatedAt: string; }[]; }, readonly ["voyant", "bookings", "bookings", "detail", string, "supplier-statuses"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string, "supplier-statuses"] & { [dataTagSymbol]: { data: { id: string; bookingId: string; supplierServiceId: string | null; serviceName: string; status: "cancelled" | "pending" | "confirmed" | "rejected"; supplierReference: string | null; costCurrency: string; costAmountCents: number; notes: string | null; confirmedAt: string | null; createdAt: string; updatedAt: string; }[]; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingActivityQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, options?: UseBookingActivityOptions): import("@tanstack/react-query").OmitKeyof | null; createdAt: string; actorName?: string | null | undefined; actorEmail?: string | null | undefined; }[]; }, Error, { data: { id: string; bookingId: string; actorId: string | null; activityType: string; description: string; metadata: Record | null; createdAt: string; actorName?: string | null | undefined; actorEmail?: string | null | undefined; }[]; }, readonly ["voyant", "bookings", "bookings", "detail", string, "activity"]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingId: string; actorId: string | null; activityType: string; description: string; metadata: Record | null; createdAt: string; actorName?: string | null | undefined; actorEmail?: string | null | undefined; }[]; }, readonly ["voyant", "bookings", "bookings", "detail", string, "activity"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string, "activity"] & { [dataTagSymbol]: { data: { id: string; bookingId: string; actorId: string | null; activityType: string; description: string; metadata: Record | null; createdAt: string; actorName?: string | null | undefined; actorEmail?: string | null | undefined; }[]; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingNotesQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, options?: UseBookingNotesOptions): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; bookingId: string; authorId: string; content: string; createdAt: string; authorName?: string | null | undefined; authorEmail?: string | null | undefined; }[]; }, readonly ["voyant", "bookings", "bookings", "detail", string, "notes"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string, "notes"] & { [dataTagSymbol]: { data: { id: string; bookingId: string; authorId: string; content: string; createdAt: string; authorName?: string | null | undefined; authorEmail?: string | null | undefined; }[]; }; [dataTagErrorSymbol]: Error; }; }; export declare function getPublicBookingSessionQueryOptions(client: FetchWithValidationOptions, sessionId: string | null | undefined): import("@tanstack/react-query").OmitKeyof; version: number; createdAt: string; updatedAt: string; } | null; checkoutCapability?: { token: string; expiresAt: string; actions: ("session:read" | "session:update" | "session:reprice" | "session:finalize" | "payment:read" | "payment:start")[]; } | undefined; }; }, Error, { data: { sessionId: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; externalBookingRef: string | null; communicationLanguage: string | null; sellCurrency: string; sellAmountCents: number | null; startDate: string | null; endDate: string | null; pax: number | null; holdExpiresAt: string | null; confirmedAt: string | null; expiredAt: string | null; cancelledAt: string | null; completedAt: string | null; travelers: { id: string; participantType: "other" | "traveler" | "occupant"; travelerCategory: "other" | "adult" | "child" | "infant" | "senior" | null; firstName: string; lastName: string; email: string | null; phone: string | null; preferredLanguage: string | null; specialRequests: string | null; isPrimary: boolean; notes: string | null; }[]; items: { id: string; title: string; description: string | null; itemType: "other" | "service" | "accommodation" | "unit" | "extra" | "fee" | "tax" | "discount" | "adjustment" | "transport"; status: "draft" | "expired" | "cancelled" | "fulfilled" | "on_hold" | "confirmed"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; costCurrency: string | null; unitCostAmountCents: number | null; totalCostAmountCents: number | null; notes: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; travelerLinks: { id: string; travelerId: string; role: "other" | "traveler" | "occupant" | "beneficiary"; isPrimary: boolean; }[]; }[]; allocations: { id: string; bookingItemId: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; quantity: number; allocationType: "resource" | "unit" | "pickup"; status: "expired" | "cancelled" | "fulfilled" | "confirmed" | "released" | "held"; holdExpiresAt: string | null; confirmedAt: string | null; releasedAt: string | null; }[]; checklist: { hasTravelers: boolean; hasPrimaryTraveler: boolean; hasItems: boolean; hasAllocations: boolean; readyForConfirmation: boolean; }; state: { sessionId: string; stateKey: "wizard"; currentStep: string | null; completedSteps: string[]; payload: Record; version: number; createdAt: string; updatedAt: string; } | null; checkoutCapability?: { token: string; expiresAt: string; actions: ("session:read" | "session:update" | "session:reprice" | "session:finalize" | "payment:read" | "payment:start")[]; } | undefined; }; }, readonly ["voyant", "bookings", "public-sessions", "detail", string]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { sessionId: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; externalBookingRef: string | null; communicationLanguage: string | null; sellCurrency: string; sellAmountCents: number | null; startDate: string | null; endDate: string | null; pax: number | null; holdExpiresAt: string | null; confirmedAt: string | null; expiredAt: string | null; cancelledAt: string | null; completedAt: string | null; travelers: { id: string; participantType: "other" | "traveler" | "occupant"; travelerCategory: "other" | "adult" | "child" | "infant" | "senior" | null; firstName: string; lastName: string; email: string | null; phone: string | null; preferredLanguage: string | null; specialRequests: string | null; isPrimary: boolean; notes: string | null; }[]; items: { id: string; title: string; description: string | null; itemType: "other" | "service" | "accommodation" | "unit" | "extra" | "fee" | "tax" | "discount" | "adjustment" | "transport"; status: "draft" | "expired" | "cancelled" | "fulfilled" | "on_hold" | "confirmed"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; costCurrency: string | null; unitCostAmountCents: number | null; totalCostAmountCents: number | null; notes: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; travelerLinks: { id: string; travelerId: string; role: "other" | "traveler" | "occupant" | "beneficiary"; isPrimary: boolean; }[]; }[]; allocations: { id: string; bookingItemId: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; quantity: number; allocationType: "resource" | "unit" | "pickup"; status: "expired" | "cancelled" | "fulfilled" | "confirmed" | "released" | "held"; holdExpiresAt: string | null; confirmedAt: string | null; releasedAt: string | null; }[]; checklist: { hasTravelers: boolean; hasPrimaryTraveler: boolean; hasItems: boolean; hasAllocations: boolean; readyForConfirmation: boolean; }; state: { sessionId: string; stateKey: "wizard"; currentStep: string | null; completedSteps: string[]; payload: Record; version: number; createdAt: string; updatedAt: string; } | null; checkoutCapability?: { token: string; expiresAt: string; actions: ("session:read" | "session:update" | "session:reprice" | "session:finalize" | "payment:read" | "payment:start")[]; } | undefined; }; }, readonly ["voyant", "bookings", "public-sessions", "detail", string], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "public-sessions", "detail", string] & { [dataTagSymbol]: { data: { sessionId: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; externalBookingRef: string | null; communicationLanguage: string | null; sellCurrency: string; sellAmountCents: number | null; startDate: string | null; endDate: string | null; pax: number | null; holdExpiresAt: string | null; confirmedAt: string | null; expiredAt: string | null; cancelledAt: string | null; completedAt: string | null; travelers: { id: string; participantType: "other" | "traveler" | "occupant"; travelerCategory: "other" | "adult" | "child" | "infant" | "senior" | null; firstName: string; lastName: string; email: string | null; phone: string | null; preferredLanguage: string | null; specialRequests: string | null; isPrimary: boolean; notes: string | null; }[]; items: { id: string; title: string; description: string | null; itemType: "other" | "service" | "accommodation" | "unit" | "extra" | "fee" | "tax" | "discount" | "adjustment" | "transport"; status: "draft" | "expired" | "cancelled" | "fulfilled" | "on_hold" | "confirmed"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; costCurrency: string | null; unitCostAmountCents: number | null; totalCostAmountCents: number | null; notes: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; travelerLinks: { id: string; travelerId: string; role: "other" | "traveler" | "occupant" | "beneficiary"; isPrimary: boolean; }[]; }[]; allocations: { id: string; bookingItemId: string | null; productId: string | null; optionId: string | null; optionUnitId: string | null; pricingCategoryId: string | null; availabilitySlotId: string | null; quantity: number; allocationType: "resource" | "unit" | "pickup"; status: "expired" | "cancelled" | "fulfilled" | "confirmed" | "released" | "held"; holdExpiresAt: string | null; confirmedAt: string | null; releasedAt: string | null; }[]; checklist: { hasTravelers: boolean; hasPrimaryTraveler: boolean; hasItems: boolean; hasAllocations: boolean; readyForConfirmation: boolean; }; state: { sessionId: string; stateKey: "wizard"; currentStep: string | null; completedSteps: string[]; payload: Record; version: number; createdAt: string; updatedAt: string; } | null; checkoutCapability?: { token: string; expiresAt: string; actions: ("session:read" | "session:update" | "session:reprice" | "session:finalize" | "payment:read" | "payment:start")[]; } | undefined; }; }; [dataTagErrorSymbol]: Error; }; }; export declare function getPublicBookingSessionStateQueryOptions(client: FetchWithValidationOptions, sessionId: string | null | undefined): import("@tanstack/react-query").OmitKeyof; version: number; createdAt: string; updatedAt: string; }; }, Error, { data: { sessionId: string; stateKey: "wizard"; currentStep: string | null; completedSteps: string[]; payload: Record; version: number; createdAt: string; updatedAt: string; }; }, readonly ["voyant", "bookings", "public-sessions", "detail", string, "state"]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { sessionId: string; stateKey: "wizard"; currentStep: string | null; completedSteps: string[]; payload: Record; version: number; createdAt: string; updatedAt: string; }; }, readonly ["voyant", "bookings", "public-sessions", "detail", string, "state"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "public-sessions", "detail", string, "state"] & { [dataTagSymbol]: { data: { sessionId: string; stateKey: "wizard"; currentStep: string | null; completedSteps: string[]; payload: Record; version: number; createdAt: string; updatedAt: string; }; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingGroupsQueryOptions(client: FetchWithValidationOptions, options?: UseBookingGroupsOptions): import("@tanstack/react-query").OmitKeyof | null; createdAt: string; updatedAt: string; }[]; total: number; limit: number; offset: number; }, Error, { data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; }[]; total: number; limit: number; offset: number; }, readonly ["voyant", "bookings", "groups", "list", import("./query-keys.js").BookingGroupsListFilters]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; }[]; total: number; limit: number; offset: number; }, readonly ["voyant", "bookings", "groups", "list", import("./query-keys.js").BookingGroupsListFilters], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "groups", "list", import("./query-keys.js").BookingGroupsListFilters] & { [dataTagSymbol]: { data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; }[]; total: number; limit: number; offset: number; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingGroupQueryOptions(client: FetchWithValidationOptions, id: string | null | undefined, options?: UseBookingGroupOptions): import("@tanstack/react-query").OmitKeyof | null; createdAt: string; updatedAt: string; members: { id: string; groupId: string; bookingId: string; role: "primary" | "shared"; createdAt: string; booking: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; startsAt?: string | null | undefined; endsAt?: string | null | undefined; items?: { id: string; title: string; itemType: string; productId: string | null; productName?: string | null | undefined; startsAt?: string | null | undefined; endsAt?: string | null | undefined; }[] | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; } | null; }[]; }; }, Error, { data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; members: { id: string; groupId: string; bookingId: string; role: "primary" | "shared"; createdAt: string; booking: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; startsAt?: string | null | undefined; endsAt?: string | null | undefined; items?: { id: string; title: string; itemType: string; productId: string | null; productName?: string | null | undefined; startsAt?: string | null | undefined; endsAt?: string | null | undefined; }[] | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; } | null; }[]; }; }, readonly ["voyant", "bookings", "groups", "detail", string]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; members: { id: string; groupId: string; bookingId: string; role: "primary" | "shared"; createdAt: string; booking: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; startsAt?: string | null | undefined; endsAt?: string | null | undefined; items?: { id: string; title: string; itemType: string; productId: string | null; productName?: string | null | undefined; startsAt?: string | null | undefined; endsAt?: string | null | undefined; }[] | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; } | null; }[]; }; }, readonly ["voyant", "bookings", "groups", "detail", string], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "groups", "detail", string] & { [dataTagSymbol]: { data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; members: { id: string; groupId: string; bookingId: string; role: "primary" | "shared"; createdAt: string; booking: { id: string; bookingNumber: string; status: "draft" | "expired" | "cancelled" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "completed"; personId: string | null; organizationId: string | null; sellCurrency: string; sellAmountCents: number | null; costAmountCents: number | null; marginPercent: number | null; startDate: string | null; endDate: string | null; pax: number | null; internalNotes: string | null; createdAt: string; updatedAt: string; startsAt?: string | null | undefined; endsAt?: string | null | undefined; items?: { id: string; title: string; itemType: string; productId: string | null; productName?: string | null | undefined; startsAt?: string | null | undefined; endsAt?: string | null | undefined; }[] | undefined; communicationLanguage?: string | null | undefined; contactFirstName?: string | null | undefined; contactLastName?: string | null | undefined; contactPartyType?: "individual" | "company" | null | undefined; contactTaxId?: string | null | undefined; contactEmail?: string | null | undefined; contactPhone?: string | null | undefined; contactPreferredLanguage?: string | null | undefined; contactCountry?: string | null | undefined; contactRegion?: string | null | undefined; contactCity?: string | null | undefined; contactAddressLine1?: string | null | undefined; contactAddressLine2?: string | null | undefined; contactPostalCode?: string | null | undefined; customerPaymentPolicy?: { deposit: { kind: "none" | "percent" | "fixed_cents"; percent?: number | undefined; amountCents?: number | undefined; }; minDaysBeforeDepartureForDeposit: number; balanceDueDaysBeforeDeparture: number; balanceDueMinDaysFromNow: number; } | null | undefined; priceOverride?: { isManual: true; originalAmountCents: number | null; overriddenAmountCents: number; currency: string; reason: string; overriddenBy: string; overriddenAt: string; } | null | undefined; } | null; }[]; }; }; [dataTagErrorSymbol]: Error; }; }; export declare function getBookingGroupForBookingQueryOptions(client: FetchWithValidationOptions, bookingId: string | null | undefined, options?: UseBookingGroupForBookingOptions): import("@tanstack/react-query").OmitKeyof | null; createdAt: string; updatedAt: string; membership: { id: string; groupId: string; bookingId: string; role: "primary" | "shared"; createdAt: string; }; } | null; }, Error, { data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; membership: { id: string; groupId: string; bookingId: string; role: "primary" | "shared"; createdAt: string; }; } | null; }, readonly ["voyant", "bookings", "bookings", "detail", string, "group"]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; membership: { id: string; groupId: string; bookingId: string; role: "primary" | "shared"; createdAt: string; }; } | null; }, readonly ["voyant", "bookings", "bookings", "detail", string, "group"], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "bookings", "detail", string, "group"] & { [dataTagSymbol]: { data: { id: string; kind: "other" | "shared_room"; label: string; primaryBookingId: string | null; productId: string | null; optionUnitId: string | null; metadata: Record | null; createdAt: string; updatedAt: string; membership: { id: string; groupId: string; bookingId: string; role: "primary" | "shared"; createdAt: string; }; } | null; }; [dataTagErrorSymbol]: Error; }; }; /** * Pricing preview — resolves the storefront pricing snapshot for a product * without creating a booking session. Use it for operator create dialogs, * tour-sheet quotes, and reconciliation where the question is "what would the * customer see?" */ export declare function getPricingPreviewQueryOptions(client: FetchWithValidationOptions, filters: PricingPreviewFilters): import("@tanstack/react-query").OmitKeyof | null | undefined; }[]; unitPrices: { id: string; optionPriceRuleId: string; optionId: string | null; unitId: string; unitName: string | null; unitType: string | null; occupancyMax: number | null; pricingCategoryId: string | null; pricingMode: string; sellAmountCents: number | null; minQuantity: number | null; maxQuantity: number | null; tiers: { minQuantity: number; maxQuantity: number | null; sellAmountCents: number | null; }[]; }[]; }; }, Error, { data: { catalog: { id: string; currencyCode: string; }; options: { id: string; name: string; isDefault: boolean; }[]; rules: { id: string; optionId: string; pricingMode: string; baseSellAmountCents: number | null; isDefault: boolean; }[]; pricingCategories: { id: string; name: string; code: string | null; categoryType: string; minAge: number | null; maxAge: number | null; sortOrder: number; metadata?: Record | null | undefined; }[]; unitPrices: { id: string; optionPriceRuleId: string; optionId: string | null; unitId: string; unitName: string | null; unitType: string | null; occupancyMax: number | null; pricingCategoryId: string | null; pricingMode: string; sellAmountCents: number | null; minQuantity: number | null; maxQuantity: number | null; tiers: { minQuantity: number; maxQuantity: number | null; sellAmountCents: number | null; }[]; }[]; }; }, readonly ["voyant", "bookings", "pricing-preview", PricingPreviewFilters]>, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { catalog: { id: string; currencyCode: string; }; options: { id: string; name: string; isDefault: boolean; }[]; rules: { id: string; optionId: string; pricingMode: string; baseSellAmountCents: number | null; isDefault: boolean; }[]; pricingCategories: { id: string; name: string; code: string | null; categoryType: string; minAge: number | null; maxAge: number | null; sortOrder: number; metadata?: Record | null | undefined; }[]; unitPrices: { id: string; optionPriceRuleId: string; optionId: string | null; unitId: string; unitName: string | null; unitType: string | null; occupancyMax: number | null; pricingCategoryId: string | null; pricingMode: string; sellAmountCents: number | null; minQuantity: number | null; maxQuantity: number | null; tiers: { minQuantity: number; maxQuantity: number | null; sellAmountCents: number | null; }[]; }[]; }; }, readonly ["voyant", "bookings", "pricing-preview", PricingPreviewFilters], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "pricing-preview", PricingPreviewFilters] & { [dataTagSymbol]: { data: { catalog: { id: string; currencyCode: string; }; options: { id: string; name: string; isDefault: boolean; }[]; rules: { id: string; optionId: string; pricingMode: string; baseSellAmountCents: number | null; isDefault: boolean; }[]; pricingCategories: { id: string; name: string; code: string | null; categoryType: string; minAge: number | null; maxAge: number | null; sortOrder: number; metadata?: Record | null | undefined; }[]; unitPrices: { id: string; optionPriceRuleId: string; optionId: string | null; unitId: string; unitName: string | null; unitType: string | null; occupancyMax: number | null; pricingCategoryId: string | null; pricingMode: string; sellAmountCents: number | null; minQuantity: number | null; maxQuantity: number | null; tiers: { minQuantity: number; maxQuantity: number | null; sellAmountCents: number | null; }[]; }[]; }; }; [dataTagErrorSymbol]: Error; }; }; /** * Tax preview — resolves the configured sell-side tax rate against an * in-progress booking's subtotal so booking-create screens can show a * real subtotal/tax/total breakdown. * * Backed by the mountable booking-tax `/v1/admin/bookings/tax-preview` * route, which mirrors the logic that runs at booking-finalize time. * Numbers shown to staff match what will land in * `booking_item_tax_lines`. */ export declare function getTaxPreviewQueryOptions(client: FetchWithValidationOptions, filters: TaxPreviewFilters): import("@tanstack/react-query").OmitKeyof, "queryFn"> & { queryFn?: import("@tanstack/react-query").QueryFunction<{ data: { subtotalCents: number; taxCents: number; totalCents: number; currency: string; taxRate: { code: string; label: string; rateBasisPoints: number; priceMode: "inclusive" | "exclusive"; } | null; }; }, readonly ["voyant", "bookings", "tax-preview", TaxPreviewFilters], never> | undefined; } & { queryKey: readonly ["voyant", "bookings", "tax-preview", TaxPreviewFilters] & { [dataTagSymbol]: { data: { subtotalCents: number; taxCents: number; totalCents: number; currency: string; taxRate: { code: string; label: string; rateBasisPoints: number; priceMode: "inclusive" | "exclusive"; } | null; }; }; [dataTagErrorSymbol]: Error; }; };