import { StepperSelectionEvent } from '@angular/cdk/stepper';
import { OnDestroy, OnInit } from '@angular/core';
import { IManagedObject } from '@c8y/client';
import { BulkOperationStepper } from './bulk-operation-stepper.component';
import { OperationDetails } from '@c8y/ngx-components/operations/bulk-operations-service';
import * as i0 from "@angular/core";
export declare abstract class BaseStepperComponent implements OnInit, OnDestroy {
    operationStepper: BulkOperationStepper;
    set deviceTypes(deviceTypes: string | string[]);
    /**
     * A map holding step data. The order of properties need to match the order of
     * the steps they hold data for as the index of the property is used to clear
     * step data when navigating forth after changing data at an earlier step.
     */
    stepData: {
        [key: string]: IManagedObject;
    };
    private endSubscriptions;
    ngOnInit(): void;
    ngOnDestroy(): void;
    protected abstract retrieveOperationPrototype(): OperationDetails | Promise<OperationDetails>;
    protected onSelectionChange(event: StepperSelectionEvent): void;
    private getStepDataKeyByIndex;
    static ɵfac: i0.ɵɵFactoryDeclaration<BaseStepperComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<BaseStepperComponent, "c8y-base-stepper", never, {}, {}, never, never, false, never>;
}
//# sourceMappingURL=base-stepper.component.d.ts.map