/// <reference types="react" />
import { IDatePickerProps } from './DatePicker.types';
import { BaseComponent } from '../../Utilities';
export interface IDatePickerState {
    selectedDate?: Date;
    formattedDate?: string;
    isDatePickerShown?: boolean;
    errorMessage?: string;
}
export declare class DatePicker extends BaseComponent<IDatePickerProps, IDatePickerState> {
    static defaultProps: IDatePickerProps;
    private _root;
    private _calendar;
    private _datepicker;
    private _textField;
    private _preventFocusOpeningPicker;
    private _focusOnSelectedDateOnUpdate;
    constructor(props: IDatePickerProps);
    componentWillReceiveProps(nextProps: IDatePickerProps): void;
    render(): JSX.Element;
    private _onSelectDate(date);
    private _onCalloutPositioned();
    private _onTextFieldFocus(ev);
    private _onTextFieldBlur(ev);
    private _onTextFieldChanged(newValue);
    private _onTextFieldKeyDown(ev);
    private _onTextFieldClick(ev);
    private _onIconClick(ev);
    private _showDatePickerPopup();
    private _dismissDatePickerPopup();
    /**
     * Callback for closing the calendar callout
     */
    private _calendarDismissed();
    private _handleEscKey(ev);
    private _validateTextInput();
    private _isDateOutOfBounds(date, minDate?, maxDate?);
}
