/** * `NumberUtils`: Utilizado para manipulação de numerais. */ export declare class NumberUtils { /** * Converte o dado numérico de string para number. * * @param value Numeral em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico: ######.##). * @returns - Numeral passado. * @example * @"100,12" | 100.12 * @"100.12" | 100.12 * @"-100,12" | -100.12 * @"R$100,12" | 100.12 * @"-R$100,12" | -100.12 * @"string" | NaN */ static stringToNumber: (value: string) => number; /** * Formata o numeral com a precisão informada. * * @param value - Numeral em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico - sem separador de milhares: ######.##). * @param precision - Quantidade de casas decimais. * @param prettyPrecision - Quantidade de zeros nos decimais. * @param defaultValue - Valor padrão caso o value não seja um valor numérico válido. * * @returns - Numeral em formato de String formatado em PT-BR. * @example * Informado: ('10,9845444', 3, 3) | Retorna: '10,985' * Informado: (undefined, 3, 3) | Retorna: NaN * Informado: (undefined, 3, 3, '0,00') | Retorna: 0,00 */ static format: (value: string, precision: number, prettyPrecision?: number, defaultValue?: string) => string; /** * Formata o numeral com a precisão informada e o valor default 0,00 caso o value não seja um numero valido. * * @param value - Numeral em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico - sem separador de milhares: ######.##). * @param precision - Quantidade de casas decimais. * @param prettyPrecision - Quantidade de zeros nos decimais. * * @returns - Numeral em formato de String formatado em PT-BR. * @example * Informado: ('10,9845444', 3, 3) | Retorna: '10,985' * Informado: (undefined, 3, 3) | Retorna: 0,00 */ static safeFormat: (value: string, precision: number, prettyPrecision?: number) => string; /** * Retira os separadores de milhar de um numeral em formato de string. * * @param value - Numeral em formato de string a ser convertido. * @param formatnumber - Formatação de ENTRADA e SAÍDA do utilitário: pt-BR="###.###,##" en-US="###,###.##"; Default: "pt-BR". * * @returns - Numeral em formato de string formatado apenas com separador decimal. * @example * Informado: '95.12' | Retorna: '9512' */ static keepOnlyDecimalSeparator: (value: string, formatnumber?: string) => string; /** * Troca o formato do numeral(string) de "PT-BR" para "EN-US" e vice-versa. * * @param value - Numeral em formato de string a ser convertido. * * @returns - Numeral em formato de string formatado de "PT-BR" para "EN-US" e vice-versa. * @example * Informo: "15,55" | Obtenho: "15.55" * @example * Informo: "27.99" | Obtenho: "27,99" */ static changeFormat: (value: string) => string; /** * Obtém o valor ou o valor padrão, caso o valor seja inválido(NaN/undefined). * * @param value - Valor a ser validado. * @param defaultValue - Valor padrão a ser retornado caso o value seja inválido. * * @returns - O próprio numeral passado ou zero. * * @example * Informo: value: 30, defaultValue: 0 | Obtenho: 30 * @example * Informo: value: "30", defaultValue: 0 | Obtenho: 30 * @example * Informo: value: "30abc", defaultValue: 0 | Obtenho: 0 */ static getValueOrDefault: (value: any, defaultValue: number) => number; /** * Obtém o valor ou zero, caso o valor seja inválido(NaN/undefined). * * @param value - Numeral a ser validado. * * @returns - O próprio numeral passado. Caso esse seja inválido retorna zero. */ static getValueOrZero: (value: any) => number; /** * Realiza o arredondamento de casas decimais de um numero. * * @param value - Numeral a ser arredondado. * @param decimals - Quantidade de casas decimais ussada no arredondamento. * * @returns - O próprio numeral arredondado com a quantidade de casas decimais do argumento decimals. * * @example * Informo: (100.12) | 100.12 * Informo: (100,12) | NaN * Informo: ("100.12", 1) | 100.1 * Informo: ("100.12", 2) | 100.12 * Informo: ("100.12", 3) | 100.12 * Informo: ("100.15", 1) | 100.2 * Informo: ("100.15", 2) | 100.15 * Informo: ("100.15", 3) | 100.15 * Informo: ("100.16", 1) | 100.2 * Informo: ("100.16", 2) | 100.16 * Informo: ("100.16", 3) | 100.16 */ static round(value: number, decimals?: number): number; /** * Determina a ordem de umeros. * * @param a - Primeio número para comparação. * @param b - Segundo número para comparação. * @returns - Um numeral negativo se o primeiro argumento é menor que o segundo, zero se os dois são iguais e um numeral positivo quando o primeiro é maior que o segundo. */ static compare(a: number, b: number): number; }