@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
47 lines (42 loc) • 2.06 kB
TypeScript
import { ActivatedRouteSnapshot } from '@angular/router';
import { Observable } from 'rxjs';
import { Tab } from '@c8y/ngx-components';
import * as i1 from '@c8y/ngx-components/context-dashboard';
import { ContextDashboardService } from '@c8y/ngx-components/context-dashboard';
import * as i0 from '@angular/core';
declare class DeviceDashboardGuard {
private contextDashboardService;
constructor(contextDashboardService: ContextDashboardService);
canActivate(route: ActivatedRouteSnapshot): Observable<boolean | Tab[]>;
static ɵfac: i0.ɵɵFactoryDeclaration<DeviceDashboardGuard, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<DeviceDashboardGuard>;
}
interface DeviceDashboardGuardOptions {
/**
* When `true`, only dashboards that explicitly list the current app key in
* `c8y_AppliedToApplications` are shown. Legacy dashboards that have no
* `c8y_AppliedToApplications` fragment are excluded.
* Defaults to `false` (legacy dashboards are included).
*/
strictAppFilter?: boolean;
}
/**
* Functional guard factory for device context dashboards.
*
* @example
* // Standard usage – equivalent to DeviceDashboardGuard
* canActivate: [deviceDashboardGuard()]
*
* @example
* // App-strict mode – only dashboards bound to the app using the factory are shown
* canActivate: [deviceDashboardGuard({ strictAppFilter: true })]
*/
declare function deviceDashboardGuard(options?: DeviceDashboardGuardOptions): (route: ActivatedRouteSnapshot) => Observable<boolean | Tab[]>;
declare class ViewDeviceContextDashboardModule {
static ɵfac: i0.ɵɵFactoryDeclaration<ViewDeviceContextDashboardModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<ViewDeviceContextDashboardModule, never, [typeof i1.ContextDashboardModule], never>;
static ɵinj: i0.ɵɵInjectorDeclaration<ViewDeviceContextDashboardModule>;
}
export { DeviceDashboardGuard, ViewDeviceContextDashboardModule, deviceDashboardGuard };
export type { DeviceDashboardGuardOptions };
//# sourceMappingURL=index.d.ts.map