export interface DatePickerDay { classList: string; date: Date; isOutside: boolean; isSelected: boolean; isToday: boolean; isValid: boolean; } export interface DatePickerChangeDetail { value?: string | null; rangeStart?: string | null; rangeEnd?: string | null; } export interface DatePickerCloseDetail { error?: string; } export interface DatePickerErrorDetail { errors: DatePickerValidationError[]; } export interface DatePickerSuccessDetail { value: string; } export interface DatePickerValidationError { errorCode: string; message: string; } export interface DatePickerDateValidators { startDate?: Date; endDate?: Date; cutOffTime?: Date; } export interface DatePickerSelectedMonthYear { monthIndex: number; selectedYear: number; } export interface DatePickerMomentLike { toDate(): Date; } export type DatePickerDisplayFormat = 'MM/DD/YYYY' | 'DD/MM/YYYY' | 'MM-DD-YYYY' | 'DD-MM-YYYY' | 'YYYY-MM-DD'; export type DatePickerMode = 'single' | 'range' | 'single-typeable' | 'range-typeable'; export type DatePickerValue = string | DatePickerMomentLike; export type DatePickerNavigationAction = 'previousYear' | 'previousMonth' | 'nextMonth' | 'nextYear';