@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
@@ -8,50 +8,78 @@
8
8
 
9
9
  import * as coreClient from "@azure/core-client";
10
10
 
11
- /** List of operations supported by the RP. */
12
- export interface ElasticSanOperationListResult {
13
- /** An array of operations supported by the ElasticSan RP. */
14
- value: ElasticSanRPOperation[];
15
- /** URI to fetch the next section of the paginated response. */
16
- nextLink?: string;
11
+ /** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */
12
+ export interface OperationListResult {
13
+ /**
14
+ * List of operations supported by the resource provider
15
+ * NOTE: This property will not be serialized. It can only be populated by the server.
16
+ */
17
+ readonly value?: Operation[];
18
+ /**
19
+ * URL to get the next set of operation list results (if there are any).
20
+ * NOTE: This property will not be serialized. It can only be populated by the server.
21
+ */
22
+ readonly nextLink?: string;
17
23
  }
18
24
 
19
- /** Description of a ElasticSan RP Operation */
20
- export interface ElasticSanRPOperation {
21
- /** The name of the operation being performed on this particular object */
22
- name: string;
25
+ /** Details of a REST API operation, returned from the Resource Provider Operations API */
26
+ export interface Operation {
27
+ /**
28
+ * The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action"
29
+ * NOTE: This property will not be serialized. It can only be populated by the server.
30
+ */
31
+ readonly name?: string;
23
32
  /**
24
- * Indicates whether the operation applies to data-plane.
33
+ * Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane operations.
25
34
  * NOTE: This property will not be serialized. It can only be populated by the server.
26
35
  */
27
36
  readonly isDataAction?: boolean;
37
+ /** Localized display information for this particular operation. */
38
+ display?: OperationDisplay;
39
+ /**
40
+ * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system"
41
+ * NOTE: This property will not be serialized. It can only be populated by the server.
42
+ */
43
+ readonly origin?: Origin;
28
44
  /**
29
- * Additional metadata about RP operation.
45
+ * Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
30
46
  * NOTE: This property will not be serialized. It can only be populated by the server.
31
47
  */
32
- readonly display?: ElasticSanOperationDisplay;
48
+ readonly actionType?: ActionType;
33
49
  }
34
50
 
35
- /** Metadata about an operation. */
36
- export interface ElasticSanOperationDisplay {
37
- /** Localized friendly form of the resource provider name. */
38
- provider: string;
39
- /** Localized friendly form of the resource type related to this action/operation. */
40
- resource: string;
41
- /** Localized friendly name for the operation, as it should be shown to the user. */
42
- operation: string;
43
- /** Localized friendly description for the operation, as it should be shown to the user. */
44
- description: string;
51
+ /** Localized display information for this particular operation. */
52
+ export interface OperationDisplay {
53
+ /**
54
+ * The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute".
55
+ * NOTE: This property will not be serialized. It can only be populated by the server.
56
+ */
57
+ readonly provider?: string;
58
+ /**
59
+ * The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections".
60
+ * NOTE: This property will not be serialized. It can only be populated by the server.
61
+ */
62
+ readonly resource?: string;
63
+ /**
64
+ * The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine".
65
+ * NOTE: This property will not be serialized. It can only be populated by the server.
66
+ */
67
+ readonly operation?: string;
68
+ /**
69
+ * The short, localized friendly description of the operation; suitable for tool tips and detailed views.
70
+ * NOTE: This property will not be serialized. It can only be populated by the server.
71
+ */
72
+ readonly description?: string;
45
73
  }
46
74
 
47
- /** The resource management error response. */
48
- export interface ErrorModel {
49
- /** RP error response. */
50
- error?: ErrorResponse;
75
+ /** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */
76
+ export interface ErrorResponse {
77
+ /** The error object. */
78
+ error?: ErrorDetail;
51
79
  }
52
80
 
53
- /** The resource management error response. */
54
- export interface ErrorResponse {
81
+ /** The error detail. */
82
+ export interface ErrorDetail {
55
83
  /**
56
84
  * The error code.
57
85
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -71,7 +99,7 @@ export interface ErrorResponse {
71
99
  * The error details.
72
100
  * NOTE: This property will not be serialized. It can only be populated by the server.
73
101
  */
74
- readonly details?: ErrorResponse[];
102
+ readonly details?: ErrorDetail[];
75
103
  /**
76
104
  * The error additional info.
77
105
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -100,6 +128,11 @@ export interface SkuInformationList {
100
128
  * NOTE: This property will not be serialized. It can only be populated by the server.
101
129
  */
102
130
  readonly value?: SkuInformation[];
131
+ /**
132
+ * URI to fetch the next section of the paginated response.
133
+ * NOTE: This property will not be serialized. It can only be populated by the server.
134
+ */
135
+ readonly nextLink?: string;
103
136
  }
104
137
 
105
138
  /** ElasticSAN SKU and its properties */
@@ -161,7 +194,7 @@ export interface SKUCapability {
161
194
  /** List of Elastic Sans */
162
195
  export interface ElasticSanList {
163
196
  /** An array of Elastic San objects. */
164
- value: ElasticSan[];
197
+ value?: ElasticSan[];
165
198
  /**
166
199
  * URI to fetch the next section of the paginated response.
167
200
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -177,41 +210,63 @@ export interface Sku {
177
210
  tier?: SkuTier;
178
211
  }
179
212
 
180
- /** Metadata pertaining to creation and last modification of the resource. */
181
- export interface SystemData {
182
- /** The identity that created the resource. */
183
- createdBy?: string;
184
- /** The type of identity that created the resource. */
185
- createdByType?: CreatedByType;
186
- /** The timestamp of resource creation (UTC). */
187
- createdAt?: Date;
188
- /** The identity that last modified the resource. */
189
- lastModifiedBy?: string;
190
- /** The type of identity that last modified the resource. */
191
- lastModifiedByType?: CreatedByType;
192
- /** The timestamp of resource last modification (UTC) */
193
- lastModifiedAt?: Date;
213
+ /** Response for PrivateEndpoint */
214
+ export interface PrivateEndpoint {
215
+ /**
216
+ * The ARM identifier for Private Endpoint
217
+ * NOTE: This property will not be serialized. It can only be populated by the server.
218
+ */
219
+ readonly id?: string;
194
220
  }
195
221
 
196
- /** The resource model definition. */
222
+ /** Response for Private Link Service Connection state */
223
+ export interface PrivateLinkServiceConnectionState {
224
+ /** Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. */
225
+ status?: PrivateEndpointServiceConnectionStatus;
226
+ /** The reason for approval/rejection of the connection. */
227
+ description?: string;
228
+ /** A message indicating if changes on the service provider require any updates on the consumer. */
229
+ actionsRequired?: string;
230
+ }
231
+
232
+ /** Common fields that are returned in the response for all Azure Resource Manager resources */
197
233
  export interface Resource {
198
234
  /**
199
- * Azure resource identifier.
235
+ * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
200
236
  * NOTE: This property will not be serialized. It can only be populated by the server.
201
237
  */
202
238
  readonly id?: string;
203
239
  /**
204
- * Azure resource name.
240
+ * The name of the resource
205
241
  * NOTE: This property will not be serialized. It can only be populated by the server.
206
242
  */
207
243
  readonly name?: string;
208
244
  /**
209
- * Azure resource type.
245
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
210
246
  * NOTE: This property will not be serialized. It can only be populated by the server.
211
247
  */
212
248
  readonly type?: string;
213
- /** Azure resource tags. */
214
- tags?: { [propertyName: string]: string };
249
+ /**
250
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
251
+ * NOTE: This property will not be serialized. It can only be populated by the server.
252
+ */
253
+ readonly systemData?: SystemData;
254
+ }
255
+
256
+ /** Metadata pertaining to creation and last modification of the resource. */
257
+ export interface SystemData {
258
+ /** The identity that created the resource. */
259
+ createdBy?: string;
260
+ /** The type of identity that created the resource. */
261
+ createdByType?: CreatedByType;
262
+ /** The timestamp of resource creation (UTC). */
263
+ createdAt?: Date;
264
+ /** The identity that last modified the resource. */
265
+ lastModifiedBy?: string;
266
+ /** The type of identity that last modified the resource. */
267
+ lastModifiedByType?: CreatedByType;
268
+ /** The timestamp of resource last modification (UTC) */
269
+ lastModifiedAt?: Date;
215
270
  }
216
271
 
217
272
  /** Response for ElasticSan update request. */
@@ -222,12 +277,14 @@ export interface ElasticSanUpdate {
222
277
  baseSizeTiB?: number;
223
278
  /** Extended size of the Elastic San appliance in TiB. */
224
279
  extendedCapacitySizeTiB?: number;
280
+ /** Allow or disallow public network access to ElasticSan Account. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. */
281
+ publicNetworkAccess?: PublicNetworkAccess;
225
282
  }
226
283
 
227
284
  /** List of Volume Groups */
228
285
  export interface VolumeGroupList {
229
286
  /** An array of Volume Groups objects. */
230
- value: VolumeGroup[];
287
+ value?: VolumeGroup[];
231
288
  /**
232
289
  * URI to fetch the next section of the paginated response.
233
290
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -235,6 +292,77 @@ export interface VolumeGroupList {
235
292
  readonly nextLink?: string;
236
293
  }
237
294
 
295
+ /** Identity for the resource. */
296
+ export interface Identity {
297
+ /**
298
+ * The principal ID of resource identity.
299
+ * NOTE: This property will not be serialized. It can only be populated by the server.
300
+ */
301
+ readonly principalId?: string;
302
+ /**
303
+ * The tenant ID of resource.
304
+ * NOTE: This property will not be serialized. It can only be populated by the server.
305
+ */
306
+ readonly tenantId?: string;
307
+ /** The identity type. */
308
+ type: IdentityType;
309
+ /** 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. */
310
+ userAssignedIdentities?: { [propertyName: string]: UserAssignedIdentity };
311
+ }
312
+
313
+ /** UserAssignedIdentity for the resource. */
314
+ export interface UserAssignedIdentity {
315
+ /**
316
+ * The principal ID of the identity.
317
+ * NOTE: This property will not be serialized. It can only be populated by the server.
318
+ */
319
+ readonly principalId?: string;
320
+ /**
321
+ * The client ID of the identity.
322
+ * NOTE: This property will not be serialized. It can only be populated by the server.
323
+ */
324
+ readonly clientId?: string;
325
+ }
326
+
327
+ /** The encryption settings on the volume group. */
328
+ export interface EncryptionProperties {
329
+ /** Properties provided by key vault. */
330
+ keyVaultProperties?: KeyVaultProperties;
331
+ /** The identity to be used with service-side encryption at rest. */
332
+ encryptionIdentity?: EncryptionIdentity;
333
+ }
334
+
335
+ /** Properties of key vault. */
336
+ export interface KeyVaultProperties {
337
+ /** The name of KeyVault key. */
338
+ keyName?: string;
339
+ /** The version of KeyVault key. */
340
+ keyVersion?: string;
341
+ /** The Uri of KeyVault. */
342
+ keyVaultUri?: string;
343
+ /**
344
+ * The object identifier of the current versioned Key Vault Key in use.
345
+ * NOTE: This property will not be serialized. It can only be populated by the server.
346
+ */
347
+ readonly currentVersionedKeyIdentifier?: string;
348
+ /**
349
+ * Timestamp of last rotation of the Key Vault Key.
350
+ * NOTE: This property will not be serialized. It can only be populated by the server.
351
+ */
352
+ readonly lastKeyRotationTimestamp?: Date;
353
+ /**
354
+ * This is a read only property that represents the expiration time of the current version of the customer managed key used for encryption.
355
+ * NOTE: This property will not be serialized. It can only be populated by the server.
356
+ */
357
+ readonly currentVersionedKeyExpirationTimestamp?: Date;
358
+ }
359
+
360
+ /** Encryption identity for the volume group. */
361
+ export interface EncryptionIdentity {
362
+ /** Resource identifier of the UserAssigned identity to be associated with server-side encryption on the volume group. */
363
+ encryptionUserAssignedIdentity?: string;
364
+ }
365
+
238
366
  /** A set of rules governing the network accessibility. */
239
367
  export interface NetworkRuleSet {
240
368
  /** The list of virtual network rules. */
@@ -246,22 +374,19 @@ export interface VirtualNetworkRule {
246
374
  /** Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}. */
247
375
  virtualNetworkResourceId: string;
248
376
  /** The action of virtual network rule. */
249
- action?: "Allow";
250
- /**
251
- * Gets the state of virtual network rule.
252
- * NOTE: This property will not be serialized. It can only be populated by the server.
253
- */
254
- readonly state?: State;
377
+ action?: Action;
255
378
  }
256
379
 
257
380
  /** Volume Group request. */
258
381
  export interface VolumeGroupUpdate {
259
- /** Resource tags. */
260
- tags?: { [propertyName: string]: string };
382
+ /** The identity of the resource. */
383
+ identity?: Identity;
261
384
  /** Type of storage target */
262
385
  protocolType?: StorageTargetType;
263
386
  /** Type of encryption */
264
387
  encryption?: EncryptionType;
388
+ /** Encryption Properties describing Key Vault and Identity information */
389
+ encryptionProperties?: EncryptionProperties;
265
390
  /** A collection of rules governing the accessibility from specific network locations. */
266
391
  networkAcls?: NetworkRuleSet;
267
392
  }
@@ -269,9 +394,9 @@ export interface VolumeGroupUpdate {
269
394
  /** Data source used when creating the volume. */
270
395
  export interface SourceCreationData {
271
396
  /** This enumerates the possible sources of a volume creation. */
272
- createSource?: "None";
273
- /** 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. */
274
- sourceUri?: string;
397
+ createSource?: VolumeCreateOption;
398
+ /** Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" */
399
+ sourceId?: string;
275
400
  }
276
401
 
277
402
  /** Iscsi target information */
@@ -300,18 +425,24 @@ export interface IscsiTargetInfo {
300
425
  status?: OperationalStatus;
301
426
  }
302
427
 
428
+ /** Parent resource information. */
429
+ export interface ManagedByInfo {
430
+ /** Resource ID of the resource managing the volume, this is a restricted field and can only be set for internal use. */
431
+ resourceId?: string;
432
+ }
433
+
303
434
  /** Response for Volume request. */
304
435
  export interface VolumeUpdate {
305
- /** Resource tags. */
306
- tags?: { [propertyName: string]: string };
307
436
  /** Volume size. */
308
437
  sizeGiB?: number;
438
+ /** Parent resource information. */
439
+ managedBy?: ManagedByInfo;
309
440
  }
310
441
 
311
442
  /** List of Volumes */
312
443
  export interface VolumeList {
313
444
  /** An array of Volume objects. */
314
- value: Volume[];
445
+ value?: Volume[];
315
446
  /**
316
447
  * URI to fetch the next section of the paginated response.
317
448
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -319,62 +450,89 @@ export interface VolumeList {
319
450
  readonly nextLink?: string;
320
451
  }
321
452
 
322
- /** The resource model definition for a ARM tracked top level resource. */
323
- export interface TrackedResource extends Resource {
324
- /** The geo-location where the resource lives. */
325
- location?: string;
453
+ /** List of private endpoint connections associated with SAN */
454
+ export interface PrivateEndpointConnectionListResult {
455
+ /** Array of private endpoint connections */
456
+ value?: PrivateEndpointConnection[];
457
+ /**
458
+ * URI to fetch the next section of the paginated response.
459
+ * NOTE: This property will not be serialized. It can only be populated by the server.
460
+ */
461
+ readonly nextLink?: string;
326
462
  }
327
463
 
328
- /** Response for Volume Group request. */
329
- export interface VolumeGroup extends Resource {
464
+ /** A list of private link resources */
465
+ export interface PrivateLinkResourceListResult {
466
+ /** Array of private link resources */
467
+ value?: PrivateLinkResource[];
330
468
  /**
331
- * Resource metadata required by ARM RPC
469
+ * URI to fetch the next section of the paginated response.
332
470
  * NOTE: This property will not be serialized. It can only be populated by the server.
333
471
  */
334
- readonly systemData?: SystemData;
472
+ readonly nextLink?: string;
473
+ }
474
+
475
+ /** List of Snapshots */
476
+ export interface SnapshotList {
477
+ /** An array of Snapshot objects. */
478
+ value?: Snapshot[];
335
479
  /**
336
- * State of the operation on the resource.
480
+ * URI to fetch the next section of the paginated response.
337
481
  * NOTE: This property will not be serialized. It can only be populated by the server.
338
482
  */
339
- readonly provisioningState?: ProvisioningStates;
340
- /** Type of storage target */
341
- protocolType?: StorageTargetType;
342
- /** Type of encryption */
343
- encryption?: EncryptionType;
344
- /** A collection of rules governing the accessibility from specific network locations. */
345
- networkAcls?: NetworkRuleSet;
483
+ readonly nextLink?: string;
346
484
  }
347
485
 
348
- /** Response for Volume request. */
349
- export interface Volume extends Resource {
486
+ /** Data used when creating a volume snapshot. */
487
+ export interface SnapshotCreationData {
488
+ /** Fully qualified resource ID of the volume. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ElasticSan/elasticSans/{elasticSanName}/volumegroups/{volumeGroupName}/volumes/{volumeName}" */
489
+ sourceId: string;
490
+ }
491
+
492
+ /** Response for PrivateEndpoint Connection object */
493
+ export interface PrivateEndpointConnection extends Resource {
350
494
  /**
351
- * Resource metadata required by ARM RPC
495
+ * Provisioning State of Private Endpoint connection resource
352
496
  * NOTE: This property will not be serialized. It can only be populated by the server.
353
497
  */
354
- readonly systemData?: SystemData;
498
+ readonly provisioningState?: ProvisioningStates;
499
+ /** Private Endpoint resource */
500
+ privateEndpoint?: PrivateEndpoint;
501
+ /** Private Link Service Connection State. */
502
+ privateLinkServiceConnectionState: PrivateLinkServiceConnectionState;
503
+ /** List of resources private endpoint is mapped */
504
+ groupIds?: string[];
505
+ }
506
+
507
+ /** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */
508
+ export interface TrackedResource extends Resource {
509
+ /** Resource tags. */
510
+ tags?: { [propertyName: string]: string };
511
+ /** The geo-location where the resource lives */
512
+ location: string;
513
+ }
514
+
515
+ /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
516
+ export interface ProxyResource extends Resource {}
517
+
518
+ /** A private link resource */
519
+ export interface PrivateLinkResource extends Resource {
355
520
  /**
356
- * Unique Id of the volume in GUID format
521
+ * The private link resource group id.
357
522
  * NOTE: This property will not be serialized. It can only be populated by the server.
358
523
  */
359
- readonly volumeId?: string;
360
- /** State of the operation on the resource. */
361
- creationData?: SourceCreationData;
362
- /** Volume size. */
363
- sizeGiB?: number;
524
+ readonly groupId?: string;
364
525
  /**
365
- * Storage target information
526
+ * The private link resource required member names.
366
527
  * NOTE: This property will not be serialized. It can only be populated by the server.
367
528
  */
368
- readonly storageTarget?: IscsiTargetInfo;
529
+ readonly requiredMembers?: string[];
530
+ /** The private link resource Private link DNS zone name. */
531
+ requiredZoneNames?: string[];
369
532
  }
370
533
 
371
534
  /** Response for ElasticSan request. */
372
535
  export interface ElasticSan extends TrackedResource {
373
- /**
374
- * Resource metadata required by ARM RPC
375
- * NOTE: This property will not be serialized. It can only be populated by the server.
376
- */
377
- readonly systemData?: SystemData;
378
536
  /** resource sku */
379
537
  sku: Sku;
380
538
  /** Logical zone for Elastic San resource; example: ["1"]. */
@@ -413,8 +571,161 @@ export interface ElasticSan extends TrackedResource {
413
571
  * NOTE: This property will not be serialized. It can only be populated by the server.
414
572
  */
415
573
  readonly totalSizeTiB?: number;
574
+ /**
575
+ * The list of Private Endpoint Connections.
576
+ * NOTE: This property will not be serialized. It can only be populated by the server.
577
+ */
578
+ readonly privateEndpointConnections?: PrivateEndpointConnection[];
579
+ /** Allow or disallow public network access to ElasticSan. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. */
580
+ publicNetworkAccess?: PublicNetworkAccess;
416
581
  }
417
582
 
583
+ /** Response for Volume Group request. */
584
+ export interface VolumeGroup extends ProxyResource {
585
+ /** The identity of the resource. */
586
+ identity?: Identity;
587
+ /**
588
+ * State of the operation on the resource.
589
+ * NOTE: This property will not be serialized. It can only be populated by the server.
590
+ */
591
+ readonly provisioningState?: ProvisioningStates;
592
+ /** Type of storage target */
593
+ protocolType?: StorageTargetType;
594
+ /** Type of encryption */
595
+ encryption?: EncryptionType;
596
+ /** Encryption Properties describing Key Vault and Identity information */
597
+ encryptionProperties?: EncryptionProperties;
598
+ /** A collection of rules governing the accessibility from specific network locations. */
599
+ networkAcls?: NetworkRuleSet;
600
+ /**
601
+ * The list of Private Endpoint Connections.
602
+ * NOTE: This property will not be serialized. It can only be populated by the server.
603
+ */
604
+ readonly privateEndpointConnections?: PrivateEndpointConnection[];
605
+ }
606
+
607
+ /** Response for Volume request. */
608
+ export interface Volume extends ProxyResource {
609
+ /**
610
+ * Unique Id of the volume in GUID format
611
+ * NOTE: This property will not be serialized. It can only be populated by the server.
612
+ */
613
+ readonly volumeId?: string;
614
+ /** State of the operation on the resource. */
615
+ creationData?: SourceCreationData;
616
+ /** Volume size. */
617
+ sizeGiB: number;
618
+ /**
619
+ * Storage target information
620
+ * NOTE: This property will not be serialized. It can only be populated by the server.
621
+ */
622
+ readonly storageTarget?: IscsiTargetInfo;
623
+ /** Parent resource information. */
624
+ managedBy?: ManagedByInfo;
625
+ /**
626
+ * State of the operation on the resource.
627
+ * NOTE: This property will not be serialized. It can only be populated by the server.
628
+ */
629
+ readonly provisioningState?: ProvisioningStates;
630
+ }
631
+
632
+ /** Response for Volume Snapshot request. */
633
+ export interface Snapshot extends ProxyResource {
634
+ /** Data used when creating a volume snapshot. */
635
+ creationData: SnapshotCreationData;
636
+ /**
637
+ * State of the operation on the resource.
638
+ * NOTE: This property will not be serialized. It can only be populated by the server.
639
+ */
640
+ readonly provisioningState?: ProvisioningStates;
641
+ /**
642
+ * Size of Source Volume
643
+ * NOTE: This property will not be serialized. It can only be populated by the server.
644
+ */
645
+ readonly sourceVolumeSizeGiB?: number;
646
+ /**
647
+ * Source Volume Name of a snapshot
648
+ * NOTE: This property will not be serialized. It can only be populated by the server.
649
+ */
650
+ readonly volumeName?: string;
651
+ }
652
+
653
+ /** Defines headers for ElasticSans_update operation. */
654
+ export interface ElasticSansUpdateHeaders {
655
+ location?: string;
656
+ }
657
+
658
+ /** Defines headers for ElasticSans_delete operation. */
659
+ export interface ElasticSansDeleteHeaders {
660
+ location?: string;
661
+ }
662
+
663
+ /** Defines headers for VolumeGroups_update operation. */
664
+ export interface VolumeGroupsUpdateHeaders {
665
+ location?: string;
666
+ }
667
+
668
+ /** Defines headers for VolumeGroups_delete operation. */
669
+ export interface VolumeGroupsDeleteHeaders {
670
+ location?: string;
671
+ }
672
+
673
+ /** Defines headers for Volumes_update operation. */
674
+ export interface VolumesUpdateHeaders {
675
+ location?: string;
676
+ }
677
+
678
+ /** Defines headers for Volumes_delete operation. */
679
+ export interface VolumesDeleteHeaders {
680
+ location?: string;
681
+ }
682
+
683
+ /** Defines headers for PrivateEndpointConnections_delete operation. */
684
+ export interface PrivateEndpointConnectionsDeleteHeaders {
685
+ location?: string;
686
+ }
687
+
688
+ /** Defines headers for VolumeSnapshots_delete operation. */
689
+ export interface VolumeSnapshotsDeleteHeaders {
690
+ location?: string;
691
+ }
692
+
693
+ /** Known values of {@link Origin} that the service accepts. */
694
+ export enum KnownOrigin {
695
+ /** User */
696
+ User = "user",
697
+ /** System */
698
+ System = "system",
699
+ /** UserSystem */
700
+ UserSystem = "user,system"
701
+ }
702
+
703
+ /**
704
+ * Defines values for Origin. \
705
+ * {@link KnownOrigin} can be used interchangeably with Origin,
706
+ * this enum contains the known values that the service supports.
707
+ * ### Known values supported by the service
708
+ * **user** \
709
+ * **system** \
710
+ * **user,system**
711
+ */
712
+ export type Origin = string;
713
+
714
+ /** Known values of {@link ActionType} that the service accepts. */
715
+ export enum KnownActionType {
716
+ /** Internal */
717
+ Internal = "Internal"
718
+ }
719
+
720
+ /**
721
+ * Defines values for ActionType. \
722
+ * {@link KnownActionType} can be used interchangeably with ActionType,
723
+ * this enum contains the known values that the service supports.
724
+ * ### Known values supported by the service
725
+ * **Internal**
726
+ */
727
+ export type ActionType = string;
728
+
418
729
  /** Known values of {@link SkuName} that the service accepts. */
419
730
  export enum KnownSkuName {
420
731
  /** Premium locally redundant storage */
@@ -484,6 +795,30 @@ export enum KnownProvisioningStates {
484
795
  */
485
796
  export type ProvisioningStates = string;
486
797
 
798
+ /** Known values of {@link PrivateEndpointServiceConnectionStatus} that the service accepts. */
799
+ export enum KnownPrivateEndpointServiceConnectionStatus {
800
+ /** Pending */
801
+ Pending = "Pending",
802
+ /** Approved */
803
+ Approved = "Approved",
804
+ /** Failed */
805
+ Failed = "Failed",
806
+ /** Rejected */
807
+ Rejected = "Rejected"
808
+ }
809
+
810
+ /**
811
+ * Defines values for PrivateEndpointServiceConnectionStatus. \
812
+ * {@link KnownPrivateEndpointServiceConnectionStatus} can be used interchangeably with PrivateEndpointServiceConnectionStatus,
813
+ * this enum contains the known values that the service supports.
814
+ * ### Known values supported by the service
815
+ * **Pending** \
816
+ * **Approved** \
817
+ * **Failed** \
818
+ * **Rejected**
819
+ */
820
+ export type PrivateEndpointServiceConnectionStatus = string;
821
+
487
822
  /** Known values of {@link CreatedByType} that the service accepts. */
488
823
  export enum KnownCreatedByType {
489
824
  /** User */
@@ -508,6 +843,45 @@ export enum KnownCreatedByType {
508
843
  */
509
844
  export type CreatedByType = string;
510
845
 
846
+ /** Known values of {@link PublicNetworkAccess} that the service accepts. */
847
+ export enum KnownPublicNetworkAccess {
848
+ /** Enabled */
849
+ Enabled = "Enabled",
850
+ /** Disabled */
851
+ Disabled = "Disabled"
852
+ }
853
+
854
+ /**
855
+ * Defines values for PublicNetworkAccess. \
856
+ * {@link KnownPublicNetworkAccess} can be used interchangeably with PublicNetworkAccess,
857
+ * this enum contains the known values that the service supports.
858
+ * ### Known values supported by the service
859
+ * **Enabled** \
860
+ * **Disabled**
861
+ */
862
+ export type PublicNetworkAccess = string;
863
+
864
+ /** Known values of {@link IdentityType} that the service accepts. */
865
+ export enum KnownIdentityType {
866
+ /** None */
867
+ None = "None",
868
+ /** SystemAssigned */
869
+ SystemAssigned = "SystemAssigned",
870
+ /** UserAssigned */
871
+ UserAssigned = "UserAssigned"
872
+ }
873
+
874
+ /**
875
+ * Defines values for IdentityType. \
876
+ * {@link KnownIdentityType} can be used interchangeably with IdentityType,
877
+ * this enum contains the known values that the service supports.
878
+ * ### Known values supported by the service
879
+ * **None** \
880
+ * **SystemAssigned** \
881
+ * **UserAssigned**
882
+ */
883
+ export type IdentityType = string;
884
+
511
885
  /** Known values of {@link StorageTargetType} that the service accepts. */
512
886
  export enum KnownStorageTargetType {
513
887
  /** Iscsi */
@@ -529,7 +903,9 @@ export type StorageTargetType = string;
529
903
  /** Known values of {@link EncryptionType} that the service accepts. */
530
904
  export enum KnownEncryptionType {
531
905
  /** Volume is encrypted at rest with Platform managed key. It is the default encryption type. */
532
- EncryptionAtRestWithPlatformKey = "EncryptionAtRestWithPlatformKey"
906
+ EncryptionAtRestWithPlatformKey = "EncryptionAtRestWithPlatformKey",
907
+ /** Volume is encrypted at rest with Customer managed key that can be changed and revoked by a customer. */
908
+ EncryptionAtRestWithCustomerManagedKey = "EncryptionAtRestWithCustomerManagedKey"
533
909
  }
534
910
 
535
911
  /**
@@ -537,10 +913,53 @@ export enum KnownEncryptionType {
537
913
  * {@link KnownEncryptionType} can be used interchangeably with EncryptionType,
538
914
  * this enum contains the known values that the service supports.
539
915
  * ### Known values supported by the service
540
- * **EncryptionAtRestWithPlatformKey**: Volume is encrypted at rest with Platform managed key. It is the default encryption type.
916
+ * **EncryptionAtRestWithPlatformKey**: Volume is encrypted at rest with Platform managed key. It is the default encryption type. \
917
+ * **EncryptionAtRestWithCustomerManagedKey**: Volume is encrypted at rest with Customer managed key that can be changed and revoked by a customer.
541
918
  */
542
919
  export type EncryptionType = string;
543
920
 
921
+ /** Known values of {@link Action} that the service accepts. */
922
+ export enum KnownAction {
923
+ /** Allow */
924
+ Allow = "Allow"
925
+ }
926
+
927
+ /**
928
+ * Defines values for Action. \
929
+ * {@link KnownAction} can be used interchangeably with Action,
930
+ * this enum contains the known values that the service supports.
931
+ * ### Known values supported by the service
932
+ * **Allow**
933
+ */
934
+ export type Action = string;
935
+
936
+ /** Known values of {@link VolumeCreateOption} that the service accepts. */
937
+ export enum KnownVolumeCreateOption {
938
+ /** None */
939
+ None = "None",
940
+ /** VolumeSnapshot */
941
+ VolumeSnapshot = "VolumeSnapshot",
942
+ /** DiskSnapshot */
943
+ DiskSnapshot = "DiskSnapshot",
944
+ /** Disk */
945
+ Disk = "Disk",
946
+ /** DiskRestorePoint */
947
+ DiskRestorePoint = "DiskRestorePoint"
948
+ }
949
+
950
+ /**
951
+ * Defines values for VolumeCreateOption. \
952
+ * {@link KnownVolumeCreateOption} can be used interchangeably with VolumeCreateOption,
953
+ * this enum contains the known values that the service supports.
954
+ * ### Known values supported by the service
955
+ * **None** \
956
+ * **VolumeSnapshot** \
957
+ * **DiskSnapshot** \
958
+ * **Disk** \
959
+ * **DiskRestorePoint**
960
+ */
961
+ export type VolumeCreateOption = string;
962
+
544
963
  /** Known values of {@link OperationalStatus} that the service accepts. */
545
964
  export enum KnownOperationalStatus {
546
965
  /** Invalid */
@@ -576,20 +995,49 @@ export enum KnownOperationalStatus {
576
995
  * **Stopped (deallocated)**
577
996
  */
578
997
  export type OperationalStatus = string;
579
- /** Defines values for State. */
580
- export type State =
581
- | "provisioning"
582
- | "deprovisioning"
583
- | "succeeded"
584
- | "failed"
585
- | "networkSourceDeleted";
998
+
999
+ /** Known values of {@link XMsDeleteSnapshots} that the service accepts. */
1000
+ export enum KnownXMsDeleteSnapshots {
1001
+ /** True */
1002
+ True = "true",
1003
+ /** False */
1004
+ False = "false"
1005
+ }
1006
+
1007
+ /**
1008
+ * Defines values for XMsDeleteSnapshots. \
1009
+ * {@link KnownXMsDeleteSnapshots} can be used interchangeably with XMsDeleteSnapshots,
1010
+ * this enum contains the known values that the service supports.
1011
+ * ### Known values supported by the service
1012
+ * **true** \
1013
+ * **false**
1014
+ */
1015
+ export type XMsDeleteSnapshots = string;
1016
+
1017
+ /** Known values of {@link XMsForceDelete} that the service accepts. */
1018
+ export enum KnownXMsForceDelete {
1019
+ /** True */
1020
+ True = "true",
1021
+ /** False */
1022
+ False = "false"
1023
+ }
1024
+
1025
+ /**
1026
+ * Defines values for XMsForceDelete. \
1027
+ * {@link KnownXMsForceDelete} can be used interchangeably with XMsForceDelete,
1028
+ * this enum contains the known values that the service supports.
1029
+ * ### Known values supported by the service
1030
+ * **true** \
1031
+ * **false**
1032
+ */
1033
+ export type XMsForceDelete = string;
586
1034
 
587
1035
  /** Optional parameters. */
588
1036
  export interface OperationsListOptionalParams
589
1037
  extends coreClient.OperationOptions {}
590
1038
 
591
1039
  /** Contains response data for the list operation. */
592
- export type OperationsListResponse = ElasticSanOperationListResult;
1040
+ export type OperationsListResponse = OperationListResult;
593
1041
 
594
1042
  /** Optional parameters. */
595
1043
  export interface SkusListOptionalParams extends coreClient.OperationOptions {
@@ -749,6 +1197,10 @@ export type VolumesUpdateResponse = Volume;
749
1197
  /** Optional parameters. */
750
1198
  export interface VolumesDeleteOptionalParams
751
1199
  extends coreClient.OperationOptions {
1200
+ /** Optional, used to delete snapshots under volume. Allowed value are only true or false. Default value is false. */
1201
+ xMsDeleteSnapshots?: XMsDeleteSnapshots;
1202
+ /** Optional, used to delete volume if active sessions present. Allowed value are only true or false. Default value is false. */
1203
+ xMsForceDelete?: XMsForceDelete;
752
1204
  /** Delay to wait until next poll, in milliseconds. */
753
1205
  updateIntervalInMs?: number;
754
1206
  /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
@@ -775,6 +1227,93 @@ export interface VolumesListByVolumeGroupNextOptionalParams
775
1227
  /** Contains response data for the listByVolumeGroupNext operation. */
776
1228
  export type VolumesListByVolumeGroupNextResponse = VolumeList;
777
1229
 
1230
+ /** Optional parameters. */
1231
+ export interface PrivateEndpointConnectionsCreateOptionalParams
1232
+ extends coreClient.OperationOptions {
1233
+ /** Delay to wait until next poll, in milliseconds. */
1234
+ updateIntervalInMs?: number;
1235
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1236
+ resumeFrom?: string;
1237
+ }
1238
+
1239
+ /** Contains response data for the create operation. */
1240
+ export type PrivateEndpointConnectionsCreateResponse = PrivateEndpointConnection;
1241
+
1242
+ /** Optional parameters. */
1243
+ export interface PrivateEndpointConnectionsGetOptionalParams
1244
+ extends coreClient.OperationOptions {}
1245
+
1246
+ /** Contains response data for the get operation. */
1247
+ export type PrivateEndpointConnectionsGetResponse = PrivateEndpointConnection;
1248
+
1249
+ /** Optional parameters. */
1250
+ export interface PrivateEndpointConnectionsDeleteOptionalParams
1251
+ extends coreClient.OperationOptions {
1252
+ /** Delay to wait until next poll, in milliseconds. */
1253
+ updateIntervalInMs?: number;
1254
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1255
+ resumeFrom?: string;
1256
+ }
1257
+
1258
+ /** Optional parameters. */
1259
+ export interface PrivateEndpointConnectionsListOptionalParams
1260
+ extends coreClient.OperationOptions {}
1261
+
1262
+ /** Contains response data for the list operation. */
1263
+ export type PrivateEndpointConnectionsListResponse = PrivateEndpointConnectionListResult;
1264
+
1265
+ /** Optional parameters. */
1266
+ export interface PrivateLinkResourcesListByElasticSanOptionalParams
1267
+ extends coreClient.OperationOptions {}
1268
+
1269
+ /** Contains response data for the listByElasticSan operation. */
1270
+ export type PrivateLinkResourcesListByElasticSanResponse = PrivateLinkResourceListResult;
1271
+
1272
+ /** Optional parameters. */
1273
+ export interface VolumeSnapshotsListByVolumeGroupOptionalParams
1274
+ extends coreClient.OperationOptions {
1275
+ /** Specify $filter='volumeName eq <volume name>' to filter on volume. */
1276
+ filter?: string;
1277
+ }
1278
+
1279
+ /** Contains response data for the listByVolumeGroup operation. */
1280
+ export type VolumeSnapshotsListByVolumeGroupResponse = SnapshotList;
1281
+
1282
+ /** Optional parameters. */
1283
+ export interface VolumeSnapshotsCreateOptionalParams
1284
+ extends coreClient.OperationOptions {
1285
+ /** Delay to wait until next poll, in milliseconds. */
1286
+ updateIntervalInMs?: number;
1287
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1288
+ resumeFrom?: string;
1289
+ }
1290
+
1291
+ /** Contains response data for the create operation. */
1292
+ export type VolumeSnapshotsCreateResponse = Snapshot;
1293
+
1294
+ /** Optional parameters. */
1295
+ export interface VolumeSnapshotsDeleteOptionalParams
1296
+ extends coreClient.OperationOptions {
1297
+ /** Delay to wait until next poll, in milliseconds. */
1298
+ updateIntervalInMs?: number;
1299
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1300
+ resumeFrom?: string;
1301
+ }
1302
+
1303
+ /** Optional parameters. */
1304
+ export interface VolumeSnapshotsGetOptionalParams
1305
+ extends coreClient.OperationOptions {}
1306
+
1307
+ /** Contains response data for the get operation. */
1308
+ export type VolumeSnapshotsGetResponse = Snapshot;
1309
+
1310
+ /** Optional parameters. */
1311
+ export interface VolumeSnapshotsListByVolumeGroupNextOptionalParams
1312
+ extends coreClient.OperationOptions {}
1313
+
1314
+ /** Contains response data for the listByVolumeGroupNext operation. */
1315
+ export type VolumeSnapshotsListByVolumeGroupNextResponse = SnapshotList;
1316
+
778
1317
  /** Optional parameters. */
779
1318
  export interface ElasticSanManagementOptionalParams
780
1319
  extends coreClient.ServiceClientOptions {