import * as i1 from '@c8y/ngx-components'; import { NavigatorNodeFactory, NavigatorNode, Permissions, AppStateService, NavigatorService, TabsService, SearchService, OptionsService, AlertService, C8yStepper, SetupComponent } from '@c8y/ngx-components'; import { EcosystemService } from '@c8y/ngx-components/ecosystem/shared'; import * as i0 from '@angular/core'; import { OnInit, EventEmitter } from '@angular/core'; import { InventoryService, ApplicationService, IApplication } from '@c8y/client'; import * as i2 from '@c8y/ngx-components/assets-navigator'; import { AssetNavigatorConfig, AssetNodeService } from '@c8y/ngx-components/assets-navigator'; import * as i3 from 'ngx-bootstrap/popover'; import * as i4 from 'ngx-bootstrap/tooltip'; import * as i5 from '@c8y/ngx-components/ecosystem'; import * as i6 from '@c8y/ngx-components/icon-selector'; import { CdkStep } from '@angular/cdk/stepper'; import { Observable } from 'rxjs'; declare class CockpitConfigGuard implements NavigatorNodeFactory { private permissions; private appState; private ecosystemService; protected readonly configNode: NavigatorNode; constructor(permissions: Permissions, appState: AppStateService, ecosystemService: EcosystemService); get(): NavigatorNode; canActivate(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare const DEFAULT_HOME_DASHBOARD_NAME = "home-cockpit1"; declare const USER_HOME_DASHBOARD_NAME = "home-cockpit-user"; interface CockpitConfig { rootNodes: CockpitConfigRootNode[]; features: { alarms: boolean; dataExplorer: boolean; groups: boolean; reports: boolean; exports: boolean; dataPointLibrary: boolean; globalSmartRules: boolean; smartRules: boolean; subassets: boolean; search: boolean; dashboardManager: boolean; [key: string]: boolean; }; hideNavigator: boolean; homeDashboardName: string; userSpecificHomeDashboard: boolean; icon: { class: string; }; appTitle?: string; htmlWidgetDisableSanitization?: boolean; htmlWidgetDefaultToAdvancedMode?: boolean; } declare const DEFAULT_CONFIG: CockpitConfig; interface CockpitConfigRootNode { id: string; name: string; hideDevices?: boolean; } declare enum HomeDashboardType { /** * Shared by all Cockpit apps */ DEFAULT = 0, /** * Only for the current Cockpit. */ APP = 1, /** * Only for the current user. */ USER = 2 } declare const COCKPIT_CONFIG_PATH = "cockpit-application-configuration"; declare class CockpitConfigService { private navigatorService; private tabsService; private searchService; private assetNodeService; private inventoryService; private appState; private applicationService; private optionsService; private permissions; moduleConfig: AssetNavigatorConfig; currentConfig: CockpitConfig; nodes: NavigatorNode[]; private navigationFactory; private readonly DEFAULT_NODE_PRIORITY; get excludedFeatureKeys(): string[]; constructor(navigatorService: NavigatorService, tabsService: TabsService, searchService: SearchService, assetNodeService: AssetNodeService, inventoryService: InventoryService, appState: AppStateService, applicationService: ApplicationService, optionsService: OptionsService, permissions: Permissions, moduleConfig: AssetNavigatorConfig); init(): void; /** * Save and apply new cockpit configuration * @param config - New cockpit configuration */ saveConfig(config: CockpitConfig): Promise; /** * Update current application using the provided configuration * @param config - Cockpit configuration */ updateApplication(config: CockpitConfig): Promise; refresh(): void; setRootNodes(): Promise; getAppDashboardName(): string; private storeApplicationConfig; private addNodesToFactories; private registerFilterForFeatures; private setHiddenAttrLock; private filterTabs; private filterNavigatorNode; private hideChildrenNodesThatAreDisabled; private showAllChildrenNodes; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class CockpitConfigurationComponent implements OnInit { private cockpitConfigService; private alertService; private appState; /** * The currently used configuration. */ config: CockpitConfig; rootNodeDisabled: boolean; constructor(cockpitConfigService: CockpitConfigService, alertService: AlertService, appState: AppStateService); /** * @ignore */ ngOnInit(): void; /** * Stores the configuration and shows a success message. */ save(): Promise; /** * @ignore */ iconSelectionChange(icon: string): void; /** * Updates the features to directly reflect the results of the change. */ updateFeatures(): void; /** * Updates the root nodes to directly reflect the results of the change. */ updateRootNodes(): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare abstract class CockpitSetupStep { stepper: C8yStepper; protected step: CdkStep; protected setup: SetupComponent; protected appState: AppStateService; protected alert: AlertService; protected applicationService: ApplicationService; protected cockpitConfigService: CockpitConfigService; config: CockpitConfig; pending: boolean; constructor(stepper: C8yStepper, step: CdkStep, setup: SetupComponent, appState: AppStateService, alert: AlertService, applicationService: ApplicationService, cockpitConfigService: CockpitConfigService); next(): Promise; back(): void; } declare class CockpitSetupStep1Component extends CockpitSetupStep { stepper: C8yStepper; protected step: CdkStep; protected setup: SetupComponent; protected appState: AppStateService; protected alert: AlertService; protected appService: ApplicationService; protected cockpitConfigService: CockpitConfigService; app$: Observable; constructor(stepper: C8yStepper, step: CdkStep, setup: SetupComponent, appState: AppStateService, alert: AlertService, appService: ApplicationService, cockpitConfigService: CockpitConfigService); iconSelectionChange(icon: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class CockpitSetupStep2Component extends CockpitSetupStep { stepper: C8yStepper; protected step: CdkStep; protected setup: SetupComponent; protected appState: AppStateService; protected alert: AlertService; protected appService: ApplicationService; protected cockpitConfigService: CockpitConfigService; constructor(stepper: C8yStepper, step: CdkStep, setup: SetupComponent, appState: AppStateService, alert: AlertService, appService: ApplicationService, cockpitConfigService: CockpitConfigService); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class CockpitSetupStep3Component extends CockpitSetupStep { stepper: C8yStepper; protected step: CdkStep; protected setup: SetupComponent; protected appState: AppStateService; protected alert: AlertService; protected appService: ApplicationService; protected cockpitConfigService: CockpitConfigService; constructor(stepper: C8yStepper, step: CdkStep, setup: SetupComponent, appState: AppStateService, alert: AlertService, appService: ApplicationService, cockpitConfigService: CockpitConfigService); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class CockpitSetupStep4Component extends CockpitSetupStep { stepper: C8yStepper; protected step: CdkStep; protected setup: SetupComponent; protected appState: AppStateService; protected alert: AlertService; protected appService: ApplicationService; protected cockpitConfigService: CockpitConfigService; constructor(stepper: C8yStepper, step: CdkStep, setup: SetupComponent, appState: AppStateService, alert: AlertService, appService: ApplicationService, cockpitConfigService: CockpitConfigService); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class FeatureConfigComponent { config: CockpitConfig; onUpdate: EventEmitter; updateFeatures(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RootNodeConfigComponent { config: CockpitConfig; disabled: boolean; onUpdate: EventEmitter; /** * Removes one of the root nodes. * @param node The node to remove. */ removeNavigatorNode(node: CockpitConfigRootNode): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class HomeDashboardConfigComponent { private cockpitConfigService; config: CockpitConfig; /** * The types of dashboard that can be configured. */ readonly homeDashboardTypes: typeof HomeDashboardType; /** * @ignore */ constructor(cockpitConfigService: CockpitConfigService); /** * @ignore */ dashboardChange(selected: boolean, type: HomeDashboardType): void; /** * @ignore */ verifySelected(type: HomeDashboardType): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class MiscConfigComponent { config: CockpitConfig; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class CockpitSetupStepperButtonsComponent { index: any; onNext: EventEmitter; onBack: EventEmitter; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class CockpitConfigModule { private service; constructor(service: CockpitConfigService); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { COCKPIT_CONFIG_PATH, CockpitConfigGuard, CockpitConfigModule, CockpitConfigService, CockpitConfigurationComponent, CockpitSetupStep1Component, CockpitSetupStep2Component, CockpitSetupStep3Component, CockpitSetupStep4Component, DEFAULT_CONFIG, DEFAULT_HOME_DASHBOARD_NAME, FeatureConfigComponent, HomeDashboardConfigComponent, HomeDashboardType, MiscConfigComponent, RootNodeConfigComponent, USER_HOME_DASHBOARD_NAME }; export type { CockpitConfig, CockpitConfigRootNode }; //# sourceMappingURL=index.d.ts.map