/**
 * This is all very experimental. I'll break it. -r
 */
export declare type FormatFn = (value: any) => string;
export interface FormatterMap {
    currency: LocaleMap;
    number: LocaleMap;
}
export interface LocaleMap {
    [locale: string]: FormatFn;
}
export declare enum FormatType {
    currency = "currency",
    number = "number"
}
/** @experimental */
export declare class I18nFormatter {
    private locale;
    private formatters;
    constructor(locale?: string);
    number(value: number, locale?: string): string;
    private createFormatter;
    private getFormatter;
}
export declare const defaultFormatter: I18nFormatter;
