import type { Opts } from "@xlabs-xyz/const-utils"; export type Rationalish = Rational | number | bigint; export type ThousandsSep = "" | "," | "_"; export type ToFixedOptions = { thousandsSep: ThousandsSep; trimZeros: boolean; }; export declare class Rational { private static defaultPrecision; static setDefaultPrecision(precision: number): void; private readonly n; private readonly d; private constructor(); static from(value: Rationalish | string): Rational; static from(value: number, precision?: number): Rational; static from(numerator: bigint, denominator?: bigint): Rational; unwrap(): [bigint, bigint]; isInteger(): boolean; sign(): -1n | 0n | 1n; ceil(): bigint; round(): bigint; floor(): bigint; toNumber(): number; toString(): string; toFixed(precision?: number, opts?: Opts): string; eq(other: Rationalish): boolean; ne(other: Rationalish): boolean; gt(other: Rationalish): boolean; ge(other: Rationalish): boolean; lt(other: Rationalish): boolean; le(other: Rationalish): boolean; abs(): Rational; neg(): Rational; inv(): Rational; add(other: Rationalish): Rational; sub(other: Rationalish): Rational; mul(other: Rationalish): Rational; div(other: Rationalish): Rational; mod(other: Rationalish): Rational; private static addSep; private static gcd; private static stripSign; private static normalize; private static checkPrecision; } //# sourceMappingURL=rational.d.ts.map