import { RoundingModes as Modes, RoundingModes } from "./roundingModes";
declare class bigDecimal {
    private value;
    static RoundingModes: typeof Modes;
    private static validate;
    constructor(number?: number | string | bigint);
    getValue(): string;
    setValue(num: number | string | bigint): void;
    static getPrettyValue(number: any, digits?: number, separator?: string): string;
    getPrettyValue(digits?: number, separator?: string): string;
    static round(number: any, precision?: number, mode?: Modes): string;
    round(precision?: number, mode?: Modes): bigDecimal;
    static abs(number: any): string;
    abs(): bigDecimal;
    static floor(number: any): any;
    floor(): bigDecimal;
    static ceil(number: any): any;
    ceil(): bigDecimal;
    static add(number1: any, number2: any): string;
    add(number: bigDecimal): bigDecimal;
    static subtract(number1: any, number2: any): string;
    subtract(number: bigDecimal): bigDecimal;
    static multiply(number1: any, number2: any): string;
    multiply(number: bigDecimal): bigDecimal;
    static divide(number1: any, number2: any, precision?: number, mode?: RoundingModes): string;
    divide(number: bigDecimal, precision?: number, mode?: RoundingModes): bigDecimal;
    static modulus(number1: any, number2: any): string;
    modulus(number: bigDecimal): bigDecimal;
    static compareTo(number1: any, number2: any): 0 | 1 | -1;
    compareTo(number: bigDecimal): 0 | 1 | -1;
    static negate(number: any): string;
    negate(): bigDecimal;
    static stripTrailingZero(number: any): any;
    stripTrailingZero(): bigDecimal;
}
export { bigDecimal };
export default bigDecimal;
