import { Store } from '@ngrx/store'; import { BehaviorSubject, Observable } from 'rxjs'; import { WidgetFactoryService } from '../../dashboard/components/widgets/widget-instanciator/widget-factory.service'; import { YapVisibility } from '../components/share/share.model'; import { Widget } from '../model/widget.interface'; import { ToolboxManifestService } from './toolbox-manifest.service'; import * as i0 from "@angular/core"; export type WidgetDescriptionBase = { icon: string; label: string; }; export type WidgetDescriptionMenu = WidgetDescriptionBase & { opened: boolean; sub: CatalogEntry[]; }; export type CatalogEntry = WidgetDescriptionBase & { category?: string; type: string; description?: string; isCustom?: boolean; visibility?: YapVisibility; cover?: boolean; }; export declare const defaultMenuStructure: WidgetDescriptionMenu[]; export declare class ToolboxMenuService { private widgetFactoryService; private toolboxManifestService; private store; _menuStructure$: BehaviorSubject; menuStructure$: Observable; menuList$: Observable; types$: Observable<{ icon: string; label: string; type: string; }[]>; constructor(widgetFactoryService: WidgetFactoryService, toolboxManifestService: ToolboxManifestService, store: Store); addMenu(icon: string, label: string): void; addWidget(menuLabel: string, icon: string, label: string, type: string): void; setMenuStructure(structure: WidgetDescriptionMenu[]): void; addToCatalog(widget: Widget, index: number): void; isValidForCatalog(name: string): false; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }