import { DateInput, DatePickerOptions, DatePickerState } from './date-picker.types'; /** * Headless date picker. Owns a calendar grid it renders into the consumer's * markup, manages selection/navigation state, ARIA wiring, keyboard support and * floating-ui positioning. No visual styling is applied in JS — state is * reflected via `data-state`, `data-today`, `data-outside` and `aria-*`. * * Markup: * ```html *
* *
*
* * * *
*
*
*
* ``` */ export declare class DatePicker { private readonly root; private readonly trigger; private readonly panel; private readonly grid; private readonly valueEl; private readonly labelEl; private readonly prevBtn; private readonly nextBtn; private readonly locale; private readonly weekStartsOn; private readonly placeholder; private readonly closeOnSelect; private readonly placement; private readonly offset; private readonly formatLabel?; private readonly min; private readonly max; private readonly mode; private selected; private rangeStart; private rangeEnd; private hoverDate; private viewMonth; private focused; private open; private stopAutoUpdate; private cleanups; constructor(root: HTMLElement, options?: DatePickerOptions); private init; private renderLabel; private format; private weekdayNames; private isDisabled; private renderGrid; private renderDay; private onGridClick; private onGridMouseover; private onGridKeydown; private moveFocus; private focusActiveDay; private goToMonth; private select; private selectRange; private emitChange; private onOutside; toggle(): void; openPanel(): void; close(): void; /** Programmatically set the selected date (ISO string or Date). */ setValue(value: DateInput | null): void; /** Clear the current selection. */ clear(): void; private position; get value(): string | null; get isOpen(): boolean; getState(): DatePickerState; on(event: string, handler: (event: E) => void): () => void; destroy(): void; }