import { Long } from "@hiero-ledger/sdk";
export type BigDecimalFormat = string | number | undefined;
export default class BigDecimal {
    #private;
    get format(): {
        decimals: number;
    };
    get value(): string;
    get decimals(): number;
    static ZERO: BigDecimal;
    static MINUSONE: BigDecimal;
    constructor(value: string | bigint, format?: BigDecimalFormat, decimals?: number);
    addUnsafe(other: BigDecimal): BigDecimal;
    subUnsafe(other: BigDecimal): BigDecimal;
    mulUnsafe(other: BigDecimal): BigDecimal;
    divUnsafe(other: BigDecimal): BigDecimal;
    floor(): BigDecimal;
    ceiling(): BigDecimal;
    round(decimals?: number | undefined): BigDecimal;
    isZero(): boolean;
    isNegative(): boolean;
    toUnsafeFloat(): number;
    isGreaterOrEqualThan(other: BigDecimal): boolean;
    isGreaterThan(other: BigDecimal): boolean;
    isLowerThan(other: BigDecimal): boolean;
    isLowerOrEqualThan(other: BigDecimal): boolean;
    isEqualThan(other: BigDecimal): boolean;
    toBigInt(): bigint;
    toFixedNumber(): string;
    toHexString(): string;
    toString(): string;
    setDecimals(value: number): BigDecimal;
    private splitNumber;
    static getDecimalsFromString(val: string): number;
    toLong(): Long;
    static fromString(value: string, format?: string | number | undefined): BigDecimal;
    static fromStringFixed(value: string, decimals: number): BigDecimal;
    static fromValue(value: bigint, decimals?: number, format?: string | number): BigDecimal;
    static isBigDecimal(value: string | BigDecimal): boolean;
}
