import type { DepositAction, GaslessAuthorizationResult, SwapBasicData, SwapQuote } from '../../lib/apiClients/layerSwapApiClient'; import type { GaslessAuthorization, SwapStepTransactions, SwapTransaction, SwapExecutionKind } from '../../stores/swapTransactionStore'; import type { ResolvedSwapStatus } from './resolveSwapPhase'; export type SwapFlowKind = 'manual-deposit' | 'exchange-deposit' | 'specialized-wallet' | SwapExecutionKind | 'unresolved'; export type SwapFlowEvidence = 'deposit-method' | 'source-provider' | 'publish-step' | 'deposit-step' | 'frontend-signature' | 'gasless-signature' | 'gasless-authorization' | 'atomic-calls' | 'atomic-approval' | 'atomic-transaction' | 'stored-transaction' | 'quote-route' | 'wallet-capability' | 'legacy-transfer' | 'empty-transfer-workflow' | 'missing-actions' | 'ambiguous-signature' | 'ambiguous-publication' | 'unknown-actions'; type DepositExecutionKind = SwapExecutionKind | 'unresolved'; export type ResolveSwapFlowInput = { swapData?: Pick & { id?: string; }; depositActions?: DepositAction[]; transaction?: Pick; stepTransactions?: SwapStepTransactions; quote?: Pick; isDraft?: boolean; atomicBatchAvailable?: boolean; gaslessEnabled?: boolean; gaslessAuthorization?: Pick & Partial>; sourceProvider?: string; walletExecutionStarted?: boolean; isDepositFlow?: boolean; hasRefuel?: boolean; transactionHash?: string; outputTransactionHash?: string; resolved?: Pick; }; export type ResolvedSwapFlow = { kind: SwapFlowKind; resolution: 'pending' | 'resolved' | 'unsupported'; evidence: SwapFlowEvidence; route: 'same-network' | 'cross-network' | 'unknown'; actionButtonText?: string; showSwapProgress: boolean; sourceProvider?: string; walletProgress: 'controls' | 'workflow'; processingProgress: 'transfers' | 'workflow'; processingTitle: 'swap' | 'transfer' | 'deposit'; sharesExecutionTransaction: boolean; compactQuote: boolean; transferStage: 'withdraw' | 'processing' | undefined; }; /** The quote previews a draft; created swaps always follow their backend actions. */ export declare function isFrontendSwapQuote(quote: Pick | undefined): boolean; /** Resolve drafts from the quoted route and selected wallet. Once created, the * backend plan and recorded execution take precedence over draft preferences. */ export declare function resolveSwapFlow(input: ResolveSwapFlowInput): ResolvedSwapFlow; export declare function resolveDepositExecution(actions: DepositAction[] | undefined, gaslessAuthorization?: ResolveSwapFlowInput['gaslessAuthorization']): { kind: DepositExecutionKind; evidence: SwapFlowEvidence; }; export {}; //# sourceMappingURL=resolveSwapFlow.d.ts.map