import { DateTime } from 'luxon';
import { DatePickerProps } from '../types';
export declare const useDatePicker: ({ dateMin, dateMax, name, defaultValue, format: propFormat, maskOptions, pickerType, onOpen, onClose, onError, onChange, value: externalValue, }: DatePickerProps) => {
    format: import("../../JsonSchemaForm/utils").DateFormat;
    formatIndexes: {
        day: number;
        month: number;
        year: number;
    };
    dateMinParts: number[];
    dateMaxParts: number[];
    dateMinDT: DateTime<true> | DateTime<false>;
    dateMaxDT: DateTime<true> | DateTime<false>;
    dateTime: DateTime<boolean> | undefined;
    isOpen: boolean;
    inputValue: any;
    calendarViewDateTime: DateTime<boolean> | undefined;
    maskInputRef: import("react").MutableRefObject<HTMLInputElement>;
    calendarType: import("../../JsonSchemaForm/utils").PickerCalendarType;
    lastChangedDate: Date | undefined;
    luxonFormat: string;
    safeOnChange: (newDT?: DateTime) => void;
    setCalendarType: import("react").Dispatch<import("react").SetStateAction<import("../../JsonSchemaForm/utils").PickerCalendarType>>;
    setCalendarViewDateTime: import("react").Dispatch<import("react").SetStateAction<DateTime<boolean> | undefined>>;
    setDateTime: import("react").Dispatch<import("react").SetStateAction<DateTime<boolean> | undefined>>;
    setIsOpen: import("react").Dispatch<import("react").SetStateAction<boolean>>;
    handleBlur: import("react").FocusEventHandler<HTMLInputElement>;
    pickerType: import("../types").PickerType;
};
