import type { SendOptions } from 'web3-eth-contract'; import { Address, AddressOrSymbol, Allowance, APIError, BuildOptions, NetworkID, PriceString, RateOptions, Transaction } from './types'; import { OptimalRate } from 'paraswap-core'; import { Token } from './lib/token'; import { SwapSide } from './constants'; export declare class ParaSwap { private network; private apiURL; web3Provider?: any; constructor(network?: NetworkID, apiURL?: string, web3Provider?: any); private handleAPIError; private checkDexList; setWeb3Provider(web3Provider: any): this; getTokens(): Promise; getAdapters(): Promise; getRateByRoute(route: AddressOrSymbol[], amount: PriceString, userAddress?: Address, side?: SwapSide, options?: RateOptions, srcDecimals?: number, destDecimals?: number): Promise; getRate(srcToken: AddressOrSymbol, destToken: AddressOrSymbol, amount: PriceString, userAddress?: Address, side?: SwapSide, options?: RateOptions, srcDecimals?: number, destDecimals?: number): Promise; buildTx(srcToken: Address, destToken: Address, srcAmount: PriceString, destAmount: PriceString, priceRoute: OptimalRate, userAddress: Address, partner?: string, partnerAddress?: string, partnerFeeBps?: number, receiver?: Address, options?: BuildOptions, srcDecimals?: number, destDecimals?: number, permit?: string, deadline?: string): Promise; getTokenTransferProxy(_provider?: any): Promise
; getAllowances(userAddress: Address, tokenAddresses: Address[]): Promise; getAllowance(userAddress: Address, tokenAddress: Address): Promise; approveTokenBulk(amount: PriceString, userAddress: Address, tokenAddresses: Address[], _provider?: any): Promise; approveToken(amount: PriceString, userAddress: Address, tokenAddress: Address, _provider?: any, sendOptions?: Omit): Promise; getMarketNames(): Promise; getBalance(userAddress: Address, token: AddressOrSymbol): Promise; getBalances(userAddress: Address): Promise; }