import type { EventCalendarState } from "../use-event-calendar/index.js"; import type { TemporalSupportedObject } from "../base-ui-copy/types/index.js"; import { SchedulerProcessedDate } from "./event.js"; export type CalendarView = 'day' | 'week' | 'month' | 'agenda'; /** * Configuration defined by each view. * This is used to determine how the components outside of the view should behave based on the current view. */ export interface EventCalendarViewConfig { siblingVisibleDateGetter: (parameters: SiblingVisibleDateGetterParameters) => TemporalSupportedObject; visibleDaysSelector: (state: EventCalendarState) => SchedulerProcessedDate[]; } interface SiblingVisibleDateGetterParameters { state: EventCalendarState; delta: 1 | -1; } export {};