@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,8 +1,26 @@
1
1
  import * as coreAuth from '@azure/core-auth';
2
2
  import * as coreClient from '@azure/core-client';
3
+ import { OperationState } from '@azure/core-lro';
3
4
  import { PagedAsyncIterableIterator } from '@azure/core-paging';
4
- import { PollerLike } from '@azure/core-lro';
5
- import { PollOperationState } from '@azure/core-lro';
5
+ import { SimplePollerLike } from '@azure/core-lro';
6
+
7
+ /**
8
+ * Defines values for Action. \
9
+ * {@link KnownAction} can be used interchangeably with Action,
10
+ * this enum contains the known values that the service supports.
11
+ * ### Known values supported by the service
12
+ * **Allow**
13
+ */
14
+ export declare type Action = string;
15
+
16
+ /**
17
+ * Defines values for ActionType. \
18
+ * {@link KnownActionType} can be used interchangeably with ActionType,
19
+ * this enum contains the known values that the service supports.
20
+ * ### Known values supported by the service
21
+ * **Internal**
22
+ */
23
+ export declare type ActionType = string;
6
24
 
7
25
  /**
8
26
  * Defines values for CreatedByType. \
@@ -18,11 +36,6 @@ export declare type CreatedByType = string;
18
36
 
19
37
  /** Response for ElasticSan request. */
20
38
  export declare interface ElasticSan extends TrackedResource {
21
- /**
22
- * Resource metadata required by ARM RPC
23
- * NOTE: This property will not be serialized. It can only be populated by the server.
24
- */
25
- readonly systemData?: SystemData;
26
39
  /** resource sku */
27
40
  sku: Sku;
28
41
  /** Logical zone for Elastic San resource; example: ["1"]. */
@@ -61,12 +74,19 @@ export declare interface ElasticSan extends TrackedResource {
61
74
  * NOTE: This property will not be serialized. It can only be populated by the server.
62
75
  */
63
76
  readonly totalSizeTiB?: number;
77
+ /**
78
+ * The list of Private Endpoint Connections.
79
+ * NOTE: This property will not be serialized. It can only be populated by the server.
80
+ */
81
+ readonly privateEndpointConnections?: PrivateEndpointConnection[];
82
+ /** Allow or disallow public network access to ElasticSan. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. */
83
+ publicNetworkAccess?: PublicNetworkAccess;
64
84
  }
65
85
 
66
86
  /** List of Elastic Sans */
67
87
  export declare interface ElasticSanList {
68
88
  /** An array of Elastic San objects. */
69
- value: ElasticSan[];
89
+ value?: ElasticSan[];
70
90
  /**
71
91
  * URI to fetch the next section of the paginated response.
72
92
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -92,6 +112,9 @@ export declare class ElasticSanManagement extends coreClient.ServiceClient {
92
112
  elasticSans: ElasticSans;
93
113
  volumeGroups: VolumeGroups;
94
114
  volumes: Volumes;
115
+ privateEndpointConnections: PrivateEndpointConnections;
116
+ privateLinkResources: PrivateLinkResources;
117
+ volumeSnapshots: VolumeSnapshots;
95
118
  }
96
119
 
97
120
  /** Optional parameters. */
@@ -104,42 +127,6 @@ export declare interface ElasticSanManagementOptionalParams extends coreClient.S
104
127
  endpoint?: string;
105
128
  }
106
129
 
107
- /** Metadata about an operation. */
108
- export declare interface ElasticSanOperationDisplay {
109
- /** Localized friendly form of the resource provider name. */
110
- provider: string;
111
- /** Localized friendly form of the resource type related to this action/operation. */
112
- resource: string;
113
- /** Localized friendly name for the operation, as it should be shown to the user. */
114
- operation: string;
115
- /** Localized friendly description for the operation, as it should be shown to the user. */
116
- description: string;
117
- }
118
-
119
- /** List of operations supported by the RP. */
120
- export declare interface ElasticSanOperationListResult {
121
- /** An array of operations supported by the ElasticSan RP. */
122
- value: ElasticSanRPOperation[];
123
- /** URI to fetch the next section of the paginated response. */
124
- nextLink?: string;
125
- }
126
-
127
- /** Description of a ElasticSan RP Operation */
128
- export declare interface ElasticSanRPOperation {
129
- /** The name of the operation being performed on this particular object */
130
- name: string;
131
- /**
132
- * Indicates whether the operation applies to data-plane.
133
- * NOTE: This property will not be serialized. It can only be populated by the server.
134
- */
135
- readonly isDataAction?: boolean;
136
- /**
137
- * Additional metadata about RP operation.
138
- * NOTE: This property will not be serialized. It can only be populated by the server.
139
- */
140
- readonly display?: ElasticSanOperationDisplay;
141
- }
142
-
143
130
  /** Interface representing a ElasticSans. */
144
131
  export declare interface ElasticSans {
145
132
  /**
@@ -160,7 +147,7 @@ export declare interface ElasticSans {
160
147
  * @param parameters Elastic San object.
161
148
  * @param options The options parameters.
162
149
  */
163
- beginCreate(resourceGroupName: string, elasticSanName: string, parameters: ElasticSan, options?: ElasticSansCreateOptionalParams): Promise<PollerLike<PollOperationState<ElasticSansCreateResponse>, ElasticSansCreateResponse>>;
150
+ beginCreate(resourceGroupName: string, elasticSanName: string, parameters: ElasticSan, options?: ElasticSansCreateOptionalParams): Promise<SimplePollerLike<OperationState<ElasticSansCreateResponse>, ElasticSansCreateResponse>>;
164
151
  /**
165
152
  * Create ElasticSan.
166
153
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -176,7 +163,7 @@ export declare interface ElasticSans {
176
163
  * @param parameters Elastic San object.
177
164
  * @param options The options parameters.
178
165
  */
179
- beginUpdate(resourceGroupName: string, elasticSanName: string, parameters: ElasticSanUpdate, options?: ElasticSansUpdateOptionalParams): Promise<PollerLike<PollOperationState<ElasticSansUpdateResponse>, ElasticSansUpdateResponse>>;
166
+ beginUpdate(resourceGroupName: string, elasticSanName: string, parameters: ElasticSanUpdate, options?: ElasticSansUpdateOptionalParams): Promise<SimplePollerLike<OperationState<ElasticSansUpdateResponse>, ElasticSansUpdateResponse>>;
180
167
  /**
181
168
  * Update a Elastic San.
182
169
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -191,7 +178,7 @@ export declare interface ElasticSans {
191
178
  * @param elasticSanName The name of the ElasticSan.
192
179
  * @param options The options parameters.
193
180
  */
194
- beginDelete(resourceGroupName: string, elasticSanName: string, options?: ElasticSansDeleteOptionalParams): Promise<PollerLike<PollOperationState<void>, void>>;
181
+ beginDelete(resourceGroupName: string, elasticSanName: string, options?: ElasticSansDeleteOptionalParams): Promise<SimplePollerLike<OperationState<void>, void>>;
195
182
  /**
196
183
  * Delete a Elastic San.
197
184
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -219,6 +206,11 @@ export declare interface ElasticSansCreateOptionalParams extends coreClient.Oper
219
206
  /** Contains response data for the create operation. */
220
207
  export declare type ElasticSansCreateResponse = ElasticSan;
221
208
 
209
+ /** Defines headers for ElasticSans_delete operation. */
210
+ export declare interface ElasticSansDeleteHeaders {
211
+ location?: string;
212
+ }
213
+
222
214
  /** Optional parameters. */
223
215
  export declare interface ElasticSansDeleteOptionalParams extends coreClient.OperationOptions {
224
216
  /** Delay to wait until next poll, in milliseconds. */
@@ -262,6 +254,11 @@ export declare interface ElasticSansListBySubscriptionOptionalParams extends cor
262
254
  /** Contains response data for the listBySubscription operation. */
263
255
  export declare type ElasticSansListBySubscriptionResponse = ElasticSanList;
264
256
 
257
+ /** Defines headers for ElasticSans_update operation. */
258
+ export declare interface ElasticSansUpdateHeaders {
259
+ location?: string;
260
+ }
261
+
265
262
  /** Optional parameters. */
266
263
  export declare interface ElasticSansUpdateOptionalParams extends coreClient.OperationOptions {
267
264
  /** Delay to wait until next poll, in milliseconds. */
@@ -283,6 +280,22 @@ export declare interface ElasticSanUpdate {
283
280
  baseSizeTiB?: number;
284
281
  /** Extended size of the Elastic San appliance in TiB. */
285
282
  extendedCapacitySizeTiB?: number;
283
+ /** Allow or disallow public network access to ElasticSan Account. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. */
284
+ publicNetworkAccess?: PublicNetworkAccess;
285
+ }
286
+
287
+ /** Encryption identity for the volume group. */
288
+ export declare interface EncryptionIdentity {
289
+ /** Resource identifier of the UserAssigned identity to be associated with server-side encryption on the volume group. */
290
+ encryptionUserAssignedIdentity?: string;
291
+ }
292
+
293
+ /** The encryption settings on the volume group. */
294
+ export declare interface EncryptionProperties {
295
+ /** Properties provided by key vault. */
296
+ keyVaultProperties?: KeyVaultProperties;
297
+ /** The identity to be used with service-side encryption at rest. */
298
+ encryptionIdentity?: EncryptionIdentity;
286
299
  }
287
300
 
288
301
  /**
@@ -290,7 +303,8 @@ export declare interface ElasticSanUpdate {
290
303
  * {@link KnownEncryptionType} can be used interchangeably with EncryptionType,
291
304
  * this enum contains the known values that the service supports.
292
305
  * ### Known values supported by the service
293
- * **EncryptionAtRestWithPlatformKey**: Volume is encrypted at rest with Platform managed key. It is the default encryption type.
306
+ * **EncryptionAtRestWithPlatformKey**: Volume is encrypted at rest with Platform managed key. It is the default encryption type. \
307
+ * **EncryptionAtRestWithCustomerManagedKey**: Volume is encrypted at rest with Customer managed key that can be changed and revoked by a customer.
294
308
  */
295
309
  export declare type EncryptionType = string;
296
310
 
@@ -308,14 +322,8 @@ export declare interface ErrorAdditionalInfo {
308
322
  readonly info?: Record<string, unknown>;
309
323
  }
310
324
 
311
- /** The resource management error response. */
312
- export declare interface ErrorModel {
313
- /** RP error response. */
314
- error?: ErrorResponse;
315
- }
316
-
317
- /** The resource management error response. */
318
- export declare interface ErrorResponse {
325
+ /** The error detail. */
326
+ export declare interface ErrorDetail {
319
327
  /**
320
328
  * The error code.
321
329
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -335,7 +343,7 @@ export declare interface ErrorResponse {
335
343
  * The error details.
336
344
  * NOTE: This property will not be serialized. It can only be populated by the server.
337
345
  */
338
- readonly details?: ErrorResponse[];
346
+ readonly details?: ErrorDetail[];
339
347
  /**
340
348
  * The error additional info.
341
349
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -343,6 +351,52 @@ export declare interface ErrorResponse {
343
351
  readonly additionalInfo?: ErrorAdditionalInfo[];
344
352
  }
345
353
 
354
+ /** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */
355
+ export declare interface ErrorResponse {
356
+ /** The error object. */
357
+ error?: ErrorDetail;
358
+ }
359
+
360
+ /**
361
+ * Given the last `.value` produced by the `byPage` iterator,
362
+ * returns a continuation token that can be used to begin paging from
363
+ * that point later.
364
+ * @param page An object from accessing `value` on the IteratorResult from a `byPage` iterator.
365
+ * @returns The continuation token that can be passed into byPage() during future calls.
366
+ */
367
+ export declare function getContinuationToken(page: unknown): string | undefined;
368
+
369
+ /** Identity for the resource. */
370
+ export declare interface Identity {
371
+ /**
372
+ * The principal ID of resource identity.
373
+ * NOTE: This property will not be serialized. It can only be populated by the server.
374
+ */
375
+ readonly principalId?: string;
376
+ /**
377
+ * The tenant ID of resource.
378
+ * NOTE: This property will not be serialized. It can only be populated by the server.
379
+ */
380
+ readonly tenantId?: string;
381
+ /** The identity type. */
382
+ type: IdentityType;
383
+ /** 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. */
384
+ userAssignedIdentities?: {
385
+ [propertyName: string]: UserAssignedIdentity;
386
+ };
387
+ }
388
+
389
+ /**
390
+ * Defines values for IdentityType. \
391
+ * {@link KnownIdentityType} can be used interchangeably with IdentityType,
392
+ * this enum contains the known values that the service supports.
393
+ * ### Known values supported by the service
394
+ * **None** \
395
+ * **SystemAssigned** \
396
+ * **UserAssigned**
397
+ */
398
+ export declare type IdentityType = string;
399
+
346
400
  /** Iscsi target information */
347
401
  export declare interface IscsiTargetInfo {
348
402
  /**
@@ -369,6 +423,43 @@ export declare interface IscsiTargetInfo {
369
423
  status?: OperationalStatus;
370
424
  }
371
425
 
426
+ /** Properties of key vault. */
427
+ export declare interface KeyVaultProperties {
428
+ /** The name of KeyVault key. */
429
+ keyName?: string;
430
+ /** The version of KeyVault key. */
431
+ keyVersion?: string;
432
+ /** The Uri of KeyVault. */
433
+ keyVaultUri?: string;
434
+ /**
435
+ * The object identifier of the current versioned Key Vault Key in use.
436
+ * NOTE: This property will not be serialized. It can only be populated by the server.
437
+ */
438
+ readonly currentVersionedKeyIdentifier?: string;
439
+ /**
440
+ * Timestamp of last rotation of the Key Vault Key.
441
+ * NOTE: This property will not be serialized. It can only be populated by the server.
442
+ */
443
+ readonly lastKeyRotationTimestamp?: Date;
444
+ /**
445
+ * This is a read only property that represents the expiration time of the current version of the customer managed key used for encryption.
446
+ * NOTE: This property will not be serialized. It can only be populated by the server.
447
+ */
448
+ readonly currentVersionedKeyExpirationTimestamp?: Date;
449
+ }
450
+
451
+ /** Known values of {@link Action} that the service accepts. */
452
+ export declare enum KnownAction {
453
+ /** Allow */
454
+ Allow = "Allow"
455
+ }
456
+
457
+ /** Known values of {@link ActionType} that the service accepts. */
458
+ export declare enum KnownActionType {
459
+ /** Internal */
460
+ Internal = "Internal"
461
+ }
462
+
372
463
  /** Known values of {@link CreatedByType} that the service accepts. */
373
464
  export declare enum KnownCreatedByType {
374
465
  /** User */
@@ -384,7 +475,19 @@ export declare enum KnownCreatedByType {
384
475
  /** Known values of {@link EncryptionType} that the service accepts. */
385
476
  export declare enum KnownEncryptionType {
386
477
  /** Volume is encrypted at rest with Platform managed key. It is the default encryption type. */
387
- EncryptionAtRestWithPlatformKey = "EncryptionAtRestWithPlatformKey"
478
+ EncryptionAtRestWithPlatformKey = "EncryptionAtRestWithPlatformKey",
479
+ /** Volume is encrypted at rest with Customer managed key that can be changed and revoked by a customer. */
480
+ EncryptionAtRestWithCustomerManagedKey = "EncryptionAtRestWithCustomerManagedKey"
481
+ }
482
+
483
+ /** Known values of {@link IdentityType} that the service accepts. */
484
+ export declare enum KnownIdentityType {
485
+ /** None */
486
+ None = "None",
487
+ /** SystemAssigned */
488
+ SystemAssigned = "SystemAssigned",
489
+ /** UserAssigned */
490
+ UserAssigned = "UserAssigned"
388
491
  }
389
492
 
390
493
  /** Known values of {@link OperationalStatus} that the service accepts. */
@@ -407,6 +510,28 @@ export declare enum KnownOperationalStatus {
407
510
  StoppedDeallocated = "Stopped (deallocated)"
408
511
  }
409
512
 
513
+ /** Known values of {@link Origin} that the service accepts. */
514
+ export declare enum KnownOrigin {
515
+ /** User */
516
+ User = "user",
517
+ /** System */
518
+ System = "system",
519
+ /** UserSystem */
520
+ UserSystem = "user,system"
521
+ }
522
+
523
+ /** Known values of {@link PrivateEndpointServiceConnectionStatus} that the service accepts. */
524
+ export declare enum KnownPrivateEndpointServiceConnectionStatus {
525
+ /** Pending */
526
+ Pending = "Pending",
527
+ /** Approved */
528
+ Approved = "Approved",
529
+ /** Failed */
530
+ Failed = "Failed",
531
+ /** Rejected */
532
+ Rejected = "Rejected"
533
+ }
534
+
410
535
  /** Known values of {@link ProvisioningStates} that the service accepts. */
411
536
  export declare enum KnownProvisioningStates {
412
537
  /** Invalid */
@@ -427,6 +552,14 @@ export declare enum KnownProvisioningStates {
427
552
  Deleting = "Deleting"
428
553
  }
429
554
 
555
+ /** Known values of {@link PublicNetworkAccess} that the service accepts. */
556
+ export declare enum KnownPublicNetworkAccess {
557
+ /** Enabled */
558
+ Enabled = "Enabled",
559
+ /** Disabled */
560
+ Disabled = "Disabled"
561
+ }
562
+
430
563
  /** Known values of {@link SkuName} that the service accepts. */
431
564
  export declare enum KnownSkuName {
432
565
  /** Premium locally redundant storage */
@@ -449,12 +582,74 @@ export declare enum KnownStorageTargetType {
449
582
  None = "None"
450
583
  }
451
584
 
585
+ /** Known values of {@link VolumeCreateOption} that the service accepts. */
586
+ export declare enum KnownVolumeCreateOption {
587
+ /** None */
588
+ None = "None",
589
+ /** VolumeSnapshot */
590
+ VolumeSnapshot = "VolumeSnapshot",
591
+ /** DiskSnapshot */
592
+ DiskSnapshot = "DiskSnapshot",
593
+ /** Disk */
594
+ Disk = "Disk",
595
+ /** DiskRestorePoint */
596
+ DiskRestorePoint = "DiskRestorePoint"
597
+ }
598
+
599
+ /** Known values of {@link XMsDeleteSnapshots} that the service accepts. */
600
+ export declare enum KnownXMsDeleteSnapshots {
601
+ /** True */
602
+ True = "true",
603
+ /** False */
604
+ False = "false"
605
+ }
606
+
607
+ /** Known values of {@link XMsForceDelete} that the service accepts. */
608
+ export declare enum KnownXMsForceDelete {
609
+ /** True */
610
+ True = "true",
611
+ /** False */
612
+ False = "false"
613
+ }
614
+
615
+ /** Parent resource information. */
616
+ export declare interface ManagedByInfo {
617
+ /** Resource ID of the resource managing the volume, this is a restricted field and can only be set for internal use. */
618
+ resourceId?: string;
619
+ }
620
+
452
621
  /** A set of rules governing the network accessibility. */
453
622
  export declare interface NetworkRuleSet {
454
623
  /** The list of virtual network rules. */
455
624
  virtualNetworkRules?: VirtualNetworkRule[];
456
625
  }
457
626
 
627
+ /** Details of a REST API operation, returned from the Resource Provider Operations API */
628
+ export declare interface Operation {
629
+ /**
630
+ * The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action"
631
+ * NOTE: This property will not be serialized. It can only be populated by the server.
632
+ */
633
+ readonly name?: string;
634
+ /**
635
+ * Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane operations.
636
+ * NOTE: This property will not be serialized. It can only be populated by the server.
637
+ */
638
+ readonly isDataAction?: boolean;
639
+ /** Localized display information for this particular operation. */
640
+ display?: OperationDisplay;
641
+ /**
642
+ * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system"
643
+ * NOTE: This property will not be serialized. It can only be populated by the server.
644
+ */
645
+ readonly origin?: Origin;
646
+ /**
647
+ * Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
648
+ * NOTE: This property will not be serialized. It can only be populated by the server.
649
+ */
650
+ readonly actionType?: ActionType;
651
+ }
652
+
458
653
  /**
459
654
  * Defines values for OperationalStatus. \
460
655
  * {@link KnownOperationalStatus} can be used interchangeably with OperationalStatus,
@@ -471,13 +666,51 @@ export declare interface NetworkRuleSet {
471
666
  */
472
667
  export declare type OperationalStatus = string;
473
668
 
669
+ /** Localized display information for this particular operation. */
670
+ export declare interface OperationDisplay {
671
+ /**
672
+ * The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute".
673
+ * NOTE: This property will not be serialized. It can only be populated by the server.
674
+ */
675
+ readonly provider?: string;
676
+ /**
677
+ * The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections".
678
+ * NOTE: This property will not be serialized. It can only be populated by the server.
679
+ */
680
+ readonly resource?: string;
681
+ /**
682
+ * The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine".
683
+ * NOTE: This property will not be serialized. It can only be populated by the server.
684
+ */
685
+ readonly operation?: string;
686
+ /**
687
+ * The short, localized friendly description of the operation; suitable for tool tips and detailed views.
688
+ * NOTE: This property will not be serialized. It can only be populated by the server.
689
+ */
690
+ readonly description?: string;
691
+ }
692
+
693
+ /** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */
694
+ export declare interface OperationListResult {
695
+ /**
696
+ * List of operations supported by the resource provider
697
+ * NOTE: This property will not be serialized. It can only be populated by the server.
698
+ */
699
+ readonly value?: Operation[];
700
+ /**
701
+ * URL to get the next set of operation list results (if there are any).
702
+ * NOTE: This property will not be serialized. It can only be populated by the server.
703
+ */
704
+ readonly nextLink?: string;
705
+ }
706
+
474
707
  /** Interface representing a Operations. */
475
708
  export declare interface Operations {
476
709
  /**
477
710
  * Gets a list of ElasticSan operations.
478
711
  * @param options The options parameters.
479
712
  */
480
- list(options?: OperationsListOptionalParams): PagedAsyncIterableIterator<ElasticSanRPOperation>;
713
+ list(options?: OperationsListOptionalParams): PagedAsyncIterableIterator<Operation>;
481
714
  }
482
715
 
483
716
  /** Optional parameters. */
@@ -485,7 +718,211 @@ export declare interface OperationsListOptionalParams extends coreClient.Operati
485
718
  }
486
719
 
487
720
  /** Contains response data for the list operation. */
488
- export declare type OperationsListResponse = ElasticSanOperationListResult;
721
+ export declare type OperationsListResponse = OperationListResult;
722
+
723
+ /**
724
+ * Defines values for Origin. \
725
+ * {@link KnownOrigin} can be used interchangeably with Origin,
726
+ * this enum contains the known values that the service supports.
727
+ * ### Known values supported by the service
728
+ * **user** \
729
+ * **system** \
730
+ * **user,system**
731
+ */
732
+ export declare type Origin = string;
733
+
734
+ /** Response for PrivateEndpoint */
735
+ export declare interface PrivateEndpoint {
736
+ /**
737
+ * The ARM identifier for Private Endpoint
738
+ * NOTE: This property will not be serialized. It can only be populated by the server.
739
+ */
740
+ readonly id?: string;
741
+ }
742
+
743
+ /** Response for PrivateEndpoint Connection object */
744
+ export declare interface PrivateEndpointConnection extends Resource {
745
+ /**
746
+ * Provisioning State of Private Endpoint connection resource
747
+ * NOTE: This property will not be serialized. It can only be populated by the server.
748
+ */
749
+ readonly provisioningState?: ProvisioningStates;
750
+ /** Private Endpoint resource */
751
+ privateEndpoint?: PrivateEndpoint;
752
+ /** Private Link Service Connection State. */
753
+ privateLinkServiceConnectionState: PrivateLinkServiceConnectionState;
754
+ /** List of resources private endpoint is mapped */
755
+ groupIds?: string[];
756
+ }
757
+
758
+ /** List of private endpoint connections associated with SAN */
759
+ export declare interface PrivateEndpointConnectionListResult {
760
+ /** Array of private endpoint connections */
761
+ value?: PrivateEndpointConnection[];
762
+ /**
763
+ * URI to fetch the next section of the paginated response.
764
+ * NOTE: This property will not be serialized. It can only be populated by the server.
765
+ */
766
+ readonly nextLink?: string;
767
+ }
768
+
769
+ /** Interface representing a PrivateEndpointConnections. */
770
+ export declare interface PrivateEndpointConnections {
771
+ /**
772
+ * List all Private Endpoint Connections associated with the Elastic San.
773
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
774
+ * @param elasticSanName The name of the ElasticSan.
775
+ * @param options The options parameters.
776
+ */
777
+ list(resourceGroupName: string, elasticSanName: string, options?: PrivateEndpointConnectionsListOptionalParams): PagedAsyncIterableIterator<PrivateEndpointConnection>;
778
+ /**
779
+ * Update the state of specified private endpoint connection associated with the Elastic San
780
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
781
+ * @param elasticSanName The name of the ElasticSan.
782
+ * @param privateEndpointConnectionName The name of the Private Endpoint connection.
783
+ * @param parameters Private Endpoint Connection Approval object.
784
+ * @param options The options parameters.
785
+ */
786
+ beginCreate(resourceGroupName: string, elasticSanName: string, privateEndpointConnectionName: string, parameters: PrivateEndpointConnection, options?: PrivateEndpointConnectionsCreateOptionalParams): Promise<SimplePollerLike<OperationState<PrivateEndpointConnectionsCreateResponse>, PrivateEndpointConnectionsCreateResponse>>;
787
+ /**
788
+ * Update the state of specified private endpoint connection associated with the Elastic San
789
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
790
+ * @param elasticSanName The name of the ElasticSan.
791
+ * @param privateEndpointConnectionName The name of the Private Endpoint connection.
792
+ * @param parameters Private Endpoint Connection Approval object.
793
+ * @param options The options parameters.
794
+ */
795
+ beginCreateAndWait(resourceGroupName: string, elasticSanName: string, privateEndpointConnectionName: string, parameters: PrivateEndpointConnection, options?: PrivateEndpointConnectionsCreateOptionalParams): Promise<PrivateEndpointConnectionsCreateResponse>;
796
+ /**
797
+ * Gets the specified private endpoint connection associated with the Elastic San
798
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
799
+ * @param elasticSanName The name of the ElasticSan.
800
+ * @param privateEndpointConnectionName The name of the Private Endpoint connection.
801
+ * @param options The options parameters.
802
+ */
803
+ get(resourceGroupName: string, elasticSanName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsGetOptionalParams): Promise<PrivateEndpointConnectionsGetResponse>;
804
+ /**
805
+ * Deletes the specified private endpoint connection associated with the Elastic San
806
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
807
+ * @param elasticSanName The name of the ElasticSan.
808
+ * @param privateEndpointConnectionName The name of the Private Endpoint connection.
809
+ * @param options The options parameters.
810
+ */
811
+ beginDelete(resourceGroupName: string, elasticSanName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams): Promise<SimplePollerLike<OperationState<void>, void>>;
812
+ /**
813
+ * Deletes the specified private endpoint connection associated with the Elastic San
814
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
815
+ * @param elasticSanName The name of the ElasticSan.
816
+ * @param privateEndpointConnectionName The name of the Private Endpoint connection.
817
+ * @param options The options parameters.
818
+ */
819
+ beginDeleteAndWait(resourceGroupName: string, elasticSanName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams): Promise<void>;
820
+ }
821
+
822
+ /** Optional parameters. */
823
+ export declare interface PrivateEndpointConnectionsCreateOptionalParams extends coreClient.OperationOptions {
824
+ /** Delay to wait until next poll, in milliseconds. */
825
+ updateIntervalInMs?: number;
826
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
827
+ resumeFrom?: string;
828
+ }
829
+
830
+ /** Contains response data for the create operation. */
831
+ export declare type PrivateEndpointConnectionsCreateResponse = PrivateEndpointConnection;
832
+
833
+ /** Defines headers for PrivateEndpointConnections_delete operation. */
834
+ export declare interface PrivateEndpointConnectionsDeleteHeaders {
835
+ location?: string;
836
+ }
837
+
838
+ /** Optional parameters. */
839
+ export declare interface PrivateEndpointConnectionsDeleteOptionalParams extends coreClient.OperationOptions {
840
+ /** Delay to wait until next poll, in milliseconds. */
841
+ updateIntervalInMs?: number;
842
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
843
+ resumeFrom?: string;
844
+ }
845
+
846
+ /** Optional parameters. */
847
+ export declare interface PrivateEndpointConnectionsGetOptionalParams extends coreClient.OperationOptions {
848
+ }
849
+
850
+ /** Contains response data for the get operation. */
851
+ export declare type PrivateEndpointConnectionsGetResponse = PrivateEndpointConnection;
852
+
853
+ /** Optional parameters. */
854
+ export declare interface PrivateEndpointConnectionsListOptionalParams extends coreClient.OperationOptions {
855
+ }
856
+
857
+ /** Contains response data for the list operation. */
858
+ export declare type PrivateEndpointConnectionsListResponse = PrivateEndpointConnectionListResult;
859
+
860
+ /**
861
+ * Defines values for PrivateEndpointServiceConnectionStatus. \
862
+ * {@link KnownPrivateEndpointServiceConnectionStatus} can be used interchangeably with PrivateEndpointServiceConnectionStatus,
863
+ * this enum contains the known values that the service supports.
864
+ * ### Known values supported by the service
865
+ * **Pending** \
866
+ * **Approved** \
867
+ * **Failed** \
868
+ * **Rejected**
869
+ */
870
+ export declare type PrivateEndpointServiceConnectionStatus = string;
871
+
872
+ /** A private link resource */
873
+ export declare interface PrivateLinkResource extends Resource {
874
+ /**
875
+ * The private link resource group id.
876
+ * NOTE: This property will not be serialized. It can only be populated by the server.
877
+ */
878
+ readonly groupId?: string;
879
+ /**
880
+ * The private link resource required member names.
881
+ * NOTE: This property will not be serialized. It can only be populated by the server.
882
+ */
883
+ readonly requiredMembers?: string[];
884
+ /** The private link resource Private link DNS zone name. */
885
+ requiredZoneNames?: string[];
886
+ }
887
+
888
+ /** A list of private link resources */
889
+ export declare interface PrivateLinkResourceListResult {
890
+ /** Array of private link resources */
891
+ value?: PrivateLinkResource[];
892
+ /**
893
+ * URI to fetch the next section of the paginated response.
894
+ * NOTE: This property will not be serialized. It can only be populated by the server.
895
+ */
896
+ readonly nextLink?: string;
897
+ }
898
+
899
+ /** Interface representing a PrivateLinkResources. */
900
+ export declare interface PrivateLinkResources {
901
+ /**
902
+ * Gets the private link resources that need to be created for a elastic San.
903
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
904
+ * @param elasticSanName The name of the ElasticSan.
905
+ * @param options The options parameters.
906
+ */
907
+ listByElasticSan(resourceGroupName: string, elasticSanName: string, options?: PrivateLinkResourcesListByElasticSanOptionalParams): Promise<PrivateLinkResourcesListByElasticSanResponse>;
908
+ }
909
+
910
+ /** Optional parameters. */
911
+ export declare interface PrivateLinkResourcesListByElasticSanOptionalParams extends coreClient.OperationOptions {
912
+ }
913
+
914
+ /** Contains response data for the listByElasticSan operation. */
915
+ export declare type PrivateLinkResourcesListByElasticSanResponse = PrivateLinkResourceListResult;
916
+
917
+ /** Response for Private Link Service Connection state */
918
+ export declare interface PrivateLinkServiceConnectionState {
919
+ /** Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. */
920
+ status?: PrivateEndpointServiceConnectionStatus;
921
+ /** The reason for approval/rejection of the connection. */
922
+ description?: string;
923
+ /** A message indicating if changes on the service provider require any updates on the consumer. */
924
+ actionsRequired?: string;
925
+ }
489
926
 
490
927
  /**
491
928
  * Defines values for ProvisioningStates. \
@@ -503,27 +940,42 @@ export declare type OperationsListResponse = ElasticSanOperationListResult;
503
940
  */
504
941
  export declare type ProvisioningStates = string;
505
942
 
506
- /** The resource model definition. */
943
+ /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
944
+ export declare interface ProxyResource extends Resource {
945
+ }
946
+
947
+ /**
948
+ * Defines values for PublicNetworkAccess. \
949
+ * {@link KnownPublicNetworkAccess} can be used interchangeably with PublicNetworkAccess,
950
+ * this enum contains the known values that the service supports.
951
+ * ### Known values supported by the service
952
+ * **Enabled** \
953
+ * **Disabled**
954
+ */
955
+ export declare type PublicNetworkAccess = string;
956
+
957
+ /** Common fields that are returned in the response for all Azure Resource Manager resources */
507
958
  export declare interface Resource {
508
959
  /**
509
- * Azure resource identifier.
960
+ * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
510
961
  * NOTE: This property will not be serialized. It can only be populated by the server.
511
962
  */
512
963
  readonly id?: string;
513
964
  /**
514
- * Azure resource name.
965
+ * The name of the resource
515
966
  * NOTE: This property will not be serialized. It can only be populated by the server.
516
967
  */
517
968
  readonly name?: string;
518
969
  /**
519
- * Azure resource type.
970
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
520
971
  * NOTE: This property will not be serialized. It can only be populated by the server.
521
972
  */
522
973
  readonly type?: string;
523
- /** Azure resource tags. */
524
- tags?: {
525
- [propertyName: string]: string;
526
- };
974
+ /**
975
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
976
+ * NOTE: This property will not be serialized. It can only be populated by the server.
977
+ */
978
+ readonly systemData?: SystemData;
527
979
  }
528
980
 
529
981
  /** The SKU name. Required for account creation; optional for update. */
@@ -583,6 +1035,11 @@ export declare interface SkuInformationList {
583
1035
  * NOTE: This property will not be serialized. It can only be populated by the server.
584
1036
  */
585
1037
  readonly value?: SkuInformation[];
1038
+ /**
1039
+ * URI to fetch the next section of the paginated response.
1040
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1041
+ */
1042
+ readonly nextLink?: string;
586
1043
  }
587
1044
 
588
1045
  /** The location info. */
@@ -636,17 +1093,52 @@ export declare type SkusListResponse = SkuInformationList;
636
1093
  */
637
1094
  export declare type SkuTier = string;
638
1095
 
1096
+ /** Response for Volume Snapshot request. */
1097
+ export declare interface Snapshot extends ProxyResource {
1098
+ /** Data used when creating a volume snapshot. */
1099
+ creationData: SnapshotCreationData;
1100
+ /**
1101
+ * State of the operation on the resource.
1102
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1103
+ */
1104
+ readonly provisioningState?: ProvisioningStates;
1105
+ /**
1106
+ * Size of Source Volume
1107
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1108
+ */
1109
+ readonly sourceVolumeSizeGiB?: number;
1110
+ /**
1111
+ * Source Volume Name of a snapshot
1112
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1113
+ */
1114
+ readonly volumeName?: string;
1115
+ }
1116
+
1117
+ /** Data used when creating a volume snapshot. */
1118
+ export declare interface SnapshotCreationData {
1119
+ /** Fully qualified resource ID of the volume. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ElasticSan/elasticSans/{elasticSanName}/volumegroups/{volumeGroupName}/volumes/{volumeName}" */
1120
+ sourceId: string;
1121
+ }
1122
+
1123
+ /** List of Snapshots */
1124
+ export declare interface SnapshotList {
1125
+ /** An array of Snapshot objects. */
1126
+ value?: Snapshot[];
1127
+ /**
1128
+ * URI to fetch the next section of the paginated response.
1129
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1130
+ */
1131
+ readonly nextLink?: string;
1132
+ }
1133
+
639
1134
  /** Data source used when creating the volume. */
640
1135
  export declare interface SourceCreationData {
641
1136
  /** This enumerates the possible sources of a volume creation. */
642
- createSource?: "None";
643
- /** 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. */
644
- sourceUri?: string;
1137
+ createSource?: VolumeCreateOption;
1138
+ /** Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" */
1139
+ sourceId?: string;
645
1140
  }
646
1141
 
647
- /** Defines values for State. */
648
- export declare type State = "provisioning" | "deprovisioning" | "succeeded" | "failed" | "networkSourceDeleted";
649
-
650
1142
  /**
651
1143
  * Defines values for StorageTargetType. \
652
1144
  * {@link KnownStorageTargetType} can be used interchangeably with StorageTargetType,
@@ -673,10 +1165,28 @@ export declare interface SystemData {
673
1165
  lastModifiedAt?: Date;
674
1166
  }
675
1167
 
676
- /** The resource model definition for a ARM tracked top level resource. */
1168
+ /** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */
677
1169
  export declare interface TrackedResource extends Resource {
678
- /** The geo-location where the resource lives. */
679
- location?: string;
1170
+ /** Resource tags. */
1171
+ tags?: {
1172
+ [propertyName: string]: string;
1173
+ };
1174
+ /** The geo-location where the resource lives */
1175
+ location: string;
1176
+ }
1177
+
1178
+ /** UserAssignedIdentity for the resource. */
1179
+ export declare interface UserAssignedIdentity {
1180
+ /**
1181
+ * The principal ID of the identity.
1182
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1183
+ */
1184
+ readonly principalId?: string;
1185
+ /**
1186
+ * The client ID of the identity.
1187
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1188
+ */
1189
+ readonly clientId?: string;
680
1190
  }
681
1191
 
682
1192
  /** Virtual Network rule. */
@@ -684,21 +1194,11 @@ export declare interface VirtualNetworkRule {
684
1194
  /** Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}. */
685
1195
  virtualNetworkResourceId: string;
686
1196
  /** The action of virtual network rule. */
687
- action?: "Allow";
688
- /**
689
- * Gets the state of virtual network rule.
690
- * NOTE: This property will not be serialized. It can only be populated by the server.
691
- */
692
- readonly state?: State;
1197
+ action?: Action;
693
1198
  }
694
1199
 
695
1200
  /** Response for Volume request. */
696
- export declare interface Volume extends Resource {
697
- /**
698
- * Resource metadata required by ARM RPC
699
- * NOTE: This property will not be serialized. It can only be populated by the server.
700
- */
701
- readonly systemData?: SystemData;
1201
+ export declare interface Volume extends ProxyResource {
702
1202
  /**
703
1203
  * Unique Id of the volume in GUID format
704
1204
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -707,21 +1207,38 @@ export declare interface Volume extends Resource {
707
1207
  /** State of the operation on the resource. */
708
1208
  creationData?: SourceCreationData;
709
1209
  /** Volume size. */
710
- sizeGiB?: number;
1210
+ sizeGiB: number;
711
1211
  /**
712
1212
  * Storage target information
713
1213
  * NOTE: This property will not be serialized. It can only be populated by the server.
714
1214
  */
715
1215
  readonly storageTarget?: IscsiTargetInfo;
716
- }
717
-
718
- /** Response for Volume Group request. */
719
- export declare interface VolumeGroup extends Resource {
1216
+ /** Parent resource information. */
1217
+ managedBy?: ManagedByInfo;
720
1218
  /**
721
- * Resource metadata required by ARM RPC
1219
+ * State of the operation on the resource.
722
1220
  * NOTE: This property will not be serialized. It can only be populated by the server.
723
1221
  */
724
- readonly systemData?: SystemData;
1222
+ readonly provisioningState?: ProvisioningStates;
1223
+ }
1224
+
1225
+ /**
1226
+ * Defines values for VolumeCreateOption. \
1227
+ * {@link KnownVolumeCreateOption} can be used interchangeably with VolumeCreateOption,
1228
+ * this enum contains the known values that the service supports.
1229
+ * ### Known values supported by the service
1230
+ * **None** \
1231
+ * **VolumeSnapshot** \
1232
+ * **DiskSnapshot** \
1233
+ * **Disk** \
1234
+ * **DiskRestorePoint**
1235
+ */
1236
+ export declare type VolumeCreateOption = string;
1237
+
1238
+ /** Response for Volume Group request. */
1239
+ export declare interface VolumeGroup extends ProxyResource {
1240
+ /** The identity of the resource. */
1241
+ identity?: Identity;
725
1242
  /**
726
1243
  * State of the operation on the resource.
727
1244
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -731,14 +1248,21 @@ export declare interface VolumeGroup extends Resource {
731
1248
  protocolType?: StorageTargetType;
732
1249
  /** Type of encryption */
733
1250
  encryption?: EncryptionType;
1251
+ /** Encryption Properties describing Key Vault and Identity information */
1252
+ encryptionProperties?: EncryptionProperties;
734
1253
  /** A collection of rules governing the accessibility from specific network locations. */
735
1254
  networkAcls?: NetworkRuleSet;
1255
+ /**
1256
+ * The list of Private Endpoint Connections.
1257
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1258
+ */
1259
+ readonly privateEndpointConnections?: PrivateEndpointConnection[];
736
1260
  }
737
1261
 
738
1262
  /** List of Volume Groups */
739
1263
  export declare interface VolumeGroupList {
740
1264
  /** An array of Volume Groups objects. */
741
- value: VolumeGroup[];
1265
+ value?: VolumeGroup[];
742
1266
  /**
743
1267
  * URI to fetch the next section of the paginated response.
744
1268
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -763,7 +1287,7 @@ export declare interface VolumeGroups {
763
1287
  * @param parameters Volume Group object.
764
1288
  * @param options The options parameters.
765
1289
  */
766
- beginCreate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, parameters: VolumeGroup, options?: VolumeGroupsCreateOptionalParams): Promise<PollerLike<PollOperationState<VolumeGroupsCreateResponse>, VolumeGroupsCreateResponse>>;
1290
+ beginCreate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, parameters: VolumeGroup, options?: VolumeGroupsCreateOptionalParams): Promise<SimplePollerLike<OperationState<VolumeGroupsCreateResponse>, VolumeGroupsCreateResponse>>;
767
1291
  /**
768
1292
  * Create a Volume Group.
769
1293
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -781,7 +1305,7 @@ export declare interface VolumeGroups {
781
1305
  * @param parameters Volume Group object.
782
1306
  * @param options The options parameters.
783
1307
  */
784
- beginUpdate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, parameters: VolumeGroupUpdate, options?: VolumeGroupsUpdateOptionalParams): Promise<PollerLike<PollOperationState<VolumeGroupsUpdateResponse>, VolumeGroupsUpdateResponse>>;
1308
+ beginUpdate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, parameters: VolumeGroupUpdate, options?: VolumeGroupsUpdateOptionalParams): Promise<SimplePollerLike<OperationState<VolumeGroupsUpdateResponse>, VolumeGroupsUpdateResponse>>;
785
1309
  /**
786
1310
  * Update an VolumeGroup.
787
1311
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -798,7 +1322,7 @@ export declare interface VolumeGroups {
798
1322
  * @param volumeGroupName The name of the VolumeGroup.
799
1323
  * @param options The options parameters.
800
1324
  */
801
- beginDelete(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, options?: VolumeGroupsDeleteOptionalParams): Promise<PollerLike<PollOperationState<void>, void>>;
1325
+ beginDelete(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, options?: VolumeGroupsDeleteOptionalParams): Promise<SimplePollerLike<OperationState<void>, void>>;
802
1326
  /**
803
1327
  * Delete an VolumeGroup.
804
1328
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -828,6 +1352,11 @@ export declare interface VolumeGroupsCreateOptionalParams extends coreClient.Ope
828
1352
  /** Contains response data for the create operation. */
829
1353
  export declare type VolumeGroupsCreateResponse = VolumeGroup;
830
1354
 
1355
+ /** Defines headers for VolumeGroups_delete operation. */
1356
+ export declare interface VolumeGroupsDeleteHeaders {
1357
+ location?: string;
1358
+ }
1359
+
831
1360
  /** Optional parameters. */
832
1361
  export declare interface VolumeGroupsDeleteOptionalParams extends coreClient.OperationOptions {
833
1362
  /** Delay to wait until next poll, in milliseconds. */
@@ -857,6 +1386,11 @@ export declare interface VolumeGroupsListByElasticSanOptionalParams extends core
857
1386
  /** Contains response data for the listByElasticSan operation. */
858
1387
  export declare type VolumeGroupsListByElasticSanResponse = VolumeGroupList;
859
1388
 
1389
+ /** Defines headers for VolumeGroups_update operation. */
1390
+ export declare interface VolumeGroupsUpdateHeaders {
1391
+ location?: string;
1392
+ }
1393
+
860
1394
  /** Optional parameters. */
861
1395
  export declare interface VolumeGroupsUpdateOptionalParams extends coreClient.OperationOptions {
862
1396
  /** Delay to wait until next poll, in milliseconds. */
@@ -870,14 +1404,14 @@ export declare type VolumeGroupsUpdateResponse = VolumeGroup;
870
1404
 
871
1405
  /** Volume Group request. */
872
1406
  export declare interface VolumeGroupUpdate {
873
- /** Resource tags. */
874
- tags?: {
875
- [propertyName: string]: string;
876
- };
1407
+ /** The identity of the resource. */
1408
+ identity?: Identity;
877
1409
  /** Type of storage target */
878
1410
  protocolType?: StorageTargetType;
879
1411
  /** Type of encryption */
880
1412
  encryption?: EncryptionType;
1413
+ /** Encryption Properties describing Key Vault and Identity information */
1414
+ encryptionProperties?: EncryptionProperties;
881
1415
  /** A collection of rules governing the accessibility from specific network locations. */
882
1416
  networkAcls?: NetworkRuleSet;
883
1417
  }
@@ -885,7 +1419,7 @@ export declare interface VolumeGroupUpdate {
885
1419
  /** List of Volumes */
886
1420
  export declare interface VolumeList {
887
1421
  /** An array of Volume objects. */
888
- value: Volume[];
1422
+ value?: Volume[];
889
1423
  /**
890
1424
  * URI to fetch the next section of the paginated response.
891
1425
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -912,7 +1446,7 @@ export declare interface Volumes {
912
1446
  * @param parameters Volume object.
913
1447
  * @param options The options parameters.
914
1448
  */
915
- beginCreate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, volumeName: string, parameters: Volume, options?: VolumesCreateOptionalParams): Promise<PollerLike<PollOperationState<VolumesCreateResponse>, VolumesCreateResponse>>;
1449
+ beginCreate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, volumeName: string, parameters: Volume, options?: VolumesCreateOptionalParams): Promise<SimplePollerLike<OperationState<VolumesCreateResponse>, VolumesCreateResponse>>;
916
1450
  /**
917
1451
  * Create a Volume.
918
1452
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -932,7 +1466,7 @@ export declare interface Volumes {
932
1466
  * @param parameters Volume object.
933
1467
  * @param options The options parameters.
934
1468
  */
935
- beginUpdate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, volumeName: string, parameters: VolumeUpdate, options?: VolumesUpdateOptionalParams): Promise<PollerLike<PollOperationState<VolumesUpdateResponse>, VolumesUpdateResponse>>;
1469
+ beginUpdate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, volumeName: string, parameters: VolumeUpdate, options?: VolumesUpdateOptionalParams): Promise<SimplePollerLike<OperationState<VolumesUpdateResponse>, VolumesUpdateResponse>>;
936
1470
  /**
937
1471
  * Update an Volume.
938
1472
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -951,7 +1485,7 @@ export declare interface Volumes {
951
1485
  * @param volumeName The name of the Volume.
952
1486
  * @param options The options parameters.
953
1487
  */
954
- beginDelete(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, volumeName: string, options?: VolumesDeleteOptionalParams): Promise<PollerLike<PollOperationState<void>, void>>;
1488
+ beginDelete(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, volumeName: string, options?: VolumesDeleteOptionalParams): Promise<SimplePollerLike<OperationState<void>, void>>;
955
1489
  /**
956
1490
  * Delete an Volume.
957
1491
  * @param resourceGroupName The name of the resource group. The name is case insensitive.
@@ -983,8 +1517,17 @@ export declare interface VolumesCreateOptionalParams extends coreClient.Operatio
983
1517
  /** Contains response data for the create operation. */
984
1518
  export declare type VolumesCreateResponse = Volume;
985
1519
 
1520
+ /** Defines headers for Volumes_delete operation. */
1521
+ export declare interface VolumesDeleteHeaders {
1522
+ location?: string;
1523
+ }
1524
+
986
1525
  /** Optional parameters. */
987
1526
  export declare interface VolumesDeleteOptionalParams extends coreClient.OperationOptions {
1527
+ /** Optional, used to delete snapshots under volume. Allowed value are only true or false. Default value is false. */
1528
+ xMsDeleteSnapshots?: XMsDeleteSnapshots;
1529
+ /** Optional, used to delete volume if active sessions present. Allowed value are only true or false. Default value is false. */
1530
+ xMsForceDelete?: XMsForceDelete;
988
1531
  /** Delay to wait until next poll, in milliseconds. */
989
1532
  updateIntervalInMs?: number;
990
1533
  /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
@@ -1012,6 +1555,117 @@ export declare interface VolumesListByVolumeGroupOptionalParams extends coreClie
1012
1555
  /** Contains response data for the listByVolumeGroup operation. */
1013
1556
  export declare type VolumesListByVolumeGroupResponse = VolumeList;
1014
1557
 
1558
+ /** Interface representing a VolumeSnapshots. */
1559
+ export declare interface VolumeSnapshots {
1560
+ /**
1561
+ * List Snapshots in a VolumeGroup or List Snapshots by Volume (name) in a VolumeGroup using filter
1562
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
1563
+ * @param elasticSanName The name of the ElasticSan.
1564
+ * @param volumeGroupName The name of the VolumeGroup.
1565
+ * @param options The options parameters.
1566
+ */
1567
+ listByVolumeGroup(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, options?: VolumeSnapshotsListByVolumeGroupOptionalParams): PagedAsyncIterableIterator<Snapshot>;
1568
+ /**
1569
+ * Create a Volume Snapshot.
1570
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
1571
+ * @param elasticSanName The name of the ElasticSan.
1572
+ * @param volumeGroupName The name of the VolumeGroup.
1573
+ * @param snapshotName The name of the volume snapshot within the given volume group.
1574
+ * @param parameters Snapshot object.
1575
+ * @param options The options parameters.
1576
+ */
1577
+ beginCreate(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, snapshotName: string, parameters: Snapshot, options?: VolumeSnapshotsCreateOptionalParams): Promise<SimplePollerLike<OperationState<VolumeSnapshotsCreateResponse>, VolumeSnapshotsCreateResponse>>;
1578
+ /**
1579
+ * Create a Volume Snapshot.
1580
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
1581
+ * @param elasticSanName The name of the ElasticSan.
1582
+ * @param volumeGroupName The name of the VolumeGroup.
1583
+ * @param snapshotName The name of the volume snapshot within the given volume group.
1584
+ * @param parameters Snapshot object.
1585
+ * @param options The options parameters.
1586
+ */
1587
+ beginCreateAndWait(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, snapshotName: string, parameters: Snapshot, options?: VolumeSnapshotsCreateOptionalParams): Promise<VolumeSnapshotsCreateResponse>;
1588
+ /**
1589
+ * Delete a Volume Snapshot.
1590
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
1591
+ * @param elasticSanName The name of the ElasticSan.
1592
+ * @param volumeGroupName The name of the VolumeGroup.
1593
+ * @param snapshotName The name of the volume snapshot within the given volume group.
1594
+ * @param options The options parameters.
1595
+ */
1596
+ beginDelete(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, snapshotName: string, options?: VolumeSnapshotsDeleteOptionalParams): Promise<SimplePollerLike<OperationState<void>, void>>;
1597
+ /**
1598
+ * Delete a Volume Snapshot.
1599
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
1600
+ * @param elasticSanName The name of the ElasticSan.
1601
+ * @param volumeGroupName The name of the VolumeGroup.
1602
+ * @param snapshotName The name of the volume snapshot within the given volume group.
1603
+ * @param options The options parameters.
1604
+ */
1605
+ beginDeleteAndWait(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, snapshotName: string, options?: VolumeSnapshotsDeleteOptionalParams): Promise<void>;
1606
+ /**
1607
+ * Get a Volume Snapshot.
1608
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
1609
+ * @param elasticSanName The name of the ElasticSan.
1610
+ * @param volumeGroupName The name of the VolumeGroup.
1611
+ * @param snapshotName The name of the volume snapshot within the given volume group.
1612
+ * @param options The options parameters.
1613
+ */
1614
+ get(resourceGroupName: string, elasticSanName: string, volumeGroupName: string, snapshotName: string, options?: VolumeSnapshotsGetOptionalParams): Promise<VolumeSnapshotsGetResponse>;
1615
+ }
1616
+
1617
+ /** Optional parameters. */
1618
+ export declare interface VolumeSnapshotsCreateOptionalParams extends coreClient.OperationOptions {
1619
+ /** Delay to wait until next poll, in milliseconds. */
1620
+ updateIntervalInMs?: number;
1621
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1622
+ resumeFrom?: string;
1623
+ }
1624
+
1625
+ /** Contains response data for the create operation. */
1626
+ export declare type VolumeSnapshotsCreateResponse = Snapshot;
1627
+
1628
+ /** Defines headers for VolumeSnapshots_delete operation. */
1629
+ export declare interface VolumeSnapshotsDeleteHeaders {
1630
+ location?: string;
1631
+ }
1632
+
1633
+ /** Optional parameters. */
1634
+ export declare interface VolumeSnapshotsDeleteOptionalParams extends coreClient.OperationOptions {
1635
+ /** Delay to wait until next poll, in milliseconds. */
1636
+ updateIntervalInMs?: number;
1637
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1638
+ resumeFrom?: string;
1639
+ }
1640
+
1641
+ /** Optional parameters. */
1642
+ export declare interface VolumeSnapshotsGetOptionalParams extends coreClient.OperationOptions {
1643
+ }
1644
+
1645
+ /** Contains response data for the get operation. */
1646
+ export declare type VolumeSnapshotsGetResponse = Snapshot;
1647
+
1648
+ /** Optional parameters. */
1649
+ export declare interface VolumeSnapshotsListByVolumeGroupNextOptionalParams extends coreClient.OperationOptions {
1650
+ }
1651
+
1652
+ /** Contains response data for the listByVolumeGroupNext operation. */
1653
+ export declare type VolumeSnapshotsListByVolumeGroupNextResponse = SnapshotList;
1654
+
1655
+ /** Optional parameters. */
1656
+ export declare interface VolumeSnapshotsListByVolumeGroupOptionalParams extends coreClient.OperationOptions {
1657
+ /** Specify $filter='volumeName eq <volume name>' to filter on volume. */
1658
+ filter?: string;
1659
+ }
1660
+
1661
+ /** Contains response data for the listByVolumeGroup operation. */
1662
+ export declare type VolumeSnapshotsListByVolumeGroupResponse = SnapshotList;
1663
+
1664
+ /** Defines headers for Volumes_update operation. */
1665
+ export declare interface VolumesUpdateHeaders {
1666
+ location?: string;
1667
+ }
1668
+
1015
1669
  /** Optional parameters. */
1016
1670
  export declare interface VolumesUpdateOptionalParams extends coreClient.OperationOptions {
1017
1671
  /** Delay to wait until next poll, in milliseconds. */
@@ -1025,12 +1679,30 @@ export declare type VolumesUpdateResponse = Volume;
1025
1679
 
1026
1680
  /** Response for Volume request. */
1027
1681
  export declare interface VolumeUpdate {
1028
- /** Resource tags. */
1029
- tags?: {
1030
- [propertyName: string]: string;
1031
- };
1032
1682
  /** Volume size. */
1033
1683
  sizeGiB?: number;
1684
+ /** Parent resource information. */
1685
+ managedBy?: ManagedByInfo;
1034
1686
  }
1035
1687
 
1688
+ /**
1689
+ * Defines values for XMsDeleteSnapshots. \
1690
+ * {@link KnownXMsDeleteSnapshots} can be used interchangeably with XMsDeleteSnapshots,
1691
+ * this enum contains the known values that the service supports.
1692
+ * ### Known values supported by the service
1693
+ * **true** \
1694
+ * **false**
1695
+ */
1696
+ export declare type XMsDeleteSnapshots = string;
1697
+
1698
+ /**
1699
+ * Defines values for XMsForceDelete. \
1700
+ * {@link KnownXMsForceDelete} can be used interchangeably with XMsForceDelete,
1701
+ * this enum contains the known values that the service supports.
1702
+ * ### Known values supported by the service
1703
+ * **true** \
1704
+ * **false**
1705
+ */
1706
+ export declare type XMsForceDelete = string;
1707
+
1036
1708
  export { }