import { CommandRegistry } from '@lumino/commands'; import { IDisposable } from '@lumino/disposable'; import { ContextMenu, Menu } from '@lumino/widgets'; import { IContextMenuItem } from './IContextMenuItem'; import { IMenu } from './IMenu'; import { IMenuItem } from './IMenuItem'; export interface addItem { addItem: (options: any) => Menu.IItem; } export declare abstract class BkoContextMenu implements IMenu { event: MouseEvent; protected scope: any; protected commands: CommandRegistry; protected menuItems: Menu.IItem[]; protected inLab: boolean; protected disposables: IDisposable[]; contextMenu: ContextMenu; constructor(scope: any); protected abstract buildMenu(): void; protected isInLab(): boolean; protected handleContextMenu(event: MouseEvent): void; open(e: MouseEvent): void; protected buildLabMenu(): void; protected buildBkoMenu(): void; protected createItems(items: IContextMenuItem[], menu: addItem): void; protected createMenuItem(menuItem: IContextMenuItem, menu: addItem): void; protected addMenuItem(menuItem: IContextMenuItem, menu: addItem): Menu.IItem; protected addSeparatorItem(menuItem: IContextMenuItem, menu: addItem): Menu.IItem; protected addSubmenuItem(menuItem: IContextMenuItem, menu: addItem, subitems: IContextMenuItem[]): Menu.IItem; protected addCommand(menuItem: IMenuItem): void; protected addKeyBinding(menuItem: IContextMenuItem): void; protected createSubmenu(menuItem: IMenuItem, subitems: IContextMenuItem[]): Menu; protected bindEvents(): void; destroy(): void; removeMenuItems(): void; dispose(): void; unbind(): void; }