import { Dayjs } from 'dayjs'; interface YearOptions { container: HTMLElement; /** 自定义year cell render */ yearRender?: (year?: number) => string; current?: Date | Dayjs; onChange?: (date?: Dayjs) => void; disabledDate?: (date?: Dayjs) => boolean; } interface MonthOptions { container: HTMLElement; /** 自定义month cell render */ monthRender?: (year?: number) => string; current?: Date | Dayjs; onChange?: (date?: Dayjs) => void; disabledDate?: (date?: Dayjs) => boolean; } interface CalendarOptions { startOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6; container: HTMLElement; /** 自定义year cell render */ dateRender?: (date?: Dayjs) => string; current?: Date | Dayjs; onChange?: (date?: Dayjs) => void; disabledDate?: (date?: Dayjs) => boolean; showTime?: boolean; showToday?: boolean; onOk?: (date?: Dayjs) => void; } type Picker = 'year' | 'month' | 'date' | 'time'; interface DatePickerOptions extends Omit, Omit, Omit { getPopupContainer?: () => HTMLElement; position?: 'tl' | 'top' | 'tr' | 'bl' | 'bottom' | 'br'; open?: boolean; picker?: Picker; current?: Date | Dayjs; disableDate?: (date?: Dayjs) => boolean; } declare class DatePicker { $container: HTMLElement; $datePicker: HTMLElement; options: Required; private _open; private _calendarCls; private _yearCls; private _monthCls; private _current; private _renderCurrent; private _activePicker?; constructor(options: Partial); setCurrent(date: Date | Dayjs): void; show(): void; hide(): void; _onHeaderYearMonthBtn(): void; private _onContainer; private _switchShowHide; private _createCreateContainer; private _createYearMonthDateTime; private _switchPicker; /** * @description container position * @returns */ private _position; _onDocumentClick(): void; } export { DatePicker as default };