import type { AppLocale } from "./types.js"; /** Curated preset — pass to ``. */ export declare const APP_TIMEZONE_PRESET: readonly ["UTC", "Asia/Ho_Chi_Minh", "Asia/Bangkok", "Asia/Singapore", "Asia/Jakarta", "Asia/Manila", "Asia/Kuala_Lumpur", "Asia/Yangon", "Asia/Phnom_Penh", "Asia/Vientiane", "Asia/Brunei", "Asia/Tokyo", "Asia/Seoul", "Asia/Shanghai", "Asia/Hong_Kong", "Asia/Taipei", "Asia/Ulaanbaatar", "Asia/Kolkata", "Asia/Karachi", "Asia/Dhaka", "Asia/Colombo", "Asia/Dubai", "Asia/Riyadh", "Asia/Qatar", "Asia/Tehran", "Asia/Jerusalem", "Europe/London", "Europe/Paris", "Europe/Berlin", "Europe/Amsterdam", "Europe/Rome", "Europe/Madrid", "Europe/Moscow", "Europe/Istanbul", "America/New_York", "America/Chicago", "America/Denver", "America/Los_Angeles", "America/Toronto", "America/Vancouver", "America/Mexico_City", "America/Sao_Paulo", "America/Buenos_Aires", "Australia/Sydney", "Australia/Melbourne", "Australia/Perth", "Pacific/Auckland"]; export type AppTimezonePreset = (typeof APP_TIMEZONE_PRESET)[number]; /** Preferred IANA ids not returned by all runtimes (e.g. Node lists `Asia/Saigon` only). */ export declare const TIMEZONE_ALIASES: Record; /** Map app id → Intl id for `DateTimeFormat` / validation. */ export declare function resolveTimezoneForIntl(timezone: string): string; /** Full IANA list from runtime — sorted lexicographically. */ export declare function getAllIanaTimezones(): readonly string[]; export declare function isValidIanaTimezone(value: string): boolean; /** * Options for TimezonePicker. * - `configured` omitted/empty → full IANA list * - `configured` set → only those ids (+ `current` if missing) */ export declare function resolveTimezonePickerOptions(configured?: readonly string[] | null, current?: string): readonly string[]; export declare function getBrowserTimezone(): string; /** City/region segment from IANA id — `Asia/Ho_Chi_Minh` → `Ho Chi Minh`. */ export declare function getTimezoneCityName(timezone: string): string; /** UTC/GMT offset via Intl — e.g. `GMT+7`, `UTC`. */ export declare function getTimezoneOffsetLabel(timezone: string, locale?: AppLocale): string; /** Intl fallback when no i18n override — `Ho Chi Minh (GMT+7)`. */ export declare function formatTimezoneDisplayLabel(timezone: string, locale?: AppLocale): string; export declare function getTimezoneLabel(timezone: string, locale: AppLocale, fallbackLocale?: AppLocale): string; export declare function resolveDefaultTimezone(defaultTimezone: "browser" | "system" | (string & {}), systemTimezone?: string): string; /** Vitest only — reset cached IANA list between cases. */ export declare function resetIanaTimezoneCacheForTests(): void;