import type { RouteData, RouteResponse, StatusResponse, TokenData } from '@0xsquid/sdk'; import { IAsyncStorage } from './storage'; type Token = { chainId: number; address: string; name: string; symbol: string; decimals: number; logoURI: string; coingeckoId: string; commonKey: string; ibcDenom?: string; }; export type SquidGasCost = { type: string; token: Token; amount: string; amountUSD: string; maxFeePerGas: string; maxPriorityFeePerGas: string; estimate: string; limit: string; }; export type SquidFeeCost = { name: string; description: string; percentage: string; token: Token; amount: string; amountUSD: string; }; export type SwapRouteQuote = { estimate: { fromAmount: string; fromAmountUSD: string; sendAmount: string; toAmount: string; toAmountUSD: string; route: { fromChain: Array>; toChain: Array>; }; feeCosts: Array; gasCosts: Array; estimatedRouteDuration: number; exchangeRate: string; aggregatePriceImpact: string; }; params: { fromChain: string; toChain: string; quoteOnly: boolean; fromToken: Token; toToken: Token; fromAmount: string; toAddress: string; slippage: number; }; }; export type EVMTransactionRequest = { routeType: string; targetAddress: string; data: string; value: string; gasLimit: string; gasPrice: string; maxFeePerGas: string; maxPriorityFeePerGas: string; }; export type SwapRoute = SwapRouteQuote & { transactionRequest: EVMTransactionRequest; }; type SwapRouteArgs = { fromAddress: string; fromChain: string; toChain: string; fromToken: string; toToken: string; fromAmount: string; toAddress: string; slippage: number; enableExpress: boolean; receiveGasOnDestination: boolean; }; type GetStatusArgs = { transactionId: string; fromChainId: number; bridgeType: string; toChainId: string; }; type SquidErrorType = { errorType: string; message: string; }; export declare const checkForCCTPTxn: (toChainId: string, fromToken: string, toToken: string) => boolean; export declare class SquidAPI { static squidBaseUrl: string; static squidIntegratorId: string; private static cache; private static tokensCache; static isCacheInitialized(): boolean; static initializeCache(storage: IAsyncStorage): void; static getTokenPrice(chainId: string, tokenAddress: string): Promise; static getTokens(chainId?: string): Promise>; static getSwapRoute(args: SwapRouteArgs): Promise<{ success: false; errors: Array; } | { success: true; route: RouteData; }>; static getStatus(transactionId: string): Promise; static getSwapRouteAPI(args: SwapRouteArgs): Promise; static getStatusAPI(args: GetStatusArgs): Promise; } export {};