import { BigNumberData, BigNumberFormatOptions } from "./types";
declare const SORT: {
    bubble(bigs: Array<BigNumber>): BigNumber[];
    selection(bigs: Array<BigNumber>): BigNumber[];
    insertion(bigs: Array<BigNumber>): BigNumber[];
};
declare class BigNumber {
    private _value;
    private _integer;
    private _decimal;
    private _options;
    private _nevigate;
    static MAX_INTEGER: number;
    static MIN_INTEGER: number;
    static MAX_VALUE: number;
    static MIN_VALUE: number;
    constructor(value?: BigNumberData, options?: BigNumberFormatOptions);
    get value(): BigNumberData;
    get int(): string;
    get dec(): string;
    get negative(): boolean;
    get isDecimal(): boolean;
    get empty(): boolean;
    get formatValue(): string;
    sameSign(big: BigNumber): boolean;
    eq(big: BigNumber): boolean;
    lt(big: BigNumber): boolean;
    lte(big: BigNumber): boolean;
    gt(big: BigNumber): boolean;
    gte(big: BigNumber): boolean;
    abs(): BigNumber;
    add(...bigs: Array<BigNumber>): BigNumber;
    sub(...bigs: Array<BigNumber>): BigNumber;
    mul(): void;
    div(big: BigNumber): BigNumber;
    floor(): BigNumber;
    ceil(): BigNumber;
    round(): BigNumber;
    toString(): string;
    format(options?: BigNumberFormatOptions): string;
    revert(value: string): string | number;
    revertFormat(value: string): string | number;
    revertComma(value: string): string | number;
    match(value: BigNumberData): string;
    isMatch(value: BigNumberData): boolean;
    isNumber(value: BigNumberData): boolean;
    isInt(value: BigNumberData): boolean;
    isFormat(value: string): boolean;
    isComma(value: string): boolean;
    isOutOfMax(value: BigNumberData): boolean;
    isOutOfMin(value: BigNumberData): boolean;
    static from(value: BigNumber | BigNumberData, options?: BigNumberFormatOptions): BigNumber;
    static format(value: BigNumberData, options?: BigNumberFormatOptions): string;
    static revert(value: string, options?: BigNumberFormatOptions): string | number;
    static revertFormat(value: string): string | number;
    static revertComma(value: string): string | number;
    static match(value: BigNumberData): string;
    static isMatch(value: BigNumberData): boolean;
    static isNumber(value: BigNumberData): boolean;
    static isInt(value: BigNumberData): boolean;
    static isFormat(value: string): boolean;
    static isComma(value: string): boolean;
    static isOutOfMax(value: BigNumberData): boolean;
    static isOutOfMin(value: BigNumberData): boolean;
    static sort(bigs: Array<BigNumber>, algorithm?: keyof typeof SORT): BigNumber[];
    static min(big: BigNumber, ...bigs: Array<BigNumber>): BigNumber;
    static max(big: BigNumber, ...bigs: Array<BigNumber>): BigNumber;
}
export default BigNumber;
