export type CalendarMode = 'single' | 'range';
export interface DateRange {
    from?: Date;
    to?: Date;
}
export declare const useCalendar: (initialDate?: Date, value?: Date | DateRange, mode?: CalendarMode) => {
    cursorDate: Date;
    setCursorDate: import('react').Dispatch<import('react').SetStateAction<Date>>;
    daysInMonth: Date[];
    weekdays: string[];
    getDayProps: (day: Date) => {
        date: Date;
        isCurrentMonth: boolean;
        isToday: boolean;
        isSelected: boolean;
        isRangeStart: boolean;
        isRangeEnd: boolean;
        isInRange: boolean;
    };
    nextMonth: () => void;
    prevMonth: () => void;
    nextYear: () => void;
    prevYear: () => void;
    selectYear: (year: number) => void;
    selectMonth: (month: number) => void;
    currentMonthName: string;
    currentMonthIndex: number;
    currentYear: number;
};
