messageformat
Version:
PluralFormat and SelectFormat Message and i18n Tool - A JavaScript Implemenation of the ICU standards.
34 lines (29 loc) • 940 B
TypeScript
declare namespace MessageFormat {
type Msg = { (params: {}): string; toString(global?: string): string };
type Formatter = (val: any, lc: string, arg?: string) => string;
type SrcMessage = string | SrcObject;
interface SrcObject {
[key: string]: SrcMessage;
}
interface Options {
biDiSupport?: boolean;
customFormatters?: { [name: string]: Formatter };
pluralKeyChecks?: boolean;
strictNumberSign?: boolean;
}
}
declare class MessageFormat {
constructor(
locales?: { [locale: string]: Function } | string[] | string,
options?: MessageFormat.Options
);
addFormatters: (format: { [name: string]: MessageFormat.Formatter }) => this;
disablePluralKeyChecks: () => this;
setBiDiSupport: (enable: boolean) => this;
setStrictNumberSign: (enable: boolean) => this;
compile: (
messages: MessageFormat.SrcMessage,
locale?: string
) => MessageFormat.Msg;
}
export = MessageFormat;