import type { CalendarEvent } from './calendar';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    open: {
        type: BooleanConstructor;
        required: true;
    };
    title: {
        type: StringConstructor;
        required: true;
    };
    events: {
        type: ArrayConstructor;
        required: true;
    };
    getEventIdentifier: {
        type: FunctionConstructor;
        required: true;
    };
    getEventTitle: {
        type: FunctionConstructor;
        required: true;
    };
    getEventTimeLabel: {
        type: FunctionConstructor;
        required: true;
    };
    onSelectEvent: {
        type: FunctionConstructor;
        required: true;
    };
    onContextmenuEvent: {
        type: FunctionConstructor;
        required: true;
    };
    editPopoverOpen: {
        type: BooleanConstructor;
        required: true;
    };
    editPresentationMode: {
        type: StringConstructor;
        required: true;
    };
    editPopoverPlacement: {
        type: StringConstructor;
        required: true;
    };
    contextMenuOpen: {
        type: BooleanConstructor;
        required: true;
    };
    contextMenuEvent: {
        type: any;
        required: true;
    };
    contextMenuStyle: {
        type: ObjectConstructor;
        required: true;
    };
    editPopoverStyle: {
        type: ObjectConstructor;
        required: true;
    };
    editBoundaryStyle: {
        type: ObjectConstructor;
        required: false;
    };
    editFormData: {
        type: ObjectConstructor;
        required: true;
    };
    editFormColumns: {
        type: ArrayConstructor;
        required: true;
    };
    isCreatingEvent: {
        type: BooleanConstructor;
        required: true;
    };
    editingEventTitle: {
        type: StringConstructor;
        required: true;
    };
    currentEditableEvent: {
        type: ObjectConstructor;
        required: true;
    };
    closeContextMenu: {
        type: FunctionConstructor;
        required: true;
    };
    handleContextMenuEdit: {
        type: FunctionConstructor;
        required: true;
    };
    handleContextMenuCopy: {
        type: FunctionConstructor;
        required: true;
    };
    handleContextMenuDelete: {
        type: FunctionConstructor;
        required: true;
    };
    handleMaskClose: {
        type: FunctionConstructor;
        required: true;
    };
    handleSwitchPresentation: {
        type: FunctionConstructor;
        required: true;
    };
    handleConfirmEdit: {
        type: FunctionConstructor;
        required: true;
    };
    handleConfirmAndAdd: {
        type: FunctionConstructor;
        required: true;
    };
    handleDeleteEditEvent: {
        type: FunctionConstructor;
        required: true;
    };
    onBindEditPanelRef: {
        type: FunctionConstructor;
        required: false;
    };
    onBindContextMenuPanelRef: {
        type: FunctionConstructor;
        required: false;
    };
    panelStyle: {
        type: ObjectConstructor;
        required: false;
    };
}>, {
    props: any;
    emit: (event: "update:open", ...args: any[]) => void;
    innerOpen: import("vue").WritableComputedRef<any, boolean>;
    closePanel: () => void;
    bindEditPanelRef: (instance: unknown) => void;
    bindContextMenuPanelRef: (instance: unknown) => void;
    handleSelect: (event: CalendarEvent, nativeEvent: MouseEvent) => void;
    handleContextmenu: (event: CalendarEvent, nativeEvent: MouseEvent) => void;
    CalendarContextMenu: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        open: {
            type: BooleanConstructor;
            required: true;
        };
        style: {
            type: ObjectConstructor;
            required: true;
        };
        event: {
            type: any;
            required: true;
        };
        currentEditableEvent: {
            type: ObjectConstructor;
            required: true;
        };
        boundaryStyle: {
            type: ObjectConstructor;
            required: false;
        };
    }>, {
        props: any;
        emit: (event: "close" | "copy" | "remove" | "edit", ...args: any[]) => void;
        menuRef: Readonly<import("vue").ShallowRef<unknown>>;
        canDelete: import("vue").ComputedRef<boolean>;
        closeMenu: () => void;
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "copy" | "remove" | "edit")[], "close" | "copy" | "remove" | "edit", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        open: {
            type: BooleanConstructor;
            required: true;
        };
        style: {
            type: ObjectConstructor;
            required: true;
        };
        event: {
            type: any;
            required: true;
        };
        currentEditableEvent: {
            type: ObjectConstructor;
            required: true;
        };
        boundaryStyle: {
            type: ObjectConstructor;
            required: false;
        };
    }>> & Readonly<{
        onClose?: (...args: any[]) => any;
        onCopy?: (...args: any[]) => any;
        onRemove?: (...args: any[]) => any;
        onEdit?: (...args: any[]) => any;
    }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
    CalendarEditPanel: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        open: {
            type: BooleanConstructor;
            required: true;
        };
        presentationMode: {
            type: StringConstructor;
            required: true;
        };
        placement: {
            type: StringConstructor;
            required: true;
        };
        title: {
            type: StringConstructor;
            required: true;
        };
        formData: {
            type: ObjectConstructor;
            required: true;
        };
        formColumns: {
            type: ArrayConstructor;
            required: true;
        };
        isCreatingEvent: {
            type: BooleanConstructor;
            required: true;
        };
        currentEditableEvent: {
            type: ObjectConstructor;
            required: true;
        };
        style: {
            type: ObjectConstructor;
            required: false;
        };
        boundaryStyle: {
            type: ObjectConstructor;
            required: false;
        };
    }>, {
        props: any;
        emit: (event: "confirm" | "mask-close" | "switch-presentation" | "confirm-and-add" | "delete-edit-event", ...args: any[]) => void;
        bem: {
            b: (blockSuffix?: string) => string;
            e: (element?: string) => string;
            m: (modifier?: string) => string;
            be: (blockSuffix?: string, element?: string) => string;
            em: (element: string, modifier: string) => string;
            bm: (blockSuffix: string, modifier: string) => string;
            bem: (blockSuffix: string, element: string, modifier: string) => string;
            is: (name?: string) => string;
        };
        canDelete: import("vue").ComputedRef<boolean>;
        popoverRef: Readonly<import("vue").ShallowRef<unknown>>;
        boundaryRef: Readonly<import("vue").ShallowRef<unknown>>;
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("confirm" | "mask-close" | "switch-presentation" | "confirm-and-add" | "delete-edit-event")[], "confirm" | "mask-close" | "switch-presentation" | "confirm-and-add" | "delete-edit-event", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        open: {
            type: BooleanConstructor;
            required: true;
        };
        presentationMode: {
            type: StringConstructor;
            required: true;
        };
        placement: {
            type: StringConstructor;
            required: true;
        };
        title: {
            type: StringConstructor;
            required: true;
        };
        formData: {
            type: ObjectConstructor;
            required: true;
        };
        formColumns: {
            type: ArrayConstructor;
            required: true;
        };
        isCreatingEvent: {
            type: BooleanConstructor;
            required: true;
        };
        currentEditableEvent: {
            type: ObjectConstructor;
            required: true;
        };
        style: {
            type: ObjectConstructor;
            required: false;
        };
        boundaryStyle: {
            type: ObjectConstructor;
            required: false;
        };
    }>> & Readonly<{
        onConfirm?: (...args: any[]) => any;
        "onMask-close"?: (...args: any[]) => any;
        "onSwitch-presentation"?: (...args: any[]) => any;
        "onConfirm-and-add"?: (...args: any[]) => any;
        "onDelete-edit-event"?: (...args: any[]) => any;
    }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:open"[], "update:open", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    open: {
        type: BooleanConstructor;
        required: true;
    };
    title: {
        type: StringConstructor;
        required: true;
    };
    events: {
        type: ArrayConstructor;
        required: true;
    };
    getEventIdentifier: {
        type: FunctionConstructor;
        required: true;
    };
    getEventTitle: {
        type: FunctionConstructor;
        required: true;
    };
    getEventTimeLabel: {
        type: FunctionConstructor;
        required: true;
    };
    onSelectEvent: {
        type: FunctionConstructor;
        required: true;
    };
    onContextmenuEvent: {
        type: FunctionConstructor;
        required: true;
    };
    editPopoverOpen: {
        type: BooleanConstructor;
        required: true;
    };
    editPresentationMode: {
        type: StringConstructor;
        required: true;
    };
    editPopoverPlacement: {
        type: StringConstructor;
        required: true;
    };
    contextMenuOpen: {
        type: BooleanConstructor;
        required: true;
    };
    contextMenuEvent: {
        type: any;
        required: true;
    };
    contextMenuStyle: {
        type: ObjectConstructor;
        required: true;
    };
    editPopoverStyle: {
        type: ObjectConstructor;
        required: true;
    };
    editBoundaryStyle: {
        type: ObjectConstructor;
        required: false;
    };
    editFormData: {
        type: ObjectConstructor;
        required: true;
    };
    editFormColumns: {
        type: ArrayConstructor;
        required: true;
    };
    isCreatingEvent: {
        type: BooleanConstructor;
        required: true;
    };
    editingEventTitle: {
        type: StringConstructor;
        required: true;
    };
    currentEditableEvent: {
        type: ObjectConstructor;
        required: true;
    };
    closeContextMenu: {
        type: FunctionConstructor;
        required: true;
    };
    handleContextMenuEdit: {
        type: FunctionConstructor;
        required: true;
    };
    handleContextMenuCopy: {
        type: FunctionConstructor;
        required: true;
    };
    handleContextMenuDelete: {
        type: FunctionConstructor;
        required: true;
    };
    handleMaskClose: {
        type: FunctionConstructor;
        required: true;
    };
    handleSwitchPresentation: {
        type: FunctionConstructor;
        required: true;
    };
    handleConfirmEdit: {
        type: FunctionConstructor;
        required: true;
    };
    handleConfirmAndAdd: {
        type: FunctionConstructor;
        required: true;
    };
    handleDeleteEditEvent: {
        type: FunctionConstructor;
        required: true;
    };
    onBindEditPanelRef: {
        type: FunctionConstructor;
        required: false;
    };
    onBindContextMenuPanelRef: {
        type: FunctionConstructor;
        required: false;
    };
    panelStyle: {
        type: ObjectConstructor;
        required: false;
    };
}>> & Readonly<{
    "onUpdate:open"?: (...args: any[]) => any;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
