UNPKG

@intuitionrobotics/thunderstorm

Version:
41 lines (40 loc) 1.48 kB
import { Module } from "@intuitionrobotics/ts-common"; import { MenuPosition } from "./PopupMenu"; import { _GenericRenderer, Adapter } from "../../components/adapter/Adapter"; import { BaseRendererMap } from "../../components/adapter/BaseRenderer"; import { CSSProperties } from "react"; export declare const resolveRealPosition: (button: HTMLImageElement) => MenuPosition; export type _Menu<Rm extends BaseRendererMap<any>> = _GenericRenderer<Rm>; export type Menu_Model = { id: string; adapter: Adapter; pos: MenuPosition; onNodeClicked?: (path: string, item: any) => void; onNodeDoubleClicked?: Function; css?: CSSProperties; }; export interface MenuListener { __onMenuDisplay: (menu: Menu_Model) => void; __onMenuHide: (id: string) => void; } export declare class MenuModule_Class extends Module<{}> { constructor(); private showMenu; private hideMenu; show: (model: Menu_Model) => void; hide: (id: string) => void[]; } export declare const MenuModule: MenuModule_Class; export declare class MenuBuilder { private readonly adapter; private readonly position; private readonly cssContainer?; private id; private onNodeClicked?; private onNodeDoubleClicked?; constructor(menu: Adapter, position: MenuPosition, cssContainer?: CSSProperties); show(): void; setId(id: string): this; setOnClick(func: (path: string, item: any) => void): this; setOnDoubleClick(func: Function): this; }