import { z } from "zod"; export declare const bookingSessionActorKindV1: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; export type BookingSessionActorKindV1 = z.infer; export declare const bookingSessionTargetV1: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>], "kind">; export type BookingSessionTargetV1 = z.infer; /** * Public projection of a Session target. Composite Trip identifiers stay on * the server: a storefront needs to know only that the Session is managed as * one composite itinerary. */ export declare const bookingSessionPublicTargetV1: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; export type BookingSessionPublicTargetV1 = z.infer; /** Server-owned provenance. Public Session-create callers cannot supply this. */ export declare const bookingSessionOriginV1: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"accepted_proposal_version">; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">; export type BookingSessionOriginV1 = z.infer; /** * The commercial and presentation scope a Session is quoted in. * * Requirements labels are locale-derived and prices are market-derived, so a * Session that cannot say which locale and market it belongs to quotes every * shopper in the default market with English labels. Fixed at create: a * Session's Quotes, Holds and Commit must all mean the same money, so PATCH * carries no scope and a re-scope is a new Session. * * `audience` is deliberately NOT part of this contract. It is derived * server-side from the Session's `actorKind` (see * `bookingSessionAudienceForActorV1`), never taken from the request: audience * selects staff-visible content and staff/partner price tiers, so accepting it * on the wire would let any public caller ask for staff pricing by naming it. * That derivation is the load-bearing security property of this scope. */ export declare const bookingSessionScopeV1: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; export type BookingSessionScopeV1 = z.infer; /** What existing and unscoped Sessions were quoted at before scope existed. */ export declare const DEFAULT_BOOKING_SESSION_SCOPE: BookingSessionScopeV1; export declare const bookingSessionAudienceV1: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; }>; export type BookingSessionAudienceV1 = z.infer; /** * The one derivation of quoting audience from who owns the Session. Kept here * rather than at each call site so a new caller cannot invent a third answer. */ export declare function bookingSessionAudienceForActorV1(actorKind: BookingSessionActorKindV1): BookingSessionAudienceV1; export declare const bookingSessionStateV1: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; export type BookingSessionStateV1 = z.infer; export declare const bookingSessionCapabilityActionV1: z.ZodEnum<{ hold: "hold"; quote: "quote"; read: "read"; update: "update"; commit: "commit"; abandon: "abandon"; adopt: "adopt"; renew: "renew"; }>; export type BookingSessionCapabilityActionV1 = z.infer; export declare const bookingSessionRecordV1: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; export type BookingSessionRecordV1 = z.infer; export declare const bookingSessionViewV1: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; selection: z.ZodOptional>; redaction: z.ZodEnum<{ none: "none"; selection_omitted: "selection_omitted"; }>; }, z.core.$strip>; export type BookingSessionViewV1 = z.infer; export declare const createBookingSessionTargetV1: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>], "kind">; export type CreateBookingSessionTargetV1 = z.infer; export declare const createBookingSessionV1: z.ZodObject<{ idempotencyKey: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>], "kind">; selection: z.ZodOptional>; scope: z.ZodOptional; }, z.core.$strip>>; capabilityScopes: z.ZodOptional>>; }, z.core.$strip>; export type CreateBookingSessionV1 = z.input; export declare const createAcceptedProposalBookingSessionV1: z.ZodObject<{ idempotencyKey: z.ZodString; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; selection: z.ZodOptional>; scope: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>; export type CreateAcceptedProposalBookingSessionV1 = z.input; /** * Carries no `scope`: the Session's commercial scope is fixed at create so a * Quote, its Hold, and the Commit that consumes them cannot end up meaning * three different prices. Re-scoping is a new Session. */ export declare const updateBookingSessionV1: z.ZodObject<{ idempotencyKey: z.ZodString; expectedRevision: z.ZodNumber; selection: z.ZodRecord; }, z.core.$strip>; export type UpdateBookingSessionV1 = z.input; export declare const quoteBookingSessionV1: z.ZodObject<{ expectedRevision: z.ZodNumber; idempotencyKey: z.ZodString; }, z.core.$strip>; export type QuoteBookingSessionV1 = z.input; export declare const bookingSessionQuoteLifecycleStateV1: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; superseded: "superseded"; }>; export type BookingSessionQuoteLifecycleStateV1 = z.infer; export declare const bookingQuoteRecordV1: z.ZodObject<{ id: z.ZodString; sessionId: z.ZodString; sessionRevision: z.ZodNumber; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; superseded: "superseded"; }>; requirements: z.ZodObject<{ showsConfigure: z.ZodBoolean; showsBilling: z.ZodBoolean; showsTravelers: z.ZodBoolean; showsAccommodation: z.ZodBoolean; showsAddons: z.ZodBoolean; showsAncillaries: z.ZodDefault; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>; requirementsFingerprint: z.ZodString; pricing: z.ZodObject<{ currency: z.ZodString; lines: z.ZodArray; label: z.ZodString; quantity: z.ZodOptional; unitAmount: z.ZodNumber; totalAmount: z.ZodNumber; taxIncluded: z.ZodOptional; pricingBasis: z.ZodOptional>; componentId: z.ZodOptional; optionId: z.ZodOptional; optionUnitId: z.ZodOptional; authority: z.ZodOptional>; }, z.core.$strip>>; taxes: z.ZodArray; scope: z.ZodOptional>; componentId: z.ZodOptional; }, z.core.$strip>>; subtotal: z.ZodNumber; taxTotal: z.ZodNumber; total: z.ZodNumber; appliedOffers: z.ZodOptional; discountPercent: z.ZodNullable; discountAmountCents: z.ZodNullable; appliedCode: z.ZodNullable; stackable: z.ZodBoolean; }, z.core.$strip>>>; promotionCodeStatus: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"code_not_found">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"code_expired">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"code_not_yet_valid">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"code_not_applicable">; reason: z.ZodEnum<{ currency: "currency"; scope: "scope"; min_pax: "min_pax"; eligibility: "eligibility"; }>; }, z.core.$strip>], "kind">>; policyEvidence: z.ZodOptional; bookingTerms: z.ZodOptional; }, z.core.$strip>>; componentPolicies: z.ZodOptional; bookingTerms: z.ZodOptional; componentId: z.ZodString; }, z.core.$strip>>>; }, z.core.$strip>; paymentPlan: z.ZodOptional; currency: z.ZodString; totalCents: z.ZodNumber; dueNowCents: z.ZodNumber; payInFullCents: z.ZodNullable; entries: z.ZodArray; amountCents: z.ZodNumber; currency: z.ZodString; dueDate: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>; quotedAt: z.ZodString; expiresAt: z.ZodString; }, z.core.$strip>; export type BookingQuoteRecordV1 = z.infer; export declare const placeBookingHoldV1: z.ZodObject<{ expectedRevision: z.ZodNumber; quoteId: z.ZodString; quantity: z.ZodOptional; idempotencyKey: z.ZodString; }, z.core.$strip>; export type PlaceBookingHoldV1 = z.input; export declare const bookingHoldStateV1: z.ZodEnum<{ active: "active"; expired: "expired"; released: "released"; converted: "converted"; }>; export type BookingHoldStateV1 = z.infer; export declare const bookingHoldRecordV1: z.ZodObject<{ id: z.ZodString; sessionId: z.ZodString; quoteId: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; quantity: z.ZodNumber; state: z.ZodEnum<{ active: "active"; expired: "expired"; released: "released"; converted: "converted"; }>; expiresAt: z.ZodString; createdAt: z.ZodString; }, z.core.$strip>; export type BookingHoldRecordV1 = z.infer; export declare const commitBookingSessionV1: z.ZodObject<{ expectedRevision: z.ZodNumber; quoteId: z.ZodString; requirementsFingerprint: z.ZodString; holdId: z.ZodOptional; idempotencyKey: z.ZodString; checkoutIntent: z.ZodOptional>; payInFull: z.ZodOptional; payment: z.ZodOptional; cancelUrl: z.ZodOptional; acceptedCheckoutHandoffs: z.ZodOptional>>; }, z.core.$strip>>; }, z.core.$strip>; export type CommitBookingSessionV1 = z.input; export declare const abandonBookingSessionV1: z.ZodObject<{ idempotencyKey: z.ZodString; expectedRevision: z.ZodNumber; }, z.core.$strip>; export type AbandonBookingSessionV1 = z.input; export declare const adoptBookingSessionV1: z.ZodObject<{ idempotencyKey: z.ZodString; expectedRevision: z.ZodNumber; }, z.core.$strip>; export type AdoptBookingSessionV1 = z.input; export declare const renewBookingSessionV1: z.ZodObject<{ idempotencyKey: z.ZodString; expectedRevision: z.ZodNumber; extendBySeconds: z.ZodNumber; }, z.core.$strip>; export type RenewBookingSessionV1 = z.input; /** * Why a target could not be priced. Named rather than inlined because the * stateless Offer Preview reports the same set (`offerPreviewResultV1`) — a * preview and a Session Quote of the same target must fail for the same * reasons under the same names. */ export declare const bookingQuoteUnavailableReasonV1: z.ZodEnum<{ target_not_found: "target_not_found"; target_not_bookable: "target_not_bookable"; price_unavailable: "price_unavailable"; policy_unavailable: "policy_unavailable"; selection_unavailable: "selection_unavailable"; }>; export type BookingQuoteUnavailableReasonV1 = z.infer; export declare const bookingSessionLifecycleErrorV1: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"revision_conflict">; expectedRevision: z.ZodNumber; actualRevision: z.ZodNumber; actualState: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_expired">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_consumed">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"capability_required">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"capability_scope_required">; action: z.ZodEnum<{ hold: "hold"; quote: "quote"; read: "read"; update: "update"; commit: "commit"; abandon: "abandon"; adopt: "adopt"; renew: "renew"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"not_authorized">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"idempotency_conflict">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"supplier_operation_active">; nextAction: z.ZodLiteral<"reconcile_supplier_operation">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"payment_in_flight">; nextAction: z.ZodLiteral<"await_payment_outcome">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"quote_unavailable">; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; reason: z.ZodEnum<{ target_not_found: "target_not_found"; target_not_bookable: "target_not_bookable"; price_unavailable: "price_unavailable"; policy_unavailable: "policy_unavailable"; selection_unavailable: "selection_unavailable"; }>; nextAction: z.ZodEnum<{ select_alternative_inventory: "select_alternative_inventory"; contact_operator: "contact_operator"; update_selection: "update_selection"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"commit_rejected">; reason: z.ZodEnum<{ entity_not_found: "entity_not_found"; entity_not_bookable: "entity_not_bookable"; incomplete_draft: "incomplete_draft"; price_changed: "price_changed"; }>; nextAction: z.ZodEnum<{ request_fresh_quote: "request_fresh_quote"; select_alternative_inventory: "select_alternative_inventory"; update_selection: "update_selection"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"selection_incomplete">; unsatisfied: z.ZodArray; }, z.core.$strip>>; nextAction: z.ZodLiteral<"update_selection">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"requirements_changed">; requirementsFingerprint: z.ZodString; nextAction: z.ZodLiteral<"request_fresh_quote">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"checkout_intent_not_offered">; checkoutIntent: z.ZodEnum<{ hold: "hold"; card: "card"; ticket_on_credit: "ticket_on_credit"; bank_transfer: "bank_transfer"; inquiry: "inquiry"; }>; offeredCheckoutIntents: z.ZodArray>; nextAction: z.ZodLiteral<"select_supported_checkout_intent">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"invalid_selection">; reason: z.ZodEnum<{ unsupported_target: "unsupported_target"; forbidden_field: "forbidden_field"; value_too_long: "value_too_long"; }>; path: z.ZodOptional; maxLength: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"renewal_not_allowed">; reason: z.ZodEnum<{ session_not_active: "session_not_active"; extension_too_large: "extension_too_large"; absolute_lifetime_exceeded: "absolute_lifetime_exceeded"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"quote_required">; nextAction: z.ZodLiteral<"request_fresh_quote">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodEnum<{ quote_expired: "quote_expired"; quote_superseded: "quote_superseded"; }>; nextAction: z.ZodLiteral<"request_fresh_quote">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodEnum<{ hold_required: "hold_required"; hold_expired: "hold_expired"; availability_changed: "availability_changed"; }>; nextAction: z.ZodLiteral<"request_new_hold">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"hold_quantity_mismatch">; requestedQuantity: z.ZodNumber; expectedQuantity: z.ZodNumber; nextAction: z.ZodLiteral<"request_hold_for_expected_quantity">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"commit_already_consumed">; nextAction: z.ZodLiteral<"return_idempotent_result">; }, z.core.$strip>], "kind">; export type BookingSessionLifecycleErrorV1 = z.infer; export declare const bookingSessionOutcomeV1: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"session_created">; session: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_updated">; session: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_resumed">; session: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; selection: z.ZodOptional>; redaction: z.ZodEnum<{ none: "none"; selection_omitted: "selection_omitted"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_adopted">; session: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; selection: z.ZodOptional>; redaction: z.ZodEnum<{ none: "none"; selection_omitted: "selection_omitted"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_renewed">; session: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_abandoned">; session: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"quote_created">; session: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; quote: z.ZodObject<{ id: z.ZodString; sessionId: z.ZodString; sessionRevision: z.ZodNumber; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; superseded: "superseded"; }>; requirements: z.ZodObject<{ showsConfigure: z.ZodBoolean; showsBilling: z.ZodBoolean; showsTravelers: z.ZodBoolean; showsAccommodation: z.ZodBoolean; showsAddons: z.ZodBoolean; showsAncillaries: z.ZodDefault; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>; requirementsFingerprint: z.ZodString; pricing: z.ZodObject<{ currency: z.ZodString; lines: z.ZodArray; label: z.ZodString; quantity: z.ZodOptional; unitAmount: z.ZodNumber; totalAmount: z.ZodNumber; taxIncluded: z.ZodOptional; pricingBasis: z.ZodOptional>; componentId: z.ZodOptional; optionId: z.ZodOptional; optionUnitId: z.ZodOptional; authority: z.ZodOptional>; }, z.core.$strip>>; taxes: z.ZodArray; scope: z.ZodOptional>; componentId: z.ZodOptional; }, z.core.$strip>>; subtotal: z.ZodNumber; taxTotal: z.ZodNumber; total: z.ZodNumber; appliedOffers: z.ZodOptional; discountPercent: z.ZodNullable; discountAmountCents: z.ZodNullable; appliedCode: z.ZodNullable; stackable: z.ZodBoolean; }, z.core.$strip>>>; promotionCodeStatus: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"code_not_found">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"code_expired">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"code_not_yet_valid">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"code_not_applicable">; reason: z.ZodEnum<{ currency: "currency"; scope: "scope"; min_pax: "min_pax"; eligibility: "eligibility"; }>; }, z.core.$strip>], "kind">>; policyEvidence: z.ZodOptional; bookingTerms: z.ZodOptional; }, z.core.$strip>>; componentPolicies: z.ZodOptional; bookingTerms: z.ZodOptional; componentId: z.ZodString; }, z.core.$strip>>>; }, z.core.$strip>; paymentPlan: z.ZodOptional; currency: z.ZodString; totalCents: z.ZodNumber; dueNowCents: z.ZodNumber; payInFullCents: z.ZodNullable; entries: z.ZodArray; amountCents: z.ZodNumber; currency: z.ZodString; dueDate: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>; quotedAt: z.ZodString; expiresAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"hold_created">; session: z.ZodObject<{ id: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; origin: z.ZodOptional; proposalId: z.ZodString; proposalVersionId: z.ZodString; tripSnapshotId: z.ZodString; }, z.core.$strip>], "kind">>; actorKind: z.ZodEnum<{ staff: "staff"; customer: "customer"; partner: "partner"; anonymous: "anonymous"; }>; state: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; revision: z.ZodNumber; scope: z.ZodObject<{ locale: z.ZodString; market: z.ZodString; currency: z.ZodOptional; }, z.core.$strip>; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; requirementsFingerprint: z.ZodOptional; expiresAt: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; hold: z.ZodObject<{ id: z.ZodString; sessionId: z.ZodString; quoteId: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"product">; productId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"catalog_item">; catalogItemId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"owned_entity">; entityModule: z.ZodString; entityId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"trip_snapshot">; tripSnapshotId: z.ZodString; tripEnvelopeId: z.ZodString; }, z.core.$strict>, z.ZodObject<{ kind: z.ZodLiteral<"managed_itinerary">; }, z.core.$strict>], "kind">; quantity: z.ZodNumber; state: z.ZodEnum<{ active: "active"; expired: "expired"; released: "released"; converted: "converted"; }>; expiresAt: z.ZodString; createdAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"commit_result">; outcome: z.ZodUnion; nextAction: z.ZodLiteral<"none">; checkoutIntent: z.ZodOptional>; bankTransfer: z.ZodOptional; document: z.ZodNullable; }, z.core.$strip>>; instructions: z.ZodObject<{ beneficiary: z.ZodString; iban: z.ZodString; bankName: z.ZodNullable; reference: z.ZodString; amountCents: z.ZodNumber; currency: z.ZodString; dueAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>>; booking: z.ZodObject<{ id: z.ZodString; status: z.ZodEnum<{ confirmed: "confirmed"; }>; }, z.core.$strip>; allocationIds: z.ZodArray; consumedSessionId: z.ZodString; consumedQuoteId: z.ZodString; convertedHoldId: z.ZodOptional; supplierOperationId: z.ZodOptional; operatorBackedRiskAccepted: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"component_bookings_committed">; nextAction: z.ZodLiteral<"none">; checkoutIntent: z.ZodOptional>; bankTransfer: z.ZodOptional; document: z.ZodNullable; }, z.core.$strip>>; instructions: z.ZodObject<{ beneficiary: z.ZodString; iban: z.ZodString; bankName: z.ZodNullable; reference: z.ZodString; amountCents: z.ZodNumber; currency: z.ZodString; dueAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>>; bookings: z.ZodArray; allocationIds: z.ZodArray; supplierOperationId: z.ZodOptional; }, z.core.$strip>>; consumedSessionId: z.ZodString; consumedQuoteId: z.ZodString; convertedHoldId: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"component_commit_pending">; nextAction: z.ZodLiteral<"continue_component_commit">; components: z.ZodArray; bookingId: z.ZodOptional; supplierOperationId: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"payment_required">; nextAction: z.ZodLiteral<"establish_payment_guarantee">; checkoutIntent: z.ZodOptional>; paymentTarget: z.ZodEnum<{ quote: "quote"; booking_session: "booking_session"; supplier_operation: "supplier_operation"; }>; allowedGuarantees: z.ZodArray>; paymentSession: z.ZodObject<{ id: z.ZodString; status: z.ZodEnum<{ pending: "pending"; failed: "failed"; cancelled: "cancelled"; paid: "paid"; expired: "expired"; requires_redirect: "requires_redirect"; processing: "processing"; authorized: "authorized"; }>; amountCents: z.ZodNumber; currency: z.ZodString; redirectUrl: z.ZodNullable; checkout: z.ZodNullable; url: z.ZodString; expiresAt: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"embedded">; clientSecret: z.ZodString; publishableKey: z.ZodString; providerAccountId: z.ZodOptional>; expiresAt: z.ZodOptional>; }, z.core.$strip>], "kind">>; expiresAt: z.ZodNullable; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"supplier_pending">; nextAction: z.ZodEnum<{ persist_and_dispatch_supplier_operation: "persist_and_dispatch_supplier_operation"; await_supplier_operation: "await_supplier_operation"; }>; supplierOperationId: z.ZodString; bookingId: z.ZodOptional; operatorBackedRiskAccepted: z.ZodDefault; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"supplier_in_doubt">; nextAction: z.ZodLiteral<"reconcile_supplier_operation">; supplierOperationId: z.ZodString; bookingId: z.ZodOptional; operatorBackedRiskAccepted: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"supplier_failed">; nextAction: z.ZodEnum<{ select_alternative_inventory: "select_alternative_inventory"; manual_review: "manual_review"; }>; supplierOperationId: z.ZodString; bookingId: z.ZodOptional; operatorBackedRiskAccepted: z.ZodDefault; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"revision_mismatch">; nextAction: z.ZodLiteral<"refresh_session_state">; expectedRevision: z.ZodNumber; actualRevision: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"quote_failure">; nextAction: z.ZodLiteral<"request_fresh_quote">; reason: z.ZodEnum<{ expired: "expired"; superseded: "superseded"; mismatched_session: "mismatched_session"; mismatched_revision: "mismatched_revision"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"hold_failure">; nextAction: z.ZodLiteral<"request_new_hold">; reason: z.ZodEnum<{ expired: "expired"; missing: "missing"; released: "released"; mismatched_session: "mismatched_session"; capacity_unavailable: "capacity_unavailable"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"proposal_acceptance_required">; nextAction: z.ZodLiteral<"renew_proposal_version_acceptance">; proposalVersionId: z.ZodString; }, z.core.$strip>], "kind">, z.ZodObject<{ kind: z.ZodLiteral<"idempotent_replay">; nextAction: z.ZodLiteral<"return_idempotent_result">; originalCommitId: z.ZodString; originalOutcome: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"committed">; nextAction: z.ZodLiteral<"none">; checkoutIntent: z.ZodOptional>; bankTransfer: z.ZodOptional; document: z.ZodNullable; }, z.core.$strip>>; instructions: z.ZodObject<{ beneficiary: z.ZodString; iban: z.ZodString; bankName: z.ZodNullable; reference: z.ZodString; amountCents: z.ZodNumber; currency: z.ZodString; dueAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>>; booking: z.ZodObject<{ id: z.ZodString; status: z.ZodEnum<{ confirmed: "confirmed"; }>; }, z.core.$strip>; allocationIds: z.ZodArray; consumedSessionId: z.ZodString; consumedQuoteId: z.ZodString; convertedHoldId: z.ZodOptional; supplierOperationId: z.ZodOptional; operatorBackedRiskAccepted: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"component_bookings_committed">; nextAction: z.ZodLiteral<"none">; checkoutIntent: z.ZodOptional>; bankTransfer: z.ZodOptional; document: z.ZodNullable; }, z.core.$strip>>; instructions: z.ZodObject<{ beneficiary: z.ZodString; iban: z.ZodString; bankName: z.ZodNullable; reference: z.ZodString; amountCents: z.ZodNumber; currency: z.ZodString; dueAt: z.ZodString; }, z.core.$strip>; }, z.core.$strip>>; bookings: z.ZodArray; allocationIds: z.ZodArray; supplierOperationId: z.ZodOptional; }, z.core.$strip>>; consumedSessionId: z.ZodString; consumedQuoteId: z.ZodString; convertedHoldId: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"component_commit_pending">; nextAction: z.ZodLiteral<"continue_component_commit">; components: z.ZodArray; bookingId: z.ZodOptional; supplierOperationId: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"payment_required">; nextAction: z.ZodLiteral<"establish_payment_guarantee">; checkoutIntent: z.ZodOptional>; paymentTarget: z.ZodEnum<{ quote: "quote"; booking_session: "booking_session"; supplier_operation: "supplier_operation"; }>; allowedGuarantees: z.ZodArray>; paymentSession: z.ZodObject<{ id: z.ZodString; status: z.ZodEnum<{ pending: "pending"; failed: "failed"; cancelled: "cancelled"; paid: "paid"; expired: "expired"; requires_redirect: "requires_redirect"; processing: "processing"; authorized: "authorized"; }>; amountCents: z.ZodNumber; currency: z.ZodString; redirectUrl: z.ZodNullable; checkout: z.ZodNullable; url: z.ZodString; expiresAt: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"embedded">; clientSecret: z.ZodString; publishableKey: z.ZodString; providerAccountId: z.ZodOptional>; expiresAt: z.ZodOptional>; }, z.core.$strip>], "kind">>; expiresAt: z.ZodNullable; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"supplier_pending">; nextAction: z.ZodEnum<{ persist_and_dispatch_supplier_operation: "persist_and_dispatch_supplier_operation"; await_supplier_operation: "await_supplier_operation"; }>; supplierOperationId: z.ZodString; bookingId: z.ZodOptional; operatorBackedRiskAccepted: z.ZodDefault; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"supplier_in_doubt">; nextAction: z.ZodLiteral<"reconcile_supplier_operation">; supplierOperationId: z.ZodString; bookingId: z.ZodOptional; operatorBackedRiskAccepted: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"supplier_failed">; nextAction: z.ZodEnum<{ select_alternative_inventory: "select_alternative_inventory"; manual_review: "manual_review"; }>; supplierOperationId: z.ZodString; bookingId: z.ZodOptional; operatorBackedRiskAccepted: z.ZodDefault; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"revision_mismatch">; nextAction: z.ZodLiteral<"refresh_session_state">; expectedRevision: z.ZodNumber; actualRevision: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"quote_failure">; nextAction: z.ZodLiteral<"request_fresh_quote">; reason: z.ZodEnum<{ expired: "expired"; superseded: "superseded"; mismatched_session: "mismatched_session"; mismatched_revision: "mismatched_revision"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"hold_failure">; nextAction: z.ZodLiteral<"request_new_hold">; reason: z.ZodEnum<{ expired: "expired"; missing: "missing"; released: "released"; mismatched_session: "mismatched_session"; capacity_unavailable: "capacity_unavailable"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"proposal_acceptance_required">; nextAction: z.ZodLiteral<"renew_proposal_version_acceptance">; proposalVersionId: z.ZodString; }, z.core.$strip>], "kind">; }, z.core.$strip>]>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"rejected">; error: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"revision_conflict">; expectedRevision: z.ZodNumber; actualRevision: z.ZodNumber; actualState: z.ZodEnum<{ active: "active"; expired: "expired"; consumed: "consumed"; abandoned: "abandoned"; supplier_pending: "supplier_pending"; component_pending: "component_pending"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_expired">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"session_consumed">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"capability_required">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"capability_scope_required">; action: z.ZodEnum<{ hold: "hold"; quote: "quote"; read: "read"; update: "update"; commit: "commit"; abandon: "abandon"; adopt: "adopt"; renew: "renew"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"not_authorized">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"idempotency_conflict">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"supplier_operation_active">; nextAction: z.ZodLiteral<"reconcile_supplier_operation">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"payment_in_flight">; nextAction: z.ZodLiteral<"await_payment_outcome">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"quote_unavailable">; requirements: z.ZodOptional; showsPayment: z.ZodBoolean; showsReview: z.ZodLiteral; configureSubSteps: z.ZodOptional; required: z.ZodLiteral; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"product-option">; options: z.ZodArray>; name: z.ZodString; description: z.ZodOptional>; isDefault: z.ZodOptional; units: z.ZodOptional>; unitType: z.ZodOptional>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"option-units">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-category">; categories: z.ZodArray; name: z.ZodString; type: z.ZodOptional; capacityMin: z.ZodOptional; capacityMax: z.ZodOptional; description: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"cabin-number">; perCategory: z.ZodRecord; label: z.ZodString; capacity: z.ZodOptional; hasAccessibilityFeatures: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"date-range">; minNights: z.ZodNumber; maxNights: z.ZodNumber; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"occupancy">; bands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"air-arrangement">; required: z.ZodOptional; }, z.core.$strip>], "kind">>>; paxBands: z.ZodArray; maxAge: z.ZodOptional; minCount: z.ZodNumber; maxCount: z.ZodNumber; }, z.core.$strip>>; paxBandsAllowedTotal: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, z.core.$strip>; paxBandDependencies: z.ZodOptional; maxPerMaster: z.ZodOptional; maxDependentSum: z.ZodOptional; }, z.core.$strip>>>; travelerFields: z.ZodArray>>; appliesToBands: z.ZodOptional>; maxLength: z.ZodOptional; }, z.core.$strip>>; bookingFields: z.ZodArray; maxLength: z.ZodOptional; }, z.core.$strip>>; accommodation: z.ZodOptional>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>>; sharedRoomAllowed: z.ZodBoolean; subSteps: z.ZodOptional; options: z.ZodArray>; capacity: z.ZodOptional>; baseRateHint: z.ZodOptional>; ratePlans: z.ZodOptional>; chargeFrequency: z.ZodOptional>; cancellationPolicy: z.ZodOptional>; inclusions: z.ZodOptional>; currency: z.ZodOptional; }, z.core.$strip>>>; }, z.core.$strip>>; sharedRoomAllowed: z.ZodBoolean; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"extensions">; options: z.ZodArray>; side: z.ZodEnum<{ pre: "pre"; post: "post"; }>; nights: z.ZodOptional>; pricePerPersonHint: z.ZodOptional>; }, z.core.$strip>>; allowsPre: z.ZodBoolean; allowsPost: z.ZodBoolean; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; addons: z.ZodOptional>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>>; groups: z.ZodOptional; label: z.ZodString; groupBy: z.ZodOptional>; perGuestSelection: z.ZodBoolean; items: z.ZodArray>; kind: z.ZodEnum<{ extras: "extras"; excursions: "excursions"; insurance: "insurance"; }>; groupKey: z.ZodOptional>; pricingMode: z.ZodOptional>; unitAmountCents: z.ZodOptional>; currency: z.ZodOptional>; pricedPerPerson: z.ZodOptional>; selectionType: z.ZodOptional>>; minQuantity: z.ZodOptional>; maxQuantity: z.ZodOptional>; defaultQuantity: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>>; ancillaries: z.ZodOptional>; planLabel: z.ZodOptional>; price: z.ZodObject<{ amountMinor: z.ZodNumber; currency: z.ZodString; }, z.core.$strict>; pricedPerPerson: z.ZodDefault; highlights: z.ZodDefault; }, z.core.$strict>>>; eligibility: z.ZodObject<{ status: z.ZodEnum<{ eligible: "eligible"; ineligible: "ineligible"; referral: "referral"; }>; reasons: z.ZodDefault>>; }, z.core.$strict>; disclosures: z.ZodDefault; required: z.ZodBoolean; }, z.core.$strict>>>; requiredTravelerFields: z.ZodDefault; options: z.ZodOptional>>; helpText: z.ZodOptional; }, z.core.$strict>>>; validUntil: z.ZodString; quoteRef: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strict>>>; diagnostics: z.ZodDefault; status: z.ZodEnum<{ timeout: "timeout"; ok: "ok"; unavailable: "unavailable"; error: "error"; }>; message: z.ZodOptional; latencyMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>>; }, z.core.$strip>>; paymentIntents: z.ZodArray>; }, z.core.$strip>>; reason: z.ZodEnum<{ target_not_found: "target_not_found"; target_not_bookable: "target_not_bookable"; price_unavailable: "price_unavailable"; policy_unavailable: "policy_unavailable"; selection_unavailable: "selection_unavailable"; }>; nextAction: z.ZodEnum<{ select_alternative_inventory: "select_alternative_inventory"; contact_operator: "contact_operator"; update_selection: "update_selection"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"commit_rejected">; reason: z.ZodEnum<{ entity_not_found: "entity_not_found"; entity_not_bookable: "entity_not_bookable"; incomplete_draft: "incomplete_draft"; price_changed: "price_changed"; }>; nextAction: z.ZodEnum<{ request_fresh_quote: "request_fresh_quote"; select_alternative_inventory: "select_alternative_inventory"; update_selection: "update_selection"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"selection_incomplete">; unsatisfied: z.ZodArray; }, z.core.$strip>>; nextAction: z.ZodLiteral<"update_selection">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"requirements_changed">; requirementsFingerprint: z.ZodString; nextAction: z.ZodLiteral<"request_fresh_quote">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"checkout_intent_not_offered">; checkoutIntent: z.ZodEnum<{ hold: "hold"; card: "card"; ticket_on_credit: "ticket_on_credit"; bank_transfer: "bank_transfer"; inquiry: "inquiry"; }>; offeredCheckoutIntents: z.ZodArray>; nextAction: z.ZodLiteral<"select_supported_checkout_intent">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"invalid_selection">; reason: z.ZodEnum<{ unsupported_target: "unsupported_target"; forbidden_field: "forbidden_field"; value_too_long: "value_too_long"; }>; path: z.ZodOptional; maxLength: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"renewal_not_allowed">; reason: z.ZodEnum<{ session_not_active: "session_not_active"; extension_too_large: "extension_too_large"; absolute_lifetime_exceeded: "absolute_lifetime_exceeded"; }>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"quote_required">; nextAction: z.ZodLiteral<"request_fresh_quote">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodEnum<{ quote_expired: "quote_expired"; quote_superseded: "quote_superseded"; }>; nextAction: z.ZodLiteral<"request_fresh_quote">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodEnum<{ hold_required: "hold_required"; hold_expired: "hold_expired"; availability_changed: "availability_changed"; }>; nextAction: z.ZodLiteral<"request_new_hold">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"hold_quantity_mismatch">; requestedQuantity: z.ZodNumber; expectedQuantity: z.ZodNumber; nextAction: z.ZodLiteral<"request_hold_for_expected_quantity">; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"commit_already_consumed">; nextAction: z.ZodLiteral<"return_idempotent_result">; }, z.core.$strip>], "kind">; }, z.core.$strip>], "kind">; export type BookingSessionOutcomeV1 = z.infer;