import * as i0 from '@angular/core';
import { AfterViewInit, OnChanges, EventEmitter, SimpleChanges } from '@angular/core';
import { IOperationBulk, OperationStatus, IResultList, IOperation } from '@c8y/client';
import { DataGridComponent, DisplayOptions, Pagination, Column, ActionControl, ServerSideDataCallback, DataSourceModifier, ServerSideDataResult } from '@c8y/ngx-components';
import { BulkOperationsService } from '@c8y/ngx-components/operations/bulk-operations-service';
import { OperationStatusOptionsMapShared, OperationStatusOption } from '@c8y/ngx-components/operations/shared';
import { StatusFilterComponent } from '@c8y/ngx-components/operations/status-filter';

declare class SingleOperationsListComponent implements AfterViewInit, OnChanges {
    private bulkOperationsService;
    bulkOperation: Partial<IOperationBulk>;
    readOnly: boolean;
    onRetryFailedOperations: EventEmitter<Partial<IOperationBulk>>;
    statusFilter: StatusFilterComponent;
    dataGrid: DataGridComponent;
    OPERATION_STATUS: {
        ALL: "ALL";
        PENDING: OperationStatus.PENDING;
        EXECUTING: OperationStatus.EXECUTING;
        SUCCESSFUL: OperationStatus.SUCCESSFUL;
        FAILED: OperationStatus.FAILED;
    };
    OPERATION_STATUS_LABELS: {
        PENDING: "Pending";
        EXECUTING: "Executing";
        FAILED: "Failed";
        SUCCESSFUL: "Successful";
    };
    OPERATION_STATUS_OPTIONS_MAP: OperationStatusOptionsMapShared;
    singleOperations: IResultList<IOperation>;
    displayOptions: Partial<DisplayOptions>;
    pagination: Pagination;
    columns: Column[];
    actions: ActionControl[];
    serverSideDataCallback: ServerSideDataCallback;
    private operationService;
    private alertService;
    private filterStatus;
    private reload$;
    private reloadThrottled$;
    constructor(bulkOperationsService: BulkOperationsService);
    ngAfterViewInit(): Promise<void>;
    ngOnChanges(changes: SimpleChanges): void;
    reload(option?: OperationStatusOption[]): void;
    onDataSourceModifier(dataSourceModifier: DataSourceModifier): Promise<ServerSideDataResult>;
    setStatusFilter(emit?: boolean): void;
    getFilterTypeOfSingleOperations(): OperationStatus | "ALL";
    retryBulkOperation(): void;
    retrySingleOperation(singleOperation: any): Promise<void>;
    static ɵfac: i0.ɵɵFactoryDeclaration<SingleOperationsListComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SingleOperationsListComponent, "c8y-single-operations-list", never, { "bulkOperation": { "alias": "bulkOperation"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; }, { "onRetryFailedOperations": "onRetryFailedOperations"; }, never, never, true, never>;
}

export { SingleOperationsListComponent };
//# sourceMappingURL=index.d.ts.map
