import * as i0 from '@angular/core';
import { NgModule } from '@angular/core';
import { gettext } from '@c8y/ngx-components/gettext';
import { hookRoute, ViewContext, hookNavigator, NavigatorNode } from '@c8y/ngx-components';
import { DATAPOINT_LIBRARY_CONFIG, pathToDatapointLibrary } from '@c8y/ngx-components/datapoint-library/model';

class DatapointLibraryModule {
    static forRoot(config = {}) {
        return {
            ngModule: DatapointLibraryModule,
            providers: [
                {
                    provide: DATAPOINT_LIBRARY_CONFIG,
                    useValue: config
                }
            ]
        };
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: DatapointLibraryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
    static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: DatapointLibraryModule }); }
    static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: DatapointLibraryModule, providers: [
            hookRoute([
                {
                    path: pathToDatapointLibrary,
                    loadComponent: () => import('@c8y/ngx-components/datapoint-library/list').then(m => m.DatapointLibraryListComponent)
                },
                {
                    context: ViewContext.DatapointLibrary,
                    path: 'details',
                    loadComponent: () => import('@c8y/ngx-components/datapoint-library/details').then(m => m.DatapointLibraryDetailsComponent),
                    label: gettext('Details'),
                    icon: 'palette',
                    priority: 500
                }
            ]),
            hookNavigator([
                new NavigatorNode({
                    parent: gettext('Configuration'),
                    label: gettext('Data point library'),
                    featureId: 'dataPointLibrary',
                    path: pathToDatapointLibrary,
                    icon: 'c8y-data-points',
                    routerLinkExact: false
                })
            ])
        ] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: DatapointLibraryModule, decorators: [{
            type: NgModule,
            args: [{
                    providers: [
                        hookRoute([
                            {
                                path: pathToDatapointLibrary,
                                loadComponent: () => import('@c8y/ngx-components/datapoint-library/list').then(m => m.DatapointLibraryListComponent)
                            },
                            {
                                context: ViewContext.DatapointLibrary,
                                path: 'details',
                                loadComponent: () => import('@c8y/ngx-components/datapoint-library/details').then(m => m.DatapointLibraryDetailsComponent),
                                label: gettext('Details'),
                                icon: 'palette',
                                priority: 500
                            }
                        ]),
                        hookNavigator([
                            new NavigatorNode({
                                parent: gettext('Configuration'),
                                label: gettext('Data point library'),
                                featureId: 'dataPointLibrary',
                                path: pathToDatapointLibrary,
                                icon: 'c8y-data-points',
                                routerLinkExact: false
                            })
                        ])
                    ]
                }]
        }] });

/**
 * Generated bundle index. Do not edit.
 */

export { DatapointLibraryModule };
//# sourceMappingURL=c8y-ngx-components-datapoint-library.mjs.map
