import { IOperation } from './IOperation';
import { OperationBulkStatus } from './OperationBulkStatus';
import { OperationBulkGeneralStatus } from './OperationBulkGeneralStatus';
import { IOperationBulkProgress } from './IOperationBulkProgress';
/**
 * Interface to gather all mandantory fragments to
 * have a valid bulk operation.
 */
export interface IOperationBulk {
    /**
     * Identifier for bulk operation
     */
    id?: string | number;
    /**
     * Identifies the target group on which this operation should be performed
     */
    groupId: string | number;
    /**
     * Time when operations should be created
     */
    startDate: string;
    /**
     * Delay between every operation creation
     */
    creationRamp: number;
    /**
     * Operation to be executed for every device in a group
     */
    operationPrototype: Partial<IOperation>;
    /**
     * Status of Bulk Operation, see [[OperationBulkStatus]]
     */
    status?: OperationBulkStatus;
    /**
     * Simplified user friendly status of Bulk Operation, see [[OperationBulkGeneralStatus]]
     */
    generalStatus?: OperationBulkGeneralStatus;
    /**
     * Contains information about number of processed operations, see [[IOperationBulkProgress]]
     */
    progress?: IOperationBulkProgress;
    /**
     * Identifier of the failed bulk operation that current operation was created from
     */
    failedParentId?: string | number;
    /**
     * User specified note
     */
    note?: string;
    /**
     * Link to this resource
     */
    self?: string;
}
//# sourceMappingURL=IOperationBulk.d.ts.map