import { FanfareCartAdapter } from '../cart-adapter'; import { FanfareGatedCheckoutResult, GatedLine } from '../checkout-types'; import { UseFanfareClaimResult } from './use-fanfare-claim'; /** What to check out: the one gated line, plus optional convenience lines that ride the same cart. */ export interface FanfareGatedCheckoutInput { gatedLine: GatedLine; /** Added to the cart but NOT policy-checked today — the gate covers `gatedLine` only. */ ungatedLines?: GatedLine[]; } export interface UseFanfareCheckoutResult { /** Recommended one-call path: create → claim → add line(s) → checkout URL. Never rejects. */ gatedCheckout(input: FanfareGatedCheckoutInput): Promise>; /** Advanced escape hatch — the low-level claim (see `useFanfareClaim`). */ claim: UseFanfareClaimResult["claim"]; /** True while a `gatedCheckout` run is in flight (drives the buy-button spinner). */ pending: boolean; } export declare function useFanfareCheckout(adapter: FanfareCartAdapter): UseFanfareCheckoutResult;