Spaces:
Sleeping
Sleeping
| export default Decimal; | |
| export declare class Decimal { | |
| /** | |
| * The Decimal constructor and exported function. | |
| * Return a new Decimal instance. | |
| * | |
| * @param value {number|string|Decimal} A numeric value. | |
| * | |
| */ | |
| constructor(value: Numeric) | |
| /** | |
| * Return a new Decimal whose value is the absolute value of this Decimal. | |
| */ | |
| absoluteValue(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the absolute value of this Decimal. | |
| */ | |
| abs(): Decimal; | |
| /** | |
| * Return | |
| * 1 if the value of this Decimal is greater than the value of `y`, | |
| * -1 if the value of this Decimal is less than the value of `y`, | |
| * 0 if they have the same value | |
| */ | |
| comparedTo(y: Numeric): 1|0|-1; | |
| /** | |
| * Return | |
| * 1 if the value of this Decimal is greater than the value of `y`, | |
| * -1 if the value of this Decimal is less than the value of `y`, | |
| * 0 if they have the same value | |
| */ | |
| cmp(y: Numeric): 1|0|-1; | |
| /** | |
| * Return the number of decimal places of the value of this Decimal. | |
| */ | |
| decimalPlaces(): number; | |
| /** | |
| * Return the number of decimal places of the value of this Decimal. | |
| */ | |
| dp(): number; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal divided by `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| dividedBy(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal divided by `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| div(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the integer part of dividing the value of this Decimal | |
| * by the value of `y`, truncated to `precision` significant digits. | |
| * | |
| */ | |
| dividedToIntegerBy(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the integer part of dividing the value of this Decimal | |
| * by the value of `y`, truncated to `precision` significant digits. | |
| * | |
| */ | |
| idiv(y: Numeric): Decimal; | |
| /** | |
| * Return true if the value of this Decimal is equal to the value of `y`, otherwise return false. | |
| */ | |
| equals(y: Numeric): boolean; | |
| /** | |
| * Return true if the value of this Decimal is equal to the value of `y`, otherwise return false. | |
| */ | |
| eq(y: Numeric): boolean; | |
| /** | |
| * Return the (base 10) exponent value of this Decimal (this.e is the base 10000000 exponent). | |
| */ | |
| exponent(): number; | |
| /** | |
| * Return true if the value of this Decimal is greater than the value of `y`, otherwise return | |
| * false. | |
| */ | |
| greaterThan(y: Numeric): boolean; | |
| /** | |
| * Return true if the value of this Decimal is greater than the value of `y`, otherwise return | |
| * false. | |
| */ | |
| gt(y: Numeric): boolean; | |
| /** | |
| * Return true if the value of this Decimal is greater than or equal to the value of `y`, | |
| * otherwise return false. | |
| * | |
| */ | |
| greaterThanOrEqualTo(y: Numeric): boolean; | |
| /** | |
| * Return true if the value of this Decimal is greater than or equal to the value of `y`, | |
| * otherwise return false. | |
| * | |
| */ | |
| gte(y: Numeric): boolean; | |
| /** | |
| * Return true if the value of this Decimal is an integer, otherwise return false. | |
| * | |
| */ | |
| isInteger(): boolean; | |
| /** | |
| * Return true if the value of this Decimal is an integer, otherwise return false. | |
| * | |
| */ | |
| isint(): boolean; | |
| /** | |
| * Return true if the value of this Decimal is negative, otherwise return false. | |
| * | |
| */ | |
| isNegative(): boolean; | |
| /** | |
| * Return true if the value of this Decimal is negative, otherwise return false. | |
| * | |
| */ | |
| isneg(): boolean; | |
| /** | |
| * Return true if the value of this Decimal is positive, otherwise return false. | |
| * | |
| */ | |
| isPositive(): boolean; | |
| /** | |
| * Return true if the value of this Decimal is positive, otherwise return false. | |
| * | |
| */ | |
| ispos(): boolean; | |
| /** | |
| * Return true if the value of this Decimal is 0, otherwise return false. | |
| * | |
| */ | |
| isZero(): boolean; | |
| /** | |
| * Return true if the value of this Decimal is less than `y`, otherwise return false. | |
| * | |
| */ | |
| lessThan(y: Numeric): boolean; | |
| /** | |
| * Return true if the value of this Decimal is less than `y`, otherwise return false. | |
| * | |
| */ | |
| lt(y: Numeric): boolean; | |
| /** | |
| * Return true if the value of this Decimal is less than or equal to `y`, otherwise return false. | |
| * | |
| */ | |
| lessThanOrEqualTo(y: Numeric): boolean; | |
| /** | |
| * Return true if the value of this Decimal is less than or equal to `y`, otherwise return false. | |
| * | |
| */ | |
| lte(y: Numeric): boolean; | |
| /** | |
| * Return the logarithm of the value of this Decimal to the specified base, truncated to | |
| * `precision` significant digits. | |
| * | |
| * If no base is specified, return log[10](x). | |
| * | |
| * log[base](x) = ln(x) / ln(base) | |
| * | |
| * The maximum error of the result is 1 ulp (unit in the last place). | |
| * | |
| */ | |
| logarithm(base?: Numeric): Decimal; | |
| /** | |
| * Return the logarithm of the value of this Decimal to the specified base, truncated to | |
| * `precision` significant digits. | |
| * | |
| * If no base is specified, return log[10](x). | |
| * | |
| * log[base](x) = ln(x) / ln(base) | |
| * | |
| * The maximum error of the result is 1 ulp (unit in the last place). | |
| * | |
| */ | |
| log(base?: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal minus `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| minus(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal minus `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| sub(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal modulo `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| modulo(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal modulo `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| mod(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the natural exponential of the value of this Decimal, | |
| * i.e. the base e raised to the power the value of this Decimal, truncated to `precision` | |
| * significant digits. | |
| * | |
| */ | |
| naturalExponetial(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the natural exponential of the value of this Decimal, | |
| * i.e. the base e raised to the power the value of this Decimal, truncated to `precision` | |
| * significant digits. | |
| * | |
| */ | |
| exp(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the natural logarithm of the value of this Decimal, | |
| * truncated to `precision` significant digits. | |
| * | |
| */ | |
| naturalLogarithm(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the natural logarithm of the value of this Decimal, | |
| * truncated to `precision` significant digits. | |
| * | |
| */ | |
| ln(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal negated, i.e. as if multiplied by | |
| * -1. | |
| * | |
| */ | |
| negated(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal negated, i.e. as if multiplied by | |
| * -1. | |
| * | |
| */ | |
| neg(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal plus `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| plus(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal plus `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| add(y: Numeric): Decimal; | |
| /** | |
| * Return the number of significant digits of the value of this Decimal. | |
| * | |
| * @param zeros {boolean|number} Whether to count integer-part trailing zeros: true, false, 1 or 0. | |
| */ | |
| precision(zeros: boolean|number): number; | |
| /** | |
| * Return the number of significant digits of the value of this Decimal. | |
| * | |
| * @param zeros {boolean|number} Whether to count integer-part trailing zeros: true, false, 1 or 0. | |
| */ | |
| sd(zeros: boolean|number): number; | |
| /** | |
| * Return a new Decimal whose value is the square root of this Decimal, truncated to `precision` | |
| * significant digits. | |
| * | |
| */ | |
| squareRoot(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the square root of this Decimal, truncated to `precision` | |
| * significant digits. | |
| * | |
| */ | |
| sqrt(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal times `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| times(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal times `y`, truncated to | |
| * `precision` significant digits. | |
| * | |
| */ | |
| mul(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `dp` | |
| * decimal places using rounding mode `rm` or `rounding` if `rm` is omitted. | |
| * | |
| * If `dp` is omitted, return a new Decimal whose value is the value of this Decimal. | |
| * | |
| * @param dp {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive. | |
| * @param rm {number} Rounding mode. Integer, 0 to 8 inclusive. | |
| * | |
| */ | |
| toDecimalPlaces(dp?: number, rm?: number): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `dp` | |
| * decimal places using rounding mode `rm` or `rounding` if `rm` is omitted. | |
| * | |
| * If `dp` is omitted, return a new Decimal whose value is the value of this Decimal. | |
| * | |
| * @param dp {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive. | |
| * @param rm {number} Rounding mode. Integer, 0 to 8 inclusive. | |
| * | |
| */ | |
| todp(dp?: number, rm?: number): Decimal; | |
| /** | |
| * Return a string representing the value of this Decimal in exponential notation rounded to | |
| * `dp` fixed decimal places using rounding mode `rounding`. | |
| * | |
| * @param dp {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive. | |
| * @param rm {number} Rounding mode. Integer, 0 to 8 inclusive. | |
| * | |
| */ | |
| toExponential(dp?: number, rm?: number): string; | |
| /** | |
| * Return a string representing the value of this Decimal in normal (fixed-point) notation to | |
| * `dp` fixed decimal places and rounded using rounding mode `rm` or `rounding` if `rm` is | |
| * omitted. | |
| * | |
| * As with JavaScript numbers, (-0).toFixed(0) is '0', but e.g. (-0.00001).toFixed(0) is '-0'. | |
| * | |
| * @param dp {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive. | |
| * @param rm {number} Rounding mode. Integer, 0 to 8 inclusive. | |
| * | |
| * (-0).toFixed(0) is '0', but (-0.1).toFixed(0) is '-0'. | |
| * (-0).toFixed(1) is '0.0', but (-0.01).toFixed(1) is '-0.0'. | |
| * (-0).toFixed(3) is '0.000'. | |
| * (-0.5).toFixed(0) is '-0'. | |
| * | |
| */ | |
| toFixed(dp?: number, rm?: number): string; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal rounded to a whole number using | |
| * rounding mode `rounding`. | |
| * | |
| */ | |
| toInteger(): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal rounded to a whole number using | |
| * rounding mode `rounding`. | |
| * | |
| */ | |
| toint(): Decimal; | |
| /** | |
| * Return the value of this Decimal converted to a number primitive. | |
| * | |
| */ | |
| toNumber(): number; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal raised to the power `y`, | |
| * truncated to `precision` significant digits. | |
| * | |
| * For non-integer or very large exponents pow(x, y) is calculated using | |
| * | |
| * x^y = exp(y*ln(x)) | |
| * | |
| * The maximum error is 1 ulp (unit in last place). | |
| * | |
| * @param y {number|string|Decimal} The power to which to raise this Decimal. | |
| * | |
| */ | |
| toPower(y: Numeric): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal raised to the power `y`, | |
| * truncated to `precision` significant digits. | |
| * | |
| * For non-integer or very large exponents pow(x, y) is calculated using | |
| * | |
| * x^y = exp(y*ln(x)) | |
| * | |
| * The maximum error is 1 ulp (unit in last place). | |
| * | |
| * @param y {number|string|Decimal} The power to which to raise this Decimal. | |
| * | |
| */ | |
| pow(y: Numeric): Decimal; | |
| /** | |
| * Return a string representing the value of this Decimal rounded to `sd` significant digits | |
| * using rounding mode `rounding`. | |
| * | |
| * Return exponential notation if `sd` is less than the number of digits necessary to represent | |
| * the integer part of the value in normal notation. | |
| * | |
| * @param sd {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive. | |
| * @param rm {number} Rounding mode. Integer, 0 to 8 inclusive. | |
| * | |
| */ | |
| toPrecision(sd?: number, rm?: number): string; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `sd` | |
| * significant digits using rounding mode `rm`, or to `precision` and `rounding` respectively if | |
| * omitted. | |
| * | |
| * @param sd {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive. | |
| * @param rm {number} Rounding mode. Integer, 0 to 8 inclusive. | |
| * | |
| */ | |
| toSignificantDigits(sd?: number, rm?: number): Decimal; | |
| /** | |
| * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `sd` | |
| * significant digits using rounding mode `rm`, or to `precision` and `rounding` respectively if | |
| * omitted. | |
| * | |
| * @param sd {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive. | |
| * @param rm {number} Rounding mode. Integer, 0 to 8 inclusive. | |
| * | |
| */ | |
| tosd(sd?: number, rm?: number): Decimal; | |
| /** | |
| * Return a string representing the value of this Decimal. | |
| * | |
| * Return exponential notation if this Decimal has a positive exponent equal to or greater than | |
| * `toExpPos`, or a negative exponent equal to or less than `toExpNeg`. | |
| * | |
| */ | |
| toString(): string; | |
| /** | |
| * Return a string representing the value of this Decimal. | |
| * | |
| * Return exponential notation if this Decimal has a positive exponent equal to or greater than | |
| * `toExpPos`, or a negative exponent equal to or less than `toExpNeg`. | |
| * | |
| */ | |
| valueOf(): string; | |
| /** | |
| * Return a string representing the value of this Decimal. | |
| * | |
| * Return exponential notation if this Decimal has a positive exponent equal to or greater than | |
| * `toExpPos`, or a negative exponent equal to or less than `toExpNeg`. | |
| * | |
| */ | |
| val(): string; | |
| /** | |
| * Return a string representing the value of this Decimal. | |
| * | |
| * Return exponential notation if this Decimal has a positive exponent equal to or greater than | |
| * `toExpPos`, or a negative exponent equal to or less than `toExpNeg`. | |
| * | |
| */ | |
| toJSON(): string; | |
| /** | |
| * Create and return a Decimal constructor with the same configuration properties as this Decimal | |
| * constructor. | |
| * | |
| * @param config? Config | |
| */ | |
| static clone(config?: Config): typeof Decimal; | |
| /** | |
| * Configure global settings for a Decimal constructor. | |
| */ | |
| static config(config: Config): Decimal; | |
| /** | |
| * Configure global settings for a Decimal constructor. | |
| */ | |
| static set(config: Config): Decimal; | |
| // The maximum number of significant digits of the result of a calculation or base conversion. | |
| // E.g. `Decimal.config({ precision: 20 });` | |
| static precision: number; | |
| // The rounding mode used by default by `toInteger`, `toDecimalPlaces`, `toExponential`, | |
| // `toFixed`, `toPrecision` and `toSignificantDigits`. | |
| // | |
| // E.g. | |
| // `Decimal.rounding = 4;` | |
| // `Decimal.rounding = Decimal.ROUND_HALF_UP;` | |
| static rounding: number; | |
| static readonly ROUND_UP: number; | |
| static readonly ROUND_DOWN: number; | |
| static readonly ROUND_CEIL: number; | |
| static readonly ROUND_FLOOR: number; | |
| static readonly ROUND_HALF_UP: number; | |
| static readonly ROUND_HALF_DOWN: number; | |
| static readonly ROUND_HALF_EVEN: number; | |
| static readonly ROUND_HALF_CEIL: number; | |
| static readonly ROUND_HALF_FLOOR: number; | |
| // The exponent value at and beneath which `toString` returns exponential notation. | |
| // JavaScript numbers: -7 | |
| static toExpNeg: number; // 0 to -MAX_E | |
| // The exponent value at and above which `toString` returns exponential notation. | |
| // JavaScript numbers: 21 | |
| static toExpPos: number; // 0 to MAX_E | |
| // The natural logarithm of 10. | |
| static LN10: Decimal; | |
| } | |
| export interface Config { | |
| precision?: number; | |
| rounding?: number; | |
| toExpNeg?: number; | |
| toExpPos?: number; | |
| LN10?: Numeric; | |
| } | |
| export type Numeric = string|number|Decimal; | |