import { BigNumber, Contract, Wallet } from 'ethers';
export declare function getAdjAmount(_amount: string, _decimals: number): BigNumber;
export declare function getBestQuoteForSwapPath(factoryContract: Contract, quoterContract: Contract, tokenIn: string, tokenOut: string, amountIn: BigNumber, slippageTolerance: number, chainId: string): Promise<{
    amountOut: BigNumber;
    path: string[];
    poolFees: number[];
}>;
export declare function getBestQuote(wallet: Wallet, token0: string, token1: string, reverse: boolean, protocol: string, chainId: string, amount: string, slippage: number): Promise<{
    amountOut: BigNumber;
    path: string[];
    poolFees: number[];
}>;
interface Token {
    address: string;
    decimals: number;
    symbol: string;
    name: string;
}
interface TradeRequest {
    chainId: number;
    recipient: string;
    amount: BigNumber;
    tradeType: number;
    currencyAmount: Token;
    currency: Token;
    slippage: number;
}
export declare function route(tradeRequest: TradeRequest): Promise<import("@uniswap/smart-order-router").SwapRoute>;
export {};
