import type { SelectOption } from "./select"; /** A time of day split into the parts a person PICKS. `displayHour` is what the * locale shows, not the canonical hour: under a 12-hour clock the same displayed * hour means two different times and only `pm` says which. */ export interface TimeParts { displayHour: number; minute: number; /** `null` in a 24-hour locale — there is no period to choose. */ pm: boolean | null; } /** Whether `locale` puts a day period on the clock, and what it calls one. */ export declare function dayPeriodLabels(locale: string): { am: string; pm: string; } | null; /** Minute-of-day for a canonical `"HH:mm"`, or `null` when it is not one. */ export declare function timeToMinuteOfDay(value: string): number | null; /** Split a canonical `"HH:mm"` into the parts the columns show. TOTAL: an * unreadable value decomposes to midnight, because the columns must always have * a row to sit on and a picked time has no partial state. */ export declare function decomposeTime(value: string, locale: string): TimeParts; /** Build a canonical 24-hour `"HH:mm"` back out of the parts. */ export declare function composeTime(parts: TimeParts): string; /** How a time of day READS in `locale`, under the same {@link TIME_FORMAT_OPTIONS} * the date field's segments lay themselves out from. A value that is not a time * comes back unchanged rather than as "Invalid Date". */ export declare function formatTimeOfDay(value: string, locale: string): string; /** The hours a locale offers, in clock order. A 12-hour locale leads with 12 * rather than 1, or midnight and noon sit at the bottom of the list. */ export declare function hourOptions(locale: string): SelectOption[]; /** Every minute of the hour. Not a coarser step: a step turns the picker into a * list of ALLOWED times, and a cut-off at 13:07 is then unreachable. */ export declare function minuteOptions(): SelectOption[]; /** The two periods, named as `locale` names them. Empty where it has none. */ export declare function dayPeriodOptions(locale: string): SelectOption[];