export declare class Route { ZERO_ADDRESS: string; ETH_ADDRESS: string; PRICE_IMPACT_HACK_SYMBOL: string[]; WETH_TOKEN: { symbol: string; address: string; decimals: number; name: string; source: string; }; ZEROX_SWAP_URL: string; ZEROX_TARGET_APPROVE: string; ZEROX_QUOTE_URL: string; ONEINCH_SWAP_URL: string; ONEINCH_TARGET_APPROVE: string; ONEINCH_QUOTE_URL_V2: string; ONEINCH_TARGET_APPROVE_V2: string; ONEINCH_SWAP_URL_V2: string; NETWORK_ID: number; WEB3_URL: string; DODO_PROXY: string; DODO_APPROVE: string; DODO_SWAP_CALC_HELPER: string; DODO_PROXY_HISTORY: { version: number; address: string; }[]; private DEFAULT_ROUTE_DETAIL; DIRECTLY_DODO: {}; constructor(_NETWORK_ID: number, _WEB3_URL?: string, _DODO_PROXY?: string, _DODO_APPROVE?: string); /** * @notice 根据地址获取Token * @param tokenAddr token地址 */ GetTokenByAddr(tokenSearch: string, web3Provider?: any): Promise<{ symbol: any; address: string; name: any; decimals: number; source: string; }>; /** * @notice 获取默认tokenList */ GetTokenList(): Promise; /** * @notice 获取订单历史 * @param userAddr 默认空 * @param fromTokenAddress 默认空 * @param toTokenAddress 默认空 * @param fromBlock 默认6000 * 30 */ GetUserOrderHistory(userAddr?: string, fromTokenAddress?: string, toTokenAddress?: string, gapBlock?: number, web3Provider?: any): Promise<{ fromToken: string; toToken: string; sender: string; fromAmount: string; returnAmount: string; }[]>; /** * @notice 查询dodoAndUni路由,仅支持主网 */ GetAndMakeDODOAndUniRoute(fromToken: { decimals: number; symbol: string; address: string; source: string; name?: string; }, toToken: { symbol: string; address: string; name: string; decimals: number; source: string; }, fromAmount: string, slippage: number, assetTo: string, deadline?: number, marginAmount?: string, web3Provider?: any): Promise<{ resAmount: number; resPricePerToToken: number; resPricePerFromToken: number; priceImpact: number; useSource: string; targetDecimals: number; targetApproveAddr: string; to?: string; data?: string; resCostGas?: number; }>; /** * @notice 查询dodo路由 * @param fromToken {"symbol","name","decimals","address"} * @param toToken {"symbol","name","decimals","address"} * @param swapAmount (不考虑decimals) */ GetDODORoute(fromToken: { decimals: number; symbol: string; address: string; source: string; name?: string; }, toToken: { symbol: string; address: string; name: string; decimals: number; source: string; }, fromAmount: string, marginAmount?: string): Promise<{ resAmount: number; resPricePerToToken: number; resPricePerFromToken: number; priceImpact: number; useSource: string; targetDecimals: number; targetApproveAddr: string; to?: string; data?: string; resCostGas?: number; }>; /** * @notice 查询0x路由,仅支持主网 * @param fromToken {"symbol","name","decimals","address"} * @param toToken {"symbol","name","decimals","address"} * @param swapAmount (不考虑decimals) */ GetZeroXRoute(fromToken: { decimals: number; symbol: string; address: string; source: string; name?: string; }, toToken: { symbol: string; address: string; name: string; decimals: number; source: string; }, fromAmount: string, marginAmount?: string): Promise<{ resAmount: number; resPricePerToToken: number; resPricePerFromToken: number; priceImpact: number; useSource: string; targetDecimals: number; targetApproveAddr: string; to?: string; data?: string; resCostGas?: number; }>; /** * @notice 查询1inch路由,仅支持主网 * @param fromToken {"symbol","name","decimals","address"} * @param toToken {"symbol","name","decimals","address"} * @param swapAmount (不考虑decimals) */ GetOneInchRoute(fromToken: { decimals: number; symbol: string; address: string; source: string; name?: string; }, toToken: { symbol: string; address: string; name: string; decimals: number; source: string; }, fromAmount: string, marginAmount?: string): Promise<{ resAmount: number; resPricePerToToken: number; resPricePerFromToken: number; priceImpact: number; useSource: string; targetDecimals: number; targetApproveAddr: string; to?: string; data?: string; resCostGas?: number; }>; /** * @notice 构造路由请求至合约 * @param fromToken {"symbol","name","decimals","address"} * @param toToken {"symbol","name","decimals","address"} * @param swapAmount (不考虑decimals) * @param slippage % * @param addr 账户地址 * @param deadline 截止时间戳 单位 秒 */ MakeRoute(fromToken: { decimals: number; symbol: string; address: string; source: string; name?: string; }, toToken: { symbol: string; address: string; name: string; decimals: number; source: string; }, swapAmount: string, minAmount: string, slippage: number, addr: string, deadline: number, source: string, web3Provider?: any): Promise<{ to: string; data: string; resCostGas: number; }>; private wrapAndUnWrapETH; private WethAndETHWrapJudge; /** * @notice 获取Proxy Gas补贴参数 */ GasParam(web3Provider?: any): Promise<{ dodoGasMaxReturn: number; externalGasReturn: number; }>; /** * @legacy * @notice 判断Swap的token是否需要授权 * @param fromToken {"symbol","name","decimals","address"} * @param addr 用户地址 */ ApproveJudge(fromToken: { symbol: string; address: string; }, addr: string, targetAddr: string, web3Provider?: any): Promise; /** * @legacy * @notice ERC20 Token 交易前授权 * @param fromToken {"symbol","name","decimals","address"} * @param targetAddr 授权合约地址 * @param approveAmount hex 16进制字符串数值 */ ApproveHandle(fromToken: { address: string; }, targetAddr: string, approveAmount: string, web3Provider?: any): Promise; }