UNPKG

@veccu/react-calendar

Version:

Headless Calendar UI Library with react hooks

98 lines (97 loc) 2.62 kB
/// <reference types="react" /> import { CalendarViewType, WeekDayType } from './models'; export interface UseCalendarOptions { defaultDate?: Date | number | string; defaultWeekStart?: WeekDayType; defaultViewType?: CalendarViewType; } /** * @deprecated This package will be replaced with @h6s/calendar * @see https://github.com/h6s-dev/h6s */ export default function useCalendar({ defaultDate, defaultWeekStart, defaultViewType, }?: UseCalendarOptions): { headers: { weekDays: ({ value: Date; } & { key: string; })[]; }; body: { value: { key: string; value: ({ value: Date; } & { date: number; isCurrentMonth: boolean; isCurrentDate: boolean; isWeekend: boolean; } & { key: string; })[]; }[]; } | { value: { key: string; value: ({ value: Date; } & { date: number; isCurrentMonth: boolean; isCurrentDate: boolean; isWeekend: boolean; } & { key: string; })[]; }[]; } | { value: { key: string; value: ({ value: Date; } & { date: number; isCurrentMonth: boolean; isCurrentDate: boolean; isWeekend: boolean; } & { key: string; })[]; }[]; }; navigation: { toNext: () => void; toPrev: () => void; setToday: () => void; setDate: (date: Date) => void; }; view: { type: CalendarViewType; setViewType: import("react").Dispatch<import("react").SetStateAction<CalendarViewType>>; setWeekStartsOn: import("react").Dispatch<import("react").SetStateAction<WeekDayType>>; isMonthView: boolean; isWeekView: boolean; isDayView: boolean; showMonthView: () => void; showWeekView: () => void; showDayView: () => void; }; cursorDate: Date; year: number; month: number; day: number; weekStartsOn: WeekDayType; startWeekdayInMonth: number; weeksInMonth: number; weekendDays: { value: Date; }[]; today: { weekIndex: number; dateIndex: WeekDayType; }; getDateCellByIndex: (weekIndex: number, dayIndex: number) => { value: Date; }; };