UNPKG

vue-mf-module

Version:

A vue extension to create microfrontend module

49 lines (48 loc) 1.45 kB
import { TinyEmitter } from 'tiny-emitter'; import { RouteParamsRaw } from 'vue-router'; export interface IMenuDefinition { name: string; description: string; icon?: string; routeName?: string; routeParams?: RouteParamsRaw; featureflags?: string[]; orderIndex?: number; parents?: string[]; class?: string; meta?: any; hidden: () => boolean; } export declare enum menuType { drawer = 0, settings = 1, header = 2, footer = 3 } export declare const MenuNotifications: { menuDefinitionAdded: string; menuDefinitionMoved: string; }; export declare class MenuHelper { menuDefinitions: IMenuDefinition[]; menuStructure: { [key: string]: { [key: string]: string[]; }; }; private notifications; private static instance; get Notifications(): TinyEmitter; static get Instance(): MenuHelper; addMenuDefinition(menuDefinition: IMenuDefinition, ...positions: { section: menuType; parent?: string; }[]): void; removeMenuDefinition(section: menuType, name: string, parent: string): IMenuDefinition | undefined; moveMenu(section: menuType, name: string, parent: string, index?: number): IMenuDefinition | undefined; getMenuItem(name: string): IMenuDefinition | undefined; getMenu(menu: menuType): { item: IMenuDefinition | undefined; children: (IMenuDefinition | undefined)[]; }[]; }