import { TokenInfo } from '../Token'; import BigNumber from 'bignumber.js'; export interface BridgeRouteI { /** update */ key: string; /** only one */ id: string; fromToken: TokenInfo; toToken: TokenInfo; fromChainId: number; toChainId: number; /** from parameter */ fromAmount: string; toTokenAmount: BigNumber; /** from parameter */ fromAddress: string; toAddress: string; /** from parameter */ product: string | null; slippage: number; /** in seconds */ roundedRouteCostTime: number; /** approve contract address */ spenderContractAddress: string; /** USD */ feeUSD: string | null; /** in seconds */ executionDuration: number | null; /** one-click */ step: BridgeStep; encodeParams: any; productParams: any; sourceRoute: { toAmount: string; feeUSD: string | null; executionDuration: number | null; step: { tool: string; toolDetails: { logoURI: string | null; name: string | null; key: string | null; }; type: string | null; approvalAddress: string; includedSteps: any; }; fee: any; }; } export interface BridgeTokenI { id: number; symbol: string; name: string; address: string; decimals: number; logoUrl: string; chainId: number; stableCurrencyToken: boolean; mainCurrencyToken: boolean; } export interface BridgeStepTool { name: string; logoURI: string; } export interface BridgeStepEstimate { fromToken: Pick; toToken: Pick; fromTokenAmount: BigNumber; toTokenAmount: BigNumber; } export interface BridgeStep { tool: string; toolDetails: BridgeStepTool; type: string | null; includedSteps: Array<{ id: string; /** * bridge or swap */ tool: string; toolDetails: BridgeStepTool; type: string; estimate: BridgeStepEstimate; }>; } export declare enum RoutePriceStatus { Initial = "Initial", Loading = "Loading", Failed = "Failed", Success = "Success" } export interface FetchRoutePrice { fromToken: TokenInfo | null; toToken: TokenInfo | null; fromAmount: string; } export declare function useFetchRoutePriceBridge({ toToken, fromToken, fromAmount, }: FetchRoutePrice): { status: RoutePriceStatus; refetch: () => Promise; bridgeRouteList: BridgeRouteI[]; };