import { Route } from '@uniswap/v3-sdk'; import { TradeType, Token, Fraction } from '@uniswap/sdk-core'; import { Result } from 'ethers'; import { CoinAmount, ERC20 } from '../types'; import { BlockTag } from './multicall'; export interface Provider { send: (method: string, params: any[]) => Promise; } export type QuoteResult = { route: Route; gasEstimate: bigint; amountIn: CoinAmount; amountOut: CoinAmount; tradeType: TradeType; priceImpact: Fraction; }; export declare function parseQuoteResult(quoteResult: Result, route: Route, amountSpecified: CoinAmount, tradeType: TradeType): { route: Route; amountIn: CoinAmount; amountOut: CoinAmount; gasEstimate: bigint; tradeType: TradeType; priceImpact: Fraction; }; export declare function getQuotesForRoutes(provider: Provider, quoterContractAddress: string, routes: Route[], amountSpecified: CoinAmount, tradeType: TradeType, blockTag: BlockTag): Promise;