@azure/arm-keyvault 2.1.0-beta.1 → 3.0.0-alpha.20230424.3

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 (244) hide show
  1. package/CHANGELOG.md +73 -3
  2. package/LICENSE +1 -1
  3. package/README.md +2 -2
  4. package/dist/index.js +3461 -1761
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.min.js +1 -1
  7. package/dist/index.min.js.map +1 -1
  8. package/dist-esm/samples-dev/keysCreateIfNotExistSample.js +12 -4
  9. package/dist-esm/samples-dev/keysCreateIfNotExistSample.js.map +1 -1
  10. package/dist-esm/samples-dev/keysGetSample.js +12 -4
  11. package/dist-esm/samples-dev/keysGetSample.js.map +1 -1
  12. package/dist-esm/samples-dev/keysGetVersionSample.js +12 -4
  13. package/dist-esm/samples-dev/keysGetVersionSample.js.map +1 -1
  14. package/dist-esm/samples-dev/keysListSample.js +24 -9
  15. package/dist-esm/samples-dev/keysListSample.js.map +1 -1
  16. package/dist-esm/samples-dev/keysListVersionsSample.js +24 -9
  17. package/dist-esm/samples-dev/keysListVersionsSample.js.map +1 -1
  18. package/dist-esm/samples-dev/managedHsmKeysCreateIfNotExistSample.d.ts +2 -0
  19. package/dist-esm/samples-dev/managedHsmKeysCreateIfNotExistSample.d.ts.map +1 -0
  20. package/dist-esm/samples-dev/managedHsmKeysCreateIfNotExistSample.js +43 -0
  21. package/dist-esm/samples-dev/managedHsmKeysCreateIfNotExistSample.js.map +1 -0
  22. package/dist-esm/samples-dev/managedHsmKeysGetSample.d.ts +2 -0
  23. package/dist-esm/samples-dev/managedHsmKeysGetSample.d.ts.map +1 -0
  24. package/dist-esm/samples-dev/managedHsmKeysGetSample.js +40 -0
  25. package/dist-esm/samples-dev/managedHsmKeysGetSample.js.map +1 -0
  26. package/dist-esm/samples-dev/managedHsmKeysGetVersionSample.d.ts +2 -0
  27. package/dist-esm/samples-dev/managedHsmKeysGetVersionSample.d.ts.map +1 -0
  28. package/dist-esm/samples-dev/managedHsmKeysGetVersionSample.js +41 -0
  29. package/dist-esm/samples-dev/managedHsmKeysGetVersionSample.js.map +1 -0
  30. package/dist-esm/samples-dev/managedHsmKeysListSample.d.ts +2 -0
  31. package/dist-esm/samples-dev/managedHsmKeysListSample.d.ts.map +1 -0
  32. package/dist-esm/samples-dev/managedHsmKeysListSample.js +60 -0
  33. package/dist-esm/samples-dev/managedHsmKeysListSample.js.map +1 -0
  34. package/dist-esm/samples-dev/managedHsmKeysListVersionsSample.d.ts +2 -0
  35. package/dist-esm/samples-dev/managedHsmKeysListVersionsSample.d.ts.map +1 -0
  36. package/dist-esm/samples-dev/managedHsmKeysListVersionsSample.js +61 -0
  37. package/dist-esm/samples-dev/managedHsmKeysListVersionsSample.js.map +1 -0
  38. package/dist-esm/samples-dev/managedHsmsCheckMhsmNameAvailabilitySample.d.ts +2 -0
  39. package/dist-esm/samples-dev/managedHsmsCheckMhsmNameAvailabilitySample.d.ts.map +1 -0
  40. package/dist-esm/samples-dev/managedHsmsCheckMhsmNameAvailabilitySample.js +38 -0
  41. package/dist-esm/samples-dev/managedHsmsCheckMhsmNameAvailabilitySample.js.map +1 -0
  42. package/dist-esm/samples-dev/managedHsmsCreateOrUpdateSample.js +13 -5
  43. package/dist-esm/samples-dev/managedHsmsCreateOrUpdateSample.js.map +1 -1
  44. package/dist-esm/samples-dev/managedHsmsDeleteSample.js +12 -4
  45. package/dist-esm/samples-dev/managedHsmsDeleteSample.js.map +1 -1
  46. package/dist-esm/samples-dev/managedHsmsGetDeletedSample.js +11 -3
  47. package/dist-esm/samples-dev/managedHsmsGetDeletedSample.js.map +1 -1
  48. package/dist-esm/samples-dev/managedHsmsGetSample.js +12 -4
  49. package/dist-esm/samples-dev/managedHsmsGetSample.js.map +1 -1
  50. package/dist-esm/samples-dev/managedHsmsListByResourceGroupSample.js +24 -9
  51. package/dist-esm/samples-dev/managedHsmsListByResourceGroupSample.js.map +1 -1
  52. package/dist-esm/samples-dev/managedHsmsListBySubscriptionSample.js +23 -8
  53. package/dist-esm/samples-dev/managedHsmsListBySubscriptionSample.js.map +1 -1
  54. package/dist-esm/samples-dev/managedHsmsListDeletedSample.js +23 -8
  55. package/dist-esm/samples-dev/managedHsmsListDeletedSample.js.map +1 -1
  56. package/dist-esm/samples-dev/managedHsmsPurgeDeletedSample.js +11 -3
  57. package/dist-esm/samples-dev/managedHsmsPurgeDeletedSample.js.map +1 -1
  58. package/dist-esm/samples-dev/managedHsmsUpdateSample.js +12 -4
  59. package/dist-esm/samples-dev/managedHsmsUpdateSample.js.map +1 -1
  60. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsDeleteSample.js +12 -4
  61. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsDeleteSample.js.map +1 -1
  62. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsGetSample.js +12 -4
  63. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsGetSample.js.map +1 -1
  64. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsListByResourceSample.js +24 -9
  65. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsListByResourceSample.js.map +1 -1
  66. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsPutSample.js +12 -4
  67. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsPutSample.js.map +1 -1
  68. package/dist-esm/samples-dev/mhsmPrivateLinkResourcesListByMhsmResourceSample.js +12 -4
  69. package/dist-esm/samples-dev/mhsmPrivateLinkResourcesListByMhsmResourceSample.js.map +1 -1
  70. package/dist-esm/samples-dev/mhsmRegionsListByResourceSample.d.ts +2 -0
  71. package/dist-esm/samples-dev/mhsmRegionsListByResourceSample.d.ts.map +1 -0
  72. package/dist-esm/samples-dev/mhsmRegionsListByResourceSample.js +60 -0
  73. package/dist-esm/samples-dev/mhsmRegionsListByResourceSample.js.map +1 -0
  74. package/dist-esm/samples-dev/operationsListSample.js +23 -8
  75. package/dist-esm/samples-dev/operationsListSample.js.map +1 -1
  76. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.js +12 -4
  77. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.js.map +1 -1
  78. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.js +12 -4
  79. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.js.map +1 -1
  80. package/dist-esm/samples-dev/privateEndpointConnectionsListByResourceSample.js +24 -9
  81. package/dist-esm/samples-dev/privateEndpointConnectionsListByResourceSample.js.map +1 -1
  82. package/dist-esm/samples-dev/privateEndpointConnectionsPutSample.js +12 -4
  83. package/dist-esm/samples-dev/privateEndpointConnectionsPutSample.js.map +1 -1
  84. package/dist-esm/samples-dev/privateLinkResourcesListByVaultSample.js +12 -4
  85. package/dist-esm/samples-dev/privateLinkResourcesListByVaultSample.js.map +1 -1
  86. package/dist-esm/samples-dev/secretsCreateOrUpdateSample.js +12 -4
  87. package/dist-esm/samples-dev/secretsCreateOrUpdateSample.js.map +1 -1
  88. package/dist-esm/samples-dev/secretsGetSample.js +12 -4
  89. package/dist-esm/samples-dev/secretsGetSample.js.map +1 -1
  90. package/dist-esm/samples-dev/secretsListSample.js +24 -9
  91. package/dist-esm/samples-dev/secretsListSample.js.map +1 -1
  92. package/dist-esm/samples-dev/secretsUpdateSample.js +12 -4
  93. package/dist-esm/samples-dev/secretsUpdateSample.js.map +1 -1
  94. package/dist-esm/samples-dev/vaultsCheckNameAvailabilitySample.js +11 -3
  95. package/dist-esm/samples-dev/vaultsCheckNameAvailabilitySample.js.map +1 -1
  96. package/dist-esm/samples-dev/vaultsCreateOrUpdateSample.js +17 -8
  97. package/dist-esm/samples-dev/vaultsCreateOrUpdateSample.js.map +1 -1
  98. package/dist-esm/samples-dev/vaultsDeleteSample.js +12 -4
  99. package/dist-esm/samples-dev/vaultsDeleteSample.js.map +1 -1
  100. package/dist-esm/samples-dev/vaultsGetDeletedSample.js +11 -3
  101. package/dist-esm/samples-dev/vaultsGetDeletedSample.js.map +1 -1
  102. package/dist-esm/samples-dev/vaultsGetSample.js +12 -4
  103. package/dist-esm/samples-dev/vaultsGetSample.js.map +1 -1
  104. package/dist-esm/samples-dev/vaultsListByResourceGroupSample.js +24 -9
  105. package/dist-esm/samples-dev/vaultsListByResourceGroupSample.js.map +1 -1
  106. package/dist-esm/samples-dev/vaultsListBySubscriptionSample.js +23 -8
  107. package/dist-esm/samples-dev/vaultsListBySubscriptionSample.js.map +1 -1
  108. package/dist-esm/samples-dev/vaultsListDeletedSample.js +23 -8
  109. package/dist-esm/samples-dev/vaultsListDeletedSample.js.map +1 -1
  110. package/dist-esm/samples-dev/vaultsListSample.js +23 -8
  111. package/dist-esm/samples-dev/vaultsListSample.js.map +1 -1
  112. package/dist-esm/samples-dev/vaultsPurgeDeletedSample.js +11 -3
  113. package/dist-esm/samples-dev/vaultsPurgeDeletedSample.js.map +1 -1
  114. package/dist-esm/samples-dev/vaultsUpdateAccessPolicySample.js +12 -4
  115. package/dist-esm/samples-dev/vaultsUpdateAccessPolicySample.js.map +1 -1
  116. package/dist-esm/samples-dev/vaultsUpdateSample.js +12 -4
  117. package/dist-esm/samples-dev/vaultsUpdateSample.js.map +1 -1
  118. package/dist-esm/src/index.d.ts +1 -0
  119. package/dist-esm/src/index.d.ts.map +1 -1
  120. package/dist-esm/src/index.js +1 -0
  121. package/dist-esm/src/index.js.map +1 -1
  122. package/dist-esm/src/keyVaultManagementClient.d.ts +5 -1
  123. package/dist-esm/src/keyVaultManagementClient.d.ts.map +1 -1
  124. package/dist-esm/src/keyVaultManagementClient.js +53 -20
  125. package/dist-esm/src/keyVaultManagementClient.js.map +1 -1
  126. package/dist-esm/src/lroImpl.d.ts +6 -11
  127. package/dist-esm/src/lroImpl.d.ts.map +1 -1
  128. package/dist-esm/src/lroImpl.js +12 -20
  129. package/dist-esm/src/lroImpl.js.map +1 -1
  130. package/dist-esm/src/models/index.d.ts +547 -107
  131. package/dist-esm/src/models/index.d.ts.map +1 -1
  132. package/dist-esm/src/models/index.js +135 -0
  133. package/dist-esm/src/models/index.js.map +1 -1
  134. package/dist-esm/src/models/mappers.d.ts +21 -0
  135. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  136. package/dist-esm/src/models/mappers.js +617 -11
  137. package/dist-esm/src/models/mappers.js.map +1 -1
  138. package/dist-esm/src/models/parameters.d.ts +9 -5
  139. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  140. package/dist-esm/src/models/parameters.js +45 -8
  141. package/dist-esm/src/models/parameters.js.map +1 -1
  142. package/dist-esm/src/operations/index.d.ts +2 -0
  143. package/dist-esm/src/operations/index.d.ts.map +1 -1
  144. package/dist-esm/src/operations/index.js +2 -0
  145. package/dist-esm/src/operations/index.js.map +1 -1
  146. package/dist-esm/src/operations/keys.d.ts +3 -1
  147. package/dist-esm/src/operations/keys.d.ts.map +1 -1
  148. package/dist-esm/src/operations/keys.js +64 -27
  149. package/dist-esm/src/operations/keys.js.map +1 -1
  150. package/dist-esm/src/operations/managedHsmKeys.d.ts +105 -0
  151. package/dist-esm/src/operations/managedHsmKeys.d.ts.map +1 -0
  152. package/dist-esm/src/operations/managedHsmKeys.js +404 -0
  153. package/dist-esm/src/operations/managedHsmKeys.js.map +1 -0
  154. package/dist-esm/src/operations/managedHsms.d.ts +13 -7
  155. package/dist-esm/src/operations/managedHsms.d.ts.map +1 -1
  156. package/dist-esm/src/operations/managedHsms.js +171 -70
  157. package/dist-esm/src/operations/managedHsms.js.map +1 -1
  158. package/dist-esm/src/operations/mhsmPrivateEndpointConnections.d.ts +2 -2
  159. package/dist-esm/src/operations/mhsmPrivateEndpointConnections.d.ts.map +1 -1
  160. package/dist-esm/src/operations/mhsmPrivateEndpointConnections.js +46 -24
  161. package/dist-esm/src/operations/mhsmPrivateEndpointConnections.js.map +1 -1
  162. package/dist-esm/src/operations/mhsmPrivateLinkResources.js +1 -1
  163. package/dist-esm/src/operations/mhsmPrivateLinkResources.js.map +1 -1
  164. package/dist-esm/src/operations/mhsmRegions.d.ts +38 -0
  165. package/dist-esm/src/operations/mhsmRegions.d.ts.map +1 -0
  166. package/dist-esm/src/operations/mhsmRegions.js +155 -0
  167. package/dist-esm/src/operations/mhsmRegions.js.map +1 -0
  168. package/dist-esm/src/operations/operations.d.ts.map +1 -1
  169. package/dist-esm/src/operations/operations.js +31 -13
  170. package/dist-esm/src/operations/operations.js.map +1 -1
  171. package/dist-esm/src/operations/privateEndpointConnections.d.ts +2 -2
  172. package/dist-esm/src/operations/privateEndpointConnections.d.ts.map +1 -1
  173. package/dist-esm/src/operations/privateEndpointConnections.js +46 -19
  174. package/dist-esm/src/operations/privateEndpointConnections.js.map +1 -1
  175. package/dist-esm/src/operations/secrets.d.ts +3 -1
  176. package/dist-esm/src/operations/secrets.d.ts.map +1 -1
  177. package/dist-esm/src/operations/secrets.js +36 -16
  178. package/dist-esm/src/operations/secrets.js.map +1 -1
  179. package/dist-esm/src/operations/vaults.d.ts +3 -3
  180. package/dist-esm/src/operations/vaults.d.ts.map +1 -1
  181. package/dist-esm/src/operations/vaults.js +142 -65
  182. package/dist-esm/src/operations/vaults.js.map +1 -1
  183. package/dist-esm/src/operationsInterfaces/index.d.ts +2 -0
  184. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -1
  185. package/dist-esm/src/operationsInterfaces/index.js +2 -0
  186. package/dist-esm/src/operationsInterfaces/index.js.map +1 -1
  187. package/dist-esm/src/operationsInterfaces/keys.d.ts +3 -1
  188. package/dist-esm/src/operationsInterfaces/keys.d.ts.map +1 -1
  189. package/dist-esm/src/operationsInterfaces/managedHsmKeys.d.ts +57 -0
  190. package/dist-esm/src/operationsInterfaces/managedHsmKeys.d.ts.map +1 -0
  191. package/dist-esm/src/operationsInterfaces/managedHsmKeys.js +9 -0
  192. package/dist-esm/src/operationsInterfaces/managedHsmKeys.js.map +1 -0
  193. package/dist-esm/src/operationsInterfaces/managedHsms.d.ts +13 -7
  194. package/dist-esm/src/operationsInterfaces/managedHsms.d.ts.map +1 -1
  195. package/dist-esm/src/operationsInterfaces/mhsmPrivateEndpointConnections.d.ts +2 -2
  196. package/dist-esm/src/operationsInterfaces/mhsmPrivateEndpointConnections.d.ts.map +1 -1
  197. package/dist-esm/src/operationsInterfaces/mhsmRegions.d.ts +13 -0
  198. package/dist-esm/src/operationsInterfaces/mhsmRegions.d.ts.map +1 -0
  199. package/dist-esm/src/operationsInterfaces/mhsmRegions.js +9 -0
  200. package/dist-esm/src/operationsInterfaces/mhsmRegions.js.map +1 -0
  201. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts +2 -2
  202. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts.map +1 -1
  203. package/dist-esm/src/operationsInterfaces/secrets.d.ts +3 -1
  204. package/dist-esm/src/operationsInterfaces/secrets.d.ts.map +1 -1
  205. package/dist-esm/src/operationsInterfaces/vaults.d.ts +3 -3
  206. package/dist-esm/src/operationsInterfaces/vaults.d.ts.map +1 -1
  207. package/dist-esm/src/pagingHelper.d.ts +13 -0
  208. package/dist-esm/src/pagingHelper.d.ts.map +1 -0
  209. package/dist-esm/src/pagingHelper.js +32 -0
  210. package/dist-esm/src/pagingHelper.js.map +1 -0
  211. package/dist-esm/test/keyvault_examples.d.ts.map +1 -1
  212. package/dist-esm/test/keyvault_examples.js +42 -30
  213. package/dist-esm/test/keyvault_examples.js.map +1 -1
  214. package/package.json +21 -16
  215. package/review/arm-keyvault.api.md +304 -141
  216. package/src/index.ts +1 -0
  217. package/src/keyVaultManagementClient.ts +69 -21
  218. package/src/lroImpl.ts +31 -23
  219. package/src/models/index.ts +519 -44
  220. package/src/models/mappers.ts +644 -6
  221. package/src/models/parameters.ts +50 -7
  222. package/src/operations/index.ts +2 -0
  223. package/src/operations/keys.ts +56 -25
  224. package/src/operations/managedHsmKeys.ts +525 -0
  225. package/src/operations/managedHsms.ts +184 -83
  226. package/src/operations/mhsmPrivateEndpointConnections.ts +50 -26
  227. package/src/operations/mhsmPrivateLinkResources.ts +1 -1
  228. package/src/operations/mhsmRegions.ts +194 -0
  229. package/src/operations/operations.ts +21 -9
  230. package/src/operations/privateEndpointConnections.ts +51 -26
  231. package/src/operations/secrets.ts +32 -13
  232. package/src/operations/vaults.ts +117 -61
  233. package/src/operationsInterfaces/index.ts +2 -0
  234. package/src/operationsInterfaces/keys.ts +3 -1
  235. package/src/operationsInterfaces/managedHsmKeys.ts +103 -0
  236. package/src/operationsInterfaces/managedHsms.ts +27 -9
  237. package/src/operationsInterfaces/mhsmPrivateEndpointConnections.ts +3 -3
  238. package/src/operationsInterfaces/mhsmRegions.ts +29 -0
  239. package/src/operationsInterfaces/privateEndpointConnections.ts +3 -3
  240. package/src/operationsInterfaces/secrets.ts +3 -1
  241. package/src/operationsInterfaces/vaults.ts +4 -4
  242. package/src/pagingHelper.ts +39 -0
  243. package/types/arm-keyvault.d.ts +620 -45
  244. package/types/tsdoc-metadata.json +1 -1
@@ -0,0 +1,525 @@
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, PageSettings } from "@azure/core-paging";
10
+ import { setContinuationToken } from "../pagingHelper";
11
+ import { ManagedHsmKeys } from "../operationsInterfaces";
12
+ import * as coreClient from "@azure/core-client";
13
+ import * as Mappers from "../models/mappers";
14
+ import * as Parameters from "../models/parameters";
15
+ import { KeyVaultManagementClient } from "../keyVaultManagementClient";
16
+ import {
17
+ ManagedHsmKey,
18
+ ManagedHsmKeysListNextOptionalParams,
19
+ ManagedHsmKeysListOptionalParams,
20
+ ManagedHsmKeysListResponse,
21
+ ManagedHsmKeysListVersionsNextOptionalParams,
22
+ ManagedHsmKeysListVersionsOptionalParams,
23
+ ManagedHsmKeysListVersionsResponse,
24
+ ManagedHsmKeyCreateParameters,
25
+ ManagedHsmKeysCreateIfNotExistOptionalParams,
26
+ ManagedHsmKeysCreateIfNotExistResponse,
27
+ ManagedHsmKeysGetOptionalParams,
28
+ ManagedHsmKeysGetResponse,
29
+ ManagedHsmKeysGetVersionOptionalParams,
30
+ ManagedHsmKeysGetVersionResponse,
31
+ ManagedHsmKeysListNextResponse,
32
+ ManagedHsmKeysListVersionsNextResponse
33
+ } from "../models";
34
+
35
+ /// <reference lib="esnext.asynciterable" />
36
+ /** Class containing ManagedHsmKeys operations. */
37
+ export class ManagedHsmKeysImpl implements ManagedHsmKeys {
38
+ private readonly client: KeyVaultManagementClient;
39
+
40
+ /**
41
+ * Initialize a new instance of the class ManagedHsmKeys class.
42
+ * @param client Reference to the service client
43
+ */
44
+ constructor(client: KeyVaultManagementClient) {
45
+ this.client = client;
46
+ }
47
+
48
+ /**
49
+ * Lists the keys in the specified managed HSM.
50
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
51
+ * @param name The name of the Managed HSM Pool within the specified resource group.
52
+ * @param options The options parameters.
53
+ */
54
+ public list(
55
+ resourceGroupName: string,
56
+ name: string,
57
+ options?: ManagedHsmKeysListOptionalParams
58
+ ): PagedAsyncIterableIterator<ManagedHsmKey> {
59
+ const iter = this.listPagingAll(resourceGroupName, name, options);
60
+ return {
61
+ next() {
62
+ return iter.next();
63
+ },
64
+ [Symbol.asyncIterator]() {
65
+ return this;
66
+ },
67
+ byPage: (settings?: PageSettings) => {
68
+ if (settings?.maxPageSize) {
69
+ throw new Error("maxPageSize is not supported by this operation.");
70
+ }
71
+ return this.listPagingPage(resourceGroupName, name, options, settings);
72
+ }
73
+ };
74
+ }
75
+
76
+ private async *listPagingPage(
77
+ resourceGroupName: string,
78
+ name: string,
79
+ options?: ManagedHsmKeysListOptionalParams,
80
+ settings?: PageSettings
81
+ ): AsyncIterableIterator<ManagedHsmKey[]> {
82
+ let result: ManagedHsmKeysListResponse;
83
+ let continuationToken = settings?.continuationToken;
84
+ if (!continuationToken) {
85
+ result = await this._list(resourceGroupName, name, options);
86
+ let page = result.value || [];
87
+ continuationToken = result.nextLink;
88
+ setContinuationToken(page, continuationToken);
89
+ yield page;
90
+ }
91
+ while (continuationToken) {
92
+ result = await this._listNext(
93
+ resourceGroupName,
94
+ name,
95
+ continuationToken,
96
+ options
97
+ );
98
+ continuationToken = result.nextLink;
99
+ let page = result.value || [];
100
+ setContinuationToken(page, continuationToken);
101
+ yield page;
102
+ }
103
+ }
104
+
105
+ private async *listPagingAll(
106
+ resourceGroupName: string,
107
+ name: string,
108
+ options?: ManagedHsmKeysListOptionalParams
109
+ ): AsyncIterableIterator<ManagedHsmKey> {
110
+ for await (const page of this.listPagingPage(
111
+ resourceGroupName,
112
+ name,
113
+ options
114
+ )) {
115
+ yield* page;
116
+ }
117
+ }
118
+
119
+ /**
120
+ * Lists the versions of the specified key in the specified managed HSM.
121
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
122
+ * @param name The name of the Managed HSM Pool within the specified resource group.
123
+ * @param keyName The name of the key to be created. The value you provide may be copied globally for
124
+ * the purpose of running the service. The value provided should not include personally identifiable or
125
+ * sensitive information.
126
+ * @param options The options parameters.
127
+ */
128
+ public listVersions(
129
+ resourceGroupName: string,
130
+ name: string,
131
+ keyName: string,
132
+ options?: ManagedHsmKeysListVersionsOptionalParams
133
+ ): PagedAsyncIterableIterator<ManagedHsmKey> {
134
+ const iter = this.listVersionsPagingAll(
135
+ resourceGroupName,
136
+ name,
137
+ keyName,
138
+ options
139
+ );
140
+ return {
141
+ next() {
142
+ return iter.next();
143
+ },
144
+ [Symbol.asyncIterator]() {
145
+ return this;
146
+ },
147
+ byPage: (settings?: PageSettings) => {
148
+ if (settings?.maxPageSize) {
149
+ throw new Error("maxPageSize is not supported by this operation.");
150
+ }
151
+ return this.listVersionsPagingPage(
152
+ resourceGroupName,
153
+ name,
154
+ keyName,
155
+ options,
156
+ settings
157
+ );
158
+ }
159
+ };
160
+ }
161
+
162
+ private async *listVersionsPagingPage(
163
+ resourceGroupName: string,
164
+ name: string,
165
+ keyName: string,
166
+ options?: ManagedHsmKeysListVersionsOptionalParams,
167
+ settings?: PageSettings
168
+ ): AsyncIterableIterator<ManagedHsmKey[]> {
169
+ let result: ManagedHsmKeysListVersionsResponse;
170
+ let continuationToken = settings?.continuationToken;
171
+ if (!continuationToken) {
172
+ result = await this._listVersions(
173
+ resourceGroupName,
174
+ name,
175
+ keyName,
176
+ options
177
+ );
178
+ let page = result.value || [];
179
+ continuationToken = result.nextLink;
180
+ setContinuationToken(page, continuationToken);
181
+ yield page;
182
+ }
183
+ while (continuationToken) {
184
+ result = await this._listVersionsNext(
185
+ resourceGroupName,
186
+ name,
187
+ keyName,
188
+ continuationToken,
189
+ options
190
+ );
191
+ continuationToken = result.nextLink;
192
+ let page = result.value || [];
193
+ setContinuationToken(page, continuationToken);
194
+ yield page;
195
+ }
196
+ }
197
+
198
+ private async *listVersionsPagingAll(
199
+ resourceGroupName: string,
200
+ name: string,
201
+ keyName: string,
202
+ options?: ManagedHsmKeysListVersionsOptionalParams
203
+ ): AsyncIterableIterator<ManagedHsmKey> {
204
+ for await (const page of this.listVersionsPagingPage(
205
+ resourceGroupName,
206
+ name,
207
+ keyName,
208
+ options
209
+ )) {
210
+ yield* page;
211
+ }
212
+ }
213
+
214
+ /**
215
+ * Creates the first version of a new key if it does not exist. If it already exists, then the existing
216
+ * key is returned without any write operations being performed. This API does not create subsequent
217
+ * versions, and does not update existing keys.
218
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
219
+ * @param name The name of the Managed HSM Pool within the specified resource group.
220
+ * @param keyName The name of the key to be created. The value you provide may be copied globally for
221
+ * the purpose of running the service. The value provided should not include personally identifiable or
222
+ * sensitive information.
223
+ * @param parameters The parameters used to create the specified key.
224
+ * @param options The options parameters.
225
+ */
226
+ createIfNotExist(
227
+ resourceGroupName: string,
228
+ name: string,
229
+ keyName: string,
230
+ parameters: ManagedHsmKeyCreateParameters,
231
+ options?: ManagedHsmKeysCreateIfNotExistOptionalParams
232
+ ): Promise<ManagedHsmKeysCreateIfNotExistResponse> {
233
+ return this.client.sendOperationRequest(
234
+ { resourceGroupName, name, keyName, parameters, options },
235
+ createIfNotExistOperationSpec
236
+ );
237
+ }
238
+
239
+ /**
240
+ * Gets the current version of the specified key from the specified managed HSM.
241
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
242
+ * @param name The name of the Managed HSM Pool within the specified resource group.
243
+ * @param keyName The name of the key to be created. The value you provide may be copied globally for
244
+ * the purpose of running the service. The value provided should not include personally identifiable or
245
+ * sensitive information.
246
+ * @param options The options parameters.
247
+ */
248
+ get(
249
+ resourceGroupName: string,
250
+ name: string,
251
+ keyName: string,
252
+ options?: ManagedHsmKeysGetOptionalParams
253
+ ): Promise<ManagedHsmKeysGetResponse> {
254
+ return this.client.sendOperationRequest(
255
+ { resourceGroupName, name, keyName, options },
256
+ getOperationSpec
257
+ );
258
+ }
259
+
260
+ /**
261
+ * Lists the keys in the specified managed HSM.
262
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
263
+ * @param name The name of the Managed HSM Pool within the specified resource group.
264
+ * @param options The options parameters.
265
+ */
266
+ private _list(
267
+ resourceGroupName: string,
268
+ name: string,
269
+ options?: ManagedHsmKeysListOptionalParams
270
+ ): Promise<ManagedHsmKeysListResponse> {
271
+ return this.client.sendOperationRequest(
272
+ { resourceGroupName, name, options },
273
+ listOperationSpec
274
+ );
275
+ }
276
+
277
+ /**
278
+ * Gets the specified version of the specified key in the specified managed HSM.
279
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
280
+ * @param name The name of the Managed HSM Pool within the specified resource group.
281
+ * @param keyName The name of the key to be created. The value you provide may be copied globally for
282
+ * the purpose of running the service. The value provided should not include personally identifiable or
283
+ * sensitive information.
284
+ * @param keyVersion The version of the key to be retrieved.
285
+ * @param options The options parameters.
286
+ */
287
+ getVersion(
288
+ resourceGroupName: string,
289
+ name: string,
290
+ keyName: string,
291
+ keyVersion: string,
292
+ options?: ManagedHsmKeysGetVersionOptionalParams
293
+ ): Promise<ManagedHsmKeysGetVersionResponse> {
294
+ return this.client.sendOperationRequest(
295
+ { resourceGroupName, name, keyName, keyVersion, options },
296
+ getVersionOperationSpec
297
+ );
298
+ }
299
+
300
+ /**
301
+ * Lists the versions of the specified key in the specified managed HSM.
302
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
303
+ * @param name The name of the Managed HSM Pool within the specified resource group.
304
+ * @param keyName The name of the key to be created. The value you provide may be copied globally for
305
+ * the purpose of running the service. The value provided should not include personally identifiable or
306
+ * sensitive information.
307
+ * @param options The options parameters.
308
+ */
309
+ private _listVersions(
310
+ resourceGroupName: string,
311
+ name: string,
312
+ keyName: string,
313
+ options?: ManagedHsmKeysListVersionsOptionalParams
314
+ ): Promise<ManagedHsmKeysListVersionsResponse> {
315
+ return this.client.sendOperationRequest(
316
+ { resourceGroupName, name, keyName, options },
317
+ listVersionsOperationSpec
318
+ );
319
+ }
320
+
321
+ /**
322
+ * ListNext
323
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
324
+ * @param name The name of the Managed HSM Pool within the specified resource group.
325
+ * @param nextLink The nextLink from the previous successful call to the List method.
326
+ * @param options The options parameters.
327
+ */
328
+ private _listNext(
329
+ resourceGroupName: string,
330
+ name: string,
331
+ nextLink: string,
332
+ options?: ManagedHsmKeysListNextOptionalParams
333
+ ): Promise<ManagedHsmKeysListNextResponse> {
334
+ return this.client.sendOperationRequest(
335
+ { resourceGroupName, name, nextLink, options },
336
+ listNextOperationSpec
337
+ );
338
+ }
339
+
340
+ /**
341
+ * ListVersionsNext
342
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
343
+ * @param name The name of the Managed HSM Pool within the specified resource group.
344
+ * @param keyName The name of the key to be created. The value you provide may be copied globally for
345
+ * the purpose of running the service. The value provided should not include personally identifiable or
346
+ * sensitive information.
347
+ * @param nextLink The nextLink from the previous successful call to the ListVersions method.
348
+ * @param options The options parameters.
349
+ */
350
+ private _listVersionsNext(
351
+ resourceGroupName: string,
352
+ name: string,
353
+ keyName: string,
354
+ nextLink: string,
355
+ options?: ManagedHsmKeysListVersionsNextOptionalParams
356
+ ): Promise<ManagedHsmKeysListVersionsNextResponse> {
357
+ return this.client.sendOperationRequest(
358
+ { resourceGroupName, name, keyName, nextLink, options },
359
+ listVersionsNextOperationSpec
360
+ );
361
+ }
362
+ }
363
+ // Operation Specifications
364
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
365
+
366
+ const createIfNotExistOperationSpec: coreClient.OperationSpec = {
367
+ path:
368
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}",
369
+ httpMethod: "PUT",
370
+ responses: {
371
+ 200: {
372
+ bodyMapper: Mappers.ManagedHsmKey
373
+ },
374
+ default: {
375
+ bodyMapper: Mappers.CloudError
376
+ }
377
+ },
378
+ requestBody: Parameters.parameters1,
379
+ queryParameters: [Parameters.apiVersion],
380
+ urlParameters: [
381
+ Parameters.$host,
382
+ Parameters.subscriptionId,
383
+ Parameters.keyName,
384
+ Parameters.resourceGroupName1,
385
+ Parameters.name
386
+ ],
387
+ headerParameters: [Parameters.contentType, Parameters.accept],
388
+ mediaType: "json",
389
+ serializer
390
+ };
391
+ const getOperationSpec: coreClient.OperationSpec = {
392
+ path:
393
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}",
394
+ httpMethod: "GET",
395
+ responses: {
396
+ 200: {
397
+ bodyMapper: Mappers.ManagedHsmKey
398
+ },
399
+ default: {
400
+ bodyMapper: Mappers.CloudError
401
+ }
402
+ },
403
+ queryParameters: [Parameters.apiVersion],
404
+ urlParameters: [
405
+ Parameters.$host,
406
+ Parameters.subscriptionId,
407
+ Parameters.keyName,
408
+ Parameters.resourceGroupName1,
409
+ Parameters.name
410
+ ],
411
+ headerParameters: [Parameters.accept],
412
+ serializer
413
+ };
414
+ const listOperationSpec: coreClient.OperationSpec = {
415
+ path:
416
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys",
417
+ httpMethod: "GET",
418
+ responses: {
419
+ 200: {
420
+ bodyMapper: Mappers.ManagedHsmKeyListResult
421
+ },
422
+ default: {
423
+ bodyMapper: Mappers.CloudError
424
+ }
425
+ },
426
+ queryParameters: [Parameters.apiVersion],
427
+ urlParameters: [
428
+ Parameters.$host,
429
+ Parameters.subscriptionId,
430
+ Parameters.resourceGroupName1,
431
+ Parameters.name
432
+ ],
433
+ headerParameters: [Parameters.accept],
434
+ serializer
435
+ };
436
+ const getVersionOperationSpec: coreClient.OperationSpec = {
437
+ path:
438
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}/versions/{keyVersion}",
439
+ httpMethod: "GET",
440
+ responses: {
441
+ 200: {
442
+ bodyMapper: Mappers.ManagedHsmKey
443
+ },
444
+ default: {
445
+ bodyMapper: Mappers.CloudError
446
+ }
447
+ },
448
+ queryParameters: [Parameters.apiVersion],
449
+ urlParameters: [
450
+ Parameters.$host,
451
+ Parameters.subscriptionId,
452
+ Parameters.keyName,
453
+ Parameters.keyVersion,
454
+ Parameters.resourceGroupName1,
455
+ Parameters.name
456
+ ],
457
+ headerParameters: [Parameters.accept],
458
+ serializer
459
+ };
460
+ const listVersionsOperationSpec: coreClient.OperationSpec = {
461
+ path:
462
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}/versions",
463
+ httpMethod: "GET",
464
+ responses: {
465
+ 200: {
466
+ bodyMapper: Mappers.ManagedHsmKeyListResult
467
+ },
468
+ default: {
469
+ bodyMapper: Mappers.CloudError
470
+ }
471
+ },
472
+ queryParameters: [Parameters.apiVersion],
473
+ urlParameters: [
474
+ Parameters.$host,
475
+ Parameters.subscriptionId,
476
+ Parameters.keyName,
477
+ Parameters.resourceGroupName1,
478
+ Parameters.name
479
+ ],
480
+ headerParameters: [Parameters.accept],
481
+ serializer
482
+ };
483
+ const listNextOperationSpec: coreClient.OperationSpec = {
484
+ path: "{nextLink}",
485
+ httpMethod: "GET",
486
+ responses: {
487
+ 200: {
488
+ bodyMapper: Mappers.ManagedHsmKeyListResult
489
+ },
490
+ default: {
491
+ bodyMapper: Mappers.CloudError
492
+ }
493
+ },
494
+ urlParameters: [
495
+ Parameters.$host,
496
+ Parameters.subscriptionId,
497
+ Parameters.nextLink,
498
+ Parameters.resourceGroupName1,
499
+ Parameters.name
500
+ ],
501
+ headerParameters: [Parameters.accept],
502
+ serializer
503
+ };
504
+ const listVersionsNextOperationSpec: coreClient.OperationSpec = {
505
+ path: "{nextLink}",
506
+ httpMethod: "GET",
507
+ responses: {
508
+ 200: {
509
+ bodyMapper: Mappers.ManagedHsmKeyListResult
510
+ },
511
+ default: {
512
+ bodyMapper: Mappers.CloudError
513
+ }
514
+ },
515
+ urlParameters: [
516
+ Parameters.$host,
517
+ Parameters.subscriptionId,
518
+ Parameters.keyName,
519
+ Parameters.nextLink,
520
+ Parameters.resourceGroupName1,
521
+ Parameters.name
522
+ ],
523
+ headerParameters: [Parameters.accept],
524
+ serializer
525
+ };