import { Route } from '@c8y/ngx-components';
import * as i0 from "@angular/core";
import * as i1 from "@c8y/ngx-components";
import * as i2 from "@angular/router";
import * as i3 from "@c8y/ngx-components/operations/bulk-operation-from-single";
import * as i4 from "@c8y/ngx-components/operations/bulk-operations-list";
import * as i5 from "@c8y/ngx-components/operations/bulk-operations-service";
import * as i6 from "@c8y/ngx-components/operations/bulk-operations-stepper-container";
import * as i7 from "@c8y/ngx-components/operations/stepper-bulk-type-configuration";
import * as i8 from "@c8y/ngx-components/operations/stepper-bulk-type-firmware";
import * as i9 from "@c8y/ngx-components/operations/stepper-bulk-type-software";
import * as i10 from "@c8y/ngx-components/operations/stepper-bulk-type-device-profile";
export declare const operationsRoutes: Route[];
/**
 * This module sets up the 'Device control' view. By importing it in your custom application you will have:
 * - a 'Device control' tab in device details view
 * - a 'Device control' entry in the 'Overviews' section of navigator
 * - 'Bulk operations' tab on the 'Device control' page
 * - list view of existing bulk operations with expandable details and options to filter
 * - guided stepper dialogs to schedule new bulk operations of supported types
 * (Configuration update, Firmware update, Software update, Apply device profile).
 *
 * Additionaly you can use the modules imported by {@link OperationsModule} separately to achieve
 * the results you wish to have in your application, e.g.:
 * - import {@link BulkOperationsListModule} and {@link BulkOperationsServiceModule}
 * to have an overview of existing bulk operation with expandable details
 * - additionaly import {@link BulkOperationsStepperContainerModule} and any of the existing
 * `StepperBulkType*Module` modules ({@link StepperBulkTypeConfigurationModule},
 * {@link StepperBulkTypeFirmwareModule}, {@link StepperBulkTypeSoftwareModule},
 * {@link StepperBulkTypeDeviceProfileModule}) to have the option
 * to create new bulk operation in a guided stepper dialog.
 *
 * ```typescript
 * import { BulkOperationsServiceModule } from '@c8y/ngx-components/operations/bulk-operations-service';
 * import { BulkOperationsListModule } from '@c8y/ngx-components/operations/bulk-operations-list';
 *
 * @NgModule({
 *   imports: [
 *     [...]
 *     BulkOperationsServiceModule,
 *     BulkOperationsListModule
 *   ],
 *   [...]
 * })
 * export class CustomOperationsModule {}```
 * respectively
 * ```typescript
 * import { BulkOperationsStepperContainerModule } from '@c8y/ngx-components/operations/bulk-operations-stepper-container';
 * import { BulkOperationsServiceModule } from '@c8y/ngx-components/operations/bulk-operations-service';
 * import { BulkOperationsListModule } from '@c8y/ngx-components/operations/bulk-operations-list';
 * import { StepperBulkTypeSoftwareModule } from '@c8y/ngx-components/operations/stepper-bulk-type-software';
 *
 * @NgModule({
 *   imports: [
 *     [...]
 *     BulkOperationsServiceModule,
 *     BulkOperationsListModule,
 *     BulkOperationsStepperContainerModule,
 *     StepperBulkTypeSoftwareModule
 *   ],
 *   [...]
 * })
 * export class CustomOperationsModule {}```
 * You can provide your own bulk operation stepper by registering a component via the `hookListBulkType`:
 *
 * ```typescript
 * import {
 *   hookListBulkType,
 *   baseUrl
 * } from '@c8y/ngx-components/operations/bulk-operations-service';
 *
 * [...]
 *
 * providers: [
 *   hookListBulkType({
 *     type: 'my-bulk-op-type',
 *     c8yIcon: 'c8y-tools',
 *     name: 'My bulk op type',
 *     path: `${baseUrl}my-type`,
 *     component: StepperMyBulkTypeComponent,
 *     fragments: ['c8y_MyType'],
 *     selected: false
 *   })
 * ]```
 */
export declare class OperationsModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<OperationsModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<OperationsModule, never, [typeof i1.CoreModule, typeof i2.RouterModule, typeof i3.BulkOperationFromSingleModule, typeof i4.BulkOperationsListModule, typeof i5.BulkOperationsServiceModule, typeof i6.BulkOperationsStepperContainerModule, typeof i7.StepperBulkTypeConfigurationModule, typeof i8.StepperBulkTypeFirmwareModule, typeof i9.StepperBulkTypeSoftwareModule, typeof i10.StepperBulkTypeDeviceProfileModule], never>;
    static ɵinj: i0.ɵɵInjectorDeclaration<OperationsModule>;
}
//# sourceMappingURL=operations.module.d.ts.map