/** * @public */ export declare enum LanguageTagField { LANGUAGE = 0, SCRIPT = 1, REGION = 2, VARIANT = 3 } /** * IETF BCP 47 language tag with static methods for parsing, adding likely * subtags, etc. * * @public */ export declare class LanguageTag { protected core: (undefined | string)[]; protected _extensions: { [x: string]: string[]; }; protected _privateUse: string; protected _extlangs: string[]; protected _compact?: string; protected _expanded?: string; constructor(language?: string, script?: string, region?: string, variant?: string, extensions?: { [x: string]: string[]; }, privateUse?: string, extlangs?: string[]); /** * Language subtag. */ language(): string; /** * Returns true if the language subtag is defined. */ hasLanguage(): boolean; /** * Script subtag. */ script(): string; /** * Returns true if the script subtag is defined. */ hasScript(): boolean; /** * Region subtag. */ region(): string; /** * Returns true if the region subtag is defined. */ hasRegion(): boolean; /** * Variant subtag. */ variant(): string; /** * Return a copy of this language tag's extensions map. */ extensions(): { [x: string]: string[]; }; /** * Return a copy of the extensions of the given type. Use 'u' for Unicode * and 't' for Transforms. */ extensionSubtags(key: string): string[]; /** * Private use subtag. */ privateUse(): string; /** * Extended language tags, used for BCP 47 canonicalization. */ extlangs(): string[]; /** * Return a compact string representation of the language tag. Any undefined * fields will be omitted. */ compact(): string; /** * Return an expanded string representation of the language tag. Any undefined * fields will emit their undefined value. */ expanded(): string; /** * Return a compact string representation of the language tag. Any undefined * fields will be omitted. */ toString(): string; /** * Render a tag in compact or expanded form. */ private render; }