@mozaic-fi/intent-swapper-sdk-common
Version:
Intent Swapper Common SDK
84 lines (83 loc) • 4.57 kB
TypeScript
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;