angular-l10n
Version:
Angular library to translate texts, dates and numbers
81 lines (80 loc) • 1.92 kB
TypeScript
export type L10nFormat = 'language' | 'language-script' | 'language-region' | 'language-script-region';
export interface L10nProvider {
/**
* The name of the provider.
*/
name: string;
/**
* The asset of the provider.
*/
asset: any;
/**
* Options to pass the loader.
*/
options?: any;
}
export interface L10nLocale {
/**
* language[-script][-region][-extension]
* Where:
* - language: ISO 639 two-letter or three-letter code
* - script: ISO 15924 four-letter script code
* - region: ISO 3166 two-letter, uppercase code
* - extension: 'u' (Unicode) extensions
*/
language: string;
/**
* Alternative language to translate dates.
*/
dateLanguage?: string;
/**
* Alternative language to translate numbers.
*/
numberLanguage?: string;
/**
* ISO 4217 three-letter code.
*/
currency?: string;
/**
* Time zone name from the IANA time zone database.
*/
timeZone?: string;
/**
* Key value pairs of unit identifiers.
*/
units?: {
[]: string;
};
}
export interface L10nSchema {
locale: L10nLocale;
/**
* Language direction.
*/
dir?: 'ltr' | 'rtl';
text?: string;
}
export interface L10nDateTimeFormatOptions extends Intl.DateTimeFormatOptions {
/**
* The date formatting style.
*/
dateStyle?: 'full' | 'long' | 'medium' | 'short';
/**
* The time formatting style.
*/
timeStyle?: 'full' | 'long' | 'medium' | 'short';
/**
* To handle missing properties in ts definition files.
*/
[]: any;
}
export interface L10nNumberFormatOptions extends Intl.NumberFormatOptions {
/**
* The digits formatting.
*/
digits?: string;
/**
* To handle missing properties in ts definition files.
*/
[]: any;
}