@azure/arm-elasticsan 1.0.0-beta.1 → 1.0.0-beta.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 (197) hide show
  1. package/CHANGELOG.md +69 -1
  2. package/LICENSE +1 -1
  3. package/README.md +1 -1
  4. package/dist/index.js +2839 -1192
  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/elasticSansCreateSample.js +26 -17
  9. package/dist-esm/samples-dev/elasticSansCreateSample.js.map +1 -1
  10. package/dist-esm/samples-dev/elasticSansDeleteSample.js +17 -10
  11. package/dist-esm/samples-dev/elasticSansDeleteSample.js.map +1 -1
  12. package/dist-esm/samples-dev/elasticSansGetSample.js +17 -10
  13. package/dist-esm/samples-dev/elasticSansGetSample.js.map +1 -1
  14. package/dist-esm/samples-dev/elasticSansListByResourceGroupSample.js +39 -18
  15. package/dist-esm/samples-dev/elasticSansListByResourceGroupSample.js.map +1 -1
  16. package/dist-esm/samples-dev/elasticSansListBySubscriptionSample.js +37 -16
  17. package/dist-esm/samples-dev/elasticSansListBySubscriptionSample.js.map +1 -1
  18. package/dist-esm/samples-dev/elasticSansUpdateSample.js +21 -13
  19. package/dist-esm/samples-dev/elasticSansUpdateSample.js.map +1 -1
  20. package/dist-esm/samples-dev/operationsListSample.js +39 -16
  21. package/dist-esm/samples-dev/operationsListSample.js.map +1 -1
  22. package/dist-esm/samples-dev/privateEndpointConnectionsCreateSample.d.ts +2 -0
  23. package/dist-esm/samples-dev/privateEndpointConnectionsCreateSample.d.ts.map +1 -0
  24. package/dist-esm/samples-dev/privateEndpointConnectionsCreateSample.js +70 -0
  25. package/dist-esm/samples-dev/privateEndpointConnectionsCreateSample.js.map +1 -0
  26. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.d.ts +2 -0
  27. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.d.ts.map +1 -0
  28. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.js +58 -0
  29. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.js.map +1 -0
  30. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.d.ts +2 -0
  31. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.d.ts.map +1 -0
  32. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.js +58 -0
  33. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.js.map +1 -0
  34. package/dist-esm/samples-dev/privateEndpointConnectionsListSample.d.ts +2 -0
  35. package/dist-esm/samples-dev/privateEndpointConnectionsListSample.d.ts.map +1 -0
  36. package/dist-esm/samples-dev/privateEndpointConnectionsListSample.js +98 -0
  37. package/dist-esm/samples-dev/privateEndpointConnectionsListSample.js.map +1 -0
  38. package/dist-esm/samples-dev/privateLinkResourcesListByElasticSanSample.d.ts +2 -0
  39. package/dist-esm/samples-dev/privateLinkResourcesListByElasticSanSample.d.ts.map +1 -0
  40. package/dist-esm/samples-dev/privateLinkResourcesListByElasticSanSample.js +56 -0
  41. package/dist-esm/samples-dev/privateLinkResourcesListByElasticSanSample.js.map +1 -0
  42. package/dist-esm/samples-dev/skusListSample.js +38 -17
  43. package/dist-esm/samples-dev/skusListSample.js.map +1 -1
  44. package/dist-esm/samples-dev/volumeGroupsCreateSample.js +34 -16
  45. package/dist-esm/samples-dev/volumeGroupsCreateSample.js.map +1 -1
  46. package/dist-esm/samples-dev/volumeGroupsDeleteSample.js +19 -12
  47. package/dist-esm/samples-dev/volumeGroupsDeleteSample.js.map +1 -1
  48. package/dist-esm/samples-dev/volumeGroupsGetSample.js +19 -12
  49. package/dist-esm/samples-dev/volumeGroupsGetSample.js.map +1 -1
  50. package/dist-esm/samples-dev/volumeGroupsListByElasticSanSample.js +41 -20
  51. package/dist-esm/samples-dev/volumeGroupsListByElasticSanSample.js.map +1 -1
  52. package/dist-esm/samples-dev/volumeGroupsUpdateSample.js +33 -15
  53. package/dist-esm/samples-dev/volumeGroupsUpdateSample.js.map +1 -1
  54. package/dist-esm/samples-dev/volumeSnapshotsCreateSample.d.ts +2 -0
  55. package/dist-esm/samples-dev/volumeSnapshotsCreateSample.d.ts.map +1 -0
  56. package/dist-esm/samples-dev/volumeSnapshotsCreateSample.js +70 -0
  57. package/dist-esm/samples-dev/volumeSnapshotsCreateSample.js.map +1 -0
  58. package/dist-esm/samples-dev/volumeSnapshotsDeleteSample.d.ts +2 -0
  59. package/dist-esm/samples-dev/volumeSnapshotsDeleteSample.d.ts.map +1 -0
  60. package/dist-esm/samples-dev/volumeSnapshotsDeleteSample.js +60 -0
  61. package/dist-esm/samples-dev/volumeSnapshotsDeleteSample.js.map +1 -0
  62. package/dist-esm/samples-dev/volumeSnapshotsGetSample.d.ts +2 -0
  63. package/dist-esm/samples-dev/volumeSnapshotsGetSample.d.ts.map +1 -0
  64. package/dist-esm/samples-dev/volumeSnapshotsGetSample.js +60 -0
  65. package/dist-esm/samples-dev/volumeSnapshotsGetSample.js.map +1 -0
  66. package/dist-esm/samples-dev/volumeSnapshotsListByVolumeGroupSample.d.ts +2 -0
  67. package/dist-esm/samples-dev/volumeSnapshotsListByVolumeGroupSample.d.ts.map +1 -0
  68. package/dist-esm/samples-dev/volumeSnapshotsListByVolumeGroupSample.js +102 -0
  69. package/dist-esm/samples-dev/volumeSnapshotsListByVolumeGroupSample.js.map +1 -0
  70. package/dist-esm/samples-dev/volumesCreateSample.js +25 -18
  71. package/dist-esm/samples-dev/volumesCreateSample.js.map +1 -1
  72. package/dist-esm/samples-dev/volumesDeleteSample.js +28 -15
  73. package/dist-esm/samples-dev/volumesDeleteSample.js.map +1 -1
  74. package/dist-esm/samples-dev/volumesGetSample.js +21 -14
  75. package/dist-esm/samples-dev/volumesGetSample.js.map +1 -1
  76. package/dist-esm/samples-dev/volumesListByVolumeGroupSample.js +43 -22
  77. package/dist-esm/samples-dev/volumesListByVolumeGroupSample.js.map +1 -1
  78. package/dist-esm/samples-dev/volumesUpdateSample.js +22 -18
  79. package/dist-esm/samples-dev/volumesUpdateSample.js.map +1 -1
  80. package/dist-esm/src/elasticSanManagement.d.ts +4 -1
  81. package/dist-esm/src/elasticSanManagement.d.ts.map +1 -1
  82. package/dist-esm/src/elasticSanManagement.js +9 -9
  83. package/dist-esm/src/elasticSanManagement.js.map +1 -1
  84. package/dist-esm/src/index.d.ts +1 -0
  85. package/dist-esm/src/index.d.ts.map +1 -1
  86. package/dist-esm/src/index.js +1 -0
  87. package/dist-esm/src/index.js.map +1 -1
  88. package/dist-esm/src/lroImpl.d.ts +6 -11
  89. package/dist-esm/src/lroImpl.d.ts.map +1 -1
  90. package/dist-esm/src/lroImpl.js +12 -20
  91. package/dist-esm/src/lroImpl.js.map +1 -1
  92. package/dist-esm/src/models/index.d.ts +613 -135
  93. package/dist-esm/src/models/index.d.ts.map +1 -1
  94. package/dist-esm/src/models/index.js +84 -0
  95. package/dist-esm/src/models/index.js.map +1 -1
  96. package/dist-esm/src/models/mappers.d.ts +30 -6
  97. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  98. package/dist-esm/src/models/mappers.js +704 -133
  99. package/dist-esm/src/models/mappers.js.map +1 -1
  100. package/dist-esm/src/models/parameters.d.ts +6 -0
  101. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  102. package/dist-esm/src/models/parameters.js +53 -3
  103. package/dist-esm/src/models/parameters.js.map +1 -1
  104. package/dist-esm/src/operations/elasticSans.d.ts +4 -4
  105. package/dist-esm/src/operations/elasticSans.d.ts.map +1 -1
  106. package/dist-esm/src/operations/elasticSans.js +98 -51
  107. package/dist-esm/src/operations/elasticSans.js.map +1 -1
  108. package/dist-esm/src/operations/index.d.ts +3 -0
  109. package/dist-esm/src/operations/index.d.ts.map +1 -1
  110. package/dist-esm/src/operations/index.js +3 -0
  111. package/dist-esm/src/operations/index.js.map +1 -1
  112. package/dist-esm/src/operations/operations.d.ts +2 -2
  113. package/dist-esm/src/operations/operations.d.ts.map +1 -1
  114. package/dist-esm/src/operations/operations.js +22 -11
  115. package/dist-esm/src/operations/operations.js.map +1 -1
  116. package/dist-esm/src/operations/privateEndpointConnections.d.ts +73 -0
  117. package/dist-esm/src/operations/privateEndpointConnections.d.ts.map +1 -0
  118. package/dist-esm/src/operations/privateEndpointConnections.js +334 -0
  119. package/dist-esm/src/operations/privateEndpointConnections.js.map +1 -0
  120. package/dist-esm/src/operations/privateLinkResources.d.ts +20 -0
  121. package/dist-esm/src/operations/privateLinkResources.d.ts.map +1 -0
  122. package/dist-esm/src/operations/privateLinkResources.js +53 -0
  123. package/dist-esm/src/operations/privateLinkResources.js.map +1 -0
  124. package/dist-esm/src/operations/skus.d.ts.map +1 -1
  125. package/dist-esm/src/operations/skus.js +21 -10
  126. package/dist-esm/src/operations/skus.js.map +1 -1
  127. package/dist-esm/src/operations/volumeGroups.d.ts +4 -4
  128. package/dist-esm/src/operations/volumeGroups.d.ts.map +1 -1
  129. package/dist-esm/src/operations/volumeGroups.js +78 -48
  130. package/dist-esm/src/operations/volumeGroups.js.map +1 -1
  131. package/dist-esm/src/operations/volumeSnapshots.d.ts +89 -0
  132. package/dist-esm/src/operations/volumeSnapshots.d.ts.map +1 -0
  133. package/dist-esm/src/operations/volumeSnapshots.js +395 -0
  134. package/dist-esm/src/operations/volumeSnapshots.js.map +1 -0
  135. package/dist-esm/src/operations/volumes.d.ts +4 -4
  136. package/dist-esm/src/operations/volumes.d.ts.map +1 -1
  137. package/dist-esm/src/operations/volumes.js +91 -57
  138. package/dist-esm/src/operations/volumes.js.map +1 -1
  139. package/dist-esm/src/operationsInterfaces/elasticSans.d.ts +4 -4
  140. package/dist-esm/src/operationsInterfaces/elasticSans.d.ts.map +1 -1
  141. package/dist-esm/src/operationsInterfaces/index.d.ts +3 -0
  142. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -1
  143. package/dist-esm/src/operationsInterfaces/index.js +3 -0
  144. package/dist-esm/src/operationsInterfaces/index.js.map +1 -1
  145. package/dist-esm/src/operationsInterfaces/operations.d.ts +2 -2
  146. package/dist-esm/src/operationsInterfaces/operations.d.ts.map +1 -1
  147. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts +56 -0
  148. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts.map +1 -0
  149. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.js +9 -0
  150. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.js.map +1 -0
  151. package/dist-esm/src/operationsInterfaces/privateLinkResources.d.ts +12 -0
  152. package/dist-esm/src/operationsInterfaces/privateLinkResources.d.ts.map +1 -0
  153. package/dist-esm/src/operationsInterfaces/privateLinkResources.js +9 -0
  154. package/dist-esm/src/operationsInterfaces/privateLinkResources.js.map +1 -0
  155. package/dist-esm/src/operationsInterfaces/volumeGroups.d.ts +4 -4
  156. package/dist-esm/src/operationsInterfaces/volumeGroups.d.ts.map +1 -1
  157. package/dist-esm/src/operationsInterfaces/volumeSnapshots.d.ts +62 -0
  158. package/dist-esm/src/operationsInterfaces/volumeSnapshots.d.ts.map +1 -0
  159. package/dist-esm/src/operationsInterfaces/volumeSnapshots.js +9 -0
  160. package/dist-esm/src/operationsInterfaces/volumeSnapshots.js.map +1 -0
  161. package/dist-esm/src/operationsInterfaces/volumes.d.ts +4 -4
  162. package/dist-esm/src/operationsInterfaces/volumes.d.ts.map +1 -1
  163. package/dist-esm/src/pagingHelper.d.ts +13 -0
  164. package/dist-esm/src/pagingHelper.d.ts.map +1 -0
  165. package/dist-esm/src/pagingHelper.js +32 -0
  166. package/dist-esm/src/pagingHelper.js.map +1 -0
  167. package/dist-esm/test/elasticsan_examples.spec.js +12 -5
  168. package/dist-esm/test/elasticsan_examples.spec.js.map +1 -1
  169. package/package.json +18 -23
  170. package/review/arm-elasticsan.api.md +416 -66
  171. package/src/elasticSanManagement.ts +20 -9
  172. package/src/index.ts +1 -0
  173. package/src/lroImpl.ts +31 -23
  174. package/src/models/index.ts +648 -109
  175. package/src/models/mappers.ts +749 -130
  176. package/src/models/parameters.ts +61 -3
  177. package/src/operations/elasticSans.ts +97 -60
  178. package/src/operations/index.ts +3 -0
  179. package/src/operations/operations.ts +16 -11
  180. package/src/operations/privateEndpointConnections.ts +450 -0
  181. package/src/operations/privateLinkResources.ts +72 -0
  182. package/src/operations/skus.ts +11 -6
  183. package/src/operations/volumeGroups.ts +76 -53
  184. package/src/operations/volumeSnapshots.ts +551 -0
  185. package/src/operations/volumes.ts +87 -54
  186. package/src/operationsInterfaces/elasticSans.ts +6 -6
  187. package/src/operationsInterfaces/index.ts +3 -0
  188. package/src/operationsInterfaces/operations.ts +2 -2
  189. package/src/operationsInterfaces/privateEndpointConnections.ts +109 -0
  190. package/src/operationsInterfaces/privateLinkResources.ts +27 -0
  191. package/src/operationsInterfaces/volumeGroups.ts +6 -6
  192. package/src/operationsInterfaces/volumeSnapshots.ts +121 -0
  193. package/src/operationsInterfaces/volumes.ts +10 -4
  194. package/src/pagingHelper.ts +39 -0
  195. package/types/arm-elasticsan.d.ts +784 -112
  196. package/types/tsdoc-metadata.json +1 -1
  197. package/rollup.config.js +0 -122
@@ -1,44 +1,72 @@
1
1
  import * as coreClient from "@azure/core-client";
2
- /** List of operations supported by the RP. */
3
- export interface ElasticSanOperationListResult {
4
- /** An array of operations supported by the ElasticSan RP. */
5
- value: ElasticSanRPOperation[];
6
- /** URI to fetch the next section of the paginated response. */
7
- nextLink?: string;
2
+ /** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */
3
+ export interface OperationListResult {
4
+ /**
5
+ * List of operations supported by the resource provider
6
+ * NOTE: This property will not be serialized. It can only be populated by the server.
7
+ */
8
+ readonly value?: Operation[];
9
+ /**
10
+ * URL to get the next set of operation list results (if there are any).
11
+ * NOTE: This property will not be serialized. It can only be populated by the server.
12
+ */
13
+ readonly nextLink?: string;
8
14
  }
9
- /** Description of a ElasticSan RP Operation */
10
- export interface ElasticSanRPOperation {
11
- /** The name of the operation being performed on this particular object */
12
- name: string;
15
+ /** Details of a REST API operation, returned from the Resource Provider Operations API */
16
+ export interface Operation {
17
+ /**
18
+ * The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action"
19
+ * NOTE: This property will not be serialized. It can only be populated by the server.
20
+ */
21
+ readonly name?: string;
13
22
  /**
14
- * Indicates whether the operation applies to data-plane.
23
+ * Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane operations.
15
24
  * NOTE: This property will not be serialized. It can only be populated by the server.
16
25
  */
17
26
  readonly isDataAction?: boolean;
27
+ /** Localized display information for this particular operation. */
28
+ display?: OperationDisplay;
18
29
  /**
19
- * Additional metadata about RP operation.
30
+ * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system"
20
31
  * NOTE: This property will not be serialized. It can only be populated by the server.
21
32
  */
22
- readonly display?: ElasticSanOperationDisplay;
23
- }
24
- /** Metadata about an operation. */
25
- export interface ElasticSanOperationDisplay {
26
- /** Localized friendly form of the resource provider name. */
27
- provider: string;
28
- /** Localized friendly form of the resource type related to this action/operation. */
29
- resource: string;
30
- /** Localized friendly name for the operation, as it should be shown to the user. */
31
- operation: string;
32
- /** Localized friendly description for the operation, as it should be shown to the user. */
33
- description: string;
33
+ readonly origin?: Origin;
34
+ /**
35
+ * Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
36
+ * NOTE: This property will not be serialized. It can only be populated by the server.
37
+ */
38
+ readonly actionType?: ActionType;
34
39
  }
35
- /** The resource management error response. */
36
- export interface ErrorModel {
37
- /** RP error response. */
38
- error?: ErrorResponse;
40
+ /** Localized display information for this particular operation. */
41
+ export interface OperationDisplay {
42
+ /**
43
+ * The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute".
44
+ * NOTE: This property will not be serialized. It can only be populated by the server.
45
+ */
46
+ readonly provider?: string;
47
+ /**
48
+ * The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections".
49
+ * NOTE: This property will not be serialized. It can only be populated by the server.
50
+ */
51
+ readonly resource?: string;
52
+ /**
53
+ * The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine".
54
+ * NOTE: This property will not be serialized. It can only be populated by the server.
55
+ */
56
+ readonly operation?: string;
57
+ /**
58
+ * The short, localized friendly description of the operation; suitable for tool tips and detailed views.
59
+ * NOTE: This property will not be serialized. It can only be populated by the server.
60
+ */
61
+ readonly description?: string;
39
62
  }
40
- /** The resource management error response. */
63
+ /** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */
41
64
  export interface ErrorResponse {
65
+ /** The error object. */
66
+ error?: ErrorDetail;
67
+ }
68
+ /** The error detail. */
69
+ export interface ErrorDetail {
42
70
  /**
43
71
  * The error code.
44
72
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -58,7 +86,7 @@ export interface ErrorResponse {
58
86
  * The error details.
59
87
  * NOTE: This property will not be serialized. It can only be populated by the server.
60
88
  */
61
- readonly details?: ErrorResponse[];
89
+ readonly details?: ErrorDetail[];
62
90
  /**
63
91
  * The error additional info.
64
92
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -85,6 +113,11 @@ export interface SkuInformationList {
85
113
  * NOTE: This property will not be serialized. It can only be populated by the server.
86
114
  */
87
115
  readonly value?: SkuInformation[];
116
+ /**
117
+ * URI to fetch the next section of the paginated response.
118
+ * NOTE: This property will not be serialized. It can only be populated by the server.
119
+ */
120
+ readonly nextLink?: string;
88
121
  }
89
122
  /** ElasticSAN SKU and its properties */
90
123
  export interface SkuInformation {
@@ -142,7 +175,7 @@ export interface SKUCapability {
142
175
  /** List of Elastic Sans */
143
176
  export interface ElasticSanList {
144
177
  /** An array of Elastic San objects. */
145
- value: ElasticSan[];
178
+ value?: ElasticSan[];
146
179
  /**
147
180
  * URI to fetch the next section of the paginated response.
148
181
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -156,42 +189,60 @@ export interface Sku {
156
189
  /** The sku tier. */
157
190
  tier?: SkuTier;
158
191
  }
159
- /** Metadata pertaining to creation and last modification of the resource. */
160
- export interface SystemData {
161
- /** The identity that created the resource. */
162
- createdBy?: string;
163
- /** The type of identity that created the resource. */
164
- createdByType?: CreatedByType;
165
- /** The timestamp of resource creation (UTC). */
166
- createdAt?: Date;
167
- /** The identity that last modified the resource. */
168
- lastModifiedBy?: string;
169
- /** The type of identity that last modified the resource. */
170
- lastModifiedByType?: CreatedByType;
171
- /** The timestamp of resource last modification (UTC) */
172
- lastModifiedAt?: Date;
192
+ /** Response for PrivateEndpoint */
193
+ export interface PrivateEndpoint {
194
+ /**
195
+ * The ARM identifier for Private Endpoint
196
+ * NOTE: This property will not be serialized. It can only be populated by the server.
197
+ */
198
+ readonly id?: string;
199
+ }
200
+ /** Response for Private Link Service Connection state */
201
+ export interface PrivateLinkServiceConnectionState {
202
+ /** Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. */
203
+ status?: PrivateEndpointServiceConnectionStatus;
204
+ /** The reason for approval/rejection of the connection. */
205
+ description?: string;
206
+ /** A message indicating if changes on the service provider require any updates on the consumer. */
207
+ actionsRequired?: string;
173
208
  }
174
- /** The resource model definition. */
209
+ /** Common fields that are returned in the response for all Azure Resource Manager resources */
175
210
  export interface Resource {
176
211
  /**
177
- * Azure resource identifier.
212
+ * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
178
213
  * NOTE: This property will not be serialized. It can only be populated by the server.
179
214
  */
180
215
  readonly id?: string;
181
216
  /**
182
- * Azure resource name.
217
+ * The name of the resource
183
218
  * NOTE: This property will not be serialized. It can only be populated by the server.
184
219
  */
185
220
  readonly name?: string;
186
221
  /**
187
- * Azure resource type.
222
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
188
223
  * NOTE: This property will not be serialized. It can only be populated by the server.
189
224
  */
190
225
  readonly type?: string;
191
- /** Azure resource tags. */
192
- tags?: {
193
- [propertyName: string]: string;
194
- };
226
+ /**
227
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
228
+ * NOTE: This property will not be serialized. It can only be populated by the server.
229
+ */
230
+ readonly systemData?: SystemData;
231
+ }
232
+ /** Metadata pertaining to creation and last modification of the resource. */
233
+ export interface SystemData {
234
+ /** The identity that created the resource. */
235
+ createdBy?: string;
236
+ /** The type of identity that created the resource. */
237
+ createdByType?: CreatedByType;
238
+ /** The timestamp of resource creation (UTC). */
239
+ createdAt?: Date;
240
+ /** The identity that last modified the resource. */
241
+ lastModifiedBy?: string;
242
+ /** The type of identity that last modified the resource. */
243
+ lastModifiedByType?: CreatedByType;
244
+ /** The timestamp of resource last modification (UTC) */
245
+ lastModifiedAt?: Date;
195
246
  }
196
247
  /** Response for ElasticSan update request. */
197
248
  export interface ElasticSanUpdate {
@@ -203,17 +254,87 @@ export interface ElasticSanUpdate {
203
254
  baseSizeTiB?: number;
204
255
  /** Extended size of the Elastic San appliance in TiB. */
205
256
  extendedCapacitySizeTiB?: number;
257
+ /** Allow or disallow public network access to ElasticSan Account. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. */
258
+ publicNetworkAccess?: PublicNetworkAccess;
206
259
  }
207
260
  /** List of Volume Groups */
208
261
  export interface VolumeGroupList {
209
262
  /** An array of Volume Groups objects. */
210
- value: VolumeGroup[];
263
+ value?: VolumeGroup[];
211
264
  /**
212
265
  * URI to fetch the next section of the paginated response.
213
266
  * NOTE: This property will not be serialized. It can only be populated by the server.
214
267
  */
215
268
  readonly nextLink?: string;
216
269
  }
270
+ /** Identity for the resource. */
271
+ export interface Identity {
272
+ /**
273
+ * The principal ID of resource identity.
274
+ * NOTE: This property will not be serialized. It can only be populated by the server.
275
+ */
276
+ readonly principalId?: string;
277
+ /**
278
+ * The tenant ID of resource.
279
+ * NOTE: This property will not be serialized. It can only be populated by the server.
280
+ */
281
+ readonly tenantId?: string;
282
+ /** The identity type. */
283
+ type: IdentityType;
284
+ /** Gets or sets a list of key value pairs that describe the set of User Assigned identities that will be used with this volume group. The key is the ARM resource identifier of the identity. */
285
+ userAssignedIdentities?: {
286
+ [propertyName: string]: UserAssignedIdentity;
287
+ };
288
+ }
289
+ /** UserAssignedIdentity for the resource. */
290
+ export interface UserAssignedIdentity {
291
+ /**
292
+ * The principal ID of the identity.
293
+ * NOTE: This property will not be serialized. It can only be populated by the server.
294
+ */
295
+ readonly principalId?: string;
296
+ /**
297
+ * The client ID of the identity.
298
+ * NOTE: This property will not be serialized. It can only be populated by the server.
299
+ */
300
+ readonly clientId?: string;
301
+ }
302
+ /** The encryption settings on the volume group. */
303
+ export interface EncryptionProperties {
304
+ /** Properties provided by key vault. */
305
+ keyVaultProperties?: KeyVaultProperties;
306
+ /** The identity to be used with service-side encryption at rest. */
307
+ encryptionIdentity?: EncryptionIdentity;
308
+ }
309
+ /** Properties of key vault. */
310
+ export interface KeyVaultProperties {
311
+ /** The name of KeyVault key. */
312
+ keyName?: string;
313
+ /** The version of KeyVault key. */
314
+ keyVersion?: string;
315
+ /** The Uri of KeyVault. */
316
+ keyVaultUri?: string;
317
+ /**
318
+ * The object identifier of the current versioned Key Vault Key in use.
319
+ * NOTE: This property will not be serialized. It can only be populated by the server.
320
+ */
321
+ readonly currentVersionedKeyIdentifier?: string;
322
+ /**
323
+ * Timestamp of last rotation of the Key Vault Key.
324
+ * NOTE: This property will not be serialized. It can only be populated by the server.
325
+ */
326
+ readonly lastKeyRotationTimestamp?: Date;
327
+ /**
328
+ * This is a read only property that represents the expiration time of the current version of the customer managed key used for encryption.
329
+ * NOTE: This property will not be serialized. It can only be populated by the server.
330
+ */
331
+ readonly currentVersionedKeyExpirationTimestamp?: Date;
332
+ }
333
+ /** Encryption identity for the volume group. */
334
+ export interface EncryptionIdentity {
335
+ /** Resource identifier of the UserAssigned identity to be associated with server-side encryption on the volume group. */
336
+ encryptionUserAssignedIdentity?: string;
337
+ }
217
338
  /** A set of rules governing the network accessibility. */
218
339
  export interface NetworkRuleSet {
219
340
  /** The list of virtual network rules. */
@@ -224,32 +345,27 @@ export interface VirtualNetworkRule {
224
345
  /** Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}. */
225
346
  virtualNetworkResourceId: string;
226
347
  /** The action of virtual network rule. */
227
- action?: "Allow";
228
- /**
229
- * Gets the state of virtual network rule.
230
- * NOTE: This property will not be serialized. It can only be populated by the server.
231
- */
232
- readonly state?: State;
348
+ action?: Action;
233
349
  }
234
350
  /** Volume Group request. */
235
351
  export interface VolumeGroupUpdate {
236
- /** Resource tags. */
237
- tags?: {
238
- [propertyName: string]: string;
239
- };
352
+ /** The identity of the resource. */
353
+ identity?: Identity;
240
354
  /** Type of storage target */
241
355
  protocolType?: StorageTargetType;
242
356
  /** Type of encryption */
243
357
  encryption?: EncryptionType;
358
+ /** Encryption Properties describing Key Vault and Identity information */
359
+ encryptionProperties?: EncryptionProperties;
244
360
  /** A collection of rules governing the accessibility from specific network locations. */
245
361
  networkAcls?: NetworkRuleSet;
246
362
  }
247
363
  /** Data source used when creating the volume. */
248
364
  export interface SourceCreationData {
249
365
  /** This enumerates the possible sources of a volume creation. */
250
- createSource?: "None";
251
- /** If createOption is Copy, this is the ARM id of the source snapshot or disk. If createOption is Restore, this is the ARM-like id of the source disk restore point. */
252
- sourceUri?: string;
366
+ createSource?: VolumeCreateOption;
367
+ /** Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" */
368
+ sourceId?: string;
253
369
  }
254
370
  /** Iscsi target information */
255
371
  export interface IscsiTargetInfo {
@@ -276,78 +392,106 @@ export interface IscsiTargetInfo {
276
392
  /** Operational status of the iSCSI Target. */
277
393
  status?: OperationalStatus;
278
394
  }
395
+ /** Parent resource information. */
396
+ export interface ManagedByInfo {
397
+ /** Resource ID of the resource managing the volume, this is a restricted field and can only be set for internal use. */
398
+ resourceId?: string;
399
+ }
279
400
  /** Response for Volume request. */
280
401
  export interface VolumeUpdate {
281
- /** Resource tags. */
282
- tags?: {
283
- [propertyName: string]: string;
284
- };
285
402
  /** Volume size. */
286
403
  sizeGiB?: number;
404
+ /** Parent resource information. */
405
+ managedBy?: ManagedByInfo;
287
406
  }
288
407
  /** List of Volumes */
289
408
  export interface VolumeList {
290
409
  /** An array of Volume objects. */
291
- value: Volume[];
410
+ value?: Volume[];
292
411
  /**
293
412
  * URI to fetch the next section of the paginated response.
294
413
  * NOTE: This property will not be serialized. It can only be populated by the server.
295
414
  */
296
415
  readonly nextLink?: string;
297
416
  }
298
- /** The resource model definition for a ARM tracked top level resource. */
299
- export interface TrackedResource extends Resource {
300
- /** The geo-location where the resource lives. */
301
- location?: string;
417
+ /** List of private endpoint connections associated with SAN */
418
+ export interface PrivateEndpointConnectionListResult {
419
+ /** Array of private endpoint connections */
420
+ value?: PrivateEndpointConnection[];
421
+ /**
422
+ * URI to fetch the next section of the paginated response.
423
+ * NOTE: This property will not be serialized. It can only be populated by the server.
424
+ */
425
+ readonly nextLink?: string;
302
426
  }
303
- /** Response for Volume Group request. */
304
- export interface VolumeGroup extends Resource {
427
+ /** A list of private link resources */
428
+ export interface PrivateLinkResourceListResult {
429
+ /** Array of private link resources */
430
+ value?: PrivateLinkResource[];
305
431
  /**
306
- * Resource metadata required by ARM RPC
432
+ * URI to fetch the next section of the paginated response.
307
433
  * NOTE: This property will not be serialized. It can only be populated by the server.
308
434
  */
309
- readonly systemData?: SystemData;
435
+ readonly nextLink?: string;
436
+ }
437
+ /** List of Snapshots */
438
+ export interface SnapshotList {
439
+ /** An array of Snapshot objects. */
440
+ value?: Snapshot[];
310
441
  /**
311
- * State of the operation on the resource.
442
+ * URI to fetch the next section of the paginated response.
312
443
  * NOTE: This property will not be serialized. It can only be populated by the server.
313
444
  */
314
- readonly provisioningState?: ProvisioningStates;
315
- /** Type of storage target */
316
- protocolType?: StorageTargetType;
317
- /** Type of encryption */
318
- encryption?: EncryptionType;
319
- /** A collection of rules governing the accessibility from specific network locations. */
320
- networkAcls?: NetworkRuleSet;
445
+ readonly nextLink?: string;
321
446
  }
322
- /** Response for Volume request. */
323
- export interface Volume extends Resource {
447
+ /** Data used when creating a volume snapshot. */
448
+ export interface SnapshotCreationData {
449
+ /** Fully qualified resource ID of the volume. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ElasticSan/elasticSans/{elasticSanName}/volumegroups/{volumeGroupName}/volumes/{volumeName}" */
450
+ sourceId: string;
451
+ }
452
+ /** Response for PrivateEndpoint Connection object */
453
+ export interface PrivateEndpointConnection extends Resource {
324
454
  /**
325
- * Resource metadata required by ARM RPC
455
+ * Provisioning State of Private Endpoint connection resource
326
456
  * NOTE: This property will not be serialized. It can only be populated by the server.
327
457
  */
328
- readonly systemData?: SystemData;
458
+ readonly provisioningState?: ProvisioningStates;
459
+ /** Private Endpoint resource */
460
+ privateEndpoint?: PrivateEndpoint;
461
+ /** Private Link Service Connection State. */
462
+ privateLinkServiceConnectionState: PrivateLinkServiceConnectionState;
463
+ /** List of resources private endpoint is mapped */
464
+ groupIds?: string[];
465
+ }
466
+ /** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */
467
+ export interface TrackedResource extends Resource {
468
+ /** Resource tags. */
469
+ tags?: {
470
+ [propertyName: string]: string;
471
+ };
472
+ /** The geo-location where the resource lives */
473
+ location: string;
474
+ }
475
+ /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
476
+ export interface ProxyResource extends Resource {
477
+ }
478
+ /** A private link resource */
479
+ export interface PrivateLinkResource extends Resource {
329
480
  /**
330
- * Unique Id of the volume in GUID format
481
+ * The private link resource group id.
331
482
  * NOTE: This property will not be serialized. It can only be populated by the server.
332
483
  */
333
- readonly volumeId?: string;
334
- /** State of the operation on the resource. */
335
- creationData?: SourceCreationData;
336
- /** Volume size. */
337
- sizeGiB?: number;
484
+ readonly groupId?: string;
338
485
  /**
339
- * Storage target information
486
+ * The private link resource required member names.
340
487
  * NOTE: This property will not be serialized. It can only be populated by the server.
341
488
  */
342
- readonly storageTarget?: IscsiTargetInfo;
489
+ readonly requiredMembers?: string[];
490
+ /** The private link resource Private link DNS zone name. */
491
+ requiredZoneNames?: string[];
343
492
  }
344
493
  /** Response for ElasticSan request. */
345
494
  export interface ElasticSan extends TrackedResource {
346
- /**
347
- * Resource metadata required by ARM RPC
348
- * NOTE: This property will not be serialized. It can only be populated by the server.
349
- */
350
- readonly systemData?: SystemData;
351
495
  /** resource sku */
352
496
  sku: Sku;
353
497
  /** Logical zone for Elastic San resource; example: ["1"]. */
@@ -386,7 +530,145 @@ export interface ElasticSan extends TrackedResource {
386
530
  * NOTE: This property will not be serialized. It can only be populated by the server.
387
531
  */
388
532
  readonly totalSizeTiB?: number;
533
+ /**
534
+ * The list of Private Endpoint Connections.
535
+ * NOTE: This property will not be serialized. It can only be populated by the server.
536
+ */
537
+ readonly privateEndpointConnections?: PrivateEndpointConnection[];
538
+ /** Allow or disallow public network access to ElasticSan. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. */
539
+ publicNetworkAccess?: PublicNetworkAccess;
389
540
  }
541
+ /** Response for Volume Group request. */
542
+ export interface VolumeGroup extends ProxyResource {
543
+ /** The identity of the resource. */
544
+ identity?: Identity;
545
+ /**
546
+ * State of the operation on the resource.
547
+ * NOTE: This property will not be serialized. It can only be populated by the server.
548
+ */
549
+ readonly provisioningState?: ProvisioningStates;
550
+ /** Type of storage target */
551
+ protocolType?: StorageTargetType;
552
+ /** Type of encryption */
553
+ encryption?: EncryptionType;
554
+ /** Encryption Properties describing Key Vault and Identity information */
555
+ encryptionProperties?: EncryptionProperties;
556
+ /** A collection of rules governing the accessibility from specific network locations. */
557
+ networkAcls?: NetworkRuleSet;
558
+ /**
559
+ * The list of Private Endpoint Connections.
560
+ * NOTE: This property will not be serialized. It can only be populated by the server.
561
+ */
562
+ readonly privateEndpointConnections?: PrivateEndpointConnection[];
563
+ }
564
+ /** Response for Volume request. */
565
+ export interface Volume extends ProxyResource {
566
+ /**
567
+ * Unique Id of the volume in GUID format
568
+ * NOTE: This property will not be serialized. It can only be populated by the server.
569
+ */
570
+ readonly volumeId?: string;
571
+ /** State of the operation on the resource. */
572
+ creationData?: SourceCreationData;
573
+ /** Volume size. */
574
+ sizeGiB: number;
575
+ /**
576
+ * Storage target information
577
+ * NOTE: This property will not be serialized. It can only be populated by the server.
578
+ */
579
+ readonly storageTarget?: IscsiTargetInfo;
580
+ /** Parent resource information. */
581
+ managedBy?: ManagedByInfo;
582
+ /**
583
+ * State of the operation on the resource.
584
+ * NOTE: This property will not be serialized. It can only be populated by the server.
585
+ */
586
+ readonly provisioningState?: ProvisioningStates;
587
+ }
588
+ /** Response for Volume Snapshot request. */
589
+ export interface Snapshot extends ProxyResource {
590
+ /** Data used when creating a volume snapshot. */
591
+ creationData: SnapshotCreationData;
592
+ /**
593
+ * State of the operation on the resource.
594
+ * NOTE: This property will not be serialized. It can only be populated by the server.
595
+ */
596
+ readonly provisioningState?: ProvisioningStates;
597
+ /**
598
+ * Size of Source Volume
599
+ * NOTE: This property will not be serialized. It can only be populated by the server.
600
+ */
601
+ readonly sourceVolumeSizeGiB?: number;
602
+ /**
603
+ * Source Volume Name of a snapshot
604
+ * NOTE: This property will not be serialized. It can only be populated by the server.
605
+ */
606
+ readonly volumeName?: string;
607
+ }
608
+ /** Defines headers for ElasticSans_update operation. */
609
+ export interface ElasticSansUpdateHeaders {
610
+ location?: string;
611
+ }
612
+ /** Defines headers for ElasticSans_delete operation. */
613
+ export interface ElasticSansDeleteHeaders {
614
+ location?: string;
615
+ }
616
+ /** Defines headers for VolumeGroups_update operation. */
617
+ export interface VolumeGroupsUpdateHeaders {
618
+ location?: string;
619
+ }
620
+ /** Defines headers for VolumeGroups_delete operation. */
621
+ export interface VolumeGroupsDeleteHeaders {
622
+ location?: string;
623
+ }
624
+ /** Defines headers for Volumes_update operation. */
625
+ export interface VolumesUpdateHeaders {
626
+ location?: string;
627
+ }
628
+ /** Defines headers for Volumes_delete operation. */
629
+ export interface VolumesDeleteHeaders {
630
+ location?: string;
631
+ }
632
+ /** Defines headers for PrivateEndpointConnections_delete operation. */
633
+ export interface PrivateEndpointConnectionsDeleteHeaders {
634
+ location?: string;
635
+ }
636
+ /** Defines headers for VolumeSnapshots_delete operation. */
637
+ export interface VolumeSnapshotsDeleteHeaders {
638
+ location?: string;
639
+ }
640
+ /** Known values of {@link Origin} that the service accepts. */
641
+ export declare enum KnownOrigin {
642
+ /** User */
643
+ User = "user",
644
+ /** System */
645
+ System = "system",
646
+ /** UserSystem */
647
+ UserSystem = "user,system"
648
+ }
649
+ /**
650
+ * Defines values for Origin. \
651
+ * {@link KnownOrigin} can be used interchangeably with Origin,
652
+ * this enum contains the known values that the service supports.
653
+ * ### Known values supported by the service
654
+ * **user** \
655
+ * **system** \
656
+ * **user,system**
657
+ */
658
+ export type Origin = string;
659
+ /** Known values of {@link ActionType} that the service accepts. */
660
+ export declare enum KnownActionType {
661
+ /** Internal */
662
+ Internal = "Internal"
663
+ }
664
+ /**
665
+ * Defines values for ActionType. \
666
+ * {@link KnownActionType} can be used interchangeably with ActionType,
667
+ * this enum contains the known values that the service supports.
668
+ * ### Known values supported by the service
669
+ * **Internal**
670
+ */
671
+ export type ActionType = string;
390
672
  /** Known values of {@link SkuName} that the service accepts. */
391
673
  export declare enum KnownSkuName {
392
674
  /** Premium locally redundant storage */
@@ -402,7 +684,7 @@ export declare enum KnownSkuName {
402
684
  * **Premium_LRS**: Premium locally redundant storage \
403
685
  * **Premium_ZRS**: Premium zone redundant storage
404
686
  */
405
- export declare type SkuName = string;
687
+ export type SkuName = string;
406
688
  /** Known values of {@link SkuTier} that the service accepts. */
407
689
  export declare enum KnownSkuTier {
408
690
  /** Premium Tier */
@@ -415,7 +697,7 @@ export declare enum KnownSkuTier {
415
697
  * ### Known values supported by the service
416
698
  * **Premium**: Premium Tier
417
699
  */
418
- export declare type SkuTier = string;
700
+ export type SkuTier = string;
419
701
  /** Known values of {@link ProvisioningStates} that the service accepts. */
420
702
  export declare enum KnownProvisioningStates {
421
703
  /** Invalid */
@@ -449,7 +731,29 @@ export declare enum KnownProvisioningStates {
449
731
  * **Updating** \
450
732
  * **Deleting**
451
733
  */
452
- export declare type ProvisioningStates = string;
734
+ export type ProvisioningStates = string;
735
+ /** Known values of {@link PrivateEndpointServiceConnectionStatus} that the service accepts. */
736
+ export declare enum KnownPrivateEndpointServiceConnectionStatus {
737
+ /** Pending */
738
+ Pending = "Pending",
739
+ /** Approved */
740
+ Approved = "Approved",
741
+ /** Failed */
742
+ Failed = "Failed",
743
+ /** Rejected */
744
+ Rejected = "Rejected"
745
+ }
746
+ /**
747
+ * Defines values for PrivateEndpointServiceConnectionStatus. \
748
+ * {@link KnownPrivateEndpointServiceConnectionStatus} can be used interchangeably with PrivateEndpointServiceConnectionStatus,
749
+ * this enum contains the known values that the service supports.
750
+ * ### Known values supported by the service
751
+ * **Pending** \
752
+ * **Approved** \
753
+ * **Failed** \
754
+ * **Rejected**
755
+ */
756
+ export type PrivateEndpointServiceConnectionStatus = string;
453
757
  /** Known values of {@link CreatedByType} that the service accepts. */
454
758
  export declare enum KnownCreatedByType {
455
759
  /** User */
@@ -471,7 +775,42 @@ export declare enum KnownCreatedByType {
471
775
  * **ManagedIdentity** \
472
776
  * **Key**
473
777
  */
474
- export declare type CreatedByType = string;
778
+ export type CreatedByType = string;
779
+ /** Known values of {@link PublicNetworkAccess} that the service accepts. */
780
+ export declare enum KnownPublicNetworkAccess {
781
+ /** Enabled */
782
+ Enabled = "Enabled",
783
+ /** Disabled */
784
+ Disabled = "Disabled"
785
+ }
786
+ /**
787
+ * Defines values for PublicNetworkAccess. \
788
+ * {@link KnownPublicNetworkAccess} can be used interchangeably with PublicNetworkAccess,
789
+ * this enum contains the known values that the service supports.
790
+ * ### Known values supported by the service
791
+ * **Enabled** \
792
+ * **Disabled**
793
+ */
794
+ export type PublicNetworkAccess = string;
795
+ /** Known values of {@link IdentityType} that the service accepts. */
796
+ export declare enum KnownIdentityType {
797
+ /** None */
798
+ None = "None",
799
+ /** SystemAssigned */
800
+ SystemAssigned = "SystemAssigned",
801
+ /** UserAssigned */
802
+ UserAssigned = "UserAssigned"
803
+ }
804
+ /**
805
+ * Defines values for IdentityType. \
806
+ * {@link KnownIdentityType} can be used interchangeably with IdentityType,
807
+ * this enum contains the known values that the service supports.
808
+ * ### Known values supported by the service
809
+ * **None** \
810
+ * **SystemAssigned** \
811
+ * **UserAssigned**
812
+ */
813
+ export type IdentityType = string;
475
814
  /** Known values of {@link StorageTargetType} that the service accepts. */
476
815
  export declare enum KnownStorageTargetType {
477
816
  /** Iscsi */
@@ -487,20 +826,61 @@ export declare enum KnownStorageTargetType {
487
826
  * **Iscsi** \
488
827
  * **None**
489
828
  */
490
- export declare type StorageTargetType = string;
829
+ export type StorageTargetType = string;
491
830
  /** Known values of {@link EncryptionType} that the service accepts. */
492
831
  export declare enum KnownEncryptionType {
493
832
  /** Volume is encrypted at rest with Platform managed key. It is the default encryption type. */
494
- EncryptionAtRestWithPlatformKey = "EncryptionAtRestWithPlatformKey"
833
+ EncryptionAtRestWithPlatformKey = "EncryptionAtRestWithPlatformKey",
834
+ /** Volume is encrypted at rest with Customer managed key that can be changed and revoked by a customer. */
835
+ EncryptionAtRestWithCustomerManagedKey = "EncryptionAtRestWithCustomerManagedKey"
495
836
  }
496
837
  /**
497
838
  * Defines values for EncryptionType. \
498
839
  * {@link KnownEncryptionType} can be used interchangeably with EncryptionType,
499
840
  * this enum contains the known values that the service supports.
500
841
  * ### Known values supported by the service
501
- * **EncryptionAtRestWithPlatformKey**: Volume is encrypted at rest with Platform managed key. It is the default encryption type.
842
+ * **EncryptionAtRestWithPlatformKey**: Volume is encrypted at rest with Platform managed key. It is the default encryption type. \
843
+ * **EncryptionAtRestWithCustomerManagedKey**: Volume is encrypted at rest with Customer managed key that can be changed and revoked by a customer.
844
+ */
845
+ export type EncryptionType = string;
846
+ /** Known values of {@link Action} that the service accepts. */
847
+ export declare enum KnownAction {
848
+ /** Allow */
849
+ Allow = "Allow"
850
+ }
851
+ /**
852
+ * Defines values for Action. \
853
+ * {@link KnownAction} can be used interchangeably with Action,
854
+ * this enum contains the known values that the service supports.
855
+ * ### Known values supported by the service
856
+ * **Allow**
502
857
  */
503
- export declare type EncryptionType = string;
858
+ export type Action = string;
859
+ /** Known values of {@link VolumeCreateOption} that the service accepts. */
860
+ export declare enum KnownVolumeCreateOption {
861
+ /** None */
862
+ None = "None",
863
+ /** VolumeSnapshot */
864
+ VolumeSnapshot = "VolumeSnapshot",
865
+ /** DiskSnapshot */
866
+ DiskSnapshot = "DiskSnapshot",
867
+ /** Disk */
868
+ Disk = "Disk",
869
+ /** DiskRestorePoint */
870
+ DiskRestorePoint = "DiskRestorePoint"
871
+ }
872
+ /**
873
+ * Defines values for VolumeCreateOption. \
874
+ * {@link KnownVolumeCreateOption} can be used interchangeably with VolumeCreateOption,
875
+ * this enum contains the known values that the service supports.
876
+ * ### Known values supported by the service
877
+ * **None** \
878
+ * **VolumeSnapshot** \
879
+ * **DiskSnapshot** \
880
+ * **Disk** \
881
+ * **DiskRestorePoint**
882
+ */
883
+ export type VolumeCreateOption = string;
504
884
  /** Known values of {@link OperationalStatus} that the service accepts. */
505
885
  export declare enum KnownOperationalStatus {
506
886
  /** Invalid */
@@ -534,31 +914,61 @@ export declare enum KnownOperationalStatus {
534
914
  * **Stopped** \
535
915
  * **Stopped (deallocated)**
536
916
  */
537
- export declare type OperationalStatus = string;
538
- /** Defines values for State. */
539
- export declare type State = "provisioning" | "deprovisioning" | "succeeded" | "failed" | "networkSourceDeleted";
917
+ export type OperationalStatus = string;
918
+ /** Known values of {@link XMsDeleteSnapshots} that the service accepts. */
919
+ export declare enum KnownXMsDeleteSnapshots {
920
+ /** True */
921
+ True = "true",
922
+ /** False */
923
+ False = "false"
924
+ }
925
+ /**
926
+ * Defines values for XMsDeleteSnapshots. \
927
+ * {@link KnownXMsDeleteSnapshots} can be used interchangeably with XMsDeleteSnapshots,
928
+ * this enum contains the known values that the service supports.
929
+ * ### Known values supported by the service
930
+ * **true** \
931
+ * **false**
932
+ */
933
+ export type XMsDeleteSnapshots = string;
934
+ /** Known values of {@link XMsForceDelete} that the service accepts. */
935
+ export declare enum KnownXMsForceDelete {
936
+ /** True */
937
+ True = "true",
938
+ /** False */
939
+ False = "false"
940
+ }
941
+ /**
942
+ * Defines values for XMsForceDelete. \
943
+ * {@link KnownXMsForceDelete} can be used interchangeably with XMsForceDelete,
944
+ * this enum contains the known values that the service supports.
945
+ * ### Known values supported by the service
946
+ * **true** \
947
+ * **false**
948
+ */
949
+ export type XMsForceDelete = string;
540
950
  /** Optional parameters. */
541
951
  export interface OperationsListOptionalParams extends coreClient.OperationOptions {
542
952
  }
543
953
  /** Contains response data for the list operation. */
544
- export declare type OperationsListResponse = ElasticSanOperationListResult;
954
+ export type OperationsListResponse = OperationListResult;
545
955
  /** Optional parameters. */
546
956
  export interface SkusListOptionalParams extends coreClient.OperationOptions {
547
957
  /** Specify $filter='location eq <location>' to filter on location. */
548
958
  filter?: string;
549
959
  }
550
960
  /** Contains response data for the list operation. */
551
- export declare type SkusListResponse = SkuInformationList;
961
+ export type SkusListResponse = SkuInformationList;
552
962
  /** Optional parameters. */
553
963
  export interface ElasticSansListBySubscriptionOptionalParams extends coreClient.OperationOptions {
554
964
  }
555
965
  /** Contains response data for the listBySubscription operation. */
556
- export declare type ElasticSansListBySubscriptionResponse = ElasticSanList;
966
+ export type ElasticSansListBySubscriptionResponse = ElasticSanList;
557
967
  /** Optional parameters. */
558
968
  export interface ElasticSansListByResourceGroupOptionalParams extends coreClient.OperationOptions {
559
969
  }
560
970
  /** Contains response data for the listByResourceGroup operation. */
561
- export declare type ElasticSansListByResourceGroupResponse = ElasticSanList;
971
+ export type ElasticSansListByResourceGroupResponse = ElasticSanList;
562
972
  /** Optional parameters. */
563
973
  export interface ElasticSansCreateOptionalParams extends coreClient.OperationOptions {
564
974
  /** Delay to wait until next poll, in milliseconds. */
@@ -567,7 +977,7 @@ export interface ElasticSansCreateOptionalParams extends coreClient.OperationOpt
567
977
  resumeFrom?: string;
568
978
  }
569
979
  /** Contains response data for the create operation. */
570
- export declare type ElasticSansCreateResponse = ElasticSan;
980
+ export type ElasticSansCreateResponse = ElasticSan;
571
981
  /** Optional parameters. */
572
982
  export interface ElasticSansUpdateOptionalParams extends coreClient.OperationOptions {
573
983
  /** Delay to wait until next poll, in milliseconds. */
@@ -576,7 +986,7 @@ export interface ElasticSansUpdateOptionalParams extends coreClient.OperationOpt
576
986
  resumeFrom?: string;
577
987
  }
578
988
  /** Contains response data for the update operation. */
579
- export declare type ElasticSansUpdateResponse = ElasticSan;
989
+ export type ElasticSansUpdateResponse = ElasticSan;
580
990
  /** Optional parameters. */
581
991
  export interface ElasticSansDeleteOptionalParams extends coreClient.OperationOptions {
582
992
  /** Delay to wait until next poll, in milliseconds. */
@@ -588,22 +998,22 @@ export interface ElasticSansDeleteOptionalParams extends coreClient.OperationOpt
588
998
  export interface ElasticSansGetOptionalParams extends coreClient.OperationOptions {
589
999
  }
590
1000
  /** Contains response data for the get operation. */
591
- export declare type ElasticSansGetResponse = ElasticSan;
1001
+ export type ElasticSansGetResponse = ElasticSan;
592
1002
  /** Optional parameters. */
593
1003
  export interface ElasticSansListBySubscriptionNextOptionalParams extends coreClient.OperationOptions {
594
1004
  }
595
1005
  /** Contains response data for the listBySubscriptionNext operation. */
596
- export declare type ElasticSansListBySubscriptionNextResponse = ElasticSanList;
1006
+ export type ElasticSansListBySubscriptionNextResponse = ElasticSanList;
597
1007
  /** Optional parameters. */
598
1008
  export interface ElasticSansListByResourceGroupNextOptionalParams extends coreClient.OperationOptions {
599
1009
  }
600
1010
  /** Contains response data for the listByResourceGroupNext operation. */
601
- export declare type ElasticSansListByResourceGroupNextResponse = ElasticSanList;
1011
+ export type ElasticSansListByResourceGroupNextResponse = ElasticSanList;
602
1012
  /** Optional parameters. */
603
1013
  export interface VolumeGroupsListByElasticSanOptionalParams extends coreClient.OperationOptions {
604
1014
  }
605
1015
  /** Contains response data for the listByElasticSan operation. */
606
- export declare type VolumeGroupsListByElasticSanResponse = VolumeGroupList;
1016
+ export type VolumeGroupsListByElasticSanResponse = VolumeGroupList;
607
1017
  /** Optional parameters. */
608
1018
  export interface VolumeGroupsCreateOptionalParams extends coreClient.OperationOptions {
609
1019
  /** Delay to wait until next poll, in milliseconds. */
@@ -612,7 +1022,7 @@ export interface VolumeGroupsCreateOptionalParams extends coreClient.OperationOp
612
1022
  resumeFrom?: string;
613
1023
  }
614
1024
  /** Contains response data for the create operation. */
615
- export declare type VolumeGroupsCreateResponse = VolumeGroup;
1025
+ export type VolumeGroupsCreateResponse = VolumeGroup;
616
1026
  /** Optional parameters. */
617
1027
  export interface VolumeGroupsUpdateOptionalParams extends coreClient.OperationOptions {
618
1028
  /** Delay to wait until next poll, in milliseconds. */
@@ -621,7 +1031,7 @@ export interface VolumeGroupsUpdateOptionalParams extends coreClient.OperationOp
621
1031
  resumeFrom?: string;
622
1032
  }
623
1033
  /** Contains response data for the update operation. */
624
- export declare type VolumeGroupsUpdateResponse = VolumeGroup;
1034
+ export type VolumeGroupsUpdateResponse = VolumeGroup;
625
1035
  /** Optional parameters. */
626
1036
  export interface VolumeGroupsDeleteOptionalParams extends coreClient.OperationOptions {
627
1037
  /** Delay to wait until next poll, in milliseconds. */
@@ -633,12 +1043,12 @@ export interface VolumeGroupsDeleteOptionalParams extends coreClient.OperationOp
633
1043
  export interface VolumeGroupsGetOptionalParams extends coreClient.OperationOptions {
634
1044
  }
635
1045
  /** Contains response data for the get operation. */
636
- export declare type VolumeGroupsGetResponse = VolumeGroup;
1046
+ export type VolumeGroupsGetResponse = VolumeGroup;
637
1047
  /** Optional parameters. */
638
1048
  export interface VolumeGroupsListByElasticSanNextOptionalParams extends coreClient.OperationOptions {
639
1049
  }
640
1050
  /** Contains response data for the listByElasticSanNext operation. */
641
- export declare type VolumeGroupsListByElasticSanNextResponse = VolumeGroupList;
1051
+ export type VolumeGroupsListByElasticSanNextResponse = VolumeGroupList;
642
1052
  /** Optional parameters. */
643
1053
  export interface VolumesCreateOptionalParams extends coreClient.OperationOptions {
644
1054
  /** Delay to wait until next poll, in milliseconds. */
@@ -647,7 +1057,7 @@ export interface VolumesCreateOptionalParams extends coreClient.OperationOptions
647
1057
  resumeFrom?: string;
648
1058
  }
649
1059
  /** Contains response data for the create operation. */
650
- export declare type VolumesCreateResponse = Volume;
1060
+ export type VolumesCreateResponse = Volume;
651
1061
  /** Optional parameters. */
652
1062
  export interface VolumesUpdateOptionalParams extends coreClient.OperationOptions {
653
1063
  /** Delay to wait until next poll, in milliseconds. */
@@ -656,9 +1066,13 @@ export interface VolumesUpdateOptionalParams extends coreClient.OperationOptions
656
1066
  resumeFrom?: string;
657
1067
  }
658
1068
  /** Contains response data for the update operation. */
659
- export declare type VolumesUpdateResponse = Volume;
1069
+ export type VolumesUpdateResponse = Volume;
660
1070
  /** Optional parameters. */
661
1071
  export interface VolumesDeleteOptionalParams extends coreClient.OperationOptions {
1072
+ /** Optional, used to delete snapshots under volume. Allowed value are only true or false. Default value is false. */
1073
+ xMsDeleteSnapshots?: XMsDeleteSnapshots;
1074
+ /** Optional, used to delete volume if active sessions present. Allowed value are only true or false. Default value is false. */
1075
+ xMsForceDelete?: XMsForceDelete;
662
1076
  /** Delay to wait until next poll, in milliseconds. */
663
1077
  updateIntervalInMs?: number;
664
1078
  /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
@@ -668,17 +1082,81 @@ export interface VolumesDeleteOptionalParams extends coreClient.OperationOptions
668
1082
  export interface VolumesGetOptionalParams extends coreClient.OperationOptions {
669
1083
  }
670
1084
  /** Contains response data for the get operation. */
671
- export declare type VolumesGetResponse = Volume;
1085
+ export type VolumesGetResponse = Volume;
672
1086
  /** Optional parameters. */
673
1087
  export interface VolumesListByVolumeGroupOptionalParams extends coreClient.OperationOptions {
674
1088
  }
675
1089
  /** Contains response data for the listByVolumeGroup operation. */
676
- export declare type VolumesListByVolumeGroupResponse = VolumeList;
1090
+ export type VolumesListByVolumeGroupResponse = VolumeList;
677
1091
  /** Optional parameters. */
678
1092
  export interface VolumesListByVolumeGroupNextOptionalParams extends coreClient.OperationOptions {
679
1093
  }
680
1094
  /** Contains response data for the listByVolumeGroupNext operation. */
681
- export declare type VolumesListByVolumeGroupNextResponse = VolumeList;
1095
+ export type VolumesListByVolumeGroupNextResponse = VolumeList;
1096
+ /** Optional parameters. */
1097
+ export interface PrivateEndpointConnectionsCreateOptionalParams extends coreClient.OperationOptions {
1098
+ /** Delay to wait until next poll, in milliseconds. */
1099
+ updateIntervalInMs?: number;
1100
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1101
+ resumeFrom?: string;
1102
+ }
1103
+ /** Contains response data for the create operation. */
1104
+ export type PrivateEndpointConnectionsCreateResponse = PrivateEndpointConnection;
1105
+ /** Optional parameters. */
1106
+ export interface PrivateEndpointConnectionsGetOptionalParams extends coreClient.OperationOptions {
1107
+ }
1108
+ /** Contains response data for the get operation. */
1109
+ export type PrivateEndpointConnectionsGetResponse = PrivateEndpointConnection;
1110
+ /** Optional parameters. */
1111
+ export interface PrivateEndpointConnectionsDeleteOptionalParams extends coreClient.OperationOptions {
1112
+ /** Delay to wait until next poll, in milliseconds. */
1113
+ updateIntervalInMs?: number;
1114
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1115
+ resumeFrom?: string;
1116
+ }
1117
+ /** Optional parameters. */
1118
+ export interface PrivateEndpointConnectionsListOptionalParams extends coreClient.OperationOptions {
1119
+ }
1120
+ /** Contains response data for the list operation. */
1121
+ export type PrivateEndpointConnectionsListResponse = PrivateEndpointConnectionListResult;
1122
+ /** Optional parameters. */
1123
+ export interface PrivateLinkResourcesListByElasticSanOptionalParams extends coreClient.OperationOptions {
1124
+ }
1125
+ /** Contains response data for the listByElasticSan operation. */
1126
+ export type PrivateLinkResourcesListByElasticSanResponse = PrivateLinkResourceListResult;
1127
+ /** Optional parameters. */
1128
+ export interface VolumeSnapshotsListByVolumeGroupOptionalParams extends coreClient.OperationOptions {
1129
+ /** Specify $filter='volumeName eq <volume name>' to filter on volume. */
1130
+ filter?: string;
1131
+ }
1132
+ /** Contains response data for the listByVolumeGroup operation. */
1133
+ export type VolumeSnapshotsListByVolumeGroupResponse = SnapshotList;
1134
+ /** Optional parameters. */
1135
+ export interface VolumeSnapshotsCreateOptionalParams extends coreClient.OperationOptions {
1136
+ /** Delay to wait until next poll, in milliseconds. */
1137
+ updateIntervalInMs?: number;
1138
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1139
+ resumeFrom?: string;
1140
+ }
1141
+ /** Contains response data for the create operation. */
1142
+ export type VolumeSnapshotsCreateResponse = Snapshot;
1143
+ /** Optional parameters. */
1144
+ export interface VolumeSnapshotsDeleteOptionalParams extends coreClient.OperationOptions {
1145
+ /** Delay to wait until next poll, in milliseconds. */
1146
+ updateIntervalInMs?: number;
1147
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1148
+ resumeFrom?: string;
1149
+ }
1150
+ /** Optional parameters. */
1151
+ export interface VolumeSnapshotsGetOptionalParams extends coreClient.OperationOptions {
1152
+ }
1153
+ /** Contains response data for the get operation. */
1154
+ export type VolumeSnapshotsGetResponse = Snapshot;
1155
+ /** Optional parameters. */
1156
+ export interface VolumeSnapshotsListByVolumeGroupNextOptionalParams extends coreClient.OperationOptions {
1157
+ }
1158
+ /** Contains response data for the listByVolumeGroupNext operation. */
1159
+ export type VolumeSnapshotsListByVolumeGroupNextResponse = SnapshotList;
682
1160
  /** Optional parameters. */
683
1161
  export interface ElasticSanManagementOptionalParams extends coreClient.ServiceClientOptions {
684
1162
  /** server parameter */