import { type ToolContext } from "@voyant-travel/tools"; import { z } from "zod"; import { bootstrapCustomerPortalResultSchema, bootstrapCustomerPortalSchema, createCustomerPortalCompanionSchema, createCustomerPortalProfileDocumentSchema, customerPortalBookingDetailSchema, customerPortalBookingSummarySchema, customerPortalCompanionSchema, customerPortalProfileDocumentSchema, customerPortalProfileSchema, importCustomerPortalBookingTravelersResultSchema, importCustomerPortalBookingTravelersSchema, updateCustomerPortalCompanionSchema, updateCustomerPortalProfileDocumentSchema, updateCustomerPortalProfileSchema } from "./customer-portal/validation-public.js"; import { storefrontVerificationChallengeRecordWireSchema } from "./verification/validation.js"; declare const paymentLinkSchema: z.ZodObject<{ id: z.ZodString; status: z.ZodEnum<{ pending: "pending"; expired: "expired"; cancelled: "cancelled"; failed: "failed"; paid: "paid"; requires_redirect: "requires_redirect"; processing: "processing"; authorized: "authorized"; }>; invoiceId: z.ZodNullable; bookingId: z.ZodNullable; currency: z.ZodString; amountCents: z.ZodNumber; paymentMethod: z.ZodNullable; provider: z.ZodNullable; redirectUrl: z.ZodNullable; expiresAt: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; paymentUrl: z.ZodString; }, z.core.$strip>; declare const createInvoicePaymentLinkInputSchema: z.ZodObject<{ invoiceId: z.ZodString; idempotencyKey: z.ZodString; provider: z.ZodOptional>; paymentMethod: z.ZodOptional>>; returnUrl: z.ZodOptional>; cancelUrl: z.ZodOptional>; expiresAt: z.ZodOptional>; }, z.core.$strip>; declare const verificationStartInputSchema: z.ZodObject<{ locale: z.ZodOptional>; }, z.core.$strip>; declare const verificationConfirmInputSchema: z.ZodObject<{ code: z.ZodString; }, z.core.$strip>; export interface StorefrontCustomerPortalToolServices { getProfile(): Promise>; updateProfile(input: z.infer): Promise>; bootstrap(input: z.infer): Promise>; listBookings(): Promise[]>; getBooking(bookingId: string): Promise>; listCompanions(): Promise[]>; createCompanion(input: z.infer): Promise>; updateCompanion(companionId: string, input: z.infer): Promise>; importBookingTravelers(input: z.infer): Promise>; listDocuments(): Promise[]>; createDocument(input: z.infer): Promise>; updateDocument(documentId: string, input: z.infer): Promise>; setPrimaryDocument(documentId: string): Promise>; } export interface StorefrontPaymentLinkToolServices { createFromInvoice(input: z.infer): Promise>; get(sessionId: string): Promise>; } export interface StorefrontVerificationToolServices { startEmail(input: z.infer): Promise>; confirmEmail(input: z.infer): Promise>; startSms(input: z.infer): Promise>; confirmSms(input: z.infer): Promise>; } export type StorefrontToolContext = ToolContext & { storefrontCustomerPortal?: StorefrontCustomerPortalToolServices; storefrontPaymentLink?: StorefrontPaymentLinkToolServices; storefrontVerification?: StorefrontVerificationToolServices; }; export declare const getMyCustomerPortalProfileTool: import("@voyant-travel/tools").ToolDefinition, { userId: string; email: string | null; emailVerified: boolean; firstName: string | null; middleName: string | null; lastName: string | null; avatarUrl: string | null; locale: string; timezone: string | null; seatingPreference: "aisle" | "window" | "middle" | "no_preference" | null; dateOfBirth: string | null; address: { country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; } | null; accessibility: string | null; dietary: string | null; loyalty: string | null; insurance: string | null; marketingConsent: boolean; marketingConsentAt: string | null; marketingConsentSource: string | null; notificationDefaults: Record | null; uiPrefs: Record | null; customerRecord: { id: string; firstName: string; lastName: string; preferredLanguage: string | null; preferredCurrency: string | null; dateOfBirth: string | null; email: string | null; phone: string | null; billingAddress: { id: string; label: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; isPrimary: boolean; } | null; relation: string | null; status: string; } | null; phoneNumber?: string | null | undefined; }, StorefrontToolContext>; export declare const updateMyCustomerPortalProfileTool: import("@voyant-travel/tools").ToolDefinition<{ firstName?: string | null | undefined; middleName?: string | null | undefined; lastName?: string | null | undefined; avatarUrl?: string | null | undefined; locale?: string | undefined; timezone?: string | null | undefined; seatingPreference?: "aisle" | "window" | "middle" | "no_preference" | null | undefined; dateOfBirth?: string | null | undefined; address?: { country?: string | null | undefined; state?: string | null | undefined; city?: string | null | undefined; postalCode?: string | null | undefined; addressLine1?: string | null | undefined; addressLine2?: string | null | undefined; } | undefined; accessibility?: string | null | undefined; dietary?: string | null | undefined; loyalty?: string | null | undefined; insurance?: string | null | undefined; marketingConsent?: boolean | undefined; marketingConsentSource?: string | null | undefined; notificationDefaults?: Record | null | undefined; uiPrefs?: Record | null | undefined; customerRecord?: { preferredLanguage?: string | null | undefined; preferredCurrency?: string | null | undefined; dateOfBirth?: string | null | undefined; phone?: string | null | undefined; billingAddress?: { label?: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting" | undefined; fullText?: string | null | undefined; line1?: string | null | undefined; line2?: string | null | undefined; city?: string | null | undefined; region?: string | null | undefined; postalCode?: string | null | undefined; country?: string | null | undefined; isPrimary?: boolean | undefined; } | undefined; } | undefined; }, { userId: string; email: string | null; emailVerified: boolean; firstName: string | null; middleName: string | null; lastName: string | null; avatarUrl: string | null; locale: string; timezone: string | null; seatingPreference: "aisle" | "window" | "middle" | "no_preference" | null; dateOfBirth: string | null; address: { country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; } | null; accessibility: string | null; dietary: string | null; loyalty: string | null; insurance: string | null; marketingConsent: boolean; marketingConsentAt: string | null; marketingConsentSource: string | null; notificationDefaults: Record | null; uiPrefs: Record | null; customerRecord: { id: string; firstName: string; lastName: string; preferredLanguage: string | null; preferredCurrency: string | null; dateOfBirth: string | null; email: string | null; phone: string | null; billingAddress: { id: string; label: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; isPrimary: boolean; } | null; relation: string | null; status: string; } | null; phoneNumber?: string | null | undefined; }, StorefrontToolContext>; export declare const bootstrapMyCustomerPortalTool: import("@voyant-travel/tools").ToolDefinition<{ createCustomerIfMissing: boolean; customerRecordId?: string | undefined; firstName?: string | null | undefined; lastName?: string | null | undefined; marketingConsent?: boolean | undefined; marketingConsentSource?: string | null | undefined; customerRecord?: { preferredLanguage?: string | null | undefined; preferredCurrency?: string | null | undefined; dateOfBirth?: string | null | undefined; phone?: string | null | undefined; billingAddress?: { label?: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting" | undefined; fullText?: string | null | undefined; line1?: string | null | undefined; line2?: string | null | undefined; city?: string | null | undefined; region?: string | null | undefined; postalCode?: string | null | undefined; country?: string | null | undefined; isPrimary?: boolean | undefined; } | undefined; } | undefined; }, { status: "already_linked" | "linked_existing_customer" | "created_customer" | "customer_selection_required"; profile: { userId: string; email: string | null; emailVerified: boolean; firstName: string | null; middleName: string | null; lastName: string | null; avatarUrl: string | null; locale: string; timezone: string | null; seatingPreference: "aisle" | "window" | "middle" | "no_preference" | null; dateOfBirth: string | null; address: { country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; } | null; accessibility: string | null; dietary: string | null; loyalty: string | null; insurance: string | null; marketingConsent: boolean; marketingConsentAt: string | null; marketingConsentSource: string | null; notificationDefaults: Record | null; uiPrefs: Record | null; customerRecord: { id: string; firstName: string; lastName: string; preferredLanguage: string | null; preferredCurrency: string | null; dateOfBirth: string | null; email: string | null; phone: string | null; billingAddress: { id: string; label: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; isPrimary: boolean; } | null; relation: string | null; status: string; } | null; phoneNumber?: string | null | undefined; } | null; candidates: { id: string; firstName: string; lastName: string; preferredLanguage: string | null; preferredCurrency: string | null; dateOfBirth: string | null; email: string | null; phone: string | null; billingAddress: { id: string; label: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; isPrimary: boolean; } | null; relation: string | null; status: string; linkable: boolean; claimedByAnotherUser: boolean; }[]; }, StorefrontToolContext>; export declare const listMyCustomerPortalBookingsTool: import("@voyant-travel/tools").ToolDefinition, { bookingId: string; bookingNumber: string; status: "expired" | "draft" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "cancelled" | "completed"; sellCurrency: string; sellAmountCents: number | null; productTitle: string | null; paymentStatus: "partially_paid" | "paid" | "overdue" | "unpaid"; startDate: string | null; endDate: string | null; pax: number | null; confirmedAt: string | null; completedAt: string | null; travelerCount: number; primaryTravelerName: string | null; }[], StorefrontToolContext>; export declare const getMyCustomerPortalBookingTool: import("@voyant-travel/tools").ToolDefinition<{ bookingId: string; }, { bookingId: string; bookingNumber: string; status: "expired" | "draft" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "cancelled" | "completed"; sellCurrency: string; sellAmountCents: number | null; startDate: string | null; endDate: string | null; pax: number | null; confirmedAt: string | null; cancelledAt: string | null; completedAt: string | null; travelers: { id: string; participantType: "other" | "traveler" | "occupant"; firstName: string; lastName: string; isPrimary: boolean; }[]; items: { id: string; title: string; description: string | null; itemType: "other" | "discount" | "tax" | "unit" | "service" | "extra" | "fee" | "adjustment" | "accommodation" | "transport"; status: "expired" | "draft" | "on_hold" | "confirmed" | "cancelled" | "fulfilled"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; notes: string | null; travelerLinks: { id: string; travelerId: string; role: "other" | "beneficiary" | "traveler" | "occupant"; isPrimary: boolean; }[]; }[]; billingContact: { email: string | null; phone: string | null; firstName: string | null; lastName: string | null; country: string | null; state: string | null; city: string | null; address1: string | null; address2: string | null; postal: string | null; } | null; documents: { id: string; source: "legal" | "booking_document" | "finance"; travelerId: string | null; type: "other" | "contract" | "invoice" | "visa" | "insurance" | "health" | "passport_copy" | "proforma" | "credit_note"; fileName: string; fileUrl: string; mimeType: string | null; reference: string | null; }[]; financials: { documents: { invoiceId: string; invoiceNumber: string; invoiceType: "invoice" | "proforma" | "credit_note"; invoiceStatus: "void" | "draft" | "issued" | "pending_external_allocation" | "partially_paid" | "paid" | "overdue"; currency: string; totalCents: number; paidCents: number; balanceDueCents: number; issueDate: string; dueDate: string; documentStatus: "pending" | "failed" | "missing" | "ready" | "stale"; format: "xml" | "json" | "pdf" | "html" | null; generatedAt: string | null; downloadUrl: string | null; }[]; payments: { id: string; invoiceId: string; invoiceNumber: string; invoiceType: "invoice" | "proforma" | "credit_note"; status: "pending" | "completed" | "failed" | "refunded"; paymentMethod: "other" | "bank_transfer" | "cash" | "travel_credit" | "wallet" | "credit_card" | "debit_card" | "cheque" | "direct_bill"; amountCents: number; currency: string; paymentDate: string; referenceNumber: string | null; notes: string | null; }[]; }; fulfillments: { id: string; bookingItemId: string | null; travelerId: string | null; fulfillmentType: "other" | "service_voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile"; deliveryChannel: "email" | "other" | "download" | "api" | "wallet"; status: "pending" | "issued" | "reissued" | "revoked" | "failed"; artifactUrl: string | null; }[]; }, StorefrontToolContext>; export declare const listMyCustomerPortalCompanionsTool: import("@voyant-travel/tools").ToolDefinition, { id: string; role: string; name: string; title: string | null; email: string | null; phone: string | null; isPrimary: boolean; notes: string | null; typeKey: string | null; person: { firstName: string | null; middleName: string | null; lastName: string | null; dateOfBirth: string | null; addresses: { type: string | null; country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; isDefault: boolean; }[]; documents: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; country: string | null; issueDate: string | null; expiryDate: string | null; }[]; }; metadata: Record | null; }[], StorefrontToolContext>; export declare const createMyCustomerPortalCompanionTool: import("@voyant-travel/tools").ToolDefinition<{ role: "other" | "legal" | "primary" | "general" | "reservations" | "operations" | "front_desk" | "sales" | "emergency" | "accounting"; name: string; isPrimary: boolean; title?: string | null | undefined; email?: string | null | undefined; phone?: string | null | undefined; notes?: string | null | undefined; typeKey?: string | null | undefined; person?: { firstName?: string | null | undefined; middleName?: string | null | undefined; lastName?: string | null | undefined; dateOfBirth?: string | null | undefined; addresses?: { type?: string | null | undefined; country?: string | null | undefined; state?: string | null | undefined; city?: string | null | undefined; postalCode?: string | null | undefined; addressLine1?: string | null | undefined; addressLine2?: string | null | undefined; isDefault?: boolean | undefined; }[] | undefined; documents?: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number?: string | null | undefined; issuingAuthority?: string | null | undefined; country?: string | null | undefined; issueDate?: string | null | undefined; expiryDate?: string | null | undefined; }[] | undefined; } | undefined; metadata?: Record | null | undefined; }, { id: string; role: string; name: string; title: string | null; email: string | null; phone: string | null; isPrimary: boolean; notes: string | null; typeKey: string | null; person: { firstName: string | null; middleName: string | null; lastName: string | null; dateOfBirth: string | null; addresses: { type: string | null; country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; isDefault: boolean; }[]; documents: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; country: string | null; issueDate: string | null; expiryDate: string | null; }[]; }; metadata: Record | null; }, StorefrontToolContext>; export declare const updateMyCustomerPortalCompanionTool: import("@voyant-travel/tools").ToolDefinition<{ companionId: string; role?: "other" | "legal" | "primary" | "general" | "reservations" | "operations" | "front_desk" | "sales" | "emergency" | "accounting" | undefined; name?: string | undefined; title?: string | null | undefined; email?: string | null | undefined; phone?: string | null | undefined; isPrimary?: boolean | undefined; notes?: string | null | undefined; typeKey?: string | null | undefined; person?: { firstName?: string | null | undefined; middleName?: string | null | undefined; lastName?: string | null | undefined; dateOfBirth?: string | null | undefined; addresses?: { type?: string | null | undefined; country?: string | null | undefined; state?: string | null | undefined; city?: string | null | undefined; postalCode?: string | null | undefined; addressLine1?: string | null | undefined; addressLine2?: string | null | undefined; isDefault?: boolean | undefined; }[] | undefined; documents?: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number?: string | null | undefined; issuingAuthority?: string | null | undefined; country?: string | null | undefined; issueDate?: string | null | undefined; expiryDate?: string | null | undefined; }[] | undefined; } | undefined; metadata?: Record | null | undefined; }, { id: string; role: string; name: string; title: string | null; email: string | null; phone: string | null; isPrimary: boolean; notes: string | null; typeKey: string | null; person: { firstName: string | null; middleName: string | null; lastName: string | null; dateOfBirth: string | null; addresses: { type: string | null; country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; isDefault: boolean; }[]; documents: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; country: string | null; issueDate: string | null; expiryDate: string | null; }[]; }; metadata: Record | null; }, StorefrontToolContext>; export declare const importMyBookingTravelersAsCompanionsTool: import("@voyant-travel/tools").ToolDefinition<{ bookingIds?: string[] | undefined; }, { created: { id: string; role: string; name: string; title: string | null; email: string | null; phone: string | null; isPrimary: boolean; notes: string | null; typeKey: string | null; person: { firstName: string | null; middleName: string | null; lastName: string | null; dateOfBirth: string | null; addresses: { type: string | null; country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; isDefault: boolean; }[]; documents: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; country: string | null; issueDate: string | null; expiryDate: string | null; }[]; }; metadata: Record | null; }[]; skippedCount: number; }, StorefrontToolContext>; export declare const listMyCustomerPortalDocumentsTool: import("@voyant-travel/tools").ToolDefinition, { id: string; type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; createdAt: string; updatedAt: string; }[], StorefrontToolContext>; export declare const createMyCustomerPortalDocumentTool: import("@voyant-travel/tools").ToolDefinition<{ type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number?: string | null | undefined; issuingAuthority?: string | null | undefined; issuingCountry?: string | null | undefined; issueDate?: string | null | undefined; expiryDate?: string | null | undefined; attachmentId?: string | null | undefined; isPrimary?: boolean | undefined; notes?: string | null | undefined; }, { id: string; type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>; export declare const updateMyCustomerPortalDocumentTool: import("@voyant-travel/tools").ToolDefinition<{ documentId: string; type?: "other" | "passport" | "id_card" | "visa" | "drivers_license" | undefined; number?: string | null | undefined; issuingAuthority?: string | null | undefined; issuingCountry?: string | null | undefined; issueDate?: string | null | undefined; expiryDate?: string | null | undefined; attachmentId?: string | null | undefined; isPrimary?: boolean | undefined; notes?: string | null | undefined; }, { id: string; type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>; export declare const setMyPrimaryCustomerPortalDocumentTool: import("@voyant-travel/tools").ToolDefinition<{ documentId: string; }, { id: string; type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>; export declare const getPaymentLinkTool: import("@voyant-travel/tools").ToolDefinition<{ sessionId: string; }, { id: string; status: "pending" | "expired" | "cancelled" | "failed" | "paid" | "requires_redirect" | "processing" | "authorized"; invoiceId: string | null; bookingId: string | null; currency: string; amountCents: number; paymentMethod: string | null; provider: string | null; redirectUrl: string | null; expiresAt: string | null; createdAt: string; updatedAt: string; paymentUrl: string; }, StorefrontToolContext>; export declare const createInvoicePaymentLinkTool: import("@voyant-travel/tools").ToolDefinition<{ invoiceId: string; idempotencyKey: string; provider?: string | null | undefined; paymentMethod?: "other" | "bank_transfer" | "cash" | "travel_credit" | "wallet" | "credit_card" | "debit_card" | "cheque" | "direct_bill" | null | undefined; returnUrl?: string | null | undefined; cancelUrl?: string | null | undefined; expiresAt?: string | null | undefined; }, { id: string; status: "pending" | "expired" | "cancelled" | "failed" | "paid" | "requires_redirect" | "processing" | "authorized"; invoiceId: string | null; bookingId: string | null; currency: string; amountCents: number; paymentMethod: string | null; provider: string | null; redirectUrl: string | null; expiresAt: string | null; createdAt: string; updatedAt: string; paymentUrl: string; }, StorefrontToolContext>; export declare const startMyEmailVerificationTool: import("@voyant-travel/tools").ToolDefinition<{ locale?: string | null | undefined; }, { id: string; channel: "email" | "sms"; destination: string; purpose: string; status: "pending" | "expired" | "cancelled" | "failed" | "verified"; expiresAt: string; verifiedAt: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>; export declare const confirmMyEmailVerificationTool: import("@voyant-travel/tools").ToolDefinition<{ code: string; }, { id: string; channel: "email" | "sms"; destination: string; purpose: string; status: "pending" | "expired" | "cancelled" | "failed" | "verified"; expiresAt: string; verifiedAt: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>; export declare const startMySmsVerificationTool: import("@voyant-travel/tools").ToolDefinition<{ locale?: string | null | undefined; }, { id: string; channel: "email" | "sms"; destination: string; purpose: string; status: "pending" | "expired" | "cancelled" | "failed" | "verified"; expiresAt: string; verifiedAt: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>; export declare const confirmMySmsVerificationTool: import("@voyant-travel/tools").ToolDefinition<{ code: string; }, { id: string; channel: "email" | "sms"; destination: string; purpose: string; status: "pending" | "expired" | "cancelled" | "failed" | "verified"; expiresAt: string; verifiedAt: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>; export declare const storefrontCustomerPortalTools: readonly [import("@voyant-travel/tools").ToolDefinition, { userId: string; email: string | null; emailVerified: boolean; firstName: string | null; middleName: string | null; lastName: string | null; avatarUrl: string | null; locale: string; timezone: string | null; seatingPreference: "aisle" | "window" | "middle" | "no_preference" | null; dateOfBirth: string | null; address: { country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; } | null; accessibility: string | null; dietary: string | null; loyalty: string | null; insurance: string | null; marketingConsent: boolean; marketingConsentAt: string | null; marketingConsentSource: string | null; notificationDefaults: Record | null; uiPrefs: Record | null; customerRecord: { id: string; firstName: string; lastName: string; preferredLanguage: string | null; preferredCurrency: string | null; dateOfBirth: string | null; email: string | null; phone: string | null; billingAddress: { id: string; label: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; isPrimary: boolean; } | null; relation: string | null; status: string; } | null; phoneNumber?: string | null | undefined; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ firstName?: string | null | undefined; middleName?: string | null | undefined; lastName?: string | null | undefined; avatarUrl?: string | null | undefined; locale?: string | undefined; timezone?: string | null | undefined; seatingPreference?: "aisle" | "window" | "middle" | "no_preference" | null | undefined; dateOfBirth?: string | null | undefined; address?: { country?: string | null | undefined; state?: string | null | undefined; city?: string | null | undefined; postalCode?: string | null | undefined; addressLine1?: string | null | undefined; addressLine2?: string | null | undefined; } | undefined; accessibility?: string | null | undefined; dietary?: string | null | undefined; loyalty?: string | null | undefined; insurance?: string | null | undefined; marketingConsent?: boolean | undefined; marketingConsentSource?: string | null | undefined; notificationDefaults?: Record | null | undefined; uiPrefs?: Record | null | undefined; customerRecord?: { preferredLanguage?: string | null | undefined; preferredCurrency?: string | null | undefined; dateOfBirth?: string | null | undefined; phone?: string | null | undefined; billingAddress?: { label?: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting" | undefined; fullText?: string | null | undefined; line1?: string | null | undefined; line2?: string | null | undefined; city?: string | null | undefined; region?: string | null | undefined; postalCode?: string | null | undefined; country?: string | null | undefined; isPrimary?: boolean | undefined; } | undefined; } | undefined; }, { userId: string; email: string | null; emailVerified: boolean; firstName: string | null; middleName: string | null; lastName: string | null; avatarUrl: string | null; locale: string; timezone: string | null; seatingPreference: "aisle" | "window" | "middle" | "no_preference" | null; dateOfBirth: string | null; address: { country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; } | null; accessibility: string | null; dietary: string | null; loyalty: string | null; insurance: string | null; marketingConsent: boolean; marketingConsentAt: string | null; marketingConsentSource: string | null; notificationDefaults: Record | null; uiPrefs: Record | null; customerRecord: { id: string; firstName: string; lastName: string; preferredLanguage: string | null; preferredCurrency: string | null; dateOfBirth: string | null; email: string | null; phone: string | null; billingAddress: { id: string; label: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; isPrimary: boolean; } | null; relation: string | null; status: string; } | null; phoneNumber?: string | null | undefined; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ createCustomerIfMissing: boolean; customerRecordId?: string | undefined; firstName?: string | null | undefined; lastName?: string | null | undefined; marketingConsent?: boolean | undefined; marketingConsentSource?: string | null | undefined; customerRecord?: { preferredLanguage?: string | null | undefined; preferredCurrency?: string | null | undefined; dateOfBirth?: string | null | undefined; phone?: string | null | undefined; billingAddress?: { label?: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting" | undefined; fullText?: string | null | undefined; line1?: string | null | undefined; line2?: string | null | undefined; city?: string | null | undefined; region?: string | null | undefined; postalCode?: string | null | undefined; country?: string | null | undefined; isPrimary?: boolean | undefined; } | undefined; } | undefined; }, { status: "already_linked" | "linked_existing_customer" | "created_customer" | "customer_selection_required"; profile: { userId: string; email: string | null; emailVerified: boolean; firstName: string | null; middleName: string | null; lastName: string | null; avatarUrl: string | null; locale: string; timezone: string | null; seatingPreference: "aisle" | "window" | "middle" | "no_preference" | null; dateOfBirth: string | null; address: { country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; } | null; accessibility: string | null; dietary: string | null; loyalty: string | null; insurance: string | null; marketingConsent: boolean; marketingConsentAt: string | null; marketingConsentSource: string | null; notificationDefaults: Record | null; uiPrefs: Record | null; customerRecord: { id: string; firstName: string; lastName: string; preferredLanguage: string | null; preferredCurrency: string | null; dateOfBirth: string | null; email: string | null; phone: string | null; billingAddress: { id: string; label: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; isPrimary: boolean; } | null; relation: string | null; status: string; } | null; phoneNumber?: string | null | undefined; } | null; candidates: { id: string; firstName: string; lastName: string; preferredLanguage: string | null; preferredCurrency: string | null; dateOfBirth: string | null; email: string | null; phone: string | null; billingAddress: { id: string; label: "other" | "legal" | "billing" | "service" | "primary" | "shipping" | "mailing" | "meeting"; fullText: string | null; line1: string | null; line2: string | null; city: string | null; region: string | null; postalCode: string | null; country: string | null; isPrimary: boolean; } | null; relation: string | null; status: string; linkable: boolean; claimedByAnotherUser: boolean; }[]; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition, { bookingId: string; bookingNumber: string; status: "expired" | "draft" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "cancelled" | "completed"; sellCurrency: string; sellAmountCents: number | null; productTitle: string | null; paymentStatus: "partially_paid" | "paid" | "overdue" | "unpaid"; startDate: string | null; endDate: string | null; pax: number | null; confirmedAt: string | null; completedAt: string | null; travelerCount: number; primaryTravelerName: string | null; }[], StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ bookingId: string; }, { bookingId: string; bookingNumber: string; status: "expired" | "draft" | "on_hold" | "awaiting_payment" | "confirmed" | "in_progress" | "cancelled" | "completed"; sellCurrency: string; sellAmountCents: number | null; startDate: string | null; endDate: string | null; pax: number | null; confirmedAt: string | null; cancelledAt: string | null; completedAt: string | null; travelers: { id: string; participantType: "other" | "traveler" | "occupant"; firstName: string; lastName: string; isPrimary: boolean; }[]; items: { id: string; title: string; description: string | null; itemType: "other" | "discount" | "tax" | "unit" | "service" | "extra" | "fee" | "adjustment" | "accommodation" | "transport"; status: "expired" | "draft" | "on_hold" | "confirmed" | "cancelled" | "fulfilled"; serviceDate: string | null; startsAt: string | null; endsAt: string | null; quantity: number; sellCurrency: string; unitSellAmountCents: number | null; totalSellAmountCents: number | null; notes: string | null; travelerLinks: { id: string; travelerId: string; role: "other" | "beneficiary" | "traveler" | "occupant"; isPrimary: boolean; }[]; }[]; billingContact: { email: string | null; phone: string | null; firstName: string | null; lastName: string | null; country: string | null; state: string | null; city: string | null; address1: string | null; address2: string | null; postal: string | null; } | null; documents: { id: string; source: "legal" | "booking_document" | "finance"; travelerId: string | null; type: "other" | "contract" | "invoice" | "visa" | "insurance" | "health" | "passport_copy" | "proforma" | "credit_note"; fileName: string; fileUrl: string; mimeType: string | null; reference: string | null; }[]; financials: { documents: { invoiceId: string; invoiceNumber: string; invoiceType: "invoice" | "proforma" | "credit_note"; invoiceStatus: "void" | "draft" | "issued" | "pending_external_allocation" | "partially_paid" | "paid" | "overdue"; currency: string; totalCents: number; paidCents: number; balanceDueCents: number; issueDate: string; dueDate: string; documentStatus: "pending" | "failed" | "missing" | "ready" | "stale"; format: "xml" | "json" | "pdf" | "html" | null; generatedAt: string | null; downloadUrl: string | null; }[]; payments: { id: string; invoiceId: string; invoiceNumber: string; invoiceType: "invoice" | "proforma" | "credit_note"; status: "pending" | "completed" | "failed" | "refunded"; paymentMethod: "other" | "bank_transfer" | "cash" | "travel_credit" | "wallet" | "credit_card" | "debit_card" | "cheque" | "direct_bill"; amountCents: number; currency: string; paymentDate: string; referenceNumber: string | null; notes: string | null; }[]; }; fulfillments: { id: string; bookingItemId: string | null; travelerId: string | null; fulfillmentType: "other" | "service_voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile"; deliveryChannel: "email" | "other" | "download" | "api" | "wallet"; status: "pending" | "issued" | "reissued" | "revoked" | "failed"; artifactUrl: string | null; }[]; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition, { id: string; role: string; name: string; title: string | null; email: string | null; phone: string | null; isPrimary: boolean; notes: string | null; typeKey: string | null; person: { firstName: string | null; middleName: string | null; lastName: string | null; dateOfBirth: string | null; addresses: { type: string | null; country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; isDefault: boolean; }[]; documents: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; country: string | null; issueDate: string | null; expiryDate: string | null; }[]; }; metadata: Record | null; }[], StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ role: "other" | "legal" | "primary" | "general" | "reservations" | "operations" | "front_desk" | "sales" | "emergency" | "accounting"; name: string; isPrimary: boolean; title?: string | null | undefined; email?: string | null | undefined; phone?: string | null | undefined; notes?: string | null | undefined; typeKey?: string | null | undefined; person?: { firstName?: string | null | undefined; middleName?: string | null | undefined; lastName?: string | null | undefined; dateOfBirth?: string | null | undefined; addresses?: { type?: string | null | undefined; country?: string | null | undefined; state?: string | null | undefined; city?: string | null | undefined; postalCode?: string | null | undefined; addressLine1?: string | null | undefined; addressLine2?: string | null | undefined; isDefault?: boolean | undefined; }[] | undefined; documents?: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number?: string | null | undefined; issuingAuthority?: string | null | undefined; country?: string | null | undefined; issueDate?: string | null | undefined; expiryDate?: string | null | undefined; }[] | undefined; } | undefined; metadata?: Record | null | undefined; }, { id: string; role: string; name: string; title: string | null; email: string | null; phone: string | null; isPrimary: boolean; notes: string | null; typeKey: string | null; person: { firstName: string | null; middleName: string | null; lastName: string | null; dateOfBirth: string | null; addresses: { type: string | null; country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; isDefault: boolean; }[]; documents: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; country: string | null; issueDate: string | null; expiryDate: string | null; }[]; }; metadata: Record | null; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ companionId: string; role?: "other" | "legal" | "primary" | "general" | "reservations" | "operations" | "front_desk" | "sales" | "emergency" | "accounting" | undefined; name?: string | undefined; title?: string | null | undefined; email?: string | null | undefined; phone?: string | null | undefined; isPrimary?: boolean | undefined; notes?: string | null | undefined; typeKey?: string | null | undefined; person?: { firstName?: string | null | undefined; middleName?: string | null | undefined; lastName?: string | null | undefined; dateOfBirth?: string | null | undefined; addresses?: { type?: string | null | undefined; country?: string | null | undefined; state?: string | null | undefined; city?: string | null | undefined; postalCode?: string | null | undefined; addressLine1?: string | null | undefined; addressLine2?: string | null | undefined; isDefault?: boolean | undefined; }[] | undefined; documents?: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number?: string | null | undefined; issuingAuthority?: string | null | undefined; country?: string | null | undefined; issueDate?: string | null | undefined; expiryDate?: string | null | undefined; }[] | undefined; } | undefined; metadata?: Record | null | undefined; }, { id: string; role: string; name: string; title: string | null; email: string | null; phone: string | null; isPrimary: boolean; notes: string | null; typeKey: string | null; person: { firstName: string | null; middleName: string | null; lastName: string | null; dateOfBirth: string | null; addresses: { type: string | null; country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; isDefault: boolean; }[]; documents: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; country: string | null; issueDate: string | null; expiryDate: string | null; }[]; }; metadata: Record | null; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ bookingIds?: string[] | undefined; }, { created: { id: string; role: string; name: string; title: string | null; email: string | null; phone: string | null; isPrimary: boolean; notes: string | null; typeKey: string | null; person: { firstName: string | null; middleName: string | null; lastName: string | null; dateOfBirth: string | null; addresses: { type: string | null; country: string | null; state: string | null; city: string | null; postalCode: string | null; addressLine1: string | null; addressLine2: string | null; isDefault: boolean; }[]; documents: { type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; country: string | null; issueDate: string | null; expiryDate: string | null; }[]; }; metadata: Record | null; }[]; skippedCount: number; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition, { id: string; type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; createdAt: string; updatedAt: string; }[], StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number?: string | null | undefined; issuingAuthority?: string | null | undefined; issuingCountry?: string | null | undefined; issueDate?: string | null | undefined; expiryDate?: string | null | undefined; attachmentId?: string | null | undefined; isPrimary?: boolean | undefined; notes?: string | null | undefined; }, { id: string; type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ documentId: string; type?: "other" | "passport" | "id_card" | "visa" | "drivers_license" | undefined; number?: string | null | undefined; issuingAuthority?: string | null | undefined; issuingCountry?: string | null | undefined; issueDate?: string | null | undefined; expiryDate?: string | null | undefined; attachmentId?: string | null | undefined; isPrimary?: boolean | undefined; notes?: string | null | undefined; }, { id: string; type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ documentId: string; }, { id: string; type: "other" | "passport" | "id_card" | "visa" | "drivers_license"; number: string | null; issuingAuthority: string | null; issuingCountry: string | null; issueDate: string | null; expiryDate: string | null; attachmentId: string | null; isPrimary: boolean; notes: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>]; export declare const storefrontPaymentLinkTools: readonly [import("@voyant-travel/tools").ToolDefinition<{ sessionId: string; }, { id: string; status: "pending" | "expired" | "cancelled" | "failed" | "paid" | "requires_redirect" | "processing" | "authorized"; invoiceId: string | null; bookingId: string | null; currency: string; amountCents: number; paymentMethod: string | null; provider: string | null; redirectUrl: string | null; expiresAt: string | null; createdAt: string; updatedAt: string; paymentUrl: string; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ invoiceId: string; idempotencyKey: string; provider?: string | null | undefined; paymentMethod?: "other" | "bank_transfer" | "cash" | "travel_credit" | "wallet" | "credit_card" | "debit_card" | "cheque" | "direct_bill" | null | undefined; returnUrl?: string | null | undefined; cancelUrl?: string | null | undefined; expiresAt?: string | null | undefined; }, { id: string; status: "pending" | "expired" | "cancelled" | "failed" | "paid" | "requires_redirect" | "processing" | "authorized"; invoiceId: string | null; bookingId: string | null; currency: string; amountCents: number; paymentMethod: string | null; provider: string | null; redirectUrl: string | null; expiresAt: string | null; createdAt: string; updatedAt: string; paymentUrl: string; }, StorefrontToolContext>]; export declare const storefrontVerificationTools: readonly [import("@voyant-travel/tools").ToolDefinition<{ locale?: string | null | undefined; }, { id: string; channel: "email" | "sms"; destination: string; purpose: string; status: "pending" | "expired" | "cancelled" | "failed" | "verified"; expiresAt: string; verifiedAt: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ code: string; }, { id: string; channel: "email" | "sms"; destination: string; purpose: string; status: "pending" | "expired" | "cancelled" | "failed" | "verified"; expiresAt: string; verifiedAt: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ locale?: string | null | undefined; }, { id: string; channel: "email" | "sms"; destination: string; purpose: string; status: "pending" | "expired" | "cancelled" | "failed" | "verified"; expiresAt: string; verifiedAt: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>, import("@voyant-travel/tools").ToolDefinition<{ code: string; }, { id: string; channel: "email" | "sms"; destination: string; purpose: string; status: "pending" | "expired" | "cancelled" | "failed" | "verified"; expiresAt: string; verifiedAt: string | null; createdAt: string; updatedAt: string; }, StorefrontToolContext>]; export {};