UNPKG

50 kBTypeScriptView Raw
1import FormInputInterfaces = require("../interfaces/common/FormInputInterfaces");
2import VSSInterfaces = require("../interfaces/common/VSSInterfaces");
3export interface ActorFilter extends RoleBasedFilter {
4}
5export interface ActorNotificationReason extends NotificationReason {
6 matchedRoles?: string[];
7}
8/**
9 * Artifact filter options. Used in "follow" subscriptions.
10 */
11export interface ArtifactFilter extends BaseSubscriptionFilter {
12 artifactId?: string;
13 artifactType?: string;
14 artifactUri?: string;
15 type?: string;
16}
17export interface BaseSubscriptionFilter {
18 eventType?: string;
19 type?: string;
20}
21export interface BatchNotificationOperation {
22 notificationOperation?: NotificationOperation;
23 notificationQueryConditions?: NotificationQueryCondition[];
24}
25export interface BlockFilter extends RoleBasedFilter {
26}
27export interface BlockSubscriptionChannel {
28 type?: string;
29}
30/**
31 * Default delivery preference for group subscribers. Indicates how the subscriber should be notified.
32 */
33export declare enum DefaultGroupDeliveryPreference {
34 /**
35 * Do not send notifications by default. Note: notifications can still be delivered to subscribers, for example via a custom subscription.
36 */
37 NoDelivery = -1,
38 /**
39 * Deliver notifications to each member of the group representing the subscriber. Only applicable when the subscriber is a group.
40 */
41 EachMember = 2
42}
43export interface DiagnosticIdentity {
44 displayName?: string;
45 emailAddress?: string;
46 id?: string;
47}
48export interface DiagnosticNotification {
49 eventId?: number;
50 eventType?: string;
51 id?: number;
52 messages?: NotificationDiagnosticLogMessage[];
53 recipients?: {
54 [key: string]: DiagnosticRecipient;
55 };
56 result?: string;
57 stats?: {
58 [key: string]: number;
59 };
60 subscriptionId?: string;
61}
62export interface DiagnosticRecipient {
63 recipient?: DiagnosticIdentity;
64 status?: string;
65}
66export interface EmailHtmlSubscriptionChannel extends SubscriptionChannelWithAddress {
67 type?: string;
68}
69export interface EmailPlaintextSubscriptionChannel extends SubscriptionChannelWithAddress {
70 type?: string;
71}
72/**
73 * Describes the subscription evaluation operation status.
74 */
75export declare enum EvaluationOperationStatus {
76 /**
77 * The operation object does not have the status set.
78 */
79 NotSet = 0,
80 /**
81 * The operation has been queued.
82 */
83 Queued = 1,
84 /**
85 * The operation is in progress.
86 */
87 InProgress = 2,
88 /**
89 * The operation was cancelled by the user.
90 */
91 Cancelled = 3,
92 /**
93 * The operation completed successfully.
94 */
95 Succeeded = 4,
96 /**
97 * The operation completed with a failure.
98 */
99 Failed = 5,
100 /**
101 * The operation timed out.
102 */
103 TimedOut = 6,
104 /**
105 * The operation could not be found.
106 */
107 NotFound = 7
108}
109export interface EventBacklogStatus {
110 captureTime?: Date;
111 jobId?: string;
112 lastEventBatchStartTime?: Date;
113 lastEventProcessedTime?: Date;
114 lastJobBatchStartTime?: Date;
115 lastJobProcessedTime?: Date;
116 oldestPendingEventTime?: Date;
117 publisher?: string;
118 unprocessedEvents?: number;
119}
120export interface EventBatch {
121 endTime?: any;
122 eventCounts?: {
123 [key: string]: number;
124 };
125 eventIds?: string;
126 notificationCounts?: {
127 [key: string]: number;
128 };
129 preProcessEndTime?: any;
130 preProcessStartTime?: any;
131 processEndTime?: any;
132 processStartTime?: any;
133 startTime?: any;
134 subscriptionCounts?: {
135 [key: string]: number;
136 };
137}
138export interface EventProcessingLog extends NotificationJobDiagnosticLog {
139 batches?: EventBatch[];
140 matcherResults?: MatcherResult[];
141}
142/**
143 * Set of flags used to determine which set of information is retrieved when querying for event publishers
144 */
145export declare enum EventPublisherQueryFlags {
146 None = 0,
147 /**
148 * Include event types from the remote services too
149 */
150 IncludeRemoteServices = 2
151}
152/**
153 * Encapsulates events result properties. It defines the total number of events used and the number of matched events.
154 */
155export interface EventsEvaluationResult {
156 /**
157 * Count of events evaluated.
158 */
159 count?: number;
160 /**
161 * Count of matched events.
162 */
163 matchedCount?: number;
164}
165/**
166 * A transform request specify the properties of a notification event to be transformed.
167 */
168export interface EventTransformRequest {
169 /**
170 * Event payload.
171 */
172 eventPayload: string;
173 /**
174 * Event type.
175 */
176 eventType: string;
177 /**
178 * System inputs.
179 */
180 systemInputs: {
181 [key: string]: string;
182 };
183}
184/**
185 * Result of transforming a notification event.
186 */
187export interface EventTransformResult {
188 /**
189 * Transformed html content.
190 */
191 content: string;
192 /**
193 * Calculated data.
194 */
195 data?: any;
196 /**
197 * Calculated system inputs.
198 */
199 systemInputs?: {
200 [key: string]: string;
201 };
202}
203/**
204 * Set of flags used to determine which set of information is retrieved when querying for eventtypes
205 */
206export declare enum EventTypeQueryFlags {
207 None = 0,
208 /**
209 * IncludeFields will include all fields and their types
210 */
211 IncludeFields = 1
212}
213export interface ExpressionFilter extends BaseSubscriptionFilter {
214 criteria?: ExpressionFilterModel;
215 type?: string;
216}
217/**
218 * Subscription Filter Clause represents a single clause in a subscription filter e.g. If the subscription has the following criteria "Project Name = [Current Project] AND Assigned To = [Me] it will be represented as two Filter Clauses Clause 1: Index = 1, Logical Operator: NULL , FieldName = 'Project Name', Operator = '=', Value = '[Current Project]' Clause 2: Index = 2, Logical Operator: 'AND' , FieldName = 'Assigned To' , Operator = '=', Value = '[Me]'
219 */
220export interface ExpressionFilterClause {
221 fieldName?: string;
222 /**
223 * The order in which this clause appeared in the filter query
224 */
225 index?: number;
226 /**
227 * Logical Operator 'AND', 'OR' or NULL (only for the first clause in the filter)
228 */
229 logicalOperator?: string;
230 operator?: string;
231 value?: string;
232}
233/**
234 * Represents a hierarchy of SubscritionFilterClauses that have been grouped together through either adding a group in the WebUI or using parethesis in the Subscription condition string
235 */
236export interface ExpressionFilterGroup {
237 /**
238 * The index of the last FilterClause in this group
239 */
240 end?: number;
241 /**
242 * Level of the group, since groups can be nested for each nested group the level will increase by 1
243 */
244 level?: number;
245 /**
246 * The index of the first FilterClause in this group
247 */
248 start?: number;
249}
250/**
251 * This class represents the Subscription Filter associated with a subscription in a user readable format e.g. "filterModel":{ "clauses":[ { "logicalOperator":"", "fieldName":"PortfolioProject", "operator":"=", "value":"@@MyProjectName@@", "index":1 } ], "groups":[ ], "maxGroupLevel":0 }
252 */
253export interface ExpressionFilterModel {
254 /**
255 * Flat list of clauses in this subscription
256 */
257 clauses?: ExpressionFilterClause[];
258 /**
259 * Grouping of clauses in the subscription
260 */
261 groups?: ExpressionFilterGroup[];
262 /**
263 * Max depth of the Subscription tree
264 */
265 maxGroupLevel?: number;
266}
267export interface FieldInputValues extends FormInputInterfaces.InputValues {
268 operators?: number[];
269}
270export interface FieldValuesQuery extends FormInputInterfaces.InputValuesQuery {
271 inputValues?: FieldInputValues[];
272 scope?: string;
273}
274export interface GeneratedNotification {
275 recipients?: DiagnosticIdentity[];
276}
277export interface GroupSubscriptionChannel extends SubscriptionChannelWithAddress {
278 type?: string;
279}
280/**
281 * Abstraction interface for the diagnostic log. Primarily for deserialization.
282 */
283export interface INotificationDiagnosticLog {
284 /**
285 * Identifier used for correlating to other diagnostics that may have been recorded elsewhere.
286 */
287 activityId?: string;
288 /**
289 * Description of what subscription or notification job is being logged.
290 */
291 description?: string;
292 /**
293 * Time the log ended.
294 */
295 endTime?: Date;
296 /**
297 * Unique instance identifier.
298 */
299 id?: string;
300 /**
301 * Type of information being logged.
302 */
303 logType?: string;
304 /**
305 * List of log messages.
306 */
307 messages?: NotificationDiagnosticLogMessage[];
308 /**
309 * Dictionary of log properties and settings for the job.
310 */
311 properties?: {
312 [key: string]: string;
313 };
314 /**
315 * This identifier depends on the logType. For notification jobs, this will be the job Id. For subscription tracing, this will be a special root Guid with the subscription Id encoded.
316 */
317 source?: string;
318 /**
319 * Time the log started.
320 */
321 startTime?: Date;
322}
323export interface ISubscriptionChannel {
324 type?: string;
325}
326export interface ISubscriptionFilter {
327 eventType?: string;
328 type?: string;
329}
330export interface MatcherResult {
331 matcher?: string;
332 stats?: {
333 [key: string]: {
334 [key: string]: number;
335 };
336 };
337}
338export interface MessageQueueSubscriptionChannel {
339 type?: string;
340}
341export interface NotificationAdminSettings {
342 /**
343 * The default group delivery preference for groups in this collection
344 */
345 defaultGroupDeliveryPreference?: DefaultGroupDeliveryPreference;
346}
347export interface NotificationAdminSettingsUpdateParameters {
348 defaultGroupDeliveryPreference?: DefaultGroupDeliveryPreference;
349}
350export interface NotificationBacklogStatus {
351 captureTime?: Date;
352 channel?: string;
353 jobId?: string;
354 lastJobBatchStartTime?: Date;
355 lastJobProcessedTime?: Date;
356 lastNotificationBatchStartTime?: Date;
357 lastNotificationProcessedTime?: Date;
358 oldestPendingNotificationTime?: Date;
359 publisher?: string;
360 /**
361 * Null status is unprocessed
362 */
363 status?: string;
364 unprocessedNotifications?: number;
365}
366export interface NotificationBatch {
367 endTime?: any;
368 notificationCount?: number;
369 notificationIds?: string;
370 problematicNotifications?: DiagnosticNotification[];
371 startTime?: any;
372}
373export interface NotificationDeliveryLog extends NotificationJobDiagnosticLog {
374 batches?: NotificationBatch[];
375}
376/**
377 * Abstract base class for all of the diagnostic logs.
378 */
379export interface NotificationDiagnosticLog {
380 /**
381 * Identifier used for correlating to other diagnostics that may have been recorded elsewhere.
382 */
383 activityId?: string;
384 description?: string;
385 endTime?: Date;
386 errors?: number;
387 /**
388 * Unique instance identifier.
389 */
390 id?: string;
391 logType?: string;
392 messages?: NotificationDiagnosticLogMessage[];
393 properties?: {
394 [key: string]: string;
395 };
396 /**
397 * This identifier depends on the logType. For notification jobs, this will be the job Id. For subscription tracing, this will be a special root Guid with the subscription Id encoded.
398 */
399 source?: string;
400 startTime?: Date;
401 warnings?: number;
402}
403export interface NotificationDiagnosticLogMessage {
404 /**
405 * Corresponds to .Net TraceLevel enumeration
406 */
407 level?: number;
408 message?: string;
409 time?: any;
410}
411export interface NotificationEventBacklogStatus {
412 eventBacklogStatus?: EventBacklogStatus[];
413 notificationBacklogStatus?: NotificationBacklogStatus[];
414}
415/**
416 * Encapsulates the properties of a filterable field. A filterable field is a field in an event that can used to filter notifications for a certain event type.
417 */
418export interface NotificationEventField {
419 /**
420 * Gets or sets the type of this field.
421 */
422 fieldType?: NotificationEventFieldType;
423 /**
424 * Gets or sets the unique identifier of this field.
425 */
426 id?: string;
427 /**
428 * Gets or sets the name of this field.
429 */
430 name?: string;
431 /**
432 * Gets or sets the path to the field in the event object. This path can be either Json Path or XPath, depending on if the event will be serialized into Json or XML
433 */
434 path?: string;
435 /**
436 * Gets or sets the scopes that this field supports. If not specified then the event type scopes apply.
437 */
438 supportedScopes?: string[];
439}
440/**
441 * Encapsulates the properties of a field type. It includes a unique id for the operator and a localized string for display name
442 */
443export interface NotificationEventFieldOperator {
444 /**
445 * Gets or sets the display name of an operator
446 */
447 displayName?: string;
448 /**
449 * Gets or sets the id of an operator
450 */
451 id?: string;
452}
453/**
454 * Encapsulates the properties of a field type. It describes the data type of a field, the operators it support and how to populate it in the UI
455 */
456export interface NotificationEventFieldType {
457 /**
458 * Gets or sets the unique identifier of this field type.
459 */
460 id?: string;
461 operatorConstraints?: OperatorConstraint[];
462 /**
463 * Gets or sets the list of operators that this type supports.
464 */
465 operators?: NotificationEventFieldOperator[];
466 subscriptionFieldType?: SubscriptionFieldType;
467 /**
468 * Gets or sets the value definition of this field like the getValuesMethod and template to display in the UI
469 */
470 value?: ValueDefinition;
471}
472/**
473 * Encapsulates the properties of a notification event publisher.
474 */
475export interface NotificationEventPublisher {
476 id?: string;
477 subscriptionManagementInfo?: SubscriptionManagement;
478 url?: string;
479}
480/**
481 * Encapsulates the properties of an event role. An event Role is used for role based subscription for example for a buildCompletedEvent, one role is request by field
482 */
483export interface NotificationEventRole {
484 /**
485 * Gets or sets an Id for that role, this id is used by the event.
486 */
487 id?: string;
488 /**
489 * Gets or sets the Name for that role, this name is used for UI display.
490 */
491 name?: string;
492 /**
493 * Gets or sets whether this role can be a group or just an individual user
494 */
495 supportsGroups?: boolean;
496}
497/**
498 * Encapsulates the properties of an event type. It defines the fields, that can be used for filtering, for that event type.
499 */
500export interface NotificationEventType {
501 category?: NotificationEventTypeCategory;
502 /**
503 * Gets or sets the color representing this event type. Example: rgb(128,245,211) or #fafafa
504 */
505 color?: string;
506 customSubscriptionsAllowed?: boolean;
507 eventPublisher?: NotificationEventPublisher;
508 fields?: {
509 [key: string]: NotificationEventField;
510 };
511 hasInitiator?: boolean;
512 /**
513 * Gets or sets the icon representing this event type. Can be a URL or a CSS class. Example: css://some-css-class
514 */
515 icon?: string;
516 /**
517 * Gets or sets the unique identifier of this event definition.
518 */
519 id?: string;
520 /**
521 * Gets or sets the name of this event definition.
522 */
523 name?: string;
524 roles?: NotificationEventRole[];
525 /**
526 * Gets or sets the scopes that this event type supports
527 */
528 supportedScopes?: string[];
529 /**
530 * Gets or sets the rest end point to get this event type details (fields, fields types)
531 */
532 url?: string;
533}
534/**
535 * Encapsulates the properties of a category. A category will be used by the UI to group event types
536 */
537export interface NotificationEventTypeCategory {
538 /**
539 * Gets or sets the unique identifier of this category.
540 */
541 id?: string;
542 /**
543 * Gets or sets the friendly name of this category.
544 */
545 name?: string;
546}
547export interface NotificationJobDiagnosticLog extends NotificationDiagnosticLog {
548 result?: string;
549 stats?: {
550 [key: string]: {
551 [key: string]: number;
552 };
553 };
554}
555export declare enum NotificationOperation {
556 None = 0,
557 SuspendUnprocessed = 1
558}
559export interface NotificationQueryCondition {
560 eventInitiator?: string;
561 eventType?: string;
562 subscriber?: string;
563 subscriptionId?: string;
564}
565export interface NotificationReason {
566 notificationReasonType?: NotificationReasonType;
567 targetIdentities?: VSSInterfaces.IdentityRef[];
568}
569export declare enum NotificationReasonType {
570 Unknown = 0,
571 Follows = 1,
572 Personal = 2,
573 PersonalAlias = 3,
574 DirectMember = 4,
575 IndirectMember = 5,
576 GroupAlias = 6,
577 SubscriptionAlias = 7,
578 SingleRole = 8,
579 DirectMemberGroupRole = 9,
580 InDirectMemberGroupRole = 10,
581 AliasMemberGroupRole = 11
582}
583/**
584 * Encapsulates notifications result properties. It defines the number of notifications and the recipients of notifications.
585 */
586export interface NotificationsEvaluationResult {
587 /**
588 * Count of generated notifications
589 */
590 count?: number;
591}
592export interface NotificationStatistic {
593 date?: Date;
594 hitCount?: number;
595 path?: string;
596 type?: NotificationStatisticType;
597 user?: VSSInterfaces.IdentityRef;
598}
599export interface NotificationStatisticsQuery {
600 conditions?: NotificationStatisticsQueryConditions[];
601}
602export interface NotificationStatisticsQueryConditions {
603 endDate?: Date;
604 hitCountMinimum?: number;
605 path?: string;
606 startDate?: Date;
607 type?: NotificationStatisticType;
608 user?: VSSInterfaces.IdentityRef;
609}
610export declare enum NotificationStatisticType {
611 NotificationBySubscription = 0,
612 EventsByEventType = 1,
613 NotificationByEventType = 2,
614 EventsByEventTypePerUser = 3,
615 NotificationByEventTypePerUser = 4,
616 Events = 5,
617 Notifications = 6,
618 NotificationFailureBySubscription = 7,
619 UnprocessedRangeStart = 100,
620 UnprocessedEventsByPublisher = 101,
621 UnprocessedEventDelayByPublisher = 102,
622 UnprocessedNotificationsByChannelByPublisher = 103,
623 UnprocessedNotificationDelayByChannelByPublisher = 104,
624 DelayRangeStart = 200,
625 TotalPipelineTime = 201,
626 NotificationPipelineTime = 202,
627 EventPipelineTime = 203,
628 HourlyRangeStart = 1000,
629 HourlyNotificationBySubscription = 1001,
630 HourlyEventsByEventTypePerUser = 1002,
631 HourlyEvents = 1003,
632 HourlyNotifications = 1004,
633 HourlyUnprocessedEventsByPublisher = 1101,
634 HourlyUnprocessedEventDelayByPublisher = 1102,
635 HourlyUnprocessedNotificationsByChannelByPublisher = 1103,
636 HourlyUnprocessedNotificationDelayByChannelByPublisher = 1104,
637 HourlyTotalPipelineTime = 1201,
638 HourlyNotificationPipelineTime = 1202,
639 HourlyEventPipelineTime = 1203
640}
641/**
642 * A subscriber is a user or group that has the potential to receive notifications.
643 */
644export interface NotificationSubscriber {
645 /**
646 * Indicates how the subscriber should be notified by default.
647 */
648 deliveryPreference?: NotificationSubscriberDeliveryPreference;
649 flags?: SubscriberFlags;
650 /**
651 * Identifier of the subscriber.
652 */
653 id?: string;
654 /**
655 * Preferred email address of the subscriber. A null or empty value indicates no preferred email address has been set.
656 */
657 preferredEmailAddress?: string;
658}
659/**
660 * Delivery preference for a subscriber. Indicates how the subscriber should be notified.
661 */
662export declare enum NotificationSubscriberDeliveryPreference {
663 /**
664 * Do not send notifications by default. Note: notifications can still be delivered to this subscriber, for example via a custom subscription.
665 */
666 NoDelivery = -1,
667 /**
668 * Deliver notifications to the subscriber's preferred email address.
669 */
670 PreferredEmailAddress = 1,
671 /**
672 * Deliver notifications to each member of the group representing the subscriber. Only applicable when the subscriber is a group.
673 */
674 EachMember = 2,
675 /**
676 * Use default
677 */
678 UseDefault = 3
679}
680/**
681 * Updates to a subscriber. Typically used to change (or set) a preferred email address or default delivery preference.
682 */
683export interface NotificationSubscriberUpdateParameters {
684 /**
685 * New delivery preference for the subscriber (indicates how the subscriber should be notified).
686 */
687 deliveryPreference?: NotificationSubscriberDeliveryPreference;
688 /**
689 * New preferred email address for the subscriber. Specify an empty string to clear the current address.
690 */
691 preferredEmailAddress?: string;
692}
693/**
694 * A subscription defines criteria for matching events and how the subscription's subscriber should be notified about those events.
695 */
696export interface NotificationSubscription {
697 /**
698 * Links to related resources, APIs, and views for the subscription.
699 */
700 _links?: any;
701 /**
702 * Admin-managed settings for the subscription. Only applies when the subscriber is a group.
703 */
704 adminSettings?: SubscriptionAdminSettings;
705 /**
706 * Channel for delivering notifications triggered by the subscription.
707 */
708 channel?: ISubscriptionChannel;
709 /**
710 * Description of the subscription. Typically describes filter criteria which helps identity the subscription.
711 */
712 description?: string;
713 /**
714 * Diagnostics for this subscription.
715 */
716 diagnostics?: SubscriptionDiagnostics;
717 /**
718 * Any extra properties like detailed description for different contexts, user/group contexts
719 */
720 extendedProperties?: {
721 [key: string]: string;
722 };
723 /**
724 * Matching criteria for the subscription. ExpressionFilter
725 */
726 filter: ISubscriptionFilter;
727 /**
728 * Read-only indicators that further describe the subscription.
729 */
730 flags?: SubscriptionFlags;
731 /**
732 * Subscription identifier.
733 */
734 id?: string;
735 /**
736 * User that last modified (or created) the subscription.
737 */
738 lastModifiedBy?: VSSInterfaces.IdentityRef;
739 /**
740 * Date when the subscription was last modified. If the subscription has not been updated since it was created, this value will indicate when the subscription was created.
741 */
742 modifiedDate?: Date;
743 /**
744 * The permissions the user have for this subscriptions.
745 */
746 permissions?: SubscriptionPermissions;
747 /**
748 * The container in which events must be published from in order to be matched by the subscription. If empty, the scope is the current host (typically an account or project collection). For example, a subscription scoped to project A will not produce notifications for events published from project B.
749 */
750 scope?: SubscriptionScope;
751 /**
752 * Status of the subscription. Typically indicates whether the subscription is enabled or not.
753 */
754 status?: SubscriptionStatus;
755 /**
756 * Message that provides more details about the status of the subscription.
757 */
758 statusMessage?: string;
759 /**
760 * User or group that will receive notifications for events matching the subscription's filter criteria.
761 */
762 subscriber?: VSSInterfaces.IdentityRef;
763 /**
764 * REST API URL of the subscription.
765 */
766 url?: string;
767 /**
768 * User-managed settings for the subscription. Only applies when the subscriber is a group. Typically used to indicate whether the calling user is opted in or out of a group subscription.
769 */
770 userSettings?: SubscriptionUserSettings;
771}
772/**
773 * Parameters for creating a new subscription. A subscription defines criteria for matching events and how the subscription's subscriber should be notified about those events.
774 */
775export interface NotificationSubscriptionCreateParameters {
776 /**
777 * Channel for delivering notifications triggered by the new subscription.
778 */
779 channel?: ISubscriptionChannel;
780 /**
781 * Brief description for the new subscription. Typically describes filter criteria which helps identity the subscription.
782 */
783 description?: string;
784 /**
785 * Matching criteria for the new subscription. ExpressionFilter
786 */
787 filter: ISubscriptionFilter;
788 /**
789 * The container in which events must be published from in order to be matched by the new subscription. If not specified, defaults to the current host (typically an account or project collection). For example, a subscription scoped to project A will not produce notifications for events published from project B.
790 */
791 scope?: SubscriptionScope;
792 /**
793 * User or group that will receive notifications for events matching the subscription's filter criteria. If not specified, defaults to the calling user.
794 */
795 subscriber?: VSSInterfaces.IdentityRef;
796}
797export interface NotificationSubscriptionTemplate {
798 description?: string;
799 filter: ISubscriptionFilter;
800 id?: string;
801 notificationEventInformation?: NotificationEventType;
802 type?: SubscriptionTemplateType;
803}
804/**
805 * Parameters for updating an existing subscription. A subscription defines criteria for matching events and how the subscription's subscriber should be notified about those events. Note: only the fields to be updated should be set.
806 */
807export interface NotificationSubscriptionUpdateParameters {
808 /**
809 * Admin-managed settings for the subscription. Only applies to subscriptions where the subscriber is a group.
810 */
811 adminSettings?: SubscriptionAdminSettings;
812 /**
813 * Channel for delivering notifications triggered by the subscription.
814 */
815 channel?: ISubscriptionChannel;
816 /**
817 * Updated description for the subscription. Typically describes filter criteria which helps identity the subscription.
818 */
819 description?: string;
820 /**
821 * Matching criteria for the subscription. ExpressionFilter
822 */
823 filter?: ISubscriptionFilter;
824 /**
825 * The container in which events must be published from in order to be matched by the new subscription. If not specified, defaults to the current host (typically the current account or project collection). For example, a subscription scoped to project A will not produce notifications for events published from project B.
826 */
827 scope?: SubscriptionScope;
828 /**
829 * Updated status for the subscription. Typically used to enable or disable a subscription.
830 */
831 status?: SubscriptionStatus;
832 /**
833 * Optional message that provides more details about the updated status.
834 */
835 statusMessage?: string;
836 /**
837 * User-managed settings for the subscription. Only applies to subscriptions where the subscriber is a group. Typically used to opt-in or opt-out a user from a group subscription.
838 */
839 userSettings?: SubscriptionUserSettings;
840}
841/**
842 * Encapsulates the properties of an operator constraint. An operator constraint defines if some operator is available only for specific scope like a project scope.
843 */
844export interface OperatorConstraint {
845 operator?: string;
846 /**
847 * Gets or sets the list of scopes that this type supports.
848 */
849 supportedScopes?: string[];
850}
851export interface ProcessedEvent {
852 /**
853 * All of the users that were associated with this event and their role.
854 */
855 actors?: VSSInterfaces.EventActor[];
856 allowedChannels?: string;
857 artifactUri?: string;
858 deliveryIdentities?: ProcessingIdentities;
859 /**
860 * Evaluations for each user
861 */
862 evaluations?: {
863 [key: string]: SubscriptionEvaluation;
864 };
865 eventId?: number;
866 /**
867 * Which members were excluded from evaluation (only applies to ActorMatcher subscriptions)
868 */
869 exclusions?: VSSInterfaces.EventActor[];
870 /**
871 * Which members were included for evaluation (only applies to ActorMatcher subscriptions)
872 */
873 inclusions?: VSSInterfaces.EventActor[];
874 notifications?: GeneratedNotification[];
875}
876export interface ProcessingDiagnosticIdentity extends DiagnosticIdentity {
877 deliveryPreference?: string;
878 isActive?: boolean;
879 isGroup?: boolean;
880 message?: string;
881}
882export interface ProcessingIdentities {
883 excludedIdentities?: {
884 [key: string]: ProcessingDiagnosticIdentity;
885 };
886 includedIdentities?: {
887 [key: string]: ProcessingDiagnosticIdentity;
888 };
889 messages?: NotificationDiagnosticLogMessage[];
890 missingIdentities?: string[];
891 properties?: {
892 [key: string]: string;
893 };
894}
895export interface RoleBasedFilter extends ExpressionFilter {
896 exclusions?: string[];
897 inclusions?: string[];
898}
899export interface ServiceBusSubscriptionChannel {
900 type?: string;
901}
902export interface ServiceHooksSubscriptionChannel {
903 type?: string;
904}
905export interface SoapSubscriptionChannel extends SubscriptionChannelWithAddress {
906 type?: string;
907}
908export declare enum SubscriberFlags {
909 None = 0,
910 /**
911 * Subscriber's delivery preferences could be updated
912 */
913 DeliveryPreferencesEditable = 2,
914 /**
915 * Subscriber's delivery preferences supports email delivery
916 */
917 SupportsPreferredEmailAddressDelivery = 4,
918 /**
919 * Subscriber's delivery preferences supports individual members delivery(group expansion)
920 */
921 SupportsEachMemberDelivery = 8,
922 /**
923 * Subscriber's delivery preferences supports no delivery
924 */
925 SupportsNoDelivery = 16,
926 /**
927 * Subscriber is a user
928 */
929 IsUser = 32,
930 /**
931 * Subscriber is a group
932 */
933 IsGroup = 64,
934 /**
935 * Subscriber is a team
936 */
937 IsTeam = 128
938}
939/**
940 * Admin-managed settings for a group subscription.
941 */
942export interface SubscriptionAdminSettings {
943 /**
944 * If true, members of the group subscribed to the associated subscription cannot opt (choose not to get notified)
945 */
946 blockUserOptOut: boolean;
947}
948export interface SubscriptionChannelWithAddress {
949 address?: string;
950 type?: string;
951 useCustomAddress?: boolean;
952}
953/**
954 * Contains all the diagnostics settings for a subscription.
955 */
956export interface SubscriptionDiagnostics {
957 /**
958 * Diagnostics settings for retaining delivery results. Used for Service Hooks subscriptions.
959 */
960 deliveryResults?: SubscriptionTracing;
961 /**
962 * Diagnostics settings for troubleshooting notification delivery.
963 */
964 deliveryTracing?: SubscriptionTracing;
965 /**
966 * Diagnostics settings for troubleshooting event matching.
967 */
968 evaluationTracing?: SubscriptionTracing;
969}
970export interface SubscriptionEvaluation {
971 clauses?: SubscriptionEvaluationClause[];
972 user?: DiagnosticIdentity;
973}
974export interface SubscriptionEvaluationClause {
975 clause?: string;
976 order?: number;
977 result?: boolean;
978}
979/**
980 * Encapsulates the properties of a SubscriptionEvaluationRequest. It defines the subscription to be evaluated and time interval for events used in evaluation.
981 */
982export interface SubscriptionEvaluationRequest {
983 /**
984 * The min created date for the events used for matching in UTC. Use all events created since this date
985 */
986 minEventsCreatedDate: Date;
987 /**
988 * User or group that will receive notifications for events matching the subscription's filter criteria. If not specified, defaults to the calling user.
989 */
990 subscriptionCreateParameters?: NotificationSubscriptionCreateParameters;
991}
992/**
993 * Encapsulates the subscription evaluation results. It defines the Date Interval that was used, number of events evaluated and events and notifications results
994 */
995export interface SubscriptionEvaluationResult {
996 /**
997 * Subscription evaluation job status
998 */
999 evaluationJobStatus?: EvaluationOperationStatus;
1000 /**
1001 * Subscription evaluation events results.
1002 */
1003 events?: EventsEvaluationResult;
1004 /**
1005 * The requestId which is the subscription evaluation jobId
1006 */
1007 id?: string;
1008 /**
1009 * Subscription evaluation notification results.
1010 */
1011 notifications?: NotificationsEvaluationResult;
1012}
1013/**
1014 * Encapsulates the subscription evaluation settings needed for the UI
1015 */
1016export interface SubscriptionEvaluationSettings {
1017 /**
1018 * Indicates whether subscription evaluation before saving is enabled or not
1019 */
1020 enabled?: boolean;
1021 /**
1022 * Time interval to check on subscription evaluation job in seconds
1023 */
1024 interval?: number;
1025 /**
1026 * Threshold on the number of notifications for considering a subscription too noisy
1027 */
1028 threshold?: number;
1029 /**
1030 * Time out for the subscription evaluation check in seconds
1031 */
1032 timeOut?: number;
1033}
1034export declare enum SubscriptionFieldType {
1035 String = 1,
1036 Integer = 2,
1037 DateTime = 3,
1038 PlainText = 5,
1039 Html = 7,
1040 TreePath = 8,
1041 History = 9,
1042 Double = 10,
1043 Guid = 11,
1044 Boolean = 12,
1045 Identity = 13,
1046 PicklistInteger = 14,
1047 PicklistString = 15,
1048 PicklistDouble = 16,
1049 TeamProject = 17
1050}
1051/**
1052 * Read-only indicators that further describe the subscription.
1053 */
1054export declare enum SubscriptionFlags {
1055 /**
1056 * None
1057 */
1058 None = 0,
1059 /**
1060 * Subscription's subscriber is a group, not a user
1061 */
1062 GroupSubscription = 1,
1063 /**
1064 * Subscription is contributed and not persisted. This means certain fields of the subscription, like Filter, are read-only.
1065 */
1066 ContributedSubscription = 2,
1067 /**
1068 * A user that is member of the subscription's subscriber group can opt in/out of the subscription.
1069 */
1070 CanOptOut = 4,
1071 /**
1072 * If the subscriber is a group, is it a team.
1073 */
1074 TeamSubscription = 8,
1075 /**
1076 * For role based subscriptions, there is an expectation that there will always be at least one actor that matches
1077 */
1078 OneActorMatches = 16
1079}
1080/**
1081 * Encapsulates the properties needed to manage subscriptions, opt in and out of subscriptions.
1082 */
1083export interface SubscriptionManagement {
1084 serviceInstanceType?: string;
1085 url?: string;
1086}
1087/**
1088 * The permissions that a user has to a certain subscription
1089 */
1090export declare enum SubscriptionPermissions {
1091 /**
1092 * None
1093 */
1094 None = 0,
1095 /**
1096 * full view of description, filters, etc. Not limited.
1097 */
1098 View = 1,
1099 /**
1100 * update subscription
1101 */
1102 Edit = 2,
1103 /**
1104 * delete subscription
1105 */
1106 Delete = 4
1107}
1108/**
1109 * Notification subscriptions query input.
1110 */
1111export interface SubscriptionQuery {
1112 /**
1113 * One or more conditions to query on. If more than 2 conditions are specified, the combined results of each condition is returned (i.e. conditions are logically OR'ed).
1114 */
1115 conditions: SubscriptionQueryCondition[];
1116 /**
1117 * Flags the refine the types of subscriptions that will be returned from the query.
1118 */
1119 queryFlags?: SubscriptionQueryFlags;
1120}
1121/**
1122 * Conditions a subscription must match to qualify for the query result set. Not all fields are required. A subscription must match all conditions specified in order to qualify for the result set.
1123 */
1124export interface SubscriptionQueryCondition {
1125 /**
1126 * Filter conditions that matching subscriptions must have. Typically only the filter's type and event type are used for matching.
1127 */
1128 filter?: ISubscriptionFilter;
1129 /**
1130 * Flags to specify the type subscriptions to query for.
1131 */
1132 flags?: SubscriptionFlags;
1133 /**
1134 * Scope that matching subscriptions must have.
1135 */
1136 scope?: string;
1137 /**
1138 * ID of the subscriber (user or group) that matching subscriptions must be subscribed to.
1139 */
1140 subscriberId?: string;
1141 /**
1142 * ID of the subscription to query for.
1143 */
1144 subscriptionId?: string;
1145}
1146/**
1147 * Flags that influence the result set of a subscription query.
1148 */
1149export declare enum SubscriptionQueryFlags {
1150 None = 0,
1151 /**
1152 * Include subscriptions with invalid subscribers.
1153 */
1154 IncludeInvalidSubscriptions = 2,
1155 /**
1156 * Include subscriptions marked for deletion.
1157 */
1158 IncludeDeletedSubscriptions = 4,
1159 /**
1160 * Include the full filter details with each subscription.
1161 */
1162 IncludeFilterDetails = 8,
1163 /**
1164 * For a subscription the caller does not have permission to view, return basic (non-confidential) information.
1165 */
1166 AlwaysReturnBasicInformation = 16,
1167 /**
1168 * Include system subscriptions.
1169 */
1170 IncludeSystemSubscriptions = 32
1171}
1172/**
1173 * A resource, typically an account or project, in which events are published from.
1174 */
1175export interface SubscriptionScope extends VSSInterfaces.EventScope {
1176}
1177/**
1178 * Subscription status values. A value greater than or equal to zero indicates the subscription is enabled. A negative value indicates the subscription is disabled.
1179 */
1180export declare enum SubscriptionStatus {
1181 /**
1182 * Subscription is disabled because it generated a high volume of notifications.
1183 */
1184 JailedByNotificationsVolume = -200,
1185 /**
1186 * Subscription is disabled and will be deleted.
1187 */
1188 PendingDeletion = -100,
1189 /**
1190 * Subscription is disabled because of an Argument Exception while processing the subscription
1191 */
1192 DisabledArgumentException = -12,
1193 /**
1194 * Subscription is disabled because the project is invalid
1195 */
1196 DisabledProjectInvalid = -11,
1197 /**
1198 * Subscription is disabled because the identity does not have the appropriate permissions
1199 */
1200 DisabledMissingPermissions = -10,
1201 /**
1202 * Subscription is disabled service due to failures.
1203 */
1204 DisabledFromProbation = -9,
1205 /**
1206 * Subscription is disabled because the identity is no longer active
1207 */
1208 DisabledInactiveIdentity = -8,
1209 /**
1210 * Subscription is disabled because message queue is not supported.
1211 */
1212 DisabledMessageQueueNotSupported = -7,
1213 /**
1214 * Subscription is disabled because its subscriber is unknown.
1215 */
1216 DisabledMissingIdentity = -6,
1217 /**
1218 * Subscription is disabled because it has an invalid role expression.
1219 */
1220 DisabledInvalidRoleExpression = -5,
1221 /**
1222 * Subscription is disabled because it has an invalid filter expression.
1223 */
1224 DisabledInvalidPathClause = -4,
1225 /**
1226 * Subscription is disabled because it is a duplicate of a default subscription.
1227 */
1228 DisabledAsDuplicateOfDefault = -3,
1229 /**
1230 * Subscription is disabled by an administrator, not the subscription's subscriber.
1231 */
1232 DisabledByAdmin = -2,
1233 /**
1234 * Subscription is disabled, typically by the owner of the subscription, and will not produce any notifications.
1235 */
1236 Disabled = -1,
1237 /**
1238 * Subscription is active.
1239 */
1240 Enabled = 0,
1241 /**
1242 * Subscription is active, but is on probation due to failed deliveries or other issues with the subscription.
1243 */
1244 EnabledOnProbation = 1
1245}
1246/**
1247 * Set of flags used to determine which set of templates is retrieved when querying for subscription templates
1248 */
1249export declare enum SubscriptionTemplateQueryFlags {
1250 None = 0,
1251 /**
1252 * Include user templates
1253 */
1254 IncludeUser = 1,
1255 /**
1256 * Include group templates
1257 */
1258 IncludeGroup = 2,
1259 /**
1260 * Include user and group templates
1261 */
1262 IncludeUserAndGroup = 4,
1263 /**
1264 * Include the event type details like the fields and operators
1265 */
1266 IncludeEventTypeInformation = 22
1267}
1268export declare enum SubscriptionTemplateType {
1269 User = 0,
1270 Team = 1,
1271 Both = 2,
1272 None = 3
1273}
1274export interface SubscriptionTraceDiagnosticLog extends NotificationDiagnosticLog {
1275 /**
1276 * Indicates the job Id that processed or delivered this subscription
1277 */
1278 jobId?: string;
1279 /**
1280 * Indicates unique instance identifier for the job that processed or delivered this subscription
1281 */
1282 jobInstanceId?: string;
1283 subscriptionId?: string;
1284}
1285export interface SubscriptionTraceEventProcessingLog extends SubscriptionTraceDiagnosticLog {
1286 channel?: string;
1287 evaluationIdentities?: ProcessingIdentities;
1288 /**
1289 * Which members opted out from receiving notifications from this subscription
1290 */
1291 optedOut?: DiagnosticIdentity[];
1292 processedEvents?: {
1293 [key: number]: ProcessedEvent;
1294 };
1295}
1296export interface SubscriptionTraceNotificationDeliveryLog extends SubscriptionTraceDiagnosticLog {
1297 notifications?: DiagnosticNotification[];
1298}
1299/**
1300 * Data controlling a single diagnostic setting for a subscription.
1301 */
1302export interface SubscriptionTracing {
1303 /**
1304 * Indicates whether the diagnostic tracing is enabled or not.
1305 */
1306 enabled: boolean;
1307 /**
1308 * Trace until the specified end date.
1309 */
1310 endDate?: Date;
1311 /**
1312 * The maximum number of result details to trace.
1313 */
1314 maxTracedEntries?: number;
1315 /**
1316 * The date and time tracing started.
1317 */
1318 startDate?: Date;
1319 /**
1320 * Trace until remaining count reaches 0.
1321 */
1322 tracedEntries?: number;
1323}
1324/**
1325 * User-managed settings for a group subscription.
1326 */
1327export interface SubscriptionUserSettings {
1328 /**
1329 * Indicates whether the user will receive notifications for the associated group subscription.
1330 */
1331 optedOut: boolean;
1332}
1333export interface UnsupportedFilter extends BaseSubscriptionFilter {
1334 type?: string;
1335}
1336export interface UnsupportedSubscriptionChannel {
1337 type?: string;
1338}
1339/**
1340 * Parameters to update diagnostics settings for a subscription.
1341 */
1342export interface UpdateSubscripitonDiagnosticsParameters {
1343 /**
1344 * Diagnostics settings for retaining delivery results. Used for Service Hooks subscriptions.
1345 */
1346 deliveryResults?: UpdateSubscripitonTracingParameters;
1347 /**
1348 * Diagnostics settings for troubleshooting notification delivery.
1349 */
1350 deliveryTracing?: UpdateSubscripitonTracingParameters;
1351 /**
1352 * Diagnostics settings for troubleshooting event matching.
1353 */
1354 evaluationTracing?: UpdateSubscripitonTracingParameters;
1355}
1356/**
1357 * Parameters to update a specific diagnostic setting.
1358 */
1359export interface UpdateSubscripitonTracingParameters {
1360 /**
1361 * Indicates whether to enable to disable the diagnostic tracing.
1362 */
1363 enabled: boolean;
1364}
1365export interface UserSubscriptionChannel extends SubscriptionChannelWithAddress {
1366 type?: string;
1367}
1368export interface UserSystemSubscriptionChannel extends SubscriptionChannelWithAddress {
1369 type?: string;
1370}
1371/**
1372 * Encapsulates the properties of a field value definition. It has the information needed to retrieve the list of possible values for a certain field and how to handle that field values in the UI. This information includes what type of object this value represents, which property to use for UI display and which property to use for saving the subscription
1373 */
1374export interface ValueDefinition {
1375 /**
1376 * Gets or sets the data source.
1377 */
1378 dataSource?: FormInputInterfaces.InputValue[];
1379 /**
1380 * Gets or sets the rest end point.
1381 */
1382 endPoint?: string;
1383 /**
1384 * Gets or sets the result template.
1385 */
1386 resultTemplate?: string;
1387}
1388export declare var TypeInfo: {
1389 ActorNotificationReason: any;
1390 BatchNotificationOperation: any;
1391 DefaultGroupDeliveryPreference: {
1392 enumValues: {
1393 noDelivery: number;
1394 eachMember: number;
1395 };
1396 };
1397 EvaluationOperationStatus: {
1398 enumValues: {
1399 notSet: number;
1400 queued: number;
1401 inProgress: number;
1402 cancelled: number;
1403 succeeded: number;
1404 failed: number;
1405 timedOut: number;
1406 notFound: number;
1407 };
1408 };
1409 EventBacklogStatus: any;
1410 EventProcessingLog: any;
1411 EventPublisherQueryFlags: {
1412 enumValues: {
1413 none: number;
1414 includeRemoteServices: number;
1415 };
1416 };
1417 EventTypeQueryFlags: {
1418 enumValues: {
1419 none: number;
1420 includeFields: number;
1421 };
1422 };
1423 INotificationDiagnosticLog: any;
1424 NotificationAdminSettings: any;
1425 NotificationAdminSettingsUpdateParameters: any;
1426 NotificationBacklogStatus: any;
1427 NotificationDeliveryLog: any;
1428 NotificationDiagnosticLog: any;
1429 NotificationEventBacklogStatus: any;
1430 NotificationEventField: any;
1431 NotificationEventFieldType: any;
1432 NotificationEventType: any;
1433 NotificationJobDiagnosticLog: any;
1434 NotificationOperation: {
1435 enumValues: {
1436 none: number;
1437 suspendUnprocessed: number;
1438 };
1439 };
1440 NotificationReason: any;
1441 NotificationReasonType: {
1442 enumValues: {
1443 unknown: number;
1444 follows: number;
1445 personal: number;
1446 personalAlias: number;
1447 directMember: number;
1448 indirectMember: number;
1449 groupAlias: number;
1450 subscriptionAlias: number;
1451 singleRole: number;
1452 directMemberGroupRole: number;
1453 inDirectMemberGroupRole: number;
1454 aliasMemberGroupRole: number;
1455 };
1456 };
1457 NotificationStatistic: any;
1458 NotificationStatisticsQuery: any;
1459 NotificationStatisticsQueryConditions: any;
1460 NotificationStatisticType: {
1461 enumValues: {
1462 notificationBySubscription: number;
1463 eventsByEventType: number;
1464 notificationByEventType: number;
1465 eventsByEventTypePerUser: number;
1466 notificationByEventTypePerUser: number;
1467 events: number;
1468 notifications: number;
1469 notificationFailureBySubscription: number;
1470 unprocessedRangeStart: number;
1471 unprocessedEventsByPublisher: number;
1472 unprocessedEventDelayByPublisher: number;
1473 unprocessedNotificationsByChannelByPublisher: number;
1474 unprocessedNotificationDelayByChannelByPublisher: number;
1475 delayRangeStart: number;
1476 totalPipelineTime: number;
1477 notificationPipelineTime: number;
1478 eventPipelineTime: number;
1479 hourlyRangeStart: number;
1480 hourlyNotificationBySubscription: number;
1481 hourlyEventsByEventTypePerUser: number;
1482 hourlyEvents: number;
1483 hourlyNotifications: number;
1484 hourlyUnprocessedEventsByPublisher: number;
1485 hourlyUnprocessedEventDelayByPublisher: number;
1486 hourlyUnprocessedNotificationsByChannelByPublisher: number;
1487 hourlyUnprocessedNotificationDelayByChannelByPublisher: number;
1488 hourlyTotalPipelineTime: number;
1489 hourlyNotificationPipelineTime: number;
1490 hourlyEventPipelineTime: number;
1491 };
1492 };
1493 NotificationSubscriber: any;
1494 NotificationSubscriberDeliveryPreference: {
1495 enumValues: {
1496 noDelivery: number;
1497 preferredEmailAddress: number;
1498 eachMember: number;
1499 useDefault: number;
1500 };
1501 };
1502 NotificationSubscriberUpdateParameters: any;
1503 NotificationSubscription: any;
1504 NotificationSubscriptionTemplate: any;
1505 NotificationSubscriptionUpdateParameters: any;
1506 SubscriberFlags: {
1507 enumValues: {
1508 none: number;
1509 deliveryPreferencesEditable: number;
1510 supportsPreferredEmailAddressDelivery: number;
1511 supportsEachMemberDelivery: number;
1512 supportsNoDelivery: number;
1513 isUser: number;
1514 isGroup: number;
1515 isTeam: number;
1516 };
1517 };
1518 SubscriptionDiagnostics: any;
1519 SubscriptionEvaluationRequest: any;
1520 SubscriptionEvaluationResult: any;
1521 SubscriptionFieldType: {
1522 enumValues: {
1523 string: number;
1524 integer: number;
1525 dateTime: number;
1526 plainText: number;
1527 html: number;
1528 treePath: number;
1529 history: number;
1530 double: number;
1531 guid: number;
1532 boolean: number;
1533 identity: number;
1534 picklistInteger: number;
1535 picklistString: number;
1536 picklistDouble: number;
1537 teamProject: number;
1538 };
1539 };
1540 SubscriptionFlags: {
1541 enumValues: {
1542 none: number;
1543 groupSubscription: number;
1544 contributedSubscription: number;
1545 canOptOut: number;
1546 teamSubscription: number;
1547 oneActorMatches: number;
1548 };
1549 };
1550 SubscriptionPermissions: {
1551 enumValues: {
1552 none: number;
1553 view: number;
1554 edit: number;
1555 delete: number;
1556 };
1557 };
1558 SubscriptionQuery: any;
1559 SubscriptionQueryCondition: any;
1560 SubscriptionQueryFlags: {
1561 enumValues: {
1562 none: number;
1563 includeInvalidSubscriptions: number;
1564 includeDeletedSubscriptions: number;
1565 includeFilterDetails: number;
1566 alwaysReturnBasicInformation: number;
1567 includeSystemSubscriptions: number;
1568 };
1569 };
1570 SubscriptionStatus: {
1571 enumValues: {
1572 jailedByNotificationsVolume: number;
1573 pendingDeletion: number;
1574 disabledArgumentException: number;
1575 disabledProjectInvalid: number;
1576 disabledMissingPermissions: number;
1577 disabledFromProbation: number;
1578 disabledInactiveIdentity: number;
1579 disabledMessageQueueNotSupported: number;
1580 disabledMissingIdentity: number;
1581 disabledInvalidRoleExpression: number;
1582 disabledInvalidPathClause: number;
1583 disabledAsDuplicateOfDefault: number;
1584 disabledByAdmin: number;
1585 disabled: number;
1586 enabled: number;
1587 enabledOnProbation: number;
1588 };
1589 };
1590 SubscriptionTemplateQueryFlags: {
1591 enumValues: {
1592 none: number;
1593 includeUser: number;
1594 includeGroup: number;
1595 includeUserAndGroup: number;
1596 includeEventTypeInformation: number;
1597 };
1598 };
1599 SubscriptionTemplateType: {
1600 enumValues: {
1601 user: number;
1602 team: number;
1603 both: number;
1604 none: number;
1605 };
1606 };
1607 SubscriptionTraceDiagnosticLog: any;
1608 SubscriptionTraceEventProcessingLog: any;
1609 SubscriptionTraceNotificationDeliveryLog: any;
1610 SubscriptionTracing: any;
1611};