import BigNumber from 'bignumber.js'; import { TokenBaseStruct } from "./models/token-base-struct"; import { Token, TokenStruct } from "./token"; import { BlockchainName } from "../../core/blockchain/models/blockchain-name"; export type PriceTokenStruct = TokenStruct & { price: BigNumber; }; /** * Contains token structure with price in usd per 1 unit. */ export declare class PriceToken extends Token { /** * Creates PriceToken based on token's address and blockchain. * @param tokenBaseStruct Base token structure. */ static createToken(tokenBaseStruct: TokenBaseStruct): Promise>; /** * Creates PriceToken, fetching token's price. * @param token Token structure. */ static createFromToken(token: TokenStruct): Promise>; private _price; get price(): BigNumber; /** * Serializes priceToken and its price to struct object. */ get asStruct(): PriceTokenStruct; constructor(tokenStruct: PriceTokenStruct); /** * Fetches current token price and saves it into token. */ getAndUpdateTokenPrice(): Promise; private updateTokenPrice; /** * Clones token with fetching new price. */ cloneAndCreate(tokenStruct?: Partial): Promise; clone(tokenStruct?: Partial): PriceToken; }