import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
export interface IContextMenuItem {
    name: string;
    iconName?: string;
    action: () => void | Promise<void>;
    disabled?: boolean;
}
export declare class WccContextmenu extends DeesElement {
    static show(event: MouseEvent, menuItems: IContextMenuItem[]): Promise<void>;
    accessor menuItems: IContextMenuItem[];
    accessor x: number;
    accessor y: number;
    accessor visible: boolean;
    private boundHandleOutsideClick;
    private boundHandleKeydown;
    static styles: import("@design.estate/dees-element").CSSResult[];
    render(): TemplateResult;
    connectedCallback(): Promise<void>;
    disconnectedCallback(): Promise<void>;
    private adjustPosition;
    private handleOutsideClick;
    private handleKeydown;
    private handleItemClick;
    private close;
}
