@pisell/pisellos
Version:
一个可扩展的前端模块化SDK框架,支持插件系统
29 lines (28 loc) • 895 B
TypeScript
import React from 'react';
import App from '../app';
export interface MenuItem {
key: string;
label: string;
path: string;
children?: MenuItem[];
icon?: string | React.ReactNode;
hide?: boolean;
}
export declare class MenuManager {
private menuItems;
private menuMaps;
private app;
useMenu: () => import("./hooks").MenuContextType;
MenuProvider: React.FC<{
children: React.ReactNode;
menus: MenuItem[];
}>;
constructor(items: MenuItem[], app: App);
set(items: MenuItem[]): void;
getMenus(): MenuItem[];
getMenuMaps(): void;
findMenuItemByPath(items: MenuItem[], path: string): MenuItem | null;
findParent(items: MenuItem[], key: string, parent?: MenuItem | null): MenuItem | null;
getShowChildren(items: MenuItem[]): MenuItem[];
findMenuItemByKey(items: MenuItem[], key: string): MenuItem | null;
}