@formatjs/intl-getcanonicallocales
Version:
Intl.getCanonicalLocales polyfill
57 lines • 2.44 kB
TypeScript
//#region packages/intl-getcanonicallocales/types.d.ts
interface UnicodeLocaleId {
lang: UnicodeLanguageId;
extensions: Array<UnicodeExtension | TransformedExtension | PuExtension | OtherExtension>;
}
interface UnicodeLanguageId {
lang: string;
script?: string;
region?: string;
variants: string[];
}
type KV = [string, string] | [string];
interface Extension {
type: string;
}
interface UnicodeExtension extends Extension {
type: "u";
keywords: KV[];
attributes: string[];
}
interface TransformedExtension extends Extension {
type: "t";
fields: KV[];
lang?: UnicodeLanguageId;
}
interface PuExtension extends Extension {
type: "x";
value: string;
}
interface OtherExtension extends Extension {
type: "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "v" | "w" | "y" | "z";
value: string;
}
//#endregion
//#region packages/intl-getcanonicallocales/emitter.d.ts
declare function emitUnicodeLanguageId(lang?: UnicodeLanguageId): string;
declare function emitUnicodeLocaleId({
lang,
extensions
}: UnicodeLocaleId): string;
//#endregion
//#region packages/intl-getcanonicallocales/parser.d.ts
declare function isUnicodeLanguageSubtag(lang: string): boolean;
declare function isStructurallyValidLanguageTag(tag: string): boolean;
declare function isUnicodeRegionSubtag(region: string): boolean;
declare function isUnicodeScriptSubtag(script: string): boolean;
declare function parseUnicodeLanguageId(chunks: string[] | string): UnicodeLanguageId;
declare function parseUnicodeLocaleId(locale: string): UnicodeLocaleId;
//#endregion
//#region node_modules/.aspect_rules_js/@formatjs_generated+cldr.core@0.0.0/node_modules/@formatjs_generated/cldr.core/likelySubtags.d.ts
declare const likelySubtags: Record<string, string>;
//#endregion
//#region packages/intl-getcanonicallocales/index.d.ts
declare function getCanonicalLocales(locales?: string[] | string | Intl.Locale | Intl.Locale[] | ArrayLike<string | Intl.Locale>): string[];
//#endregion
export { Extension, KV, OtherExtension, PuExtension, TransformedExtension, UnicodeExtension, UnicodeLanguageId, UnicodeLocaleId, emitUnicodeLanguageId, emitUnicodeLocaleId, getCanonicalLocales, isStructurallyValidLanguageTag, isUnicodeLanguageSubtag, isUnicodeRegionSubtag, isUnicodeScriptSubtag, likelySubtags, parseUnicodeLanguageId, parseUnicodeLocaleId };
//# sourceMappingURL=index.d.ts.map