import { DatePickerProps, ViewMode, DateRange } from '../../../shared/types/datepicker';
import { DatePickerState } from '../types';
import { InputRef } from '../../../shared/types/input';
export declare const useDatePicker: (props: DatePickerProps) => {
    state: DatePickerState;
    selectedDate: Date | null;
    selectedRange: {
        start: Date | null;
        end: Date | null;
    };
    selectedDateForInput: Date | null;
    selectedRangeForInput: {
        start: Date | null;
        end: Date | null;
    };
    inputRef: import('react').RefObject<InputRef>;
    isPortalReady: boolean;
    actions: {
        openPicker: () => void;
        closePicker: () => void;
        setCurrentDate: (date: Date) => void;
        setViewMode: (mode: ViewMode) => void;
        setSelectedDate: (date: Date | null, confirm?: boolean) => void;
        setSelectedRange: (range: DateRange, confirm?: boolean) => void;
        setHoverDate: (date: Date | null) => void;
        updatePortalPosition: () => void;
        navigate: (direction: "prev" | "next") => void;
        handleMonthSelect: (monthIndex: number) => void;
        handleYearSelect: (year: number) => void;
        goToToday: () => void;
        restoreOriginalRange: () => void;
        restoreOriginalDate: () => void;
        setPendingDate: (date: Date | null) => void;
        setPendingRange: (range: DateRange) => void;
    };
};
//# sourceMappingURL=useDatePicker.d.ts.map