import { TransactionResponse } from '@ethersproject/providers'; import { BigNumber } from 'ethers'; import { CrocContext } from './context'; import { BlockTag } from './position'; export type TokenQty = BigNumber | string | number; type ApproveParams = { address: string; weiQty: BigNumber; gasLimit: BigNumber; }; export declare class CrocTokenView { constructor(context: Promise, tokenAddr: string); approve(approveQty?: TokenQty): Promise; approveRouter(approveQty?: TokenQty): Promise; approveParams(addr: string, approveQty?: TokenQty): Promise; private approveAddr; approveBypassRouter(): Promise; wallet(address: string, block?: BlockTag): Promise; walletDisplay(address: string, block?: BlockTag): Promise; balance(address: string, block?: BlockTag): Promise; balanceDisplay(address: string, block?: BlockTag): Promise; allowance(address: string): Promise; roundQty(qty: TokenQty): Promise; private truncFraction; normQty(qty: TokenQty): Promise; toDisplay(qty: TokenQty): Promise; private resolve; private resolveWrite; deposit(qty: TokenQty, recv: string): Promise; withdraw(qty: TokenQty, recv: string): Promise; transfer(qty: TokenQty, recv: string): Promise; private surplusOp; readonly tokenAddr: string; readonly context: Promise; readonly decimals: Promise; readonly isNativeEth: boolean; } export declare class CrocEthView extends CrocTokenView { constructor(context: Promise); msgValOverSurplus(ethNeeded: BigNumber): Promise; } export declare function sortBaseQuoteViews(tokenA: CrocTokenView, tokenB: CrocTokenView): [CrocTokenView, CrocTokenView]; export {};