export interface UpsertSailingInput { cruiseId: string; shipId: string; departureDate: string; returnDate: string; embarkPortFacilityId?: string | null; disembarkPortFacilityId?: string | null; direction?: "upstream" | "downstream" | "round_trip" | "one_way" | null; availabilityNote?: string | null; isCharter?: boolean; salesStatus?: "open" | "on_request" | "wait_list" | "sold_out" | "closed"; externalRefs?: Record; } export type UpdateSailingInput = Partial; export interface ReplaceSailingDaysInput { days: Array<{ dayNumber: number; title?: string | null; description?: string | null; portFacilityId?: string | null; arrivalTime?: string | null; departureTime?: string | null; isOvernight?: boolean | null; isSeaDay?: boolean | null; isExpeditionLanding?: boolean | null; isSkipped?: boolean; meals?: { breakfast?: boolean; lunch?: boolean; dinner?: boolean; } | null; }>; } export interface ReplaceSailingPricingInput { prices: Array<{ cabinCategoryId: string; occupancy: number; fareCode?: string | null; fareCodeName?: string | null; currency: string; pricePerPerson: string; secondGuestPricePerPerson?: string | null; singleSupplementPercent?: string | null; availability?: "available" | "limited" | "on_request" | "wait_list" | "sold_out"; availabilityCount?: number | null; priceCatalogId?: string | null; priceScheduleId?: string | null; bookingDeadline?: string | null; requiresRequest?: boolean; notes?: string | null; components?: Array<{ kind: "gratuity" | "onboard_credit" | "port_charge" | "tax" | "ncf" | "airfare" | "transfer" | "insurance"; label?: string | null; amount: string; currency: string; direction: "addition" | "inclusion" | "credit"; perPerson: boolean; }>; }>; } export declare function useSailingMutation(): { upsert: import("@tanstack/react-query").UseMutationResult<{ id: string; cruiseId: string; shipId: string; departureDate: string; returnDate: string; embarkPortFacilityId: string | null; disembarkPortFacilityId: string | null; direction: "upstream" | "downstream" | "round_trip" | "one_way" | null; availabilityNote: string | null; isCharter: boolean; salesStatus: "open" | "on_request" | "wait_list" | "sold_out" | "closed"; externalRefs: Record | null; lastSyncedAt: string | null; createdAt: string; updatedAt: string; }, Error, UpsertSailingInput, unknown>; update: import("@tanstack/react-query").UseMutationResult<{ id: string; cruiseId: string; shipId: string; departureDate: string; returnDate: string; embarkPortFacilityId: string | null; disembarkPortFacilityId: string | null; direction: "upstream" | "downstream" | "round_trip" | "one_way" | null; availabilityNote: string | null; isCharter: boolean; salesStatus: "open" | "on_request" | "wait_list" | "sold_out" | "closed"; externalRefs: Record | null; lastSyncedAt: string | null; createdAt: string; updatedAt: string; }, Error, { key: string; input: UpdateSailingInput; }, unknown>; replaceDays: import("@tanstack/react-query").UseMutationResult<{ dayNumber: number; title: string | null; description: string | null; portFacilityId: string | null; arrivalTime: string | null; departureTime: string | null; isOvernight: boolean; isSeaDay: boolean; isExpeditionLanding: boolean; isSkipped: boolean; hasOverride: boolean; meals?: { breakfast?: boolean | undefined; lunch?: boolean | undefined; dinner?: boolean | undefined; } | undefined; }[], Error, { key: string; input: ReplaceSailingDaysInput; }, unknown>; replacePricing: import("@tanstack/react-query").UseMutationResult<{ id: string; sailingId: string; cabinCategoryId: string; occupancy: number; fareCode: string | null; fareCodeName: string | null; currency: string; pricePerPerson: string; secondGuestPricePerPerson: string | null; singleSupplementPercent: string | null; availability: "on_request" | "wait_list" | "sold_out" | "available" | "limited"; availabilityCount: number | null; priceCatalogId: string | null; priceScheduleId: string | null; bookingDeadline: string | null; requiresRequest: boolean; notes: string | null; externalRefs: Record | null; lastSyncedAt: string | null; createdAt: string; updatedAt: string; }[], Error, { key: string; input: ReplaceSailingPricingInput; }, unknown>; };