UNPKG

@formatjs/intl-relativetimeformat

Version:

Formats JavaScript dates to relative time strings.

47 lines 2.06 kB
//#region packages/ecma402-abstract/types/core.d.ts type Locale = string; interface LocaleData<T> { data: T; locale: Locale; } //#endregion //#region packages/ecma402-abstract/types/plural-rules.d.ts type LDMLPluralRule = "zero" | "one" | "two" | "few" | "many" | "other"; //#endregion //#region packages/ecma402-abstract/types/relative-time.d.ts interface FieldData { "0"?: string; "1"?: string; "-1"?: string; "2"?: string; "-2"?: string; "3"?: string; "-3"?: string; future: RelativeTimeData; past: RelativeTimeData; } type RelativeTimeData = { [u in LDMLPluralRule]?: string }; type LocaleFieldsData = { [f in RelativeTimeField]?: FieldData } & { nu?: Array<string | null>; }; type RelativeTimeField = "second" | "second-short" | "second-narrow" | "minute" | "minute-short" | "minute-narrow" | "hour" | "hour-short" | "hour-narrow" | "day" | "day-short" | "day-narrow" | "week" | "week-short" | "week-narrow" | "month" | "month-short" | "month-narrow" | "quarter" | "quarter-short" | "quarter-narrow" | "year" | "year-short" | "year-narrow"; type RelativeTimeLocaleData = LocaleData<LocaleFieldsData>; //#endregion //#region packages/intl-relativetimeformat/index.d.ts declare class RelativeTimeFormat { constructor(locales?: string | string[], options?: Intl.RelativeTimeFormatOptions); format(value: number, unit: Intl.RelativeTimeFormatUnit): string; formatToParts(value: number, unit: Intl.RelativeTimeFormatUnit): Intl.RelativeTimeFormatPart[]; resolvedOptions(): Intl.ResolvedRelativeTimeFormatOptions; static supportedLocalesOf(locales: string | string[], options?: Pick<Intl.RelativeTimeFormatOptions, "localeMatcher">): string[]; static __addLocaleData(...data: RelativeTimeLocaleData[]): void; static localeData: Record<string, LocaleFieldsData>; private static availableLocales; private static __defaultLocale; private static getDefaultLocale; private static relevantExtensionKeys; static polyfilled: boolean; } //#endregion export { RelativeTimeFormat as default }; //# sourceMappingURL=index.d.ts.map