import type { SelectOption } from "./select"; /** `displayHour` is the locale's: under a 12-hour clock only `pm` distinguishes two times. */ export interface TimeParts { displayHour: number; minute: number; /** `null` in a 24-hour locale. */ pm: boolean | null; } export declare function dayPeriodLabels(locale: string): { am: string; pm: string; } | null; /** `null` when not a canonical `"HH:mm"`. */ export declare function timeToMinuteOfDay(value: string): number | null; /** Total: an unreadable value decomposes to midnight, since the columns always need a row. */ export declare function decomposeTime(value: string, locale: string): TimeParts; export declare function composeTime(parts: TimeParts): string; /** Under {@link TIME_FORMAT_OPTIONS}, as the date field's segments; a non-time comes back unchanged rather * than "Invalid Date". */ export declare function formatTimeOfDay(value: string, locale: string): string; /** A 12-hour locale leads with 12, or midnight and noon sit at the bottom. */ export declare function hourOptions(locale: string): SelectOption[]; /** Every minute: a step would make a cut-off at 13:07 unreachable. */ export declare function minuteOptions(): SelectOption[]; /** Empty where the locale has none. */ export declare function dayPeriodOptions(locale: string): SelectOption[];