import type { DepositFlowCallbacks, DepositFlowConfig } from '../flow/depositFlowConfig'; import type { WithdrawalFlowCallbacks, WithdrawalFlowConfig } from '../flow/withdrawalFlowConfig'; /** Lifecycle callbacks for both managed flows (overlapping keys are identical). */ export type FunkitCheckoutCallbacks = DepositFlowCallbacks & WithdrawalFlowCallbacks; /** * The connect-rn entry hook, mirroring `@funkit/connect`'s `useFunkitCheckout`. * Returns imperative `begin*` calls that open the SDK's managed modal flow — the * host renders no screens itself. * * `beginDeposit(config)` opens the deposit flow (Add money → Transfer/UDA → * Choose chain / Supported tokens / QR, or the amount-first fiat surface). It * resolves once the flow is on screen; a config that cannot open one throws a * `misconfigured` `FunkitMisconfiguredError` at the call, which `await` also * surfaces. * `beginWithdrawal(config)` opens the fiat-offramp withdrawal flow (payout * methods → Swapped sell embed). * `beginCheckout` will be added here as that flow lands, matching the web * surface. */ export declare function useFunkitCheckout(callbacks?: FunkitCheckoutCallbacks): { beginDeposit: (config: DepositFlowConfig) => Promise; beginWithdrawal: (config: WithdrawalFlowConfig) => void; }; //# sourceMappingURL=useFunkitCheckout.d.ts.map