@etsoo/shared
Version:
TypeScript shared utilities and functions
62 lines (61 loc) • 2 kB
TypeScript
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;
}