import React from 'react'; import dayjs from 'dayjs'; interface TimeFormattingProps { date?: string | null; format: 'h' | 'm' | 'a'; } interface InputProps { value?: string | null; } interface DatePickerProps { buttonWidth: number; classNameProvider?: string; disabled: boolean; futureOnly: boolean; inputProps?: InputProps; numberOfMonths: number; onDateChange?: (data: string) => void; showDatePicker?: boolean; timeZoneIdentifier: string; } interface DatePickerState { date: GetInitialDateOutput; form: GetInitialDateOutput; input: { value: string; }; showDatePicker: boolean; } export interface OnUpdateTimeProps { target: { name: string; value: string; }; } interface GetInitialDateProps { date?: string | null; } export interface GetInitialDateOutput { dateFormat: string; day: dayjs.Dayjs; hour: string; minute: string; } export declare class UIDatePicker extends React.Component { buttonRef: React.RefObject; static defaultProps: { futureOnly: boolean; disabled: boolean; numberOfMonths: number; buttonWidth: number; }; constructor(props: DatePickerProps); componentDidUpdate(prevProps: any): void; buttonMessage: (props: DatePickerProps) => string; normalizedData: (date?: string | null | dayjs.Dayjs) => dayjs.Dayjs; timeFormatting: ({ date, format }: TimeFormattingProps) => string; dateFormatting: (data?: string | dayjs.Dayjs) => string; getInitialDate: ({ date }: GetInitialDateProps) => GetInitialDateOutput; showDatePicker: (e: any) => void; hideDatePicker: () => void; handleDateChange: () => void; onUpdateDate: (date: Date) => void; isToday: (date: dayjs.Dayjs | Date) => boolean; validateTime: ({ value, name }: { value: any; name: any; }) => boolean; onUpdateTime: (e: OnUpdateTimeProps) => void; handleApply: () => void; resetForm: () => void; getColor: () => string; render(): React.ReactElement; } export {};