import { ethers, TransactionLike } from "ethers"; import { type Curve } from "./curve.js"; import { IRoute } from "./interfaces"; export declare function setRouterBlacklist(this: Curve, blacklist: string[]): void; export declare function getBestRouteAndOutput(this: Curve, inputCoin: string, outputCoin: string, amount: number | string): Promise<{ route: IRoute; output: string; }>; export declare function getArgs(this: Curve, route: IRoute): { _route: string[]; _swapParams: number[][]; _pools?: string[]; _basePools?: string[]; _baseTokens?: string[]; _secondBasePools?: string[]; _secondBaseTokens?: string[]; }; export declare function swapExpected(this: Curve, inputCoin: string, outputCoin: string, amount: number | string): Promise; export declare function swapRequired(this: Curve, inputCoin: string, outputCoin: string, outAmount: number | string): Promise; export declare function swapPriceImpact(this: Curve, inputCoin: string, outputCoin: string, amount: number | string): Promise; export declare function swapIsApproved(this: Curve, inputCoin: string, amount: number | string): Promise; export declare function swapApproveEstimateGas(this: Curve, inputCoin: string, amount: number | string): Promise; export declare function swapApprove(this: Curve, inputCoin: string, amount: number | string): Promise; export declare function swapPopulateApprove(this: Curve, inputCoin: string, amount: number | string, isMax: boolean | undefined, userAddress: string): Promise; export declare function swapEstimateGas(this: Curve, inputCoin: string, outputCoin: string, amount: number | string): Promise; export declare function swap(this: Curve, inputCoin: string, outputCoin: string, amount: number | string, slippage?: number): Promise; export declare function populateSwap(this: Curve, inputCoin: string, outputCoin: string, amount: number | string, slippage?: number): Promise; export declare function getSwappedAmount(this: Curve, tx: ethers.ContractTransactionResponse, outputCoin: string): Promise; export declare function approveFromCalldataEstimateGas(this: Curve, tx: ethers.TransactionRequest): Promise; export declare function approveFromCalldata(this: Curve, tx: ethers.TransactionRequest): Promise; export declare function swapFromCalldataEstimateGas(this: Curve, tx: ethers.TransactionRequest): Promise; export declare function swapFromCalldata(this: Curve, tx: ethers.TransactionRequest): Promise;