/// import * as PropTypes from 'prop-types'; import BaseInput, { BaseInputProps, BaseInputState, DateRelatedProps, DisableValuesProps, MinMaxValueProps, MultimodeProps, TimeRelatedProps, MarkedValuesProps } from './BaseInput'; declare type CalendarMode = 'year' | 'month' | 'day' | 'hour' | 'minute'; export interface DateTimeInputProps extends BaseInputProps, DateRelatedProps, TimeRelatedProps, MultimodeProps, DisableValuesProps, MarkedValuesProps, MinMaxValueProps { startMode?: 'year' | 'month' | 'day'; /** Date and time divider. */ divider?: string; /** Preserve last mode (day, hour, minute) each time user opens dialog. */ preserveViewMode?: boolean; /** Datetime formatting string. */ dateTimeFormat?: string; /** If true, minutes picker won't be shown after picking the hour. Default: false */ disableMinute?: boolean; } export declare type DateTimeInputOnChangeData = DateTimeInputProps; interface DateTimeInputState extends BaseInputState { mode: CalendarMode; year: number; month: number; date: number; hour: number; minute: number; } declare class DateTimeInput extends BaseInput { /** * Component responsibility: * - parse input value * - handle underlying picker change */ static readonly defaultProps: { dateFormat: string; timeFormat: string; startMode: string; divider: string; icon: string; preserveViewMode: boolean; disableMinute: boolean; value: string; inline: boolean; localization: string; }; static readonly propTypes: { startMode: PropTypes.Requireable; /** Date and time divider. */ divider: PropTypes.Requireable; /** Datetime formatting string. */ dateTimeFormat: PropTypes.Requireable; maxDate: PropTypes.Requireable; minDate: PropTypes.Requireable; marked: PropTypes.Requireable; markColor: PropTypes.Requireable; disable: PropTypes.Requireable; preserveViewMode: PropTypes.Requireable; timeFormat: PropTypes.Requireable; disableMinute: PropTypes.Requireable; dateFormat: PropTypes.Requireable; initialDate: PropTypes.Requireable; value: PropTypes.Validator; onChange: PropTypes.Requireable<(...args: any[]) => any>; closable: PropTypes.Requireable; inline: PropTypes.Requireable; icon: PropTypes.Requireable; iconPosition: PropTypes.Requireable; onClear: PropTypes.Requireable<(...args: any[]) => any>; clearable: PropTypes.Requireable; clearIcon: PropTypes.Requireable; popupPosition: PropTypes.Requireable; closeOnMouseLeave: PropTypes.Requireable; mountNode: PropTypes.Requireable; inlineLabel: PropTypes.Requireable; pickerWidth: PropTypes.Requireable; pickerStyle: PropTypes.Requireable; duration: PropTypes.Requireable; animation: PropTypes.Requireable; localization: PropTypes.Requireable; hideMobileKeyboard: PropTypes.Requireable; }; constructor(props: DateTimeInputProps); componentDidUpdate: (prevProps: DateTimeInputProps) => void; render(): JSX.Element; private parseInternalValue; private getDateTimeFormat; private getPicker; private switchToNextModeUndelayed; private switchToNextMode; private switchToPrevModeUndelayed; private switchToPrevMode; private handleSelect; private onFocus; private handleSelectUndelayed; /** Keeps internal state in sync with input field value. */ private onInputValueChange; } export default DateTimeInput;