/** * The calendar date a KYC form carries, between the wire and a date picker. * * - The wire value is a **zoneless day**: `YYYY-MM-DD`, the day the user * tapped, identical from every timezone. The server reads it as a UTC day * (`new Date(value + 'T00:00:00Z')`), and so does `validateForm`. * - `Date` objects here are local midnight of that day, never a conversion of * it: `new Date('1990-12-10')` is UTC midnight, which is the 9th behind UTC, * so the picker would open and save a day early. * - "Today" is therefore the **UTC** day — the clock the not-future rule is * judged on — so a user ahead of UTC cannot pick a day the server refuses. */ /** The wire format, read off a `Date` the picker handed back. */ export declare function toCalendarDate(date: Date): string; /** * The date a stored answer names, or `undefined` when it names none. * * The round trip is what rejects `2026-02-30`: `Date` rolls an impossible day * forward into the next month rather than refusing it. */ export declare function parseCalendarDate(value: string): Date | undefined; /** * The answer as the user's own locale writes it, or the answer itself when * that cannot be formatted — an unformatted date still reads as the date. */ export declare function formatCalendarDate(value: string, locale: string): string; /** * The bounds the picker offers. * * - A birth date in the future is never right, and the provider answers one * with an empty 400 the user reads as an SDK failure. * - The ceiling is the **UTC** day, because that is the clock the server's * not-future rule is judged on. Anyone ahead of UTC would otherwise be * offered a day their own submission comes back refused for. */ export declare function birthDateRange(now?: Date): { minimumDate: Date; maximumDate: Date; }; //# sourceMappingURL=calendarDate.d.ts.map