UNPKG

birch-context-menu

Version:
36 lines (35 loc) 1 kB
export interface IMenuItem { label: string; disabled: boolean; } export interface ITextMenuItem extends IMenuItem { sublabel?: string; onClick: () => void; } export interface ISubMenuItem extends IMenuItem { submenu: IContextMenuData; } export declare type IMenuItemGroup = Array<ITextMenuItem | ISubMenuItem>; export declare type IContextMenuData = IMenuItemGroup[]; export interface IContextMenuProps { } export interface IContextMenuReactContext { showContextMenu: (data: (ITextMenuItem | ISubMenuItem)[][] | Promise<(ITextMenuItem | ISubMenuItem)[][]>, pos?: IPosition) => { onShow: (cb: any) => void; onClose: (cb: any) => void; update: (newData: (ITextMenuItem | ISubMenuItem)[][]) => void; close: () => void; isActive: () => boolean; }; hideContextMenu: () => void; pos: { x: number; y: number; }; visible: boolean; data: any[]; } export interface IPosition { x: number; y: number; }