UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

57 lines 2.19 kB
import { Injector } from '@angular/core'; import { Observable } from 'rxjs'; import { UserMenuItem } from './user.model'; import { ExtensionPointForPlugins, GenericHookOptions, GenericHookType } from '../common'; import { Router } from '@angular/router'; import { PluginsResolveService } from '../plugins/plugins-resolve.service'; import * as i0 from "@angular/core"; /** * You can either provide a single `UserMenuItem` as parameter: * ```typescript * hookUserMenu(...) * ``` * * Or an array to directly register multiple: * ```typescript * hookUserMenu([...]) * ``` * * Or you provide a Service that implements `ExtensionFactory<UserMenuItem>` * ```typescript * export class MyUserMenuFactory implements ExtensionFactory<UserMenuItem> {...} * ... * hookUserMenu(MyUserMenuFactory) * ``` * @param userMenu The `UserMenuItem`'s or `ExtensionFactory` to be provided. * @param options The options to use for the hook. * @returns A `Provider` to be provided in your module. */ export declare function hookUserMenu(userMenu: GenericHookType<UserMenuItem>, options?: Partial<GenericHookOptions>): import("@angular/core").ValueProvider | import("@angular/core").ExistingProvider | import("@angular/core").ClassProvider; export declare class UserMenuService extends ExtensionPointForPlugins<UserMenuItem> { private router; constructor(rootInjector: Injector, router: Router, pluginService: PluginsResolveService); /** * Returns the current state. * @readonly * @returns The current set of actions. */ get state(): Set<UserMenuItem>; /** * Adds a new item to the search in the header. * @param item The item to add. */ add(item: UserMenuItem): void; /** * Removes an search from the header. * @param item The item to remove. */ remove(item: UserMenuItem): void; /** * Sets the items observable. * @returns The items observable. */ protected setupItemsObservable(): Observable<UserMenuItem[]>; static ɵfac: i0.ɵɵFactoryDeclaration<UserMenuService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<UserMenuService>; } //# sourceMappingURL=user-menu.service.d.ts.map