This is the type used for firing notifications intended for the subsystem in the Notifications SDK. For components that can't take a dependency on the Notifications SDK directly, they can use ITeamFoundationEventService.PublishNotification and the Notifications SDK ISubscriber implementation will get it.

interface VssNotificationEvent {
    actors?: EventActor[];
    artifactUris?: string[];
    data?: any;
    eventType?: string;
    expiresIn?: any;
    itemId?: string;
    processDelay?: any;
    scopes?: EventScope[];
    sourceEventCreatedTime?: Date;
}

Properties

actors?: EventActor[]

Optional: A list of actors which are additional identities with corresponding roles that are relevant to the event.

artifactUris?: string[]

Optional: A list of artifacts referenced or impacted by this event.

data?: any

Required: The event payload. If Data is a string, it must be in Json or XML format. Otherwise it must have a serialization format attribute.

eventType?: string

Required: The name of the event. This event must be registered in the context it is being fired.

expiresIn?: any

How long before the event expires and will be cleaned up. The default is to use the system default.

itemId?: string

The id of the item, artifact, extension, project, etc.

processDelay?: any

How long to wait before processing this event. The default is to process immediately.

scopes?: EventScope[]

Optional: A list of scopes which are relevant to the event.

sourceEventCreatedTime?: Date

This is the time the original source event for this VssNotificationEvent was created. For example, for something like a build completion notification SourceEventCreatedTime should be the time the build finished not the time this event was raised.