import * as React from 'react';
import type { CalendarProps } from '../components/Calendar/Calendar';
export interface UseCalendarDependencies extends Pick<CalendarProps, 'onHeaderChange' | 'onNextMonth' | 'onPrevMonth' | 'minDateTime' | 'maxDateTime' | 'shouldDisableDate' | 'disableFuture' | 'disablePast'> {
    value?: Array<Date | null> | Date | null;
}
export declare function useCalendar({ value, disablePast, disableFuture, shouldDisableDate, onHeaderChange, onNextMonth, onPrevMonth, minDateTime, maxDateTime, }: UseCalendarDependencies): {
    viewDate: Date;
    setViewDate: (value: Date) => void;
    setPrevMonth: () => void;
    setNextMonth: () => void;
    focusedDay: Date | undefined;
    setFocusedDay: React.Dispatch<React.SetStateAction<Date | undefined>>;
    isDayFocused: (day: Date) => boolean;
    isDayDisabled: (day: Date, withTime?: boolean) => boolean;
    isMonthDisabled: (month: number, year?: number) => boolean;
    isYearDisabled: (year: number) => boolean;
};
//# sourceMappingURL=useCalendar.d.ts.map