UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

55 lines 2.17 kB
import { Injector } from '@angular/core'; import { Router } from '@angular/router'; import { Observable } from 'rxjs'; import { ExtensionPointForPlugins } from '../common'; import { DrawerItem } from './drawer.model'; import { GenericHookType, GenericHookOptions } from '../common'; import { PluginsResolveService } from '../plugins'; import * as i0 from "@angular/core"; /** * You can either provide a single `DrawerItem` as parameter: * ```typescript * hookDrawer(...) * ``` * * Or an array to directly register multiple: * ```typescript * hookDrawer([...]) * ``` * * Or you provide a Service that implements `ExtensionFactory<DrawerItem>` * ```typescript * export class MyDrawerFactory implements ExtensionFactory<DrawerItem> {...} * ... * hookDrawer(MyDrawerFactory) * ``` * A typed alternative to `HOOK_DRAWER`. * @param drawer The `DrawerItem`'s or `ExtensionFactory` to be provided. * @returns An `Provider` to be provided in your module. */ export declare function hookDrawer(drawer: GenericHookType<DrawerItem>, options?: Partial<GenericHookOptions>): import("@angular/core").ValueProvider | import("@angular/core").ClassProvider | import("@angular/core").ExistingProvider; export declare class DrawerService extends ExtensionPointForPlugins<DrawerItem> { private router; constructor(rootInjector: Injector, router: Router, pluginService: PluginsResolveService); /** * Returns the current state. * @readonly * @returns The current set of actions. */ get state(): Set<DrawerItem>; getDrawersForPosition$(position: 'right' | 'left'): Observable<DrawerItem[]>; /** * Adds a new node to the navigator. * @param {DrawerItem} node Navigator node to add. */ add(node: DrawerItem): void; /** * Removes a node from the navigator. * @param {DrawerItem} node Navigator node to remove. */ remove(node: DrawerItem): void; protected setupItemsObservable(): Observable<DrawerItem[]>; static ɵfac: i0.ɵɵFactoryDeclaration<DrawerService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<DrawerService>; } //# sourceMappingURL=drawer.service.d.ts.map