import type { CartItem, CreateOrderRequest, ShippingMethod } from './types/shop.js'; export interface CheckoutFormFields { firstName: string; lastName: string; email: string; phone: string; addressLine1: string; addressLine2: string; city: string; country: string; /** Storefront locale at checkout (e.g. "zh-HK") — optional, used for order-notification language. */ language?: string; } export declare function calculateFinalTotal(cartTotal: number, discountAmount: number, shippingCost: number, creditsApplied?: number): number; export declare function validateCheckoutForm(fields: Pick): string | null; export interface ShippingEligibility { method: ShippingMethod; meetsThreshold: boolean; locked: boolean; effectiveCost: number; amountToUnlock: number; } export declare function computeShippingEligibility(methods: ShippingMethod[], cartTotal: number): ShippingEligibility[]; export declare function pickDefaultShippingId(eligibility: ShippingEligibility[]): number | null; export interface PaymentOptions { paymentMethodId?: string; creditsUsed?: string; successUrl?: string; cancelUrl?: string; acceptedOffers?: CreateOrderRequest['acceptedOffers']; } export declare function buildCreateOrderRequest(cart: CartItem[], form: CheckoutFormFields, shippingMethodId: number | null, promotionCode?: string, payment?: PaymentOptions): CreateOrderRequest; //# sourceMappingURL=checkout.d.ts.map