UNPKG

@helium/currency

Version:

Utilities for handling different currency types on the Helium blockchain

32 lines 1.52 kB
import BigNumber from 'bignumber.js'; import { AnyCurrencyType } from './CurrencyType'; import { NetworkTokens, USDollars, DataCredits, BaseCurrencyType, TestNetworkTokens, Ticker } from './currency_types'; type StringFormatOptions = { decimalSeparator?: string; groupSeparator?: string; showTicker?: boolean; roundingMode?: BigNumber.RoundingMode; showTrailingZeroes?: boolean; }; export default class Balance<T extends BaseCurrencyType> { type: T; integerBalance: number; floatBalance: number; bigBalance: BigNumber; bigInteger: BigNumber; constructor(integerBalance: number | undefined, type: T); static fromFloat(float: number, currencyType: AnyCurrencyType): Balance<AnyCurrencyType>; static fromIntAndTicker(integerBalance: number, ticker?: Ticker): Balance<BaseCurrencyType>; static fromFloatAndTicker(float: number, ticker: Ticker): Balance<AnyCurrencyType>; toString(maxDecimalPlaces?: number, options?: StringFormatOptions): string; plus(balance: Balance<T>): Balance<T>; minus(balance: Balance<T>): Balance<T>; times(n: number): Balance<T>; dividedBy(n: number): Balance<T>; toNetworkTokens(oraclePrice?: Balance<USDollars>): Balance<NetworkTokens>; toTestNetworkTokens(oraclePrice?: Balance<USDollars>): Balance<TestNetworkTokens>; toUsd(oraclePrice?: Balance<USDollars>): Balance<USDollars>; toDataCredits(oraclePrice?: Balance<USDollars>): Balance<DataCredits>; } export {}; //# sourceMappingURL=Balance.d.ts.map