index.d.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import LogicFlow from '@logicflow/core';
  2. declare type SetType = 'add' | 'reset';
  3. export declare type MenuItem = {
  4. text?: string;
  5. className?: string;
  6. icon?: boolean;
  7. callback: (element: any) => void;
  8. };
  9. export declare type MenuConfig = {
  10. nodeMenu?: MenuItem[] | false;
  11. edgeMenu?: MenuItem[] | false;
  12. graphMenu?: MenuItem[] | false;
  13. };
  14. declare class Menu {
  15. lf: LogicFlow;
  16. private __container;
  17. private __menuDOM;
  18. private menuTypeMap;
  19. private __currentData;
  20. static pluginName: string;
  21. constructor({ lf }: {
  22. lf: any;
  23. });
  24. /**
  25. * 初始化设置默认内置菜单栏
  26. */
  27. private init;
  28. render(lf: any, container: any): void;
  29. destroy(): void;
  30. private showMenu;
  31. /**
  32. * 设置指定类型元素的菜单
  33. */
  34. private setMenuByType;
  35. /**
  36. * 获取 Menu DOM
  37. * @param list 菜单项
  38. * @return 菜单项 DOM
  39. */
  40. private __getMenuDom;
  41. setMenuConfig(config: MenuConfig): void;
  42. addMenuConfig(config: MenuConfig): void;
  43. /**
  44. * @deprecated
  45. * 复写添加
  46. */
  47. changeMenuItem(type: SetType, config: MenuConfig): void;
  48. }
  49. export default Menu;
  50. export { Menu, };