import type { TranslationFunction, TranslationPack } from '../../i18n'; import type { ExcludeStrict } from '../../types'; import type { DateTimeFormat, DateTimeVariant } from './DateTime.types'; import { type CalendarType } from './Input/local'; import type { ClockFormat } from './Input/utils'; type DateTimeFormatOptions = { locale: string; format: DateTimeFormat; timeZone?: string; clockFormat?: ClockFormat; calendarType?: CalendarType; } & ({ variant: ExcludeStrict; t?: TranslationFunction; } | { variant: 'quarteryear'; t: TranslationFunction; }); export declare function getIntlDateTimeFormatFromCache(locale: string, options?: Intl.DateTimeFormatOptions): Intl.DateTimeFormat; export declare function formatDateTime(value: Date, { t, locale, format, variant, clockFormat, calendarType, timeZone }: DateTimeFormatOptions): string; interface DurationFormatOptions { /** Locale to be used - en_US, jp_JP, fr_FR etc */ locale: string; /** Determines maximum number of units to be displayed. */ significantUnits: 5 | 4 | 3 | 2 | 1; /** * Unit formatting style * @default "narrow" */ unitDisplay?: Intl.NumberFormatOptions['unitDisplay']; /** * Unit of maximum precision * @default "second" */ maxPrecision?: 'day' | 'hour' | 'minute' | 'second' | 'millisecond'; } export declare function formatDuration(valueInMs: number, { locale, significantUnits, unitDisplay, maxPrecision }: DurationFormatOptions): string; /** * @returns Current date and time value adjusted for local time zone. */ export declare const getAdjustedUTCDateTime: () => Date; /** * @param timeZone - IANA timezone string (e.g. "America/New_York") * @returns Current date and time for the given timezone, with wall-clock time * encoded in UTC fields — matching the convention used by DateTime inputs. */ export declare const getAdjustedUTCDateTimeForTimezone: (timeZone: string) => Date; export {}; //# sourceMappingURL=utils.d.ts.map