import { t as ThemeFamily } from "./theme-tokens-IjR_iAF6.js"; import { s as SelectionState, t as SchemeMode } from "./ui-context--f27L7Ww.js"; import { t as DateRuleConfig } from "./date-rule-engine-CNfIfs0F.js"; import { n as CalendarChangeDetails, t as AnyCalendarValue } from "./public-value-B1i8vw8Z.js"; import { n as CalendarAppearance } from "./appearance-tokens-CcCd5YXE.js"; import { t as CalendarConfigOptions } from "./config-pnelHZKe.js"; //#region src/react/prebuilt.d.ts /** * Prebuilt calendars — one import, zero composition. For consumers who don't * want to assemble modules: each is a ready recipe over the same primitives * (`Calendar` + modules + `createCalendarConfig`), with plain-`Date` props. * Live on their own subpath (`@dateforge/react-calendar/prebuilt`) so the * modular entries stay pay-for-what-you-import. */ type PrebuiltShared = { /** BCP-47 locale (drives names, digits, week start). */ locale?: string; /** Earliest / latest selectable day (inclusive). */ min?: Date; max?: Date; /** Days that cannot be selected. */ disabled?: DateRuleConfig; readOnly?: boolean; /** Theme: built-in name or a `createTheme` family. */ theme?: string | ThemeFamily; /** Appearance: built-in name or a `createAppearance` object. */ appearance?: CalendarAppearance; /** Decorative gradient mode (corner glows + gradient selected fill). */ gradient?: boolean; scheme?: SchemeMode; /** Extra `createCalendarConfig` options (escape hatch — spread last). */ config?: CalendarConfigOptions; className?: string; "data-testid"?: string; }; /** Single JS `Date` (or `null`) — the shape `mode:"single"` emits. */ type SingleDateProps = PrebuiltShared & { /** Controlled value. Omit for uncontrolled. */ value?: Date | null; /** Uncontrolled initial date. */ defaultValue?: Date | null; onChange?: (date: Date | null) => void; }; /** * The default calendar: month/year navigation header + day grid, single-date * selection. `` and done. */ declare function SimpleCalendar(props: SingleDateProps): import("react/jsx-runtime").JSX.Element; type DatePickerProps = SingleDateProps & { /** Clear button inside the manual input. Default `true`. */ allowClear?: boolean; }; /** * A date picker: typed manual input above the calendar, plus a Today jump — * keyboard-first single-date entry with the grid as fallback. */ declare function DatePicker(props: DatePickerProps): import("react/jsx-runtime").JSX.Element; type MonthPickerProps = PrebuiltShared & { /** Controlled month (any day inside it). Omit for uncontrolled. */ value?: Date | null; /** Uncontrolled initial month (any day inside it). */ defaultValue?: Date | null; /** First day of the picked month (or `null` when cleared). */ onChange?: (month: Date | null) => void; }; /** * A month picker: year-stepping header + 12-month grid; picking a month * selects the whole month (`unit: "month"`), reported as its first day. */ declare function MonthPicker(props: MonthPickerProps): import("react/jsx-runtime").JSX.Element; type MultiMonthProps = PrebuiltShared & { /** How many consecutive months to render. Default `3`. */ months?: number; /** Grid columns (months per row). Default `3`. */ cols?: number; /** Selection mode for the whole board. Default `"range"`. */ mode?: "single" | "multiple" | "range" | "multi-range"; /** First shown month (any day inside it). Default: the current month. */ startMonth?: Date; /** * Prev/next arrows stepping the whole board by one month (on the first and * last header). Default `true`. */ navigation?: boolean; /** Controlled value / uncontrolled seed / change — the root's own contract. */ value?: AnyCalendarValue; /** Uncontrolled initial selection, public `Date`-based shape. */ defaultValue?: AnyCalendarValue; defaultSelection?: SelectionState; onChange?: (value: AnyCalendarValue, details: CalendarChangeDetails) => void; }; /** * A multi-month board — 3, 6, 12 consecutive months in a grid, generated on * the fly: one `` root, and per month an offset month/year * header + an offset day grid, laid out row by row (a row of headers, then the * row of matching grids). One shared selection spans the whole board — ranges * drag across months. `` and done. */ declare function MultiMonthCalendar(props: MultiMonthProps): import("react/jsx-runtime").JSX.Element; //#endregion export { DatePicker, MonthPicker, MultiMonthCalendar, SimpleCalendar };