import { ThemeContext } from '../../shared/kernel'; import { Switchable } from '../../shared/options'; export interface ContextMenuItem { label: string; action: () => void; } export interface ContextMenuOptions extends Switchable { /** Extra items appended after the standard ones. */ extraItems?: ContextMenuItem[]; } /** DOM menu shown on right click. */ export declare class HtmlContextMenu { private readonly container; private element; private readonly closeListener; constructor(container: HTMLElement); show(items: ContextMenuItem[], x: number, y: number, theme: ThemeContext): void; hide(): void; destroy(): void; } /** Feature API (via registry.getFeature('context-menu')). */ export declare const contextMenuApi: { create: (container: HTMLElement) => HtmlContextMenu; }; export type ContextMenuApi = typeof contextMenuApi; export declare const contextMenuModule: { readonly kind: "feature"; readonly name: "context-menu"; readonly api: { create: (container: HTMLElement) => HtmlContextMenu; }; };