UNPKG

@intuitionrobotics/thunderstorm

Version:
41 lines 1.58 kB
import { Module } from "@intuitionrobotics/ts-common"; import { type MenuPosition } from "./PopupMenu.js"; import { type _GenericRenderer, Adapter } from "../../components/adapter/Adapter.js"; import { type BaseRendererMap } from "../../components/adapter/BaseRenderer.js"; import { type 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?: (...args: any[]) => any; 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: (...args: any[]) => any): this; } //# sourceMappingURL=MenuModule.d.ts.map