import { OnDestroy, OnInit } from '@angular/core';
import { IManagedObject, IOperation, OperationService, UserService } from '@c8y/client';
import { AlertService, AppStateService, OperationRealtimeService } from '@c8y/ngx-components';
import { ConfigurationSnapshot, DeviceConfigurationOperation, RepositoryService } from '@c8y/ngx-components/repository/shared';
import { BsModalService } from 'ngx-bootstrap/modal';
import { DeviceConfigurationService } from './device-configuration.service';
import * as i0 from "@angular/core";
export declare class ConfigurationPreviewComponent implements OnInit, OnDestroy {
    private deviceConfigurationService;
    private operationRealtime;
    private bsModal;
    private user;
    private appState;
    private repositoryService;
    private operationService;
    private alertService;
    device: IManagedObject;
    set configurationType(type: string);
    get configurationType(): string;
    configSnapshot: ConfigurationSnapshot;
    canSaveSnapshot: boolean;
    actionButtonText: string;
    actionButtonIcon: string;
    isLegacy: boolean;
    operationToTrigger: DeviceConfigurationOperation.UPLOAD_CONFIG | DeviceConfigurationOperation.DOWNLOAD_CONFIG;
    operation: IOperation;
    canCallAction: boolean;
    deviceConfigurationOperation: typeof DeviceConfigurationOperation;
    private _configurationType;
    private operationsSubscription;
    constructor(deviceConfigurationService: DeviceConfigurationService, operationRealtime: OperationRealtimeService, bsModal: BsModalService, user: UserService, appState: AppStateService, repositoryService: RepositoryService, operationService: OperationService, alertService: AlertService);
    ngOnInit(): Promise<void>;
    setOperation(configType: any): Promise<void>;
    setCanCallAction(): void;
    createDeviceOperation(): Promise<void>;
    showOperation(): boolean;
    showBinary(): boolean;
    isCreateOperationDisabled(): boolean;
    updatePreview(operation: IOperation): void;
    download(): void;
    saveToRepository(): Promise<void>;
    hasPermission(): boolean;
    ngOnDestroy(): void;
    private updateSnapshotsOnConfigUpload;
    static ɵfac: i0.ɵɵFactoryDeclaration<ConfigurationPreviewComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ConfigurationPreviewComponent, "c8y-device-configuration-preview", never, { "device": { "alias": "device"; "required": false; }; "configurationType": { "alias": "configurationType"; "required": false; }; "configSnapshot": { "alias": "configSnapshot"; "required": false; }; "canSaveSnapshot": { "alias": "canSaveSnapshot"; "required": false; }; "actionButtonText": { "alias": "actionButtonText"; "required": false; }; "actionButtonIcon": { "alias": "actionButtonIcon"; "required": false; }; "isLegacy": { "alias": "isLegacy"; "required": false; }; "operationToTrigger": { "alias": "operationToTrigger"; "required": false; }; }, {}, never, never, false, never>;
}
//# sourceMappingURL=configuration-preview.component.d.ts.map