import { MachineState } from './machine';
export declare const useComputedSnapshot: () => {
    readonly usdTradeDelta: {
        readonly usd: number;
        readonly percentage: number;
    } | undefined;
    readonly minDepositTokenAmount: string;
    readonly isDirectNearTokenWithdrawal: boolean;
    readonly isDirectTokenOnNearDeposit: boolean;
    readonly isNativeNearDeposit: boolean;
    readonly isDirectTokenOnNearTransfer: boolean;
};
export declare const useUnsafeSnapshot: () => {
    state: MachineState;
    ctx: {
        readonly state: "initial_dry";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        } | undefined;
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance?: never | undefined;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        } | undefined;
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly sendAddress?: string | undefined;
        readonly walletAddress?: string | undefined;
        readonly areInputsValidating: boolean;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived: boolean | undefined;
        readonly error: {
            readonly code: "SOURCE_TOKEN_IS_EMPTY";
        } | {
            readonly code: "TARGET_TOKEN_IS_EMPTY";
        } | {
            readonly code: "SOURCE_TOKEN_AMOUNT_IS_EMPTY";
        } | {
            readonly code: "SOURCE_BALANCE_INSUFFICIENT";
        } | null;
        readonly quote?: never | undefined;
        readonly quoteStatus: "idle";
        readonly transferStatus: {
            readonly status: "idle";
        };
    } | {
        readonly state: "initial_wallet";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        } | undefined;
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance: import('..').TokenBalance;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        } | undefined;
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly walletAddress: string;
        readonly sendAddress: string | undefined;
        readonly areInputsValidating: boolean;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived: boolean | undefined;
        readonly error: {
            readonly code: "SOURCE_TOKEN_IS_EMPTY";
        } | {
            readonly code: "TARGET_TOKEN_IS_EMPTY";
        } | {
            readonly code: "SOURCE_TOKEN_AMOUNT_IS_EMPTY";
        } | {
            readonly code: "SOURCE_BALANCE_INSUFFICIENT";
        } | {
            readonly code: "TARGET_TOKEN_NOT_INTENT";
        } | {
            readonly code: "INVALID_SOURCE_BALANCE";
        } | {
            readonly code: "SEND_ADDRESS_IS_NOT_VERIFIED";
            readonly meta: {
                readonly address: string;
                readonly chain: import('..').Chains;
            };
        } | {
            readonly code: "SEND_ADDRESS_IS_NOT_FOUND";
            readonly meta: {
                readonly address: string;
                readonly chain: import('..').Chains;
            };
        } | {
            readonly code: "SOURCE_TOKEN_IS_INTENT";
        } | {
            readonly code: "INVALID_SOURCE_BALANCE";
        } | {
            readonly code: "SEND_ADDRESS_IS_EMPTY";
        } | {
            readonly code: "SEND_ADDRESS_IS_INVALID";
            readonly meta: {
                readonly address: string;
                readonly chain: import('..').Chains;
            };
        } | null;
        readonly quote?: never | undefined;
        readonly quoteStatus: "idle";
        readonly transferStatus: {
            readonly status: "idle";
        };
    } | {
        readonly state: "input_valid_dry";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance?: never | undefined;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly sendAddress?: string | undefined;
        readonly walletAddress?: string | undefined;
        readonly areInputsValidating?: never | undefined;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived?: never | undefined;
        readonly error: {
            readonly code: "NO_NEAR_TOKEN_FOUND";
            readonly meta: {
                readonly symbol: string;
            };
        } | {
            readonly code: "TOKEN_IS_NOT_SUPPORTED";
        } | {
            readonly code: "QUOTE_FAILED";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "QUOTE_INVALID";
            readonly meta: {
                readonly isDry: boolean;
            };
        } | {
            readonly code: "QUOTE_INVALID_INITIAL";
            readonly meta: {
                readonly isDry: boolean;
                readonly message: string;
            };
        } | {
            readonly code: "QUOTE_AMOUNT_IS_TOO_LOW";
            readonly meta: {
                readonly minAmount?: string | undefined;
            };
        } | null;
        readonly quote?: never | undefined;
        readonly quoteStatus: "idle" | "pending" | "error";
        readonly transferStatus: {
            readonly status: "idle";
        };
    } | {
        readonly state: "input_valid_internal";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance: import('..').TokenBalance;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly sendAddress?: never | undefined;
        readonly walletAddress: string;
        readonly areInputsValidating?: never | undefined;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived?: never | undefined;
        readonly error: {
            readonly code: "NO_NEAR_TOKEN_FOUND";
            readonly meta: {
                readonly symbol: string;
            };
        } | {
            readonly code: "TOKEN_IS_NOT_SUPPORTED";
        } | {
            readonly code: "QUOTE_FAILED";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "QUOTE_INVALID";
            readonly meta: {
                readonly isDry: boolean;
            };
        } | {
            readonly code: "QUOTE_INVALID_INITIAL";
            readonly meta: {
                readonly isDry: boolean;
                readonly message: string;
            };
        } | {
            readonly code: "QUOTE_AMOUNT_IS_TOO_LOW";
            readonly meta: {
                readonly minAmount?: string | undefined;
            };
        } | {
            readonly code: "QUOTE_NO_ONE_TIME_ADDRESS";
        } | {
            readonly code: "QUOTE_WIDGET_API_KEY_IS_INVALID";
        } | null;
        readonly quote?: never | undefined;
        readonly quoteStatus: "idle" | "pending" | "error";
        readonly transferStatus: {
            readonly status: "idle";
        };
    } | {
        readonly state: "input_valid_external";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance: import('..').TokenBalance;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly sendAddress: string;
        readonly walletAddress: string;
        readonly areInputsValidating?: never | undefined;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived: boolean | undefined;
        readonly error: {
            readonly code: "NO_NEAR_TOKEN_FOUND";
            readonly meta: {
                readonly symbol: string;
            };
        } | {
            readonly code: "TOKEN_IS_NOT_SUPPORTED";
        } | {
            readonly code: "QUOTE_FAILED";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "QUOTE_INVALID";
            readonly meta: {
                readonly isDry: boolean;
            };
        } | {
            readonly code: "QUOTE_INVALID_INITIAL";
            readonly meta: {
                readonly isDry: boolean;
                readonly message: string;
            };
        } | {
            readonly code: "QUOTE_AMOUNT_IS_TOO_LOW";
            readonly meta: {
                readonly minAmount?: string | undefined;
            };
        } | {
            readonly code: "QUOTE_NO_ONE_TIME_ADDRESS";
        } | {
            readonly code: "QUOTE_WIDGET_API_KEY_IS_INVALID";
        } | null;
        readonly quote?: never | undefined;
        readonly quoteStatus: "idle" | "pending" | "error";
        readonly transferStatus: {
            readonly status: "idle";
        };
    } | {
        readonly state: "quote_success_dry";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance?: never | undefined;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly sendAddress?: never | undefined;
        readonly walletAddress?: never | undefined;
        readonly areInputsValidating?: never | undefined;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived?: never | undefined;
        readonly error: {
            readonly code: "MIN_WITHDRAWAL_AMOUNT_ERROR";
            readonly meta: {
                readonly minAmount?: string | undefined;
            };
        } | {
            readonly code: "DIRECT_TRANSFER_ERROR";
            readonly meta?: {
                readonly message?: string | undefined;
            } | undefined;
        } | {
            readonly code: "BRIDGE_SDK_FAILED";
        } | {
            readonly code: "FEES_NOT_ESTIMATED";
        } | {
            readonly code: "NO_QUOTE_FOUND";
        } | {
            readonly code: "NO_DEPOSIT_RESULT";
        } | {
            readonly code: "QUOTE_ERROR";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "TRANSFER_INVALID_INITIAL";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "EXTERNAL_TRANSFER_FAILED";
        } | {
            readonly code: "EXTERNAL_TRANSFER_REFUNDED";
        } | {
            readonly code: "EXTERNAL_TRANSFER_INCOMPLETE";
        } | null;
        readonly quote: {
            readonly amountIn: string;
            readonly amountOut: string;
            readonly amountInUsd: string;
            readonly amountOutUsd: string;
            readonly amountOutFormatted: string;
            readonly timeEstimate: number;
            readonly type: "QUOTE_DRY_WITH_AMOUNT";
            readonly dry: true;
            readonly deadline?: never | undefined;
            readonly depositAddress?: never | undefined;
        };
        readonly quoteStatus: "success";
        readonly transferStatus: {
            readonly status: "idle";
        };
    } | {
        readonly state: "quote_success_internal";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance: import('..').TokenBalance;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly sendAddress?: never | undefined;
        readonly walletAddress: string;
        readonly areInputsValidating?: never | undefined;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived?: never | undefined;
        readonly error: {
            readonly code: "MIN_WITHDRAWAL_AMOUNT_ERROR";
            readonly meta: {
                readonly minAmount?: string | undefined;
            };
        } | {
            readonly code: "DIRECT_TRANSFER_ERROR";
            readonly meta?: {
                readonly message?: string | undefined;
            } | undefined;
        } | {
            readonly code: "BRIDGE_SDK_FAILED";
        } | {
            readonly code: "FEES_NOT_ESTIMATED";
        } | {
            readonly code: "NO_QUOTE_FOUND";
        } | {
            readonly code: "NO_DEPOSIT_RESULT";
        } | {
            readonly code: "QUOTE_ERROR";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "TRANSFER_INVALID_INITIAL";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "EXTERNAL_TRANSFER_FAILED";
        } | {
            readonly code: "EXTERNAL_TRANSFER_REFUNDED";
        } | {
            readonly code: "EXTERNAL_TRANSFER_INCOMPLETE";
        } | null;
        readonly quote: {
            readonly amountIn: string;
            readonly amountOut: string;
            readonly amountInUsd: string;
            readonly amountOutUsd: string;
            readonly amountOutFormatted: string;
            readonly timeEstimate: number;
            readonly type: "QUOTE_REAL_WITH_AMOUNT";
            readonly dry: false;
            readonly deadline?: string | undefined;
            readonly depositAddress: string;
            readonly depositMemo?: string | undefined;
        } | {
            readonly type: "QUOTE_DEPOSIT_ANY_AMOUNT";
            readonly depositAddress: string;
            readonly deadline?: string | undefined;
            readonly timeEstimate: number;
            readonly depositMemo?: string | undefined;
            readonly dry: boolean;
        };
        readonly quoteStatus: "success";
        readonly transferStatus: {
            readonly status: "idle" | "error";
            readonly reason: never;
        } | {
            readonly status: "pending";
            readonly reason: "PROCESSING" | "WAITING_CONFIRMATION";
        };
    } | {
        readonly state: "quote_success_external";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance: import('..').TokenBalance;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly sendAddress: string;
        readonly walletAddress: string;
        readonly areInputsValidating?: never | undefined;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived: boolean | undefined;
        readonly error: {
            readonly code: "MIN_WITHDRAWAL_AMOUNT_ERROR";
            readonly meta: {
                readonly minAmount?: string | undefined;
            };
        } | {
            readonly code: "DIRECT_TRANSFER_ERROR";
            readonly meta?: {
                readonly message?: string | undefined;
            } | undefined;
        } | {
            readonly code: "BRIDGE_SDK_FAILED";
        } | {
            readonly code: "FEES_NOT_ESTIMATED";
        } | {
            readonly code: "NO_QUOTE_FOUND";
        } | {
            readonly code: "NO_DEPOSIT_RESULT";
        } | {
            readonly code: "QUOTE_ERROR";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "TRANSFER_INVALID_INITIAL";
            readonly meta: {
                readonly message: string;
            };
        } | {
            readonly code: "EXTERNAL_TRANSFER_FAILED";
        } | {
            readonly code: "EXTERNAL_TRANSFER_REFUNDED";
        } | {
            readonly code: "EXTERNAL_TRANSFER_INCOMPLETE";
        } | null;
        readonly quote: {
            readonly amountIn: string;
            readonly amountOut: string;
            readonly amountInUsd: string;
            readonly amountOutUsd: string;
            readonly amountOutFormatted: string;
            readonly timeEstimate: number;
            readonly type: "QUOTE_REAL_WITH_AMOUNT";
            readonly dry: false;
            readonly deadline?: string | undefined;
            readonly depositAddress: string;
            readonly depositMemo?: string | undefined;
        };
        readonly quoteStatus: "success";
        readonly transferStatus: {
            readonly status: "idle" | "error";
            readonly reason: never;
        } | {
            readonly status: "pending";
            readonly reason: string;
        };
    } | {
        readonly state: "transfer_success";
        readonly sourceToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly sourceTokenAmount: string;
        readonly sourceTokenBalance: import('..').TokenBalance;
        readonly sourceTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly targetToken: {
            readonly symbol: string;
            readonly assetId: string;
            readonly blockchain: import('..').Chains;
            readonly decimals: number;
            readonly contractAddress?: string | undefined;
            readonly price: number;
            readonly icon: string;
            readonly isIntent: boolean;
            readonly chainName: string;
            readonly name: string;
        };
        readonly targetTokenAmount: string;
        readonly targetTokenDefault: {
            readonly symbol: string;
            readonly blockchain: import('..').Chains;
        } | null | undefined;
        readonly walletAddress: string;
        readonly areInputsValidating?: never | undefined;
        readonly sendAddress: string | undefined;
        readonly isDepositFromExternalWallet: boolean;
        readonly unsupportedChain: import('..').Chains | null;
        readonly externalDepositTxReceived: boolean | undefined;
        readonly error?: never | undefined;
        readonly quote: {
            readonly amountIn: string;
            readonly amountOut: string;
            readonly amountInUsd: string;
            readonly amountOutUsd: string;
            readonly amountOutFormatted: string;
            readonly timeEstimate: number;
            readonly type: "QUOTE_DRY_WITH_AMOUNT";
            readonly dry: true;
            readonly deadline?: never | undefined;
            readonly depositAddress?: never | undefined;
        } | {
            readonly amountIn: string;
            readonly amountOut: string;
            readonly amountInUsd: string;
            readonly amountOutUsd: string;
            readonly amountOutFormatted: string;
            readonly timeEstimate: number;
            readonly type: "QUOTE_REAL_WITH_AMOUNT";
            readonly dry: false;
            readonly deadline?: string | undefined;
            readonly depositAddress: string;
            readonly depositMemo?: string | undefined;
        } | {
            readonly type: "QUOTE_DEPOSIT_ANY_AMOUNT";
            readonly depositAddress: string;
            readonly deadline?: string | undefined;
            readonly timeEstimate: number;
            readonly depositMemo?: string | undefined;
            readonly dry: boolean;
        } | undefined;
        readonly quoteStatus: "idle" | "error" | "pending" | "success";
        readonly transferStatus: {
            readonly status: "success";
            readonly reason: never;
        };
    };
};
export declare const useSafeSnapshot: <S extends MachineState>(state: S) => Extract<import('./context').InitialDryContext, {
    state: S;
}> | Extract<import('./context').InitialWalletContext, {
    state: S;
}> | Extract<import('./context').InputValidDryContext, {
    state: S;
}> | Extract<import('./context').InputValidInternalContext, {
    state: S;
}> | Extract<import('./context').InputValidExternalContext, {
    state: S;
}> | Extract<import('./context').QuoteSuccessDryContext, {
    state: S;
}> | Extract<import('./context').QuoteSuccessInternalContext, {
    state: S;
}> | Extract<import('./context').QuoteSuccessExternalContext, {
    state: S;
}> | Extract<import('./context').TransferSuccessContext, {
    state: S;
}>;
