/**
 * @license
 *-------------------------------------------------------------------------------------------
 * Copyright © 2026 Progress Software Corporation. All rights reserved.
 * Licensed under commercial license. See LICENSE.md in the package root for more information
 *-------------------------------------------------------------------------------------------
 */
import { PropType } from 'vue';
import { Offset } from '@progress/kendo-vue-popup';
import { MenuItemModel } from '../menu/models/MenuItemModel';
import { MenuSelectEvent } from '../menu/events';
import { MenuProps } from '../menu/MenuProps';
/**
 * Represents the props of the ContextMenu component.
 */
export interface ContextMenuProps extends Omit<MenuProps, 'openOnClick' | 'hoverOpenDelay' | 'hoverCloseDelay'> {
    /**
     * Controls the visibility of the ContextMenu.
     */
    show?: boolean;
    /**
     * Sets the absolute position of the ContextMenu popup.
     */
    offset?: Offset;
    /**
     * Fires when the ContextMenu should close.
     */
    onClose?: () => void;
}
declare const ContextMenu: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    show: {
        type: PropType<boolean>;
        default: boolean;
    };
    offset: {
        type: PropType<Offset>;
        default: () => {
            left: number;
            top: number;
        };
    };
    items: {
        type: PropType<MenuItemModel[]>;
        default: any;
    };
    dir: PropType<string>;
    itemRender: PropType<any>;
    linkRender: PropType<any>;
    customCloseItemIds: PropType<string[]>;
    className: PropType<string>;
}>, {}, {
    visible: boolean;
}, {}, {
    handleClose(): void;
    handleSelect(event: MenuSelectEvent): void;
    handleClickOutside(event: MouseEvent): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("select" | "close")[], "select" | "close", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    show: {
        type: PropType<boolean>;
        default: boolean;
    };
    offset: {
        type: PropType<Offset>;
        default: () => {
            left: number;
            top: number;
        };
    };
    items: {
        type: PropType<MenuItemModel[]>;
        default: any;
    };
    dir: PropType<string>;
    itemRender: PropType<any>;
    linkRender: PropType<any>;
    customCloseItemIds: PropType<string[]>;
    className: PropType<string>;
}>> & Readonly<{
    onSelect?: (...args: any[]) => any;
    onClose?: (...args: any[]) => any;
}>, {
    items: MenuItemModel[];
    offset: Offset;
    show: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export { ContextMenu };
