1// generated by diplomat-tool 2import type { FixedDecimalLimitError } from "./FixedDecimalLimitError" 3import type { FixedDecimalParseError } from "./FixedDecimalParseError" 4import type { FixedDecimalRoundingIncrement } from "./FixedDecimalRoundingIncrement" 5import type { FixedDecimalSign } from "./FixedDecimalSign" 6import type { FixedDecimalSignDisplay } from "./FixedDecimalSignDisplay" 7import type { FixedDecimalSignedRoundingMode } from "./FixedDecimalSignedRoundingMode" 8import type { pointer, codepoint } from "./diplomat-runtime.d.ts"; 9 10 11/** See the [Rust documentation for `FixedDecimal`](https://docs.rs/fixed_decimal/latest/fixed_decimal/struct.FixedDecimal.html) for more information. 12*/ 13 14 15export class Decimal { 16 17 get ffiValue(): pointer; 18 19 static fromNumber(v: number): Decimal; 20 21 static fromBigInt(v: bigint): Decimal; 22 23 static fromNumberWithLowerMagnitude(f: number, magnitude: number): Decimal; 24 25 static fromNumberWithSignificantDigits(f: number, digits: number): Decimal; 26 27 static fromNumberWithRoundTripPrecision(f: number): Decimal; 28 29 static fromString(v: string): Decimal; 30 31 digitAt(magnitude: number): number; 32 33 get magnitudeStart(): number; 34 35 get magnitudeEnd(): number; 36 37 get nonzeroMagnitudeStart(): number; 38 39 get nonzeroMagnitudeEnd(): number; 40 41 get isZero(): boolean; 42 43 multiplyPow10(power: number): void; 44 45 get sign(): FixedDecimalSign; 46 47 set sign(sign: FixedDecimalSign); 48 49 applySignDisplay(signDisplay: FixedDecimalSignDisplay): void; 50 51 trimStart(): void; 52 53 trimEnd(): void; 54 55 trimEndIfInteger(): void; 56 57 padStart(position: number): void; 58 59 padEnd(position: number): void; 60 61 setMaxPosition(position: number): void; 62 63 round(position: number): void; 64 65 ceil(position: number): void; 66 67 expand(position: number): void; 68 69 floor(position: number): void; 70 71 trunc(position: number): void; 72 73 roundWithMode(position: number, mode: FixedDecimalSignedRoundingMode): void; 74 75 roundWithModeAndIncrement(position: number, mode: FixedDecimalSignedRoundingMode, increment: FixedDecimalRoundingIncrement): void; 76 77 concatenateEnd(other: Decimal): boolean; 78 79 toString(): string; 80}