/** * Calendar: a dependency-free single-month date grid. Renders a header row * (previous-month button, "Month YYYY" caption, and next-month button), a * weekday header, and a `role="grid"` table of days. One day participates in * the tab order. Arrow keys move by day or week, Home and End move to week * boundaries, and Page Up and Page Down move by month. The selected day is * controlled via `value`; selecting a day fires `onChange`. The displayed month * is tracked internally (seeded from `defaultMonth ?? value ?? today`) and moved * by the previous and next buttons. Self-contained: no `react-day-picker`, no * floating engine; skinned with the veryfront theme tokens. * * @example * ```tsx * import { Calendar } from "veryfront/ui"; * * function Example() { * const [day, setDay] = React.useState(); * return ; * } * ``` * * @module react/components/ui/calendar */ import * as React from "react"; /** Props accepted by ``. */ export interface CalendarProps extends Omit, "onChange"> { /** The selected day (controlled). @default undefined */ value?: Date; /** Fires with the selected day. @default undefined */ onChange?: (date: Date) => void; /** Month shown initially; the displayed month is tracked internally and moved by the prev/next buttons. @default value ?? today */ defaultMonth?: Date; /** First day of the week: `0` = Sunday, `1` = Monday. @default 0 */ weekStartsOn?: 0 | 1; /** React 19: ref is a regular prop. */ ref?: React.Ref; } /** A dependency-free single-month date grid. */ export declare function Calendar({ value, onChange, defaultMonth, weekStartsOn, className, ref, ...props }: CalendarProps): React.ReactElement; //# sourceMappingURL=calendar.d.ts.map