import { UseDateFormat } from '../../../common';
import { CalendarPropsType } from "../calendar.props";
import { WeekInCalendar } from "../types/calendar";
import { UseCompare, UseDate } from "./types";
import { Ref, VNode } from "vue";
export interface UseCalendarEvents {
    assignEventsToDays: (weeks: Array<WeekInCalendar>, events: Array<Record<string, any>>) => Array<WeekInCalendar>;
    assignEventsToWeeks: (weeks: Array<WeekInCalendar>, events: Array<Record<string, any>>) => Array<WeekInCalendar>;
    renderEventItem: (event: Record<string, any>) => VNode;
    useCompareCompsition: UseCompare;
    useDateFormatComposition: UseDateFormat;
    useDateComposition: UseDate;
    renderEventItemForMore: (event: Record<string, any>) => VNode;
    assignEventsToMonths: (year: number, events: Array<Record<string, any>>) => Record<string, Array<Record<string, any>>>;
    renderEventItemForMonths: (event: Record<string, any>) => VNode;
    getEventItemStyles: (event: Record<string, any>) => Record<string, any>;
}
export declare function useCalendarEvents(props: CalendarPropsType, useDate: UseDate, useDateFormat: UseDateFormat, usecompare: UseCompare, context: any, activeView: Ref<any>, locale: string): UseCalendarEvents;
