import { CurrencyType } from '@phensley/cldr-types'; import { Decimal, DecimalArg, Part } from '@phensley/decimal'; import { CurrencyDisplayNameOptions, CurrencyFormatOptions, CurrencyFractions, CurrencySymbolWidthType, DecimalAdjustOptions, DecimalFormatOptions } from '../common'; import { Bundle } from '../resource'; import { NumberParams } from '../common/private'; import { Numbers } from './api'; import { PrivateApiImpl } from './private'; import { GeneralInternals, NumberInternals, NumberRenderer } from '../internals'; /** * Number and currency formatting. * * @internal */ export declare class NumbersImpl implements Numbers { private readonly bundle; private readonly numbers; private readonly general; private readonly privateApi; private transform; constructor(bundle: Bundle, numbers: NumberInternals, general: GeneralInternals, privateApi: PrivateApiImpl); adjustDecimal(n: DecimalArg, opts?: DecimalAdjustOptions): Decimal; parseDecimal(n: number | string): Decimal; getCurrencySymbol(code: CurrencyType, width?: CurrencySymbolWidthType): string; getCurrencyDisplayName(code: CurrencyType, opts?: CurrencyDisplayNameOptions): string; getCurrencyFractions(code: CurrencyType): CurrencyFractions; getCurrencyForRegion(region: string): CurrencyType; getCurrencyPluralName(n: DecimalArg, code: string, opts?: CurrencyDisplayNameOptions): string; getPluralCardinal(n: DecimalArg, options?: DecimalAdjustOptions): string; getPluralOrdinal(n: DecimalArg, options?: DecimalAdjustOptions): string; formatDecimal(n: DecimalArg, options?: DecimalFormatOptions): string; formatDecimalToParts(n: DecimalArg, options?: DecimalFormatOptions): Part[]; formatCurrency(n: DecimalArg, code: CurrencyType, options?: CurrencyFormatOptions): string; formatCurrencyToParts(n: DecimalArg, code: CurrencyType, options?: CurrencyFormatOptions): Part[]; protected formatDecimalImpl(renderer: NumberRenderer, params: NumberParams, n: DecimalArg, options: DecimalFormatOptions): T; protected formatCurrencyImpl(renderer: NumberRenderer, params: NumberParams, n: DecimalArg, code: CurrencyType, options: CurrencyFormatOptions): T; }