import React from 'react'; import DatePanel from './DatePanel'; import { parseDate } from '../utils/date-utils'; export interface DatePickerProps { value?: string | number | Date; placeholder?: string; onChange?: (value: DatePickerProps['value']) => void; className?: string; style?: React.CSSProperties; } export interface DatePickerState { valueStr: string; dateObj: DateObj; today: Date; visible: boolean; currentPanel: 'date' | 'month' | 'year'; } export declare type DateObj = ReturnType; export declare type PanelName = 'DatePanel' | 'MonthPanel' | 'YearPanel'; export declare class DatePicker extends React.Component { static getDerivedStateFromProps(props: DatePickerProps): Partial | null; state: DatePickerState; panelTypes: DatePickerState['currentPanel'][]; panelMap: { year: React.FC; month: React.FC; date: typeof DatePanel; }; handleVisibleChange: (visible: boolean) => void; handleClear: () => void; handlePrevClick: () => void; handleNextClick: () => void; handlePrevNextClick: (type: "next" | "prev") => void; handlePanelChange: (panel: "month" | "year" | "date") => void; handleItemClick: (ev: React.SyntheticEvent, panel: string) => void; getPanelsStyle(currentPanel: DatePickerState['currentPanel']): { transform: string; }; renderPanel(): JSX.Element[]; render(): JSX.Element; } export default DatePicker;