UNPKG

@mozaic-fi/intent-swapper-sdk-common

Version:
84 lines (83 loc) 4.57 kB
import { BigNumber, BigNumberish } from 'ethers'; import { Token, TokenTypes } from './token'; import { TokenAmount, TokenAmounts } from './token-amount'; export interface TokenAmountWithMinObject { token: TokenTypes; amount: string; amountMin: string; } export type TokenAmountWithMinPair = [TokenTypes, string, string]; export declare class TokenAmountWithMin { readonly token: Token; amount: string; amountMin: string; constructor(token: TokenTypes, amount?: string, amountMin?: string); constructor(tokenAmount: TokenAmountWithMin | TokenAmountWithMinObject | TokenAmountWithMinPair | TokenAmount); static from(tokenAmount: TokenAmountWithMinTypes): TokenAmountWithMin; static precise(amount: string, decimals: number): string; get amountWei(): BigNumber; get amountMinWei(): BigNumber; precise(amount: string): string; precise(tokenAmount: TokenAmountWithMin): string; set(amount: string, amountMin?: string): TokenAmountWithMin; set(tokenAmount: TokenAmountWithMin): TokenAmountWithMin; setWei(amountWei: BigNumberish, amountMinWei?: BigNumberish): this; add(amount: string, amountMin?: string): TokenAmountWithMin; add(tokenAmount: TokenAmountWithMin): TokenAmountWithMin; add(tokenAmount: TokenAmount): TokenAmountWithMin; addWei(amountWei: BigNumberish, amountMinWei?: BigNumberish): this; sub(amount: string, amountMin?: string): TokenAmountWithMin; sub(tokenAmount: TokenAmountWithMin): TokenAmountWithMin; subWei(amountWei: BigNumberish, amountMinWei?: BigNumberish): this; get isZero(): boolean; eq(amount: string, amountMin?: string): boolean; eq(tokenAmount: TokenAmountWithMin): boolean; gt(amount: string, amountMin?: string): boolean; gt(tokenAmount: TokenAmountWithMin): boolean; gte(amount: string, amountMin?: string): boolean; gte(tokenAmount: TokenAmountWithMin): boolean; lt(amount: string, amountMin?: string): boolean; lt(tokenAmount: TokenAmountWithMin): boolean; lte(amount: string, amountMin?: string): boolean; lte(tokenAmount: TokenAmountWithMin): boolean; toObject(): TokenAmountWithMinObject; toValues(): [string, BigNumber, BigNumber]; clone(): TokenAmountWithMin; } export type TokenAmountWithMinTypes = TokenAmountWithMinObject | TokenAmountWithMinPair | TokenAmountWithMin | TokenAmount; export declare function isTokenAmountWithMinObject(v: any): v is TokenAmountWithMinObject; export declare function isTokenAmountWithMinPair(v: any): v is TokenAmountWithMinPair; export declare function isTokenAmountWithMin(v: any): v is TokenAmountWithMin; export declare function isTokenAmountWithMinTypes(v: any): v is TokenAmountWithMinTypes; export declare class TokenAmountsWithMin { tokenAmountMap: Record<string, TokenAmountWithMin>; constructor(tokenAmounts: TokenAmountWithMinTypes[]); constructor(...tokenAmounts: TokenAmountWithMinTypes[]); static from(tokenAmounts: TokenAmountsWithMinTypes): TokenAmountsWithMin; static fromTokenAmounts(tokenAmounts: TokenAmounts): TokenAmountsWithMin; get length(): number; at(index: number): TokenAmountWithMin; get(token: TokenTypes): TokenAmountWithMin; set(token: TokenTypes, amount: string): TokenAmountsWithMin; set(tokenAmount: TokenAmountWithMinTypes): TokenAmountsWithMin; has(token: TokenTypes): boolean; add(token: TokenTypes, amount: string): TokenAmountsWithMin; add(tokenAmount: TokenAmountWithMinTypes): TokenAmountsWithMin; sub(token: TokenTypes, amount: string): TokenAmountsWithMin; sub(tokenAmount: TokenAmountWithMinTypes): TokenAmountsWithMin; toArray(): TokenAmountWithMin[]; toObject(): TokenAmountWithMinObject[]; toJSON(): TokenAmountWithMinObject[]; toValues(): [string[], BigNumber[], BigNumber[]]; compact(): TokenAmountsWithMin; get isEmpty(): boolean; get native(): TokenAmountWithMin | undefined; get erc20(): TokenAmountsWithMin; get tokens(): Token[]; forEach(callbackfn: (value: TokenAmountWithMin, index: number, array: TokenAmountsWithMin) => void): void; map<U>(callbackfn: (value: TokenAmountWithMin, index: number, array: TokenAmountsWithMin) => U): U[]; merge(sources: TokenAmountsWithMin | TokenAmountsWithMin[]): TokenAmountsWithMin; } export type TokenAmountsWithMinTypes = TokenAmountWithMinTypes[] | TokenAmountsWithMin; export declare function isTokenAmountsWithMin(v: any): v is TokenAmountsWithMin; export declare function isTokenAmountsWithMinTypes(v: any): v is TokenAmountsWithMinTypes;