export interface DateConstraints { min?: string; max?: string; disabledDates?: string[]; } export interface CalendarDay { day: number; isCurrentMonth: boolean; isToday: boolean; date: Date; } export declare const createDate: (year: number, month: number, day?: number) => Date; export declare const parseISODate: (dateString: string) => Date; export declare const dateToString: (date: Date) => string; export declare const formatDisplayDate: (dateString: string) => string; export declare const parseInputDate: (input: string) => string; export declare const isDateDisabled: (date: Date, constraints: DateConstraints) => boolean; export declare const isDateSelected: (date: Date, selectedDateString: string) => boolean; export declare const getCalendarDays: (year: number, month: number) => CalendarDay[]; export declare const generateYearOptions: (minYear?: number, maxYear?: number) => number[]; export declare const findFirstSelectableDateInMonth: (year: number, month: number, constraints: DateConstraints) => Date; export declare const findLastSelectableDateInMonth: (year: number, month: number, constraints: DateConstraints) => Date; export declare const getFirstSelectableDate: (constraints: DateConstraints) => Date; export interface MonthYear { month: number; year: number; } export declare function navigateMonth(currentMonth: number, currentYear: number, direction: 'prev' | 'next'): MonthYear; export declare function getKeyboardNavigationStep(key: string): 1 | 0 | -1 | 7 | -7; export declare function getNextSelectableDate(startDate: Date, step: number, constraints: DateConstraints, maxIterations?: number): Date; export declare function handleDateInputKeyDown(event: KeyboardEvent): void; export declare const openDatePicker: (selectedDate?: Date | null) => string; export declare const closeDatePicker: (selectedDate?: Date | null) => string;