/// import { IEventAggregator } from '@essential-projects/event_aggregator_contracts'; import { BaseSocketEndpoint } from '@essential-projects/http_node'; import { IIdentityService } from '@essential-projects/iam_contracts'; import { APIs } from '@process-engine/management_api_contracts'; export declare class UserTaskSocketEndpoint extends BaseSocketEndpoint { private connections; private managementApiNotificationService; private eventAggregator; private identityService; private endpointSubscriptions; private userSubscriptions; constructor(eventAggregator: IEventAggregator, identityService: IIdentityService, managementApiNotificationService: APIs.INotificationManagementApi); get namespace(): string; initializeEndpoint(socketIo: SocketIO.Namespace): Promise; dispose(): Promise; /** * Creates a number of Subscriptions for globally published events. * These events will be published for every user connected to the socketIO * instance. * * @async * @param socketIoInstance The socketIO instance for which to create the * subscriptions. */ private createSocketScopeNotifications; /** * Creates a number of Subscriptions for events that are only published for * certain identities. * An example would be "UserTask started by User with ID 123456". * * @async * @param socket The socketIO client on which to create the subscriptions. * @param identity The identity for which to create the subscriptions */ private createUserScopeNotifications; /** * Clears out all Subscriptions for the given identity. * Should only be used when a client disconnects. * * @async * @param identity The identity for which to remove the Subscriptions. */ private clearUserScopeNotifications; }