import { TokenBaseStruct } from "./models/token-base-struct"; import { BlockchainName } from "../../core/blockchain/models/blockchain-name"; export type TokenStruct = { blockchain: T; address: string; name: string; symbol: string; decimals: number; image?: string; }; /** * Contains main token's fields. */ export declare class Token { /** * Creates Token based on token's address and blockchain. * @param tokenBaseStruct Base token structure. */ static createToken(tokenBaseStruct: TokenBaseStruct): Promise>; /** * Creates array of Tokens based on tokens' addresses and blockchain. */ static createTokens(tokensAddresses: string[] | ReadonlyArray, blockchain: T): Promise[]>; /** * Maps provided tokens to their addresses. */ static tokensToAddresses(tokens: Token[]): string[]; readonly blockchain: T; readonly address: string; readonly name: string; readonly symbol: string; readonly decimals: number; readonly image: string | undefined; get isNative(): boolean; get isWrapped(): boolean; constructor(tokenStruct: TokenStruct); isEqualTo(token: TokenBaseStruct): boolean; isEqualToTokens(tokens: TokenBaseStruct[]): boolean; clone(tokenStruct?: Partial): Token; }