import { AvailabilitySlot, CalendarEvent, CalendarView, CalendarViewState, WeekStart } from './CalendarTypes'; type __VLS_Props = { events?: CalendarEvent[]; startDate?: Date; view?: CalendarView; weekStart?: WeekStart; availabilityMode?: boolean; availabilityEditable?: boolean; availabilitySlots?: AvailabilitySlot[]; viewSwitcher?: 'dropdown' | 'tabs'; }; declare function openPopover(event: CalendarEvent, position?: { top: number; left: number; }): void; declare function closePopover(): void; declare function __VLS_template(): { attrs: Partial<{}>; slots: { eventContent?(_: { event: any; close: any; }): any; eventContent?(_: { event: CalendarEvent; close: () => void; }): any; }; refs: {}; rootEl: HTMLDivElement; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, { visibleDateRange: import('vue').ComputedRef<{ start: Date; end: Date; }>; currentView: import('vue').Ref; currentDate: import('vue').Ref; openPopover: typeof openPopover; closePopover: typeof closePopover; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & { eventClick: (event: CalendarEvent) => any; dateChange: (changeEvent: CalendarViewState) => any; eventCreate: (event: { start_time: Date; end_time: Date; }) => any; availabilityChange: (slots: AvailabilitySlot[]) => any; eventUpdate: (event: CalendarEvent) => any; eventDelete: (eventId: string) => any; viewChange: (changeEvent: CalendarViewState) => any; ready: (changeEvent: CalendarViewState) => any; }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{ onEventClick?: ((event: CalendarEvent) => any) | undefined; onDateChange?: ((changeEvent: CalendarViewState) => any) | undefined; onEventCreate?: ((event: { start_time: Date; end_time: Date; }) => any) | undefined; onAvailabilityChange?: ((slots: AvailabilitySlot[]) => any) | undefined; onEventUpdate?: ((event: CalendarEvent) => any) | undefined; onEventDelete?: ((eventId: string) => any) | undefined; onViewChange?: ((changeEvent: CalendarViewState) => any) | undefined; onReady?: ((changeEvent: CalendarViewState) => any) | undefined; }>, { view: CalendarView; events: CalendarEvent[]; startDate: Date; weekStart: WeekStart; availabilityMode: boolean; availabilityEditable: boolean; availabilitySlots: AvailabilitySlot[]; viewSwitcher: "dropdown" | "tabs"; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; }; //# sourceMappingURL=Index.vue.d.ts.map