declare global {
    interface Number {
        /**
         * To the exact precision number avoiding precision lost
         * @param precision Precision
         */
        toExact(precision?: number): number;
    }
}
export declare namespace NumberUtils {
    /**
     * Format number
     * @param input Input
     * @param locale Locale
     * @param options Options
     * @returns Result
     */
    function format(input: number | bigint, locale?: string | string[], options?: Intl.NumberFormatOptions): string;
    /**
     * Format money
     * @param input Input
     * @param currency Currency, like USD for US dollar
     * @param locale Locale
     * @param isInteger Is integer value
     * @param options Options
     * @returns Result
     */
    function formatMoney(input: number | bigint, currency?: string, locale?: string | string[], isInteger?: boolean, options?: Intl.NumberFormatOptions): string;
    /**
     * Format file size
     * @param size File size
     * @param fractionDigits Fraction digits
     * @returns Result
     */
    function formatFileSize(size: number, fractionDigits?: number): string;
    /**
     * Get currency symbol or name from ISO code
     * @param code ISO currency code, like USD / CNY
     * @param display Display format
     * @param locale Locale
     * @returns Result
     */
    function getCurrencySymbol(code: string, display?: "symbol" | "narrowSymbol" | "name", locale?: string): string | undefined;
    /**
     * Parse number
     * @param rawData Raw data
     */
    function parse(rawData: unknown): number | undefined;
    /**
     * Parse number with default value
     * @param rawData Raw data
     * @param defaultValue Default value
     */
    function parse(rawData: unknown, defaultValue: number): number;
    /**
     * Parse float value and unit
     * @param input Input string
     * @returns Result, like [number, string]
     */
    const parseWithUnit: (input: string) => [number, string] | undefined;
}
