import { AppointmentSlot } from '@fanfare-io/fanfare-sdk-core/appointments'; /** * Date / time formatting helpers shared across the appointment picker * components. Every helper falls back to the input string when given an * unparseable value or when `Intl.DateTimeFormat` throws on a bad `timeZone` * (it raises `RangeError: Invalid time zone specified`), so a bad input can * never crash the render. */ export declare function formatTime(value: string, timezone?: string): string; /** Format the start time of an appointment slot, falling back to its id string. */ export declare function formatSlotTime(slot: AppointmentSlot): string; /** * Return the YYYY-MM-DD calendar date of `date` as seen in `timezone`. * Buckets slots by day and renders the day strip. `sv-SE` produces * ISO-format output, so it doubles as a TZ-shifted date key. */ export declare function isoDateInTimezone(date: Date, timezone?: string): string; /** Add `days` calendar days to a YYYY-MM-DD date string. Calendar-day arithmetic only. */ export declare function addCalendarDays(isoDate: string, days: number): string; /** * Weekday label (e.g. "Mon") for a YYYY-MM-DD calendar date. Uses noon UTC so * a TZ offset can't push the formatter to the wrong weekday. */ export declare function weekdayLabel(isoDate: string): string; /** Day-of-month from a YYYY-MM-DD calendar date. */ export declare function dayOfMonth(isoDate: string): number;