import { IEventAggregator, Subscription } from '@essential-projects/event_aggregator_contracts'; import { IIAMService, IIdentity } from '@essential-projects/iam_contracts'; import { APIs, DataModels, Messages } from '@process-engine/management_api_contracts'; import { FlowNodeInstance, IFlowNodeInstanceService } from '@process-engine/persistence_api.contracts'; import { NotificationAdapter } from './adapters/index'; export declare class EmptyActivityService implements APIs.IEmptyActivityManagementApi { private readonly eventAggregator; private readonly flowNodeInstanceService; private readonly iamService; private readonly notificationAdapter; constructor(eventAggregator: IEventAggregator, flowNodeInstanceService: IFlowNodeInstanceService, iamService: IIAMService, notificationAdapter: NotificationAdapter); onEmptyActivityWaiting(identity: IIdentity, callback: Messages.CallbackTypes.OnEmptyActivityWaitingCallback, subscribeOnce?: boolean): Promise; onEmptyActivityFinished(identity: IIdentity, callback: Messages.CallbackTypes.OnEmptyActivityFinishedCallback, subscribeOnce?: boolean): Promise; onEmptyActivityForIdentityWaiting(identity: IIdentity, callback: Messages.CallbackTypes.OnEmptyActivityWaitingCallback, subscribeOnce?: boolean): Promise; onEmptyActivityForIdentityFinished(identity: IIdentity, callback: Messages.CallbackTypes.OnEmptyActivityFinishedCallback, subscribeOnce?: boolean): Promise; getEmptyActivitiesForProcessModel(identity: IIdentity, processModelId: string, offset?: number, limit?: number): Promise; getEmptyActivitiesForProcessInstance(identity: IIdentity, processInstanceId: string, offset?: number, limit?: number): Promise; getEmptyActivitiesForCorrelation(identity: IIdentity, correlationId: string, offset?: number, limit?: number): Promise; getEmptyActivitiesForProcessModelInCorrelation(identity: IIdentity, processModelId: string, correlationId: string, offset?: number, limit?: number): Promise; getWaitingEmptyActivitiesByIdentity(identity: IIdentity, offset?: number, limit?: number): Promise; finishEmptyActivity(identity: IIdentity, processInstanceId: string, correlationId: string, emptyActivityInstanceId: string): Promise; filterAndConvertEmptyActivityList(identity: IIdentity, suspendedFlowNodes: Array, offset?: number, limit?: number): Promise; private convertFlowNodeInstancesToEmptyActivities; private checkIfIsFlowNodeIsEmptyActivity; private checkIfIdentityUserIDsMatch; private filterInacessibleFlowNodeInstances; private checkIfUserCanAccessFlowNodeInstance; private ensureHasClaim; private checkIfUserIsSuperAdmin; private convertSuspendedFlowNodeToEmptyActivity; private getFlowNodeInstanceForCorrelationInProcessInstance; private publishFinishEmptyActivityEvent; }