@azure/arm-eventgrid 30.0.0-alpha.20210929.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/LICENSE +21 -0
  3. package/README.md +94 -0
  4. package/dist/index.js +10620 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/index.min.js +1 -0
  7. package/dist/index.min.js.map +1 -0
  8. package/dist-esm/src/eventGridManagementClient.d.ts +31 -0
  9. package/dist-esm/src/eventGridManagementClient.d.ts.map +1 -0
  10. package/dist-esm/src/eventGridManagementClient.js +38 -0
  11. package/dist-esm/src/eventGridManagementClient.js.map +1 -0
  12. package/dist-esm/src/eventGridManagementClientContext.d.ts +17 -0
  13. package/dist-esm/src/eventGridManagementClientContext.d.ts.map +1 -0
  14. package/dist-esm/src/eventGridManagementClientContext.js +50 -0
  15. package/dist-esm/src/eventGridManagementClientContext.js.map +1 -0
  16. package/dist-esm/src/index.d.ts +6 -0
  17. package/dist-esm/src/index.d.ts.map +1 -0
  18. package/dist-esm/src/index.js +13 -0
  19. package/dist-esm/src/index.js.map +1 -0
  20. package/dist-esm/src/lroImpl.d.ts +16 -0
  21. package/dist-esm/src/lroImpl.d.ts.map +1 -0
  22. package/dist-esm/src/lroImpl.js +29 -0
  23. package/dist-esm/src/lroImpl.js.map +1 -0
  24. package/dist-esm/src/models/index.d.ts +2765 -0
  25. package/dist-esm/src/models/index.d.ts.map +1 -0
  26. package/dist-esm/src/models/index.js +289 -0
  27. package/dist-esm/src/models/index.js.map +1 -0
  28. package/dist-esm/src/models/mappers.d.ts +139 -0
  29. package/dist-esm/src/models/mappers.d.ts.map +1 -0
  30. package/dist-esm/src/models/mappers.js +2979 -0
  31. package/dist-esm/src/models/mappers.js.map +1 -0
  32. package/dist-esm/src/models/parameters.d.ts +53 -0
  33. package/dist-esm/src/models/parameters.d.ts.map +1 -0
  34. package/dist-esm/src/models/parameters.js +415 -0
  35. package/dist-esm/src/models/parameters.js.map +1 -0
  36. package/dist-esm/src/operations/domainTopics.d.ts +79 -0
  37. package/dist-esm/src/operations/domainTopics.d.ts.map +1 -0
  38. package/dist-esm/src/operations/domainTopics.js +310 -0
  39. package/dist-esm/src/operations/domainTopics.js.map +1 -0
  40. package/dist-esm/src/operations/domains.d.ts +122 -0
  41. package/dist-esm/src/operations/domains.d.ts.map +1 -0
  42. package/dist-esm/src/operations/domains.js +522 -0
  43. package/dist-esm/src/operations/domains.js.map +1 -0
  44. package/dist-esm/src/operations/eventChannels.d.ts +72 -0
  45. package/dist-esm/src/operations/eventChannels.d.ts.map +1 -0
  46. package/dist-esm/src/operations/eventChannels.js +269 -0
  47. package/dist-esm/src/operations/eventChannels.js.map +1 -0
  48. package/dist-esm/src/operations/eventSubscriptions.d.ts +404 -0
  49. package/dist-esm/src/operations/eventSubscriptions.d.ts.map +1 -0
  50. package/dist-esm/src/operations/eventSubscriptions.js +1504 -0
  51. package/dist-esm/src/operations/eventSubscriptions.js.map +1 -0
  52. package/dist-esm/src/operations/extensionTopics.d.ts +24 -0
  53. package/dist-esm/src/operations/extensionTopics.d.ts.map +1 -0
  54. package/dist-esm/src/operations/extensionTopics.js +50 -0
  55. package/dist-esm/src/operations/extensionTopics.js.map +1 -0
  56. package/dist-esm/src/operations/index.d.ts +17 -0
  57. package/dist-esm/src/operations/index.d.ts.map +1 -0
  58. package/dist-esm/src/operations/index.js +24 -0
  59. package/dist-esm/src/operations/index.js.map +1 -0
  60. package/dist-esm/src/operations/operations.d.ts +26 -0
  61. package/dist-esm/src/operations/operations.d.ts.map +1 -0
  62. package/dist-esm/src/operations/operations.js +88 -0
  63. package/dist-esm/src/operations/operations.js.map +1 -0
  64. package/dist-esm/src/operations/partnerNamespaces.d.ts +122 -0
  65. package/dist-esm/src/operations/partnerNamespaces.d.ts.map +1 -0
  66. package/dist-esm/src/operations/partnerNamespaces.js +537 -0
  67. package/dist-esm/src/operations/partnerNamespaces.js.map +1 -0
  68. package/dist-esm/src/operations/partnerRegistrations.d.ts +83 -0
  69. package/dist-esm/src/operations/partnerRegistrations.d.ts.map +1 -0
  70. package/dist-esm/src/operations/partnerRegistrations.js +349 -0
  71. package/dist-esm/src/operations/partnerRegistrations.js.map +1 -0
  72. package/dist-esm/src/operations/partnerTopicEventSubscriptions.d.ts +128 -0
  73. package/dist-esm/src/operations/partnerTopicEventSubscriptions.d.ts.map +1 -0
  74. package/dist-esm/src/operations/partnerTopicEventSubscriptions.js +483 -0
  75. package/dist-esm/src/operations/partnerTopicEventSubscriptions.js.map +1 -0
  76. package/dist-esm/src/operations/partnerTopics.d.ts +97 -0
  77. package/dist-esm/src/operations/partnerTopics.d.ts.map +1 -0
  78. package/dist-esm/src/operations/partnerTopics.js +408 -0
  79. package/dist-esm/src/operations/partnerTopics.js.map +1 -0
  80. package/dist-esm/src/operations/privateEndpointConnections.d.ts +105 -0
  81. package/dist-esm/src/operations/privateEndpointConnections.d.ts.map +1 -0
  82. package/dist-esm/src/operations/privateEndpointConnections.js +362 -0
  83. package/dist-esm/src/operations/privateEndpointConnections.js.map +1 -0
  84. package/dist-esm/src/operations/privateLinkResources.d.ts +58 -0
  85. package/dist-esm/src/operations/privateLinkResources.d.ts.map +1 -0
  86. package/dist-esm/src/operations/privateLinkResources.js +184 -0
  87. package/dist-esm/src/operations/privateLinkResources.js.map +1 -0
  88. package/dist-esm/src/operations/systemTopicEventSubscriptions.d.ts +128 -0
  89. package/dist-esm/src/operations/systemTopicEventSubscriptions.d.ts.map +1 -0
  90. package/dist-esm/src/operations/systemTopicEventSubscriptions.js +483 -0
  91. package/dist-esm/src/operations/systemTopicEventSubscriptions.js.map +1 -0
  92. package/dist-esm/src/operations/systemTopics.d.ts +107 -0
  93. package/dist-esm/src/operations/systemTopics.d.ts.map +1 -0
  94. package/dist-esm/src/operations/systemTopics.js +482 -0
  95. package/dist-esm/src/operations/systemTopics.js.map +1 -0
  96. package/dist-esm/src/operations/topicTypes.d.ts +46 -0
  97. package/dist-esm/src/operations/topicTypes.d.ts.map +1 -0
  98. package/dist-esm/src/operations/topicTypes.js +175 -0
  99. package/dist-esm/src/operations/topicTypes.js.map +1 -0
  100. package/dist-esm/src/operations/topics.d.ts +150 -0
  101. package/dist-esm/src/operations/topics.d.ts.map +1 -0
  102. package/dist-esm/src/operations/topics.js +656 -0
  103. package/dist-esm/src/operations/topics.js.map +1 -0
  104. package/dist-esm/src/operationsInterfaces/domainTopics.d.ts +54 -0
  105. package/dist-esm/src/operationsInterfaces/domainTopics.d.ts.map +1 -0
  106. package/dist-esm/src/operationsInterfaces/domainTopics.js +9 -0
  107. package/dist-esm/src/operationsInterfaces/domainTopics.js.map +1 -0
  108. package/dist-esm/src/operationsInterfaces/domains.d.ts +86 -0
  109. package/dist-esm/src/operationsInterfaces/domains.d.ts.map +1 -0
  110. package/dist-esm/src/operationsInterfaces/domains.js +9 -0
  111. package/dist-esm/src/operationsInterfaces/domains.js.map +1 -0
  112. package/dist-esm/src/operationsInterfaces/eventChannels.d.ts +47 -0
  113. package/dist-esm/src/operationsInterfaces/eventChannels.d.ts.map +1 -0
  114. package/dist-esm/src/operationsInterfaces/eventChannels.js +9 -0
  115. package/dist-esm/src/operationsInterfaces/eventChannels.js.map +1 -0
  116. package/dist-esm/src/operationsInterfaces/eventSubscriptions.d.ts +217 -0
  117. package/dist-esm/src/operationsInterfaces/eventSubscriptions.d.ts.map +1 -0
  118. package/dist-esm/src/operationsInterfaces/eventSubscriptions.js +9 -0
  119. package/dist-esm/src/operationsInterfaces/eventSubscriptions.js.map +1 -0
  120. package/dist-esm/src/operationsInterfaces/extensionTopics.d.ts +16 -0
  121. package/dist-esm/src/operationsInterfaces/extensionTopics.d.ts.map +1 -0
  122. package/dist-esm/src/operationsInterfaces/extensionTopics.js +9 -0
  123. package/dist-esm/src/operationsInterfaces/extensionTopics.js.map +1 -0
  124. package/dist-esm/src/operationsInterfaces/index.d.ts +17 -0
  125. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -0
  126. package/dist-esm/src/operationsInterfaces/index.js +24 -0
  127. package/dist-esm/src/operationsInterfaces/index.js.map +1 -0
  128. package/dist-esm/src/operationsInterfaces/operations.d.ts +11 -0
  129. package/dist-esm/src/operationsInterfaces/operations.d.ts.map +1 -0
  130. package/dist-esm/src/operationsInterfaces/operations.js +9 -0
  131. package/dist-esm/src/operationsInterfaces/operations.js.map +1 -0
  132. package/dist-esm/src/operationsInterfaces/partnerNamespaces.d.ts +86 -0
  133. package/dist-esm/src/operationsInterfaces/partnerNamespaces.d.ts.map +1 -0
  134. package/dist-esm/src/operationsInterfaces/partnerNamespaces.js +9 -0
  135. package/dist-esm/src/operationsInterfaces/partnerNamespaces.js.map +1 -0
  136. package/dist-esm/src/operationsInterfaces/partnerRegistrations.d.ts +47 -0
  137. package/dist-esm/src/operationsInterfaces/partnerRegistrations.d.ts.map +1 -0
  138. package/dist-esm/src/operationsInterfaces/partnerRegistrations.js +9 -0
  139. package/dist-esm/src/operationsInterfaces/partnerRegistrations.js.map +1 -0
  140. package/dist-esm/src/operationsInterfaces/partnerTopicEventSubscriptions.d.ts +103 -0
  141. package/dist-esm/src/operationsInterfaces/partnerTopicEventSubscriptions.d.ts.map +1 -0
  142. package/dist-esm/src/operationsInterfaces/partnerTopicEventSubscriptions.js +9 -0
  143. package/dist-esm/src/operationsInterfaces/partnerTopicEventSubscriptions.js.map +1 -0
  144. package/dist-esm/src/operationsInterfaces/partnerTopics.d.ts +61 -0
  145. package/dist-esm/src/operationsInterfaces/partnerTopics.d.ts.map +1 -0
  146. package/dist-esm/src/operationsInterfaces/partnerTopics.js +9 -0
  147. package/dist-esm/src/operationsInterfaces/partnerTopics.js.map +1 -0
  148. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts +74 -0
  149. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts.map +1 -0
  150. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.js +9 -0
  151. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.js.map +1 -0
  152. package/dist-esm/src/operationsInterfaces/privateLinkResources.d.ts +27 -0
  153. package/dist-esm/src/operationsInterfaces/privateLinkResources.d.ts.map +1 -0
  154. package/dist-esm/src/operationsInterfaces/privateLinkResources.js +9 -0
  155. package/dist-esm/src/operationsInterfaces/privateLinkResources.js.map +1 -0
  156. package/dist-esm/src/operationsInterfaces/systemTopicEventSubscriptions.d.ts +103 -0
  157. package/dist-esm/src/operationsInterfaces/systemTopicEventSubscriptions.d.ts.map +1 -0
  158. package/dist-esm/src/operationsInterfaces/systemTopicEventSubscriptions.js +9 -0
  159. package/dist-esm/src/operationsInterfaces/systemTopicEventSubscriptions.js.map +1 -0
  160. package/dist-esm/src/operationsInterfaces/systemTopics.d.ts +71 -0
  161. package/dist-esm/src/operationsInterfaces/systemTopics.d.ts.map +1 -0
  162. package/dist-esm/src/operationsInterfaces/systemTopics.js +9 -0
  163. package/dist-esm/src/operationsInterfaces/systemTopics.js.map +1 -0
  164. package/dist-esm/src/operationsInterfaces/topicTypes.d.ts +23 -0
  165. package/dist-esm/src/operationsInterfaces/topicTypes.d.ts.map +1 -0
  166. package/dist-esm/src/operationsInterfaces/topicTypes.js +9 -0
  167. package/dist-esm/src/operationsInterfaces/topicTypes.js.map +1 -0
  168. package/dist-esm/src/operationsInterfaces/topics.d.ts +103 -0
  169. package/dist-esm/src/operationsInterfaces/topics.d.ts.map +1 -0
  170. package/dist-esm/src/operationsInterfaces/topics.js +9 -0
  171. package/dist-esm/src/operationsInterfaces/topics.js.map +1 -0
  172. package/dist-esm/test/eventgrid_examples.d.ts +2 -0
  173. package/dist-esm/test/eventgrid_examples.d.ts.map +1 -0
  174. package/dist-esm/test/eventgrid_examples.js +163 -0
  175. package/dist-esm/test/eventgrid_examples.js.map +1 -0
  176. package/package.json +102 -0
  177. package/review/arm-eventgrid.api.md +2518 -0
  178. package/rollup.config.js +188 -0
  179. package/src/eventGridManagementClient.ts +101 -0
  180. package/src/eventGridManagementClientContext.ts +71 -0
  181. package/src/index.ts +13 -0
  182. package/src/lroImpl.ts +34 -0
  183. package/src/models/index.ts +3297 -0
  184. package/src/models/mappers.ts +3334 -0
  185. package/src/models/parameters.ts +490 -0
  186. package/src/operations/domainTopics.ts +452 -0
  187. package/src/operations/domains.ts +713 -0
  188. package/src/operations/eventChannels.ts +382 -0
  189. package/src/operations/eventSubscriptions.ts +2077 -0
  190. package/src/operations/extensionTopics.ts +67 -0
  191. package/src/operations/index.ts +24 -0
  192. package/src/operations/operations.ts +96 -0
  193. package/src/operations/partnerNamespaces.ts +729 -0
  194. package/src/operations/partnerRegistrations.ts +440 -0
  195. package/src/operations/partnerTopicEventSubscriptions.ts +699 -0
  196. package/src/operations/partnerTopics.ts +532 -0
  197. package/src/operations/privateEndpointConnections.ts +529 -0
  198. package/src/operations/privateLinkResources.ts +259 -0
  199. package/src/operations/systemTopicEventSubscriptions.ts +699 -0
  200. package/src/operations/systemTopics.ts +656 -0
  201. package/src/operations/topicTypes.ts +202 -0
  202. package/src/operations/topics.ts +921 -0
  203. package/src/operationsInterfaces/domainTopics.ts +105 -0
  204. package/src/operationsInterfaces/domains.ts +162 -0
  205. package/src/operationsInterfaces/eventChannels.ts +89 -0
  206. package/src/operationsInterfaces/eventSubscriptions.ts +339 -0
  207. package/src/operationsInterfaces/extensionTopics.ts +30 -0
  208. package/src/operationsInterfaces/index.ts +24 -0
  209. package/src/operationsInterfaces/operations.ts +22 -0
  210. package/src/operationsInterfaces/partnerNamespaces.ts +162 -0
  211. package/src/operationsInterfaces/partnerRegistrations.ts +91 -0
  212. package/src/operationsInterfaces/partnerTopicEventSubscriptions.ts +190 -0
  213. package/src/operationsInterfaces/partnerTopics.ts +114 -0
  214. package/src/operationsInterfaces/privateEndpointConnections.ts +137 -0
  215. package/src/operationsInterfaces/privateLinkResources.ts +52 -0
  216. package/src/operationsInterfaces/systemTopicEventSubscriptions.ts +190 -0
  217. package/src/operationsInterfaces/systemTopics.ts +139 -0
  218. package/src/operationsInterfaces/topicTypes.ts +47 -0
  219. package/src/operationsInterfaces/topics.ts +197 -0
  220. package/tsconfig.json +19 -0
  221. package/types/arm-eventgrid.d.ts +4299 -0
  222. package/types/tsdoc-metadata.json +11 -0
@@ -0,0 +1,699 @@
1
+ /*
2
+ * Copyright (c) Microsoft Corporation.
3
+ * Licensed under the MIT License.
4
+ *
5
+ * Code generated by Microsoft (R) AutoRest Code Generator.
6
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
7
+ */
8
+
9
+ import { PagedAsyncIterableIterator } from "@azure/core-paging";
10
+ import { PartnerTopicEventSubscriptions } from "../operationsInterfaces";
11
+ import * as coreClient from "@azure/core-client";
12
+ import * as Mappers from "../models/mappers";
13
+ import * as Parameters from "../models/parameters";
14
+ import { EventGridManagementClientContext } from "../eventGridManagementClientContext";
15
+ import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro";
16
+ import { LroImpl } from "../lroImpl";
17
+ import {
18
+ EventSubscription,
19
+ PartnerTopicEventSubscriptionsListByPartnerTopicNextOptionalParams,
20
+ PartnerTopicEventSubscriptionsListByPartnerTopicOptionalParams,
21
+ PartnerTopicEventSubscriptionsGetOptionalParams,
22
+ PartnerTopicEventSubscriptionsGetResponse,
23
+ PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams,
24
+ PartnerTopicEventSubscriptionsCreateOrUpdateResponse,
25
+ PartnerTopicEventSubscriptionsDeleteOptionalParams,
26
+ EventSubscriptionUpdateParameters,
27
+ PartnerTopicEventSubscriptionsUpdateOptionalParams,
28
+ PartnerTopicEventSubscriptionsUpdateResponse,
29
+ PartnerTopicEventSubscriptionsGetFullUrlOptionalParams,
30
+ PartnerTopicEventSubscriptionsGetFullUrlResponse,
31
+ PartnerTopicEventSubscriptionsListByPartnerTopicResponse,
32
+ PartnerTopicEventSubscriptionsGetDeliveryAttributesOptionalParams,
33
+ PartnerTopicEventSubscriptionsGetDeliveryAttributesResponse,
34
+ PartnerTopicEventSubscriptionsListByPartnerTopicNextResponse
35
+ } from "../models";
36
+
37
+ /// <reference lib="esnext.asynciterable" />
38
+ /** Class containing PartnerTopicEventSubscriptions operations. */
39
+ export class PartnerTopicEventSubscriptionsImpl
40
+ implements PartnerTopicEventSubscriptions {
41
+ private readonly client: EventGridManagementClientContext;
42
+
43
+ /**
44
+ * Initialize a new instance of the class PartnerTopicEventSubscriptions class.
45
+ * @param client Reference to the service client
46
+ */
47
+ constructor(client: EventGridManagementClientContext) {
48
+ this.client = client;
49
+ }
50
+
51
+ /**
52
+ * List event subscriptions that belong to a specific partner topic.
53
+ * @param resourceGroupName The name of the resource group within the user's subscription.
54
+ * @param partnerTopicName Name of the partner topic.
55
+ * @param options The options parameters.
56
+ */
57
+ public listByPartnerTopic(
58
+ resourceGroupName: string,
59
+ partnerTopicName: string,
60
+ options?: PartnerTopicEventSubscriptionsListByPartnerTopicOptionalParams
61
+ ): PagedAsyncIterableIterator<EventSubscription> {
62
+ const iter = this.listByPartnerTopicPagingAll(
63
+ resourceGroupName,
64
+ partnerTopicName,
65
+ options
66
+ );
67
+ return {
68
+ next() {
69
+ return iter.next();
70
+ },
71
+ [Symbol.asyncIterator]() {
72
+ return this;
73
+ },
74
+ byPage: () => {
75
+ return this.listByPartnerTopicPagingPage(
76
+ resourceGroupName,
77
+ partnerTopicName,
78
+ options
79
+ );
80
+ }
81
+ };
82
+ }
83
+
84
+ private async *listByPartnerTopicPagingPage(
85
+ resourceGroupName: string,
86
+ partnerTopicName: string,
87
+ options?: PartnerTopicEventSubscriptionsListByPartnerTopicOptionalParams
88
+ ): AsyncIterableIterator<EventSubscription[]> {
89
+ let result = await this._listByPartnerTopic(
90
+ resourceGroupName,
91
+ partnerTopicName,
92
+ options
93
+ );
94
+ yield result.value || [];
95
+ let continuationToken = result.nextLink;
96
+ while (continuationToken) {
97
+ result = await this._listByPartnerTopicNext(
98
+ resourceGroupName,
99
+ partnerTopicName,
100
+ continuationToken,
101
+ options
102
+ );
103
+ continuationToken = result.nextLink;
104
+ yield result.value || [];
105
+ }
106
+ }
107
+
108
+ private async *listByPartnerTopicPagingAll(
109
+ resourceGroupName: string,
110
+ partnerTopicName: string,
111
+ options?: PartnerTopicEventSubscriptionsListByPartnerTopicOptionalParams
112
+ ): AsyncIterableIterator<EventSubscription> {
113
+ for await (const page of this.listByPartnerTopicPagingPage(
114
+ resourceGroupName,
115
+ partnerTopicName,
116
+ options
117
+ )) {
118
+ yield* page;
119
+ }
120
+ }
121
+
122
+ /**
123
+ * Get an event subscription of a partner topic.
124
+ * @param resourceGroupName The name of the resource group within the user's subscription.
125
+ * @param partnerTopicName Name of the partner topic.
126
+ * @param eventSubscriptionName Name of the event subscription to be found. Event subscription names
127
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
128
+ * @param options The options parameters.
129
+ */
130
+ get(
131
+ resourceGroupName: string,
132
+ partnerTopicName: string,
133
+ eventSubscriptionName: string,
134
+ options?: PartnerTopicEventSubscriptionsGetOptionalParams
135
+ ): Promise<PartnerTopicEventSubscriptionsGetResponse> {
136
+ return this.client.sendOperationRequest(
137
+ { resourceGroupName, partnerTopicName, eventSubscriptionName, options },
138
+ getOperationSpec
139
+ );
140
+ }
141
+
142
+ /**
143
+ * Asynchronously creates or updates an event subscription of a partner topic with the specified
144
+ * parameters. Existing event subscriptions will be updated with this API.
145
+ * @param resourceGroupName The name of the resource group within the user's subscription.
146
+ * @param partnerTopicName Name of the partner topic.
147
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names
148
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
149
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter
150
+ * information.
151
+ * @param options The options parameters.
152
+ */
153
+ async beginCreateOrUpdate(
154
+ resourceGroupName: string,
155
+ partnerTopicName: string,
156
+ eventSubscriptionName: string,
157
+ eventSubscriptionInfo: EventSubscription,
158
+ options?: PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams
159
+ ): Promise<
160
+ PollerLike<
161
+ PollOperationState<PartnerTopicEventSubscriptionsCreateOrUpdateResponse>,
162
+ PartnerTopicEventSubscriptionsCreateOrUpdateResponse
163
+ >
164
+ > {
165
+ const directSendOperation = async (
166
+ args: coreClient.OperationArguments,
167
+ spec: coreClient.OperationSpec
168
+ ): Promise<PartnerTopicEventSubscriptionsCreateOrUpdateResponse> => {
169
+ return this.client.sendOperationRequest(args, spec);
170
+ };
171
+ const sendOperation = async (
172
+ args: coreClient.OperationArguments,
173
+ spec: coreClient.OperationSpec
174
+ ) => {
175
+ let currentRawResponse:
176
+ | coreClient.FullOperationResponse
177
+ | undefined = undefined;
178
+ const providedCallback = args.options?.onResponse;
179
+ const callback: coreClient.RawResponseCallback = (
180
+ rawResponse: coreClient.FullOperationResponse,
181
+ flatResponse: unknown
182
+ ) => {
183
+ currentRawResponse = rawResponse;
184
+ providedCallback?.(rawResponse, flatResponse);
185
+ };
186
+ const updatedArgs = {
187
+ ...args,
188
+ options: {
189
+ ...args.options,
190
+ onResponse: callback
191
+ }
192
+ };
193
+ const flatResponse = await directSendOperation(updatedArgs, spec);
194
+ return {
195
+ flatResponse,
196
+ rawResponse: {
197
+ statusCode: currentRawResponse!.status,
198
+ body: currentRawResponse!.parsedBody,
199
+ headers: currentRawResponse!.headers.toJSON()
200
+ }
201
+ };
202
+ };
203
+
204
+ const lro = new LroImpl(
205
+ sendOperation,
206
+ {
207
+ resourceGroupName,
208
+ partnerTopicName,
209
+ eventSubscriptionName,
210
+ eventSubscriptionInfo,
211
+ options
212
+ },
213
+ createOrUpdateOperationSpec
214
+ );
215
+ return new LroEngine(lro, {
216
+ resumeFrom: options?.resumeFrom,
217
+ intervalInMs: options?.updateIntervalInMs
218
+ });
219
+ }
220
+
221
+ /**
222
+ * Asynchronously creates or updates an event subscription of a partner topic with the specified
223
+ * parameters. Existing event subscriptions will be updated with this API.
224
+ * @param resourceGroupName The name of the resource group within the user's subscription.
225
+ * @param partnerTopicName Name of the partner topic.
226
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names
227
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
228
+ * @param eventSubscriptionInfo Event subscription properties containing the destination and filter
229
+ * information.
230
+ * @param options The options parameters.
231
+ */
232
+ async beginCreateOrUpdateAndWait(
233
+ resourceGroupName: string,
234
+ partnerTopicName: string,
235
+ eventSubscriptionName: string,
236
+ eventSubscriptionInfo: EventSubscription,
237
+ options?: PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams
238
+ ): Promise<PartnerTopicEventSubscriptionsCreateOrUpdateResponse> {
239
+ const poller = await this.beginCreateOrUpdate(
240
+ resourceGroupName,
241
+ partnerTopicName,
242
+ eventSubscriptionName,
243
+ eventSubscriptionInfo,
244
+ options
245
+ );
246
+ return poller.pollUntilDone();
247
+ }
248
+
249
+ /**
250
+ * Delete an event subscription of a partner topic.
251
+ * @param resourceGroupName The name of the resource group within the user's subscription.
252
+ * @param partnerTopicName Name of the partner topic.
253
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names
254
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
255
+ * @param options The options parameters.
256
+ */
257
+ async beginDelete(
258
+ resourceGroupName: string,
259
+ partnerTopicName: string,
260
+ eventSubscriptionName: string,
261
+ options?: PartnerTopicEventSubscriptionsDeleteOptionalParams
262
+ ): Promise<PollerLike<PollOperationState<void>, void>> {
263
+ const directSendOperation = async (
264
+ args: coreClient.OperationArguments,
265
+ spec: coreClient.OperationSpec
266
+ ): Promise<void> => {
267
+ return this.client.sendOperationRequest(args, spec);
268
+ };
269
+ const sendOperation = async (
270
+ args: coreClient.OperationArguments,
271
+ spec: coreClient.OperationSpec
272
+ ) => {
273
+ let currentRawResponse:
274
+ | coreClient.FullOperationResponse
275
+ | undefined = undefined;
276
+ const providedCallback = args.options?.onResponse;
277
+ const callback: coreClient.RawResponseCallback = (
278
+ rawResponse: coreClient.FullOperationResponse,
279
+ flatResponse: unknown
280
+ ) => {
281
+ currentRawResponse = rawResponse;
282
+ providedCallback?.(rawResponse, flatResponse);
283
+ };
284
+ const updatedArgs = {
285
+ ...args,
286
+ options: {
287
+ ...args.options,
288
+ onResponse: callback
289
+ }
290
+ };
291
+ const flatResponse = await directSendOperation(updatedArgs, spec);
292
+ return {
293
+ flatResponse,
294
+ rawResponse: {
295
+ statusCode: currentRawResponse!.status,
296
+ body: currentRawResponse!.parsedBody,
297
+ headers: currentRawResponse!.headers.toJSON()
298
+ }
299
+ };
300
+ };
301
+
302
+ const lro = new LroImpl(
303
+ sendOperation,
304
+ { resourceGroupName, partnerTopicName, eventSubscriptionName, options },
305
+ deleteOperationSpec
306
+ );
307
+ return new LroEngine(lro, {
308
+ resumeFrom: options?.resumeFrom,
309
+ intervalInMs: options?.updateIntervalInMs
310
+ });
311
+ }
312
+
313
+ /**
314
+ * Delete an event subscription of a partner topic.
315
+ * @param resourceGroupName The name of the resource group within the user's subscription.
316
+ * @param partnerTopicName Name of the partner topic.
317
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names
318
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
319
+ * @param options The options parameters.
320
+ */
321
+ async beginDeleteAndWait(
322
+ resourceGroupName: string,
323
+ partnerTopicName: string,
324
+ eventSubscriptionName: string,
325
+ options?: PartnerTopicEventSubscriptionsDeleteOptionalParams
326
+ ): Promise<void> {
327
+ const poller = await this.beginDelete(
328
+ resourceGroupName,
329
+ partnerTopicName,
330
+ eventSubscriptionName,
331
+ options
332
+ );
333
+ return poller.pollUntilDone();
334
+ }
335
+
336
+ /**
337
+ * Update event subscription of a partner topic.
338
+ * @param resourceGroupName The name of the resource group within the user's subscription.
339
+ * @param partnerTopicName Name of the partner topic.
340
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names
341
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
342
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
343
+ * @param options The options parameters.
344
+ */
345
+ async beginUpdate(
346
+ resourceGroupName: string,
347
+ partnerTopicName: string,
348
+ eventSubscriptionName: string,
349
+ eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters,
350
+ options?: PartnerTopicEventSubscriptionsUpdateOptionalParams
351
+ ): Promise<
352
+ PollerLike<
353
+ PollOperationState<PartnerTopicEventSubscriptionsUpdateResponse>,
354
+ PartnerTopicEventSubscriptionsUpdateResponse
355
+ >
356
+ > {
357
+ const directSendOperation = async (
358
+ args: coreClient.OperationArguments,
359
+ spec: coreClient.OperationSpec
360
+ ): Promise<PartnerTopicEventSubscriptionsUpdateResponse> => {
361
+ return this.client.sendOperationRequest(args, spec);
362
+ };
363
+ const sendOperation = async (
364
+ args: coreClient.OperationArguments,
365
+ spec: coreClient.OperationSpec
366
+ ) => {
367
+ let currentRawResponse:
368
+ | coreClient.FullOperationResponse
369
+ | undefined = undefined;
370
+ const providedCallback = args.options?.onResponse;
371
+ const callback: coreClient.RawResponseCallback = (
372
+ rawResponse: coreClient.FullOperationResponse,
373
+ flatResponse: unknown
374
+ ) => {
375
+ currentRawResponse = rawResponse;
376
+ providedCallback?.(rawResponse, flatResponse);
377
+ };
378
+ const updatedArgs = {
379
+ ...args,
380
+ options: {
381
+ ...args.options,
382
+ onResponse: callback
383
+ }
384
+ };
385
+ const flatResponse = await directSendOperation(updatedArgs, spec);
386
+ return {
387
+ flatResponse,
388
+ rawResponse: {
389
+ statusCode: currentRawResponse!.status,
390
+ body: currentRawResponse!.parsedBody,
391
+ headers: currentRawResponse!.headers.toJSON()
392
+ }
393
+ };
394
+ };
395
+
396
+ const lro = new LroImpl(
397
+ sendOperation,
398
+ {
399
+ resourceGroupName,
400
+ partnerTopicName,
401
+ eventSubscriptionName,
402
+ eventSubscriptionUpdateParameters,
403
+ options
404
+ },
405
+ updateOperationSpec
406
+ );
407
+ return new LroEngine(lro, {
408
+ resumeFrom: options?.resumeFrom,
409
+ intervalInMs: options?.updateIntervalInMs
410
+ });
411
+ }
412
+
413
+ /**
414
+ * Update event subscription of a partner topic.
415
+ * @param resourceGroupName The name of the resource group within the user's subscription.
416
+ * @param partnerTopicName Name of the partner topic.
417
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names
418
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
419
+ * @param eventSubscriptionUpdateParameters Updated event subscription information.
420
+ * @param options The options parameters.
421
+ */
422
+ async beginUpdateAndWait(
423
+ resourceGroupName: string,
424
+ partnerTopicName: string,
425
+ eventSubscriptionName: string,
426
+ eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters,
427
+ options?: PartnerTopicEventSubscriptionsUpdateOptionalParams
428
+ ): Promise<PartnerTopicEventSubscriptionsUpdateResponse> {
429
+ const poller = await this.beginUpdate(
430
+ resourceGroupName,
431
+ partnerTopicName,
432
+ eventSubscriptionName,
433
+ eventSubscriptionUpdateParameters,
434
+ options
435
+ );
436
+ return poller.pollUntilDone();
437
+ }
438
+
439
+ /**
440
+ * Get the full endpoint URL for an event subscription of a partner topic.
441
+ * @param resourceGroupName The name of the resource group within the user's subscription.
442
+ * @param partnerTopicName Name of the partner topic.
443
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names
444
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
445
+ * @param options The options parameters.
446
+ */
447
+ getFullUrl(
448
+ resourceGroupName: string,
449
+ partnerTopicName: string,
450
+ eventSubscriptionName: string,
451
+ options?: PartnerTopicEventSubscriptionsGetFullUrlOptionalParams
452
+ ): Promise<PartnerTopicEventSubscriptionsGetFullUrlResponse> {
453
+ return this.client.sendOperationRequest(
454
+ { resourceGroupName, partnerTopicName, eventSubscriptionName, options },
455
+ getFullUrlOperationSpec
456
+ );
457
+ }
458
+
459
+ /**
460
+ * List event subscriptions that belong to a specific partner topic.
461
+ * @param resourceGroupName The name of the resource group within the user's subscription.
462
+ * @param partnerTopicName Name of the partner topic.
463
+ * @param options The options parameters.
464
+ */
465
+ private _listByPartnerTopic(
466
+ resourceGroupName: string,
467
+ partnerTopicName: string,
468
+ options?: PartnerTopicEventSubscriptionsListByPartnerTopicOptionalParams
469
+ ): Promise<PartnerTopicEventSubscriptionsListByPartnerTopicResponse> {
470
+ return this.client.sendOperationRequest(
471
+ { resourceGroupName, partnerTopicName, options },
472
+ listByPartnerTopicOperationSpec
473
+ );
474
+ }
475
+
476
+ /**
477
+ * Get all delivery attributes for an event subscription of a partner topic.
478
+ * @param resourceGroupName The name of the resource group within the user's subscription.
479
+ * @param partnerTopicName Name of the partner topic.
480
+ * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names
481
+ * must be between 3 and 100 characters in length and use alphanumeric letters only.
482
+ * @param options The options parameters.
483
+ */
484
+ getDeliveryAttributes(
485
+ resourceGroupName: string,
486
+ partnerTopicName: string,
487
+ eventSubscriptionName: string,
488
+ options?: PartnerTopicEventSubscriptionsGetDeliveryAttributesOptionalParams
489
+ ): Promise<PartnerTopicEventSubscriptionsGetDeliveryAttributesResponse> {
490
+ return this.client.sendOperationRequest(
491
+ { resourceGroupName, partnerTopicName, eventSubscriptionName, options },
492
+ getDeliveryAttributesOperationSpec
493
+ );
494
+ }
495
+
496
+ /**
497
+ * ListByPartnerTopicNext
498
+ * @param resourceGroupName The name of the resource group within the user's subscription.
499
+ * @param partnerTopicName Name of the partner topic.
500
+ * @param nextLink The nextLink from the previous successful call to the ListByPartnerTopic method.
501
+ * @param options The options parameters.
502
+ */
503
+ private _listByPartnerTopicNext(
504
+ resourceGroupName: string,
505
+ partnerTopicName: string,
506
+ nextLink: string,
507
+ options?: PartnerTopicEventSubscriptionsListByPartnerTopicNextOptionalParams
508
+ ): Promise<PartnerTopicEventSubscriptionsListByPartnerTopicNextResponse> {
509
+ return this.client.sendOperationRequest(
510
+ { resourceGroupName, partnerTopicName, nextLink, options },
511
+ listByPartnerTopicNextOperationSpec
512
+ );
513
+ }
514
+ }
515
+ // Operation Specifications
516
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
517
+
518
+ const getOperationSpec: coreClient.OperationSpec = {
519
+ path:
520
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}",
521
+ httpMethod: "GET",
522
+ responses: {
523
+ 200: {
524
+ bodyMapper: Mappers.EventSubscription
525
+ },
526
+ default: {}
527
+ },
528
+ queryParameters: [Parameters.apiVersion],
529
+ urlParameters: [
530
+ Parameters.$host,
531
+ Parameters.subscriptionId,
532
+ Parameters.resourceGroupName,
533
+ Parameters.eventSubscriptionName,
534
+ Parameters.partnerTopicName
535
+ ],
536
+ headerParameters: [Parameters.accept],
537
+ serializer
538
+ };
539
+ const createOrUpdateOperationSpec: coreClient.OperationSpec = {
540
+ path:
541
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}",
542
+ httpMethod: "PUT",
543
+ responses: {
544
+ 200: {
545
+ bodyMapper: Mappers.EventSubscription
546
+ },
547
+ 201: {
548
+ bodyMapper: Mappers.EventSubscription
549
+ },
550
+ 202: {
551
+ bodyMapper: Mappers.EventSubscription
552
+ },
553
+ 204: {
554
+ bodyMapper: Mappers.EventSubscription
555
+ },
556
+ default: {}
557
+ },
558
+ requestBody: Parameters.eventSubscriptionInfo,
559
+ queryParameters: [Parameters.apiVersion],
560
+ urlParameters: [
561
+ Parameters.$host,
562
+ Parameters.subscriptionId,
563
+ Parameters.resourceGroupName,
564
+ Parameters.eventSubscriptionName,
565
+ Parameters.partnerTopicName
566
+ ],
567
+ headerParameters: [Parameters.accept, Parameters.contentType],
568
+ mediaType: "json",
569
+ serializer
570
+ };
571
+ const deleteOperationSpec: coreClient.OperationSpec = {
572
+ path:
573
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}",
574
+ httpMethod: "DELETE",
575
+ responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} },
576
+ queryParameters: [Parameters.apiVersion],
577
+ urlParameters: [
578
+ Parameters.$host,
579
+ Parameters.subscriptionId,
580
+ Parameters.resourceGroupName,
581
+ Parameters.eventSubscriptionName,
582
+ Parameters.partnerTopicName
583
+ ],
584
+ serializer
585
+ };
586
+ const updateOperationSpec: coreClient.OperationSpec = {
587
+ path:
588
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}",
589
+ httpMethod: "PATCH",
590
+ responses: {
591
+ 200: {
592
+ bodyMapper: Mappers.EventSubscription
593
+ },
594
+ 201: {
595
+ bodyMapper: Mappers.EventSubscription
596
+ },
597
+ 202: {
598
+ bodyMapper: Mappers.EventSubscription
599
+ },
600
+ 204: {
601
+ bodyMapper: Mappers.EventSubscription
602
+ },
603
+ default: {}
604
+ },
605
+ requestBody: Parameters.eventSubscriptionUpdateParameters,
606
+ queryParameters: [Parameters.apiVersion],
607
+ urlParameters: [
608
+ Parameters.$host,
609
+ Parameters.subscriptionId,
610
+ Parameters.resourceGroupName,
611
+ Parameters.eventSubscriptionName,
612
+ Parameters.partnerTopicName
613
+ ],
614
+ headerParameters: [Parameters.accept, Parameters.contentType],
615
+ mediaType: "json",
616
+ serializer
617
+ };
618
+ const getFullUrlOperationSpec: coreClient.OperationSpec = {
619
+ path:
620
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}/getFullUrl",
621
+ httpMethod: "POST",
622
+ responses: {
623
+ 200: {
624
+ bodyMapper: Mappers.EventSubscriptionFullUrl
625
+ },
626
+ default: {}
627
+ },
628
+ queryParameters: [Parameters.apiVersion],
629
+ urlParameters: [
630
+ Parameters.$host,
631
+ Parameters.subscriptionId,
632
+ Parameters.resourceGroupName,
633
+ Parameters.eventSubscriptionName,
634
+ Parameters.partnerTopicName
635
+ ],
636
+ headerParameters: [Parameters.accept],
637
+ serializer
638
+ };
639
+ const listByPartnerTopicOperationSpec: coreClient.OperationSpec = {
640
+ path:
641
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions",
642
+ httpMethod: "GET",
643
+ responses: {
644
+ 200: {
645
+ bodyMapper: Mappers.EventSubscriptionsListResult
646
+ },
647
+ default: {}
648
+ },
649
+ queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],
650
+ urlParameters: [
651
+ Parameters.$host,
652
+ Parameters.subscriptionId,
653
+ Parameters.resourceGroupName,
654
+ Parameters.partnerTopicName
655
+ ],
656
+ headerParameters: [Parameters.accept],
657
+ serializer
658
+ };
659
+ const getDeliveryAttributesOperationSpec: coreClient.OperationSpec = {
660
+ path:
661
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}/getDeliveryAttributes",
662
+ httpMethod: "POST",
663
+ responses: {
664
+ 200: {
665
+ bodyMapper: Mappers.DeliveryAttributeListResult
666
+ },
667
+ default: {}
668
+ },
669
+ queryParameters: [Parameters.apiVersion],
670
+ urlParameters: [
671
+ Parameters.$host,
672
+ Parameters.subscriptionId,
673
+ Parameters.resourceGroupName,
674
+ Parameters.eventSubscriptionName,
675
+ Parameters.partnerTopicName
676
+ ],
677
+ headerParameters: [Parameters.accept],
678
+ serializer
679
+ };
680
+ const listByPartnerTopicNextOperationSpec: coreClient.OperationSpec = {
681
+ path: "{nextLink}",
682
+ httpMethod: "GET",
683
+ responses: {
684
+ 200: {
685
+ bodyMapper: Mappers.EventSubscriptionsListResult
686
+ },
687
+ default: {}
688
+ },
689
+ queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top],
690
+ urlParameters: [
691
+ Parameters.$host,
692
+ Parameters.subscriptionId,
693
+ Parameters.resourceGroupName,
694
+ Parameters.nextLink,
695
+ Parameters.partnerTopicName
696
+ ],
697
+ headerParameters: [Parameters.accept],
698
+ serializer
699
+ };