import { CalendarApi, CalendarOptions } from '@fullcalendar/core';
import { SchedulerDateClickPayload, SchedulerDropPayload, SchedulerDateSelectPayload, SchedulerDayCellContentSlotProps, SchedulerEventChangePayload, SchedulerEventClickPayload, SchedulerEventContentSlotProps, SchedulerEventReceivePayload, SchedulerProps, SchedulerView, SchedulerViewChangePayload, SchedulerEvent } from './scheduler.js';
import { CreateComponentPublicInstanceWithMixins, ExtractPropTypes, PropType, ComponentOptionsMixin, PublicProps, GlobalComponents, GlobalDirectives, ComponentProvideOptions, DefineComponent } from 'vue';
import { CustomRendering } from '@fullcalendar/core/internal';
import { Calendar } from '@fullcalendar/core/index.js';
declare function getCalendarApi(): CalendarApi | null;
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        "event-content"?: (props: SchedulerEventContentSlotProps) => unknown;
        "day-cell-content"?: (props: SchedulerDayCellContentSlotProps) => unknown;
    }> & {
        "event-content"?: (props: SchedulerEventContentSlotProps) => unknown;
        "day-cell-content"?: (props: SchedulerDayCellContentSlotProps) => unknown;
    };
    refs: {
        calendarRef: CreateComponentPublicInstanceWithMixins<Readonly< ExtractPropTypes<{
            options: PropType<CalendarOptions>;
        }>> & Readonly<{}>, {}, {
            renderId: number;
            customRenderingMap: Map<string, CustomRendering<any>>;
        }, {}, {
            getApi(): Calendar;
            buildOptions(suppliedOptions: CalendarOptions | undefined): CalendarOptions;
        }, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {}, true, {}, {}, GlobalComponents, GlobalDirectives, string, {}, any, ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly< ExtractPropTypes<{
            options: PropType<CalendarOptions>;
        }>> & Readonly<{}>, {}, {
            renderId: number;
            customRenderingMap: Map<string, CustomRendering<any>>;
        }, {}, {
            getApi(): Calendar;
            buildOptions(suppliedOptions: CalendarOptions | undefined): CalendarOptions;
        }, {}> | null;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: DefineComponent<SchedulerProps, {
    getApi: typeof getCalendarApi;
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    drop: (payload: SchedulerDropPayload) => any;
    "update:modelValue": (value: string) => any;
    "update:view": (value: SchedulerView) => any;
    "date-click": (payload: SchedulerDateClickPayload) => any;
    "date-select": (payload: SchedulerDateSelectPayload) => any;
    "event-click": (payload: SchedulerEventClickPayload) => any;
    "event-change": (payload: SchedulerEventChangePayload) => any;
    "event-receive": (payload: SchedulerEventReceivePayload) => any;
    "view-change": (payload: SchedulerViewChangePayload) => any;
}, string, PublicProps, Readonly<SchedulerProps> & Readonly<{
    onDrop?: ((payload: SchedulerDropPayload) => any) | undefined;
    "onUpdate:modelValue"?: ((value: string) => any) | undefined;
    "onUpdate:view"?: ((value: SchedulerView) => any) | undefined;
    "onDate-click"?: ((payload: SchedulerDateClickPayload) => any) | undefined;
    "onDate-select"?: ((payload: SchedulerDateSelectPayload) => any) | undefined;
    "onEvent-click"?: ((payload: SchedulerEventClickPayload) => any) | undefined;
    "onEvent-change"?: ((payload: SchedulerEventChangePayload) => any) | undefined;
    "onEvent-receive"?: ((payload: SchedulerEventReceivePayload) => any) | undefined;
    "onView-change"?: ((payload: SchedulerViewChangePayload) => any) | undefined;
}>, {
    modelValue: string;
    height: string | number;
    view: SchedulerView;
    events: SchedulerEvent[];
    locale: string;
    editable: boolean;
    views: SchedulerView[];
    droppable: boolean;
    selectable: boolean;
    selectMirror: boolean;
    weekStart: 0 | 1 | 2 | 3 | 4 | 5 | 6;
    showNowIndicator: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
    calendarRef: CreateComponentPublicInstanceWithMixins<Readonly< ExtractPropTypes<{
        options: PropType<CalendarOptions>;
    }>> & Readonly<{}>, {}, {
        renderId: number;
        customRenderingMap: Map<string, CustomRendering<any>>;
    }, {}, {
        getApi(): Calendar;
        buildOptions(suppliedOptions: CalendarOptions | undefined): CalendarOptions;
    }, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {}, true, {}, {}, GlobalComponents, GlobalDirectives, string, {}, any, ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly< ExtractPropTypes<{
        options: PropType<CalendarOptions>;
    }>> & Readonly<{}>, {}, {
        renderId: number;
        customRenderingMap: Map<string, CustomRendering<any>>;
    }, {}, {
        getApi(): Calendar;
        buildOptions(suppliedOptions: CalendarOptions | undefined): CalendarOptions;
    }, {}> | null;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
