//#region packages/ecma402-abstract/types/core.d.ts type Locale = string; interface LocaleData { data: T; locale: Locale; } //#endregion //#region packages/ecma402-abstract/types/list.d.ts type ListPatternLocaleData = LocaleData; interface ListPatternFieldsData { conjunction?: ListPatternData; disjunction?: ListPatternData; unit?: ListPatternData; } interface ListPattern { start: string; middle: string; end: string; pair: string; } interface ListPatternData { long: ListPattern; short?: ListPattern; narrow?: ListPattern; } //#endregion //#region packages/ecma402-abstract/utils.d.ts interface LiteralPart { type: "literal"; value: string; } //#endregion //#region packages/intl-listformat/index.d.ts interface IntlListFormatOptions { /** * The locale matching algorithm to use. * Possible values are "lookup" and "best fit"; the default is "best fit". * For information about this option, see * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation. */ localeMatcher?: "best fit" | "lookup"; /** * The format of output message. * Possible values are : * - "conjunction" that stands for "and"-based lists (default, e.g., "A, B, and C") * - "disjunction" that stands for "or"-based lists (e.g., "A, B, or C"). * - "unit" stands for lists of values with units (e.g., "5 pounds, 12 ounces"). */ type?: "conjunction" | "disjunction" | "unit"; /** * The length of the formatted message. * Possible values are: * - "long" (default, e.g., "A, B, and C"); * - "short" (e.g., "A, B, C"), or * - "narrow" (e.g., "A B C"). * When style is "short" or "narrow", "unit" is the only allowed value for the type option. */ style?: "long" | "short" | "narrow"; } interface ResolvedIntlListFormatOptions { /** * A string with a BCP 47 language tag, or an array of such strings. * For the general form and interpretation of the locales argument, * see the [Intl](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation) page. */ locale: string; /** * The format of output message. * Possible values are : * - "conjunction" that stands for "and"-based lists (default, e.g., "A, B, and C") * - "disjunction" that stands for "or"-based lists (e.g., "A, B, or C"). * - "unit" stands for lists of values with units (e.g., "5 pounds, 12 ounces"). */ type: "conjunction" | "disjunction" | "unit"; /** * The length of the formatted message. * Possible values are: * - "long" (default, e.g., "A, B, and C"); * - "short" (e.g., "A, B, C"), or * - "narrow" (e.g., "A B C"). * When style is "short" or "narrow", "unit" is the only allowed value for the type option. */ style: "long" | "short" | "narrow"; } type Part = LiteralPart | ElementPart | ElementPart; interface ElementPart { type: "element"; value: T; } declare class ListFormat { constructor(locales?: string | string[], options?: IntlListFormatOptions); format(elements: Iterable): string; formatToParts(elements: Iterable): Part[]; resolvedOptions(): ResolvedIntlListFormatOptions; static supportedLocalesOf(locales: string | string[], options?: Pick): string[]; static __addLocaleData(...data: ListPatternLocaleData[]): void; static localeData: Record; private static availableLocales; private static __defaultLocale; private static getDefaultLocale; private static relevantExtensionKeys; static polyfilled: boolean; private static readonly __INTERNAL_SLOT_MAP__; } //#endregion export { ElementPart, IntlListFormatOptions, Part, ResolvedIntlListFormatOptions, ListFormat as default }; //# sourceMappingURL=index.d.ts.map