UNPKG

g11n-js-common

Version:

This is I18n level 2 common library for javascript based clients like g11n-angular-client,g11n-js-client

52 lines (51 loc) 2.05 kB
import { I18n } from '../intl/intl'; import { RoundingMode, NumberFormatTypes } from '../intl/intl.util'; interface ParsedNumber { digits: number[]; integerLen: number; } declare class Formatter { decimal(data: I18n.DataForNumber): Function; currencies(data: I18n.DataForCurrency): Function; percent(data: I18n.DataForNumber): Function; plural(data: I18n.DataForNumber): Function; resetFormats(formats: any, minFracDigit: number, maxFracDigit: number, round: RoundingMode): any; /** * Get info from the formats * eg: ¤#,##0.00 * return: { gSize: 3, lgSize: 3, maxFrac: 2, minFrac: 2, minInt: 1, negPre: "-¤", posPre: "¤" } */ parseFormats(format: string, minusSign?: string): { 'minInt': number; 'minFrac': number; 'maxFrac': number; 'posPre': string; 'posSuf': string; 'negPre': string; 'negSuf': string; 'gSize': number; 'lgSize': number; 'round': RoundingMode; }; parseNumber(numStr: string): ParsedNumber; /** * rounding number */ roundingNumber(number: number, minFrac: number, maxFrac: number, mode: RoundingMode): string; resetCurrencyFormatsInfo(formatsInfo: any, data: I18n.DataForCurrency, currencyCode: string, min?: number, max?: number): any; resetPercentNumber(num: number): string; resetString(isCurrency: boolean, formatsInfo: any, symbol: any, value: any, minFracDigit?: number, maxFracDigit?: number): string; } export declare class FormatterFactory { formatter: Formatter; mapping: { [key: string]: any; }; constructor(); getFormatter(locale: string, type: NumberFormatTypes): Function; currencies(data: I18n.DataForCurrency, locale: string): Function; percent(data: I18n.DataForNumber, locale: string): Function; decimal(data: I18n.DataForNumber, locale: string): Function; roundNumberForPlural(data: I18n.DataForNumber, locale: string): Function; } export {};