@azure/arm-reservations 7.2.1-alpha.20230202.1 → 8.0.0-alpha.20230210.2

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 (128) hide show
  1. package/CHANGELOG.md +71 -8
  2. package/LICENSE +1 -1
  3. package/dist/index.js +942 -224
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.min.js +1 -1
  6. package/dist/index.min.js.map +1 -1
  7. package/dist-esm/samples-dev/calculateExchangePostSample.js +22 -2
  8. package/dist-esm/samples-dev/calculateExchangePostSample.js.map +1 -1
  9. package/dist-esm/samples-dev/calculateRefundPostSample.js +10 -3
  10. package/dist-esm/samples-dev/calculateRefundPostSample.js.map +1 -1
  11. package/dist-esm/samples-dev/exchangePostSample.js +9 -2
  12. package/dist-esm/samples-dev/exchangePostSample.js.map +1 -1
  13. package/dist-esm/samples-dev/getAppliedReservationListSample.js +9 -2
  14. package/dist-esm/samples-dev/getAppliedReservationListSample.js.map +1 -1
  15. package/dist-esm/samples-dev/getCatalogSample.js +26 -5
  16. package/dist-esm/samples-dev/getCatalogSample.js.map +1 -1
  17. package/dist-esm/samples-dev/operationListSample.js +9 -2
  18. package/dist-esm/samples-dev/operationListSample.js.map +1 -1
  19. package/dist-esm/samples-dev/quotaCreateOrUpdateSample.js +10 -3
  20. package/dist-esm/samples-dev/quotaCreateOrUpdateSample.js.map +1 -1
  21. package/dist-esm/samples-dev/quotaGetSample.js +8 -1
  22. package/dist-esm/samples-dev/quotaGetSample.js.map +1 -1
  23. package/dist-esm/samples-dev/quotaListSample.js +9 -2
  24. package/dist-esm/samples-dev/quotaListSample.js.map +1 -1
  25. package/dist-esm/samples-dev/quotaRequestStatusGetSample.js +10 -3
  26. package/dist-esm/samples-dev/quotaRequestStatusGetSample.js.map +1 -1
  27. package/dist-esm/samples-dev/quotaRequestStatusListSample.js +8 -1
  28. package/dist-esm/samples-dev/quotaRequestStatusListSample.js.map +1 -1
  29. package/dist-esm/samples-dev/quotaUpdateSample.js +8 -1
  30. package/dist-esm/samples-dev/quotaUpdateSample.js.map +1 -1
  31. package/dist-esm/samples-dev/reservationArchiveSample.js +9 -2
  32. package/dist-esm/samples-dev/reservationArchiveSample.js.map +1 -1
  33. package/dist-esm/samples-dev/reservationAvailableScopesSample.js +11 -4
  34. package/dist-esm/samples-dev/reservationAvailableScopesSample.js.map +1 -1
  35. package/dist-esm/samples-dev/reservationGetSample.js +11 -4
  36. package/dist-esm/samples-dev/reservationGetSample.js.map +1 -1
  37. package/dist-esm/samples-dev/reservationListAllSample.js +10 -3
  38. package/dist-esm/samples-dev/reservationListAllSample.js.map +1 -1
  39. package/dist-esm/samples-dev/reservationListRevisionsSample.js +11 -4
  40. package/dist-esm/samples-dev/reservationListRevisionsSample.js.map +1 -1
  41. package/dist-esm/samples-dev/reservationListSample.js +9 -2
  42. package/dist-esm/samples-dev/reservationListSample.js.map +1 -1
  43. package/dist-esm/samples-dev/reservationMergeSample.js +9 -2
  44. package/dist-esm/samples-dev/reservationMergeSample.js.map +1 -1
  45. package/dist-esm/samples-dev/reservationOrderCalculateSample.js +10 -3
  46. package/dist-esm/samples-dev/reservationOrderCalculateSample.js.map +1 -1
  47. package/dist-esm/samples-dev/reservationOrderChangeDirectorySample.js +9 -2
  48. package/dist-esm/samples-dev/reservationOrderChangeDirectorySample.js.map +1 -1
  49. package/dist-esm/samples-dev/reservationOrderGetSample.js +12 -5
  50. package/dist-esm/samples-dev/reservationOrderGetSample.js.map +1 -1
  51. package/dist-esm/samples-dev/reservationOrderListSample.js +9 -2
  52. package/dist-esm/samples-dev/reservationOrderListSample.js.map +1 -1
  53. package/dist-esm/samples-dev/reservationOrderPurchaseSample.js +9 -2
  54. package/dist-esm/samples-dev/reservationOrderPurchaseSample.js.map +1 -1
  55. package/dist-esm/samples-dev/reservationSplitSample.js +9 -2
  56. package/dist-esm/samples-dev/reservationSplitSample.js.map +1 -1
  57. package/dist-esm/samples-dev/reservationUnarchiveSample.js +11 -4
  58. package/dist-esm/samples-dev/reservationUnarchiveSample.js.map +1 -1
  59. package/dist-esm/samples-dev/reservationUpdateSample.js +9 -2
  60. package/dist-esm/samples-dev/reservationUpdateSample.js.map +1 -1
  61. package/dist-esm/samples-dev/returnPostSample.js +14 -7
  62. package/dist-esm/samples-dev/returnPostSample.js.map +1 -1
  63. package/dist-esm/src/azureReservationAPI.d.ts +18 -2
  64. package/dist-esm/src/azureReservationAPI.d.ts.map +1 -1
  65. package/dist-esm/src/azureReservationAPI.js +101 -15
  66. package/dist-esm/src/azureReservationAPI.js.map +1 -1
  67. package/dist-esm/src/index.d.ts +1 -0
  68. package/dist-esm/src/index.d.ts.map +1 -1
  69. package/dist-esm/src/index.js +1 -0
  70. package/dist-esm/src/index.js.map +1 -1
  71. package/dist-esm/src/models/index.d.ts +372 -101
  72. package/dist-esm/src/models/index.d.ts.map +1 -1
  73. package/dist-esm/src/models/index.js +26 -0
  74. package/dist-esm/src/models/index.js.map +1 -1
  75. package/dist-esm/src/models/mappers.d.ts +14 -1
  76. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  77. package/dist-esm/src/models/mappers.js +510 -70
  78. package/dist-esm/src/models/mappers.js.map +1 -1
  79. package/dist-esm/src/models/parameters.d.ts +2 -1
  80. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  81. package/dist-esm/src/models/parameters.js +18 -9
  82. package/dist-esm/src/models/parameters.js.map +1 -1
  83. package/dist-esm/src/operations/operation.d.ts.map +1 -1
  84. package/dist-esm/src/operations/operation.js +19 -8
  85. package/dist-esm/src/operations/operation.js.map +1 -1
  86. package/dist-esm/src/operations/quota.d.ts.map +1 -1
  87. package/dist-esm/src/operations/quota.js +19 -8
  88. package/dist-esm/src/operations/quota.js.map +1 -1
  89. package/dist-esm/src/operations/quotaRequestStatus.d.ts.map +1 -1
  90. package/dist-esm/src/operations/quotaRequestStatus.js +19 -13
  91. package/dist-esm/src/operations/quotaRequestStatus.js.map +1 -1
  92. package/dist-esm/src/operations/reservation.d.ts +17 -17
  93. package/dist-esm/src/operations/reservation.d.ts.map +1 -1
  94. package/dist-esm/src/operations/reservation.js +83 -59
  95. package/dist-esm/src/operations/reservation.js.map +1 -1
  96. package/dist-esm/src/operations/reservationOrder.d.ts.map +1 -1
  97. package/dist-esm/src/operations/reservationOrder.js +20 -9
  98. package/dist-esm/src/operations/reservationOrder.js.map +1 -1
  99. package/dist-esm/src/operations/return.d.ts +10 -2
  100. package/dist-esm/src/operations/return.d.ts.map +1 -1
  101. package/dist-esm/src/operations/return.js +61 -3
  102. package/dist-esm/src/operations/return.js.map +1 -1
  103. package/dist-esm/src/operationsInterfaces/reservation.d.ts +15 -15
  104. package/dist-esm/src/operationsInterfaces/reservation.d.ts.map +1 -1
  105. package/dist-esm/src/operationsInterfaces/return.d.ts +10 -2
  106. package/dist-esm/src/operationsInterfaces/return.d.ts.map +1 -1
  107. package/dist-esm/src/pagingHelper.d.ts +13 -0
  108. package/dist-esm/src/pagingHelper.d.ts.map +1 -0
  109. package/dist-esm/src/pagingHelper.js +32 -0
  110. package/dist-esm/src/pagingHelper.js.map +1 -0
  111. package/package.json +6 -4
  112. package/review/arm-reservations.api.md +194 -94
  113. package/src/azureReservationAPI.ts +119 -15
  114. package/src/index.ts +1 -0
  115. package/src/models/index.ts +397 -107
  116. package/src/models/mappers.ts +536 -71
  117. package/src/models/parameters.ts +19 -9
  118. package/src/operations/operation.ts +21 -9
  119. package/src/operations/quota.ts +23 -15
  120. package/src/operations/quotaRequestStatus.ts +23 -20
  121. package/src/operations/reservation.ts +97 -69
  122. package/src/operations/reservationOrder.ts +23 -11
  123. package/src/operations/return.ts +82 -4
  124. package/src/operationsInterfaces/reservation.ts +15 -15
  125. package/src/operationsInterfaces/return.ts +16 -2
  126. package/src/pagingHelper.ts +39 -0
  127. package/types/arm-reservations.d.ts +432 -109
  128. package/types/tsdoc-metadata.json +1 -1
@@ -8,35 +8,59 @@ export interface AvailableScopeRequest {
8
8
  export interface AvailableScopeRequestProperties {
9
9
  scopes?: string[];
10
10
  }
11
+ /** The response of available scope api containing scopes and their eligibilities. */
11
12
  export interface AvailableScopeProperties {
13
+ /** The scopes checked by the available scope api. */
12
14
  properties?: SubscriptionScopeProperties;
13
15
  }
16
+ /** The scopes checked by the available scope api. */
14
17
  export interface SubscriptionScopeProperties {
15
18
  scopes?: ScopeProperties[];
16
19
  }
20
+ /** The scope and whether it is valid. */
17
21
  export interface ScopeProperties {
18
22
  scope?: string;
19
23
  valid?: boolean;
20
24
  }
25
+ /** Error information */
21
26
  export interface ErrorModel {
27
+ /** Extended error information including error code and error message */
22
28
  error?: ExtendedErrorInfo;
23
29
  }
30
+ /** Extended error information including error code and error message */
24
31
  export interface ExtendedErrorInfo {
32
+ /** Error code describing the reason that service is not able to process the incoming request */
25
33
  code?: ErrorResponseCode;
26
34
  message?: string;
27
35
  }
36
+ /** The list of catalogs and pagination information. */
37
+ export interface CatalogsResult {
38
+ /**
39
+ * The list of catalogs.
40
+ * NOTE: This property will not be serialized. It can only be populated by the server.
41
+ */
42
+ readonly value?: Catalog[];
43
+ /**
44
+ * The link (url) to the next page of results.
45
+ * NOTE: This property will not be serialized. It can only be populated by the server.
46
+ */
47
+ readonly nextLink?: string;
48
+ /** The total amount of catalog items. */
49
+ totalItems?: number;
50
+ }
51
+ /** Product details of a type of resource. */
28
52
  export interface Catalog {
29
53
  /**
30
- * The type of resource the SKU applies to.
54
+ * The type of resource the sku applies to.
31
55
  * NOTE: This property will not be serialized. It can only be populated by the server.
32
56
  */
33
57
  readonly resourceType?: string;
34
58
  /**
35
- * The name of SKU
59
+ * The name of sku
36
60
  * NOTE: This property will not be serialized. It can only be populated by the server.
37
61
  */
38
62
  readonly name?: string;
39
- /** The billing plan options available for this SKU. */
63
+ /** The billing plan options available for this sku. */
40
64
  billingPlans?: {
41
65
  [propertyName: string]: ReservationBillingPlan[];
42
66
  };
@@ -50,55 +74,60 @@ export interface Catalog {
50
74
  /** NOTE: This property will not be serialized. It can only be populated by the server. */
51
75
  readonly skuProperties?: SkuProperty[];
52
76
  /**
53
- * Pricing information about the SKU
77
+ * Pricing information about the sku
54
78
  * NOTE: This property will not be serialized. It can only be populated by the server.
55
79
  */
56
80
  readonly msrp?: CatalogMsrp;
57
81
  /** NOTE: This property will not be serialized. It can only be populated by the server. */
58
82
  readonly restrictions?: SkuRestriction[];
59
83
  /**
60
- * The tier of this SKU
84
+ * The tier of this sku
61
85
  * NOTE: This property will not be serialized. It can only be populated by the server.
62
86
  */
63
87
  readonly tier?: string;
64
88
  /**
65
- * The size of this SKU
89
+ * The size of this sku
66
90
  * NOTE: This property will not be serialized. It can only be populated by the server.
67
91
  */
68
92
  readonly size?: string;
69
93
  /** NOTE: This property will not be serialized. It can only be populated by the server. */
70
94
  readonly capabilities?: SkuCapability[];
71
95
  }
96
+ /** Property of a sku. */
72
97
  export interface SkuProperty {
73
98
  /** An invariant to describe the feature. */
74
99
  name?: string;
75
100
  /** An invariant if the feature is measured by quantity. */
76
101
  value?: string;
77
102
  }
78
- /** Pricing information about the SKU */
103
+ /** Pricing information about the sku */
79
104
  export interface CatalogMsrp {
80
105
  /** Amount in pricing currency. Tax not included. */
81
106
  p1Y?: Price;
82
107
  }
108
+ /** Pricing information containing the amount and the currency code */
83
109
  export interface Price {
84
110
  /** The ISO 4217 3-letter currency code for the currency used by this purchase record. */
85
111
  currencyCode?: string;
86
112
  amount?: number;
87
113
  }
114
+ /** Restriction of a sku. */
88
115
  export interface SkuRestriction {
89
116
  /** The type of restrictions. */
90
117
  type?: string;
91
- /** The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted. */
118
+ /** The value of restrictions. If the restriction type is set to location. This would be different locations where the sku is restricted. */
92
119
  values?: string[];
93
120
  /** The reason for restriction. */
94
121
  reasonCode?: string;
95
122
  }
123
+ /** Capability of a sku. */
96
124
  export interface SkuCapability {
97
125
  /** An invariant to describe the feature. */
98
126
  name?: string;
99
127
  /** An invariant if the feature is measured by quantity. */
100
128
  value?: string;
101
129
  }
130
+ /** The response for applied reservations api */
102
131
  export interface AppliedReservations {
103
132
  /**
104
133
  * Identifier of the applied reservations
@@ -115,49 +144,74 @@ export interface AppliedReservations {
115
144
  * NOTE: This property will not be serialized. It can only be populated by the server.
116
145
  */
117
146
  readonly type?: string;
147
+ /** Paginated list of applied reservations */
118
148
  reservationOrderIds?: AppliedReservationList;
119
149
  }
150
+ /** Paginated list of applied reservations */
120
151
  export interface AppliedReservationList {
121
152
  value?: string[];
122
153
  /** Url to get the next page of reservations */
123
154
  nextLink?: string;
124
155
  }
156
+ /** The request for reservation purchase */
125
157
  export interface PurchaseRequest {
158
+ /** The name of sku */
126
159
  sku?: SkuName;
127
- /** The Azure Region where the reserved resource lives. */
160
+ /** The Azure region where the reserved resource lives. */
128
161
  location?: string;
129
162
  /** The type of the resource that is being reserved. */
130
163
  reservedResourceType?: ReservedResourceType;
131
- /** Subscription that will be charged for purchasing Reservation */
164
+ /** Subscription that will be charged for purchasing reservation or savings plan */
132
165
  billingScopeId?: string;
133
- /** Represent the term of Reservation. */
166
+ /** Represent the term of reservation. */
134
167
  term?: ReservationTerm;
135
168
  /** Represent the billing plans. */
136
169
  billingPlan?: ReservationBillingPlan;
137
- /** Quantity of the SKUs that are part of the Reservation. */
170
+ /** Quantity of the skus that are part of the reservation. */
138
171
  quantity?: number;
139
- /** Friendly name of the Reservation */
172
+ /** Friendly name of the reservation */
140
173
  displayName?: string;
141
174
  /** Type of the Applied Scope. */
142
175
  appliedScopeType?: AppliedScopeType;
143
176
  /** List of the subscriptions that the benefit will be applied. Do not specify if AppliedScopeType is Shared. */
144
177
  appliedScopes?: string[];
178
+ /** Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup */
179
+ appliedScopeProperties?: AppliedScopeProperties;
145
180
  /** Setting this to true will automatically purchase a new reservation on the expiration date time. */
146
181
  renew?: boolean;
147
182
  /** Properties specific to each reserved resource type. Not required if not applicable. */
148
183
  reservedResourceProperties?: PurchaseRequestPropertiesReservedResourceProperties;
184
+ /** This is the date-time when the Azure hybrid benefit needs to be reviewed. */
185
+ reviewDateTime?: Date;
149
186
  }
187
+ /** The name of sku */
150
188
  export interface SkuName {
151
189
  name?: string;
152
190
  }
191
+ /** Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup */
192
+ export interface AppliedScopeProperties {
193
+ /** Tenant ID where the savings plan should apply benefit. */
194
+ tenantId?: string;
195
+ /** Fully-qualified identifier of the management group where the benefit must be applied. */
196
+ managementGroupId?: string;
197
+ /** Fully-qualified identifier of the subscription. */
198
+ subscriptionId?: string;
199
+ /** Fully-qualified identifier of the resource group. */
200
+ resourceGroupId?: string;
201
+ /** Display name */
202
+ displayName?: string;
203
+ }
153
204
  /** Properties specific to each reserved resource type. Not required if not applicable. */
154
205
  export interface PurchaseRequestPropertiesReservedResourceProperties {
155
206
  /** Turning this on will apply the reservation discount to other VMs in the same VM size group. Only specify for VirtualMachines reserved resource type. */
156
207
  instanceFlexibility?: InstanceFlexibility;
157
208
  }
209
+ /** The response of calculate price for reservation. */
158
210
  export interface CalculatePriceResponse {
211
+ /** Properties for calculate price response */
159
212
  properties?: CalculatePriceResponseProperties;
160
213
  }
214
+ /** Properties for calculate price response */
161
215
  export interface CalculatePriceResponseProperties {
162
216
  /** Currency and amount that customer will be charged in customer's local currency. Tax is not included. */
163
217
  billingCurrencyTotal?: CalculatePriceResponsePropertiesBillingCurrencyTotal;
@@ -173,9 +227,9 @@ export interface CalculatePriceResponseProperties {
173
227
  isBillingPartnerManaged?: boolean;
174
228
  /** GUID that represents reservation order that can be placed after calculating price. */
175
229
  reservationOrderId?: string;
176
- /** Title of SKU that is being purchased. */
230
+ /** Title of sku that is being purchased. */
177
231
  skuTitle?: string;
178
- /** Description of SKU that is being purchased. */
232
+ /** Description of sku that is being purchased. */
179
233
  skuDescription?: string;
180
234
  /** Amount that Microsoft uses for record. Used during refund for calculating refund limit. Tax is not included. */
181
235
  pricingCurrencyTotal?: CalculatePriceResponsePropertiesPricingCurrencyTotal;
@@ -215,11 +269,13 @@ export interface ExtendedStatusInfo {
215
269
  /** The message giving detailed information about the status code. */
216
270
  message?: string;
217
271
  }
272
+ /** List of `ReservationOrder`s */
218
273
  export interface ReservationOrderList {
219
274
  value?: ReservationOrderResponse[];
220
275
  /** Url to get the next page of reservationOrders. */
221
276
  nextLink?: string;
222
277
  }
278
+ /** Details of a reservation order being returned. */
223
279
  export interface ReservationOrderResponse {
224
280
  etag?: number;
225
281
  /**
@@ -248,13 +304,15 @@ export interface ReservationOrderResponse {
248
304
  requestDateTime?: Date;
249
305
  /** This is the DateTime when the reservation was created. */
250
306
  createdDateTime?: Date;
251
- /** This is the date when the Reservation will expire. */
307
+ /** This is the date when the reservation will expire. */
252
308
  expiryDate?: Date;
309
+ /** This is the date-time when the reservation will expire. */
310
+ expiryDateTime?: Date;
253
311
  /** This is the DateTime when the reservation benefit started. */
254
312
  benefitStartTime?: Date;
255
- /** Total Quantity of the SKUs purchased in the Reservation. */
313
+ /** Total Quantity of the skus purchased in the reservation. */
256
314
  originalQuantity?: number;
257
- /** Represent the term of Reservation. */
315
+ /** Represent the term of reservation. */
258
316
  term?: ReservationTerm;
259
317
  /** Current state of the reservation. */
260
318
  provisioningState?: ProvisioningState;
@@ -263,6 +321,8 @@ export interface ReservationOrderResponse {
263
321
  /** Information describing the type of billing plan for this reservation. */
264
322
  planInformation?: ReservationOrderBillingPlanInformation;
265
323
  reservations?: ReservationResponse[];
324
+ /** This is the date-time when the Azure Hybrid Benefit needs to be reviewed. */
325
+ reviewDateTime?: Date;
266
326
  }
267
327
  /** Information describing the type of billing plan for this reservation. */
268
328
  export interface ReservationOrderBillingPlanInformation {
@@ -274,43 +334,11 @@ export interface ReservationOrderBillingPlanInformation {
274
334
  nextPaymentDueDate?: Date;
275
335
  transactions?: PaymentDetail[];
276
336
  }
277
- /** The definition of the reservation. */
278
- export interface ReservationResponse {
279
- /** The Azure Region where the reserved resource lives. */
280
- location?: string;
281
- etag?: number;
282
- /**
283
- * Identifier of the reservation
284
- * NOTE: This property will not be serialized. It can only be populated by the server.
285
- */
286
- readonly id?: string;
287
- /**
288
- * Name of the reservation
289
- * NOTE: This property will not be serialized. It can only be populated by the server.
290
- */
291
- readonly name?: string;
292
- /** The sku information associated to this reservation */
293
- sku?: SkuName;
294
- /** The properties associated to this reservation */
295
- properties?: ReservationsProperties;
296
- /**
297
- * Type of resource. "Microsoft.Capacity/reservationOrders/reservations"
298
- * NOTE: This property will not be serialized. It can only be populated by the server.
299
- */
300
- readonly type?: string;
301
- /** Resource Provider type to be reserved. */
302
- kind?: "Microsoft.Compute";
303
- /**
304
- * Metadata pertaining to creation and last modification of the resource.
305
- * NOTE: This property will not be serialized. It can only be populated by the server.
306
- */
307
- readonly systemData?: SystemData;
308
- }
309
337
  /** The properties of the reservations */
310
338
  export interface ReservationsProperties {
311
339
  /** The type of the resource that is being reserved. */
312
340
  reservedResourceType?: ReservedResourceType;
313
- /** Allows reservation discount to be applied across skus within the same Autofit group. Not all skus support instance size flexibility. */
341
+ /** Allows reservation discount to be applied across skus within the same auto fit group. Not all skus support instance size flexibility. */
314
342
  instanceFlexibility?: InstanceFlexibility;
315
343
  /** Friendly name for user to easily identify the reservation */
316
344
  displayName?: string;
@@ -322,26 +350,30 @@ export interface ReservationsProperties {
322
350
  archived?: boolean;
323
351
  /** Capabilities of the reservation */
324
352
  capabilities?: string;
325
- /** Quantity of the SKUs that are part of the Reservation. */
353
+ /** Quantity of the skus that are part of the reservation. */
326
354
  quantity?: number;
327
355
  /** Current state of the reservation. */
328
356
  provisioningState?: ProvisioningState;
329
- /** DateTime of the Reservation starting when this version is effective from. */
357
+ /** DateTime of the reservation starting when this version is effective from. */
330
358
  effectiveDateTime?: Date;
331
359
  /** This is the DateTime when the reservation benefit started. */
332
360
  benefitStartTime?: Date;
333
361
  /**
334
- * DateTime of the last time the Reservation was updated.
362
+ * DateTime of the last time the reservation was updated.
335
363
  * NOTE: This property will not be serialized. It can only be populated by the server.
336
364
  */
337
365
  readonly lastUpdatedDateTime?: Date;
338
- /** This is the date when the Reservation will expire. */
366
+ /** This is the date when the reservation will expire. */
339
367
  expiryDate?: Date;
340
- /** Description of the SKU in english. */
368
+ /** This is the date-time when the reservation will expire. */
369
+ expiryDateTime?: Date;
370
+ /** This is the date-time when the Azure Hybrid Benefit needs to be reviewed. */
371
+ reviewDateTime?: Date;
372
+ /** Description of the sku in english. */
341
373
  skuDescription?: string;
342
374
  /** The message giving detailed information about the status code. */
343
375
  extendedStatusInfo?: ExtendedStatusInfo;
344
- /** The billing plan options available for this SKU. */
376
+ /** The billing plan options available for this sku. */
345
377
  billingPlan?: ReservationBillingPlan;
346
378
  /**
347
379
  * The provisioning state of the reservation for display, e.g. Succeeded
@@ -349,15 +381,23 @@ export interface ReservationsProperties {
349
381
  */
350
382
  readonly displayProvisioningState?: string;
351
383
  /**
352
- * The provisioning state of the reservation, e.g. Succeeded
384
+ * The provisioning sub-state of the reservation, e.g. Succeeded
353
385
  * NOTE: This property will not be serialized. It can only be populated by the server.
354
386
  */
355
387
  readonly provisioningSubState?: string;
356
- /** This is the date when the Reservation was purchased. */
388
+ /** This is the date when the reservation was purchased. */
357
389
  purchaseDate?: Date;
390
+ /** This is the date-time when the reservation was purchased. */
391
+ purchaseDateTime?: Date;
392
+ /** Properties of reservation split */
358
393
  splitProperties?: ReservationSplitProperties;
394
+ /** Properties of reservation merge */
359
395
  mergeProperties?: ReservationMergeProperties;
360
- /** Subscription that will be charged for purchasing Reservation */
396
+ /** Properties of reservation swap */
397
+ swapProperties?: ReservationSwapProperties;
398
+ /** Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup */
399
+ appliedScopeProperties?: AppliedScopeProperties;
400
+ /** Subscription that will be charged for purchasing reservation or savings plan */
361
401
  billingScopeId?: string;
362
402
  /** Setting this to true will automatically purchase a new reservation on the expiration date time. */
363
403
  renew?: boolean;
@@ -365,8 +405,9 @@ export interface ReservationsProperties {
365
405
  renewSource?: string;
366
406
  /** Reservation Id of the reservation which is purchased because of renew. Format of the resource Id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}. */
367
407
  renewDestination?: string;
408
+ /** The renew properties for a reservation. */
368
409
  renewProperties?: RenewPropertiesResponse;
369
- /** Represent the term of Reservation. */
410
+ /** Represent the term of reservation. */
370
411
  term?: ReservationTerm;
371
412
  /**
372
413
  * The applied scope type of the reservation for display, e.g. Shared
@@ -384,19 +425,30 @@ export interface ReservationsProperties {
384
425
  */
385
426
  readonly utilization?: ReservationsPropertiesUtilization;
386
427
  }
428
+ /** Properties of reservation split */
387
429
  export interface ReservationSplitProperties {
388
- /** List of destination Resource Id that are created due to split. Format of the resource Id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
430
+ /** List of destination resource id that are created due to split. Format of the resource id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
389
431
  splitDestinations?: string[];
390
- /** Resource Id of the Reservation from which this is split. Format of the resource Id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
432
+ /** Resource id of the reservation from which this is split. Format of the resource id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
391
433
  splitSource?: string;
392
434
  }
435
+ /** Properties of reservation merge */
393
436
  export interface ReservationMergeProperties {
394
- /** Reservation Resource Id Created due to the merge. Format of the resource Id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
437
+ /** Reservation resource id Created due to the merge. Format of the resource id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
395
438
  mergeDestination?: string;
396
- /** Resource Ids of the Source Reservation's merged to form this Reservation. Format of the resource Id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
439
+ /** Resource ids of the source reservation's merged to form this reservation. Format of the resource id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
397
440
  mergeSources?: string[];
398
441
  }
442
+ /** Properties of reservation swap */
443
+ export interface ReservationSwapProperties {
444
+ /** Resource id of the source reservation that gets swapped. Format of the resource id is /providers/microsoft.capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
445
+ swapSource?: string;
446
+ /** Reservation resource id that the original resource gets swapped to. Format of the resource id is /providers/microsoft.capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
447
+ swapDestination?: string;
448
+ }
449
+ /** The renew properties for a reservation. */
399
450
  export interface RenewPropertiesResponse {
451
+ /** The request for reservation purchase */
400
452
  purchaseProperties?: PurchaseRequest;
401
453
  /** Amount that Microsoft uses for record. Used during refund for calculating refund limit. Tax is not included. This is locked price 30 days before expiry. */
402
454
  pricingCurrencyTotal?: RenewPropertiesResponsePricingCurrencyTotal;
@@ -418,7 +470,7 @@ export interface RenewPropertiesResponseBillingCurrencyTotal {
418
470
  /** Reservation utilization */
419
471
  export interface ReservationsPropertiesUtilization {
420
472
  /**
421
- * The number of days trend for a reservation
473
+ * last 7 day utilization trend for a reservation
422
474
  * NOTE: This property will not be serialized. It can only be populated by the server.
423
475
  */
424
476
  readonly trend?: string;
@@ -448,6 +500,29 @@ export interface ReservationUtilizationAggregates {
448
500
  */
449
501
  readonly valueUnit?: string;
450
502
  }
503
+ /** Common fields that are returned in the response for all Azure Resource Manager resources */
504
+ export interface Resource {
505
+ /**
506
+ * Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
507
+ * NOTE: This property will not be serialized. It can only be populated by the server.
508
+ */
509
+ readonly id?: string;
510
+ /**
511
+ * The name of the resource
512
+ * NOTE: This property will not be serialized. It can only be populated by the server.
513
+ */
514
+ readonly name?: string;
515
+ /**
516
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
517
+ * NOTE: This property will not be serialized. It can only be populated by the server.
518
+ */
519
+ readonly type?: string;
520
+ /**
521
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
522
+ * NOTE: This property will not be serialized. It can only be populated by the server.
523
+ */
524
+ readonly systemData?: SystemData;
525
+ }
451
526
  /** Metadata pertaining to creation and last modification of the resource. */
452
527
  export interface SystemData {
453
528
  /** The identity that created the resource. */
@@ -463,42 +538,53 @@ export interface SystemData {
463
538
  /** The timestamp of resource last modification (UTC) */
464
539
  lastModifiedAt?: Date;
465
540
  }
541
+ /** The request for reservation split */
466
542
  export interface SplitRequest {
467
543
  /** List of the quantities in the new reservations to create. */
468
544
  quantities?: number[];
469
545
  /** Resource id of the reservation to be split. Format of the resource id should be /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
470
546
  reservationId?: string;
471
547
  }
548
+ /** The request for reservation merge */
472
549
  export interface MergeRequest {
473
550
  /** Format of the resource id should be /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId} */
474
551
  sources?: string[];
475
552
  }
553
+ /** List of `Reservation`s */
476
554
  export interface ReservationList {
477
555
  value?: ReservationResponse[];
478
556
  /** Url to get the next page of reservations. */
479
557
  nextLink?: string;
480
558
  }
559
+ /** The request for reservation patch */
481
560
  export interface Patch {
482
561
  /** Type of the Applied Scope. */
483
562
  appliedScopeType?: AppliedScopeType;
484
563
  /** List of the subscriptions that the benefit will be applied. Do not specify if AppliedScopeType is Shared. */
485
564
  appliedScopes?: string[];
565
+ /** Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup */
566
+ appliedScopeProperties?: AppliedScopeProperties;
486
567
  /** Turning this on will apply the reservation discount to other VMs in the same VM size group. Only specify for VirtualMachines reserved resource type. */
487
568
  instanceFlexibility?: InstanceFlexibility;
488
- /** Name of the Reservation */
569
+ /** Display name of the reservation */
489
570
  name?: string;
490
571
  /** Setting this to true will automatically purchase a new reservation on the expiration date time. */
491
572
  renew?: boolean;
492
573
  renewProperties?: PatchPropertiesRenewProperties;
574
+ /** This is the date-time when the Azure hybrid benefit needs to be reviewed. */
575
+ reviewDateTime?: Date;
493
576
  }
494
577
  export interface PatchPropertiesRenewProperties {
578
+ /** The request for reservation purchase */
495
579
  purchaseProperties?: PurchaseRequest;
496
580
  }
581
+ /** Paginated list of operations */
497
582
  export interface OperationList {
498
583
  value?: OperationResponse[];
499
584
  /** Url to get the next page of items. */
500
585
  nextLink?: string;
501
586
  }
587
+ /** The response containing operation information */
502
588
  export interface OperationResponse {
503
589
  /** Name of the operation */
504
590
  name?: string;
@@ -511,17 +597,21 @@ export interface OperationResponse {
511
597
  /** Properties of the operation */
512
598
  properties?: Record<string, unknown>;
513
599
  }
600
+ /** Information about an operation */
514
601
  export interface OperationDisplay {
515
602
  provider?: string;
516
603
  resource?: string;
517
604
  operation?: string;
518
605
  description?: string;
519
606
  }
607
+ /** Request containing information needed for calculating refund. */
520
608
  export interface CalculateRefundRequest {
521
609
  /** Fully qualified identifier of the reservation order being returned */
522
610
  id?: string;
611
+ /** Properties needed for calculate refund including the scope and the reservation to be returned. */
523
612
  properties?: CalculateRefundRequestProperties;
524
613
  }
614
+ /** Properties needed for calculate refund including the scope and the reservation to be returned. */
525
615
  export interface CalculateRefundRequestProperties {
526
616
  /** The scope of the refund, e.g. Reservation */
527
617
  scope?: string;
@@ -530,22 +620,27 @@ export interface CalculateRefundRequestProperties {
530
620
  }
531
621
  /** Reservation to return */
532
622
  export interface ReservationToReturn {
533
- /** Fully qualified identifier of the Reservation being returned */
623
+ /** Fully qualified identifier of the reservation being returned */
534
624
  reservationId?: string;
535
625
  /** Quantity to be returned. Must be greater than zero. */
536
626
  quantity?: number;
537
627
  }
628
+ /** The response of calculate refund containing refund information of reservation */
538
629
  export interface CalculateRefundResponse {
539
630
  /** Fully qualified identifier of the reservation being returned */
540
631
  id?: string;
632
+ /** The refund properties of reservation */
541
633
  properties?: RefundResponseProperties;
542
634
  }
635
+ /** The refund properties of reservation */
543
636
  export interface RefundResponseProperties {
544
637
  /** Refund session identifier */
545
638
  sessionId?: string;
546
639
  /** Quantity to be returned */
547
640
  quantity?: number;
641
+ /** Pricing information containing the amount and the currency code */
548
642
  billingRefundAmount?: Price;
643
+ /** Pricing information containing the amount and the currency code */
549
644
  pricingRefundAmount?: Price;
550
645
  /** Refund policy result */
551
646
  policyResult?: RefundPolicyResult;
@@ -559,13 +654,16 @@ export interface RefundPolicyResult {
559
654
  }
560
655
  /** Refund policy result property */
561
656
  export interface RefundPolicyResultProperty {
657
+ /** Pricing information containing the amount and the currency code */
562
658
  consumedRefundsTotal?: Price;
659
+ /** Pricing information containing the amount and the currency code */
563
660
  maxRefundLimit?: Price;
564
661
  /** Refund Policy errors */
565
662
  policyErrors?: RefundPolicyError[];
566
663
  }
567
664
  /** error details */
568
665
  export interface RefundPolicyError {
666
+ /** Error code describing the reason that service is not able to process the incoming request */
569
667
  code?: ErrorResponseCode;
570
668
  message?: string;
571
669
  }
@@ -577,13 +675,19 @@ export interface RefundBillingInformation {
577
675
  completedTransactions?: number;
578
676
  /** The number of total transactions in this reservation's payment */
579
677
  totalTransactions?: number;
678
+ /** Pricing information containing the amount and the currency code */
580
679
  billingCurrencyTotalPaidAmount?: Price;
680
+ /** Pricing information containing the amount and the currency code */
581
681
  billingCurrencyProratedAmount?: Price;
682
+ /** Pricing information containing the amount and the currency code */
582
683
  billingCurrencyRemainingCommitmentAmount?: Price;
583
684
  }
685
+ /** Request containing information needed for returning reservation. */
584
686
  export interface RefundRequest {
687
+ /** Properties needed for refund request including the session id from calculate refund, the scope, the reservation to be returned and the return reason. */
585
688
  properties?: RefundRequestProperties;
586
689
  }
690
+ /** Properties needed for refund request including the session id from calculate refund, the scope, the reservation to be returned and the return reason. */
587
691
  export interface RefundRequestProperties {
588
692
  /** SessionId that was returned by CalculateRefund API. */
589
693
  sessionId?: string;
@@ -594,9 +698,11 @@ export interface RefundRequestProperties {
594
698
  /** The reason of returning the reservation */
595
699
  returnReason?: string;
596
700
  }
701
+ /** The response of refund request containing refund information of reservation */
597
702
  export interface RefundResponse {
598
703
  /** Fully qualified identifier of the reservation being returned */
599
704
  id?: string;
705
+ /** The refund properties of reservation */
600
706
  properties?: RefundResponseProperties;
601
707
  }
602
708
  /** Calculate exchange request */
@@ -608,9 +714,30 @@ export interface CalculateExchangeRequest {
608
714
  export interface CalculateExchangeRequestProperties {
609
715
  /** List of reservations that are being purchased in this exchange. */
610
716
  reservationsToPurchase?: PurchaseRequest[];
717
+ /** List of savings plans that are being purchased in this exchange. */
718
+ savingsPlansToPurchase?: SavingsPlanPurchaseRequest[];
611
719
  /** List of reservations that are being returned in this exchange. */
612
720
  reservationsToExchange?: ReservationToReturn[];
613
721
  }
722
+ /** Request body for savings plan purchase */
723
+ export interface SavingsPlanPurchaseRequest {
724
+ /** The name of sku */
725
+ sku?: SkuName;
726
+ /** Friendly name of the savings plan */
727
+ displayName?: string;
728
+ /** Subscription that will be charged for purchasing reservation or savings plan */
729
+ billingScopeId?: string;
730
+ /** Represent savings plan term in ISO 8601 format. */
731
+ term?: SavingsPlanTerm;
732
+ /** Represents the billing plan in ISO 8601 format. Required only for monthly billing plans. */
733
+ billingPlan?: BillingPlan;
734
+ /** Type of the Applied Scope. */
735
+ appliedScopeType?: AppliedScopeType;
736
+ /** Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup */
737
+ appliedScopeProperties?: AppliedScopeProperties;
738
+ /** Commitment towards the benefit. */
739
+ commitment?: Commitment;
740
+ }
614
741
  /** CalculateExchange operation result */
615
742
  export interface CalculateExchangeOperationResultResponse {
616
743
  /** It should match what is used to GET the operation result. */
@@ -628,11 +755,16 @@ export interface CalculateExchangeOperationResultResponse {
628
755
  export interface CalculateExchangeResponseProperties {
629
756
  /** Exchange session identifier */
630
757
  sessionId?: string;
758
+ /** Pricing information containing the amount and the currency code */
631
759
  netPayable?: Price;
760
+ /** Pricing information containing the amount and the currency code */
632
761
  refundsTotal?: Price;
762
+ /** Pricing information containing the amount and the currency code */
633
763
  purchasesTotal?: Price;
634
764
  /** Details of the reservations being purchased */
635
765
  reservationsToPurchase?: ReservationToPurchaseCalculateExchange[];
766
+ /** Details of the savings plans being purchased */
767
+ savingsPlansToPurchase?: SavingsPlanToPurchaseCalculateExchange[];
636
768
  /** Details of the reservations being returned */
637
769
  reservationsToExchange?: ReservationToExchange[];
638
770
  /** Exchange policy errors */
@@ -640,23 +772,36 @@ export interface CalculateExchangeResponseProperties {
640
772
  }
641
773
  /** Reservation purchase details */
642
774
  export interface ReservationToPurchaseCalculateExchange {
775
+ /** The request for reservation purchase */
643
776
  properties?: PurchaseRequest;
777
+ /** Pricing information containing the amount and the currency code */
778
+ billingCurrencyTotal?: Price;
779
+ }
780
+ /** Savings plan purchase details */
781
+ export interface SavingsPlanToPurchaseCalculateExchange {
782
+ /** Request body for savings plan purchase */
783
+ properties?: SavingsPlanPurchaseRequest;
784
+ /** Pricing information containing the amount and the currency code */
644
785
  billingCurrencyTotal?: Price;
645
786
  }
646
787
  /** Reservation refund details */
647
788
  export interface ReservationToExchange {
648
- /** Fully qualified id of the Reservation being returned. */
789
+ /** Fully qualified id of the reservation being returned. */
649
790
  reservationId?: string;
650
791
  /** Quantity to be returned */
651
792
  quantity?: number;
793
+ /** Pricing information containing the amount and the currency code */
652
794
  billingRefundAmount?: Price;
653
795
  /** billing information */
654
796
  billingInformation?: BillingInformation;
655
797
  }
656
798
  /** billing information */
657
799
  export interface BillingInformation {
800
+ /** Pricing information containing the amount and the currency code */
658
801
  billingCurrencyTotalPaidAmount?: Price;
802
+ /** Pricing information containing the amount and the currency code */
659
803
  billingCurrencyProratedAmount?: Price;
804
+ /** Pricing information containing the amount and the currency code */
660
805
  billingCurrencyRemainingCommitmentAmount?: Price;
661
806
  }
662
807
  /** Exchange policy errors */
@@ -703,11 +848,16 @@ export interface ExchangeOperationResultResponse {
703
848
  export interface ExchangeResponseProperties {
704
849
  /** Exchange session identifier */
705
850
  sessionId?: string;
851
+ /** Pricing information containing the amount and the currency code */
706
852
  netPayable?: Price;
853
+ /** Pricing information containing the amount and the currency code */
707
854
  refundsTotal?: Price;
855
+ /** Pricing information containing the amount and the currency code */
708
856
  purchasesTotal?: Price;
709
857
  /** Details of the reservations being purchased */
710
858
  reservationsToPurchase?: ReservationToPurchaseExchange[];
859
+ /** Details of the savings plans being purchased */
860
+ savingsPlansToPurchase?: SavingsPlanToPurchaseExchange[];
711
861
  /** Details of the reservations being returned */
712
862
  reservationsToExchange?: ReservationToReturnForExchange[];
713
863
  /** Exchange policy errors */
@@ -715,21 +865,37 @@ export interface ExchangeResponseProperties {
715
865
  }
716
866
  /** Reservation purchase details */
717
867
  export interface ReservationToPurchaseExchange {
718
- /** Fully qualified id of the ReservationOrder being purchased */
868
+ /** Fully qualified id of the reservationOrder being purchased */
719
869
  reservationOrderId?: string;
720
- /** Fully qualified id of the Reservation being purchased. This value is only guaranteed to be non-null if the purchase is successful. */
870
+ /** Fully qualified id of the reservation being purchased. This value is only guaranteed to be non-null if the purchase is successful. */
721
871
  reservationId?: string;
872
+ /** The request for reservation purchase */
722
873
  properties?: PurchaseRequest;
874
+ /** Pricing information containing the amount and the currency code */
875
+ billingCurrencyTotal?: Price;
876
+ /** Status of the individual operation. */
877
+ status?: OperationStatus;
878
+ }
879
+ /** Savings plan purchase details */
880
+ export interface SavingsPlanToPurchaseExchange {
881
+ /** Fully qualified id of the savings plan order being purchased */
882
+ savingsPlanOrderId?: string;
883
+ /** Fully qualified id of the savings plan being purchased. This value is only guaranteed to be non-null if the purchase is successful. */
884
+ savingsPlanId?: string;
885
+ /** Request body for savings plan purchase */
886
+ properties?: SavingsPlanPurchaseRequest;
887
+ /** Pricing information containing the amount and the currency code */
723
888
  billingCurrencyTotal?: Price;
724
889
  /** Status of the individual operation. */
725
890
  status?: OperationStatus;
726
891
  }
727
892
  /** Reservation refund details */
728
893
  export interface ReservationToReturnForExchange {
729
- /** Fully qualified id of the Reservation being returned. */
894
+ /** Fully qualified id of the reservation being returned. */
730
895
  reservationId?: string;
731
896
  /** Quantity to be returned */
732
897
  quantity?: number;
898
+ /** Pricing information containing the amount and the currency code */
733
899
  billingRefundAmount?: Price;
734
900
  /** billing information */
735
901
  billingInformation?: BillingInformation;
@@ -788,6 +954,16 @@ export interface ReservationSummary {
788
954
  * NOTE: This property will not be serialized. It can only be populated by the server.
789
955
  */
790
956
  readonly processingCount?: number;
957
+ /**
958
+ * The number of reservation in Warning state
959
+ * NOTE: This property will not be serialized. It can only be populated by the server.
960
+ */
961
+ readonly warningCount?: number;
962
+ /**
963
+ * The number of reservation in NoBenefit state
964
+ * NOTE: This property will not be serialized. It can only be populated by the server.
965
+ */
966
+ readonly noBenefitCount?: number;
791
967
  }
792
968
  /** Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. */
793
969
  export interface ErrorResponse {
@@ -812,6 +988,7 @@ export interface ErrorDetails {
812
988
  */
813
989
  readonly target?: string;
814
990
  }
991
+ /** Request body for change directory of a reservation. */
815
992
  export interface ChangeDirectoryRequest {
816
993
  /** Tenant id GUID that reservation order is to be transferred to */
817
994
  destinationTenantId?: string;
@@ -1148,6 +1325,56 @@ export interface QuotaRequestSubmitResponse {
1148
1325
  */
1149
1326
  readonly type?: string;
1150
1327
  }
1328
+ /** Commitment towards the benefit. */
1329
+ export interface Commitment extends Price {
1330
+ /** Commitment grain. */
1331
+ grain?: CommitmentGrain;
1332
+ }
1333
+ /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
1334
+ export interface ProxyResource extends Resource {
1335
+ }
1336
+ /** The definition of the reservation. */
1337
+ export interface ReservationResponse extends ProxyResource {
1338
+ /** The Azure region where the reserved resource lives. */
1339
+ location?: string;
1340
+ etag?: number;
1341
+ /** The sku information associated to this reservation */
1342
+ sku?: SkuName;
1343
+ /** The properties associated to this reservation */
1344
+ properties?: ReservationsProperties;
1345
+ /** Resource Provider type to be reserved. */
1346
+ kind?: "Microsoft.Compute";
1347
+ }
1348
+ /** Defines headers for Reservation_split operation. */
1349
+ export interface ReservationSplitHeaders {
1350
+ /** URL for determining when an operation has completed. Only use this value only when Azure-AsyncOperation isn't returned. */
1351
+ location?: string;
1352
+ /** Clients should wait for the Retry-After interval before polling again */
1353
+ retryAfter?: number;
1354
+ }
1355
+ /** Defines headers for Reservation_merge operation. */
1356
+ export interface ReservationMergeHeaders {
1357
+ /** URL for determining when an operation has completed. Only use this value only when Azure-AsyncOperation isn't returned. */
1358
+ location?: string;
1359
+ /** Clients should wait for the Retry-After interval before polling again */
1360
+ retryAfter?: number;
1361
+ }
1362
+ /** Defines headers for Reservation_update operation. */
1363
+ export interface ReservationUpdateHeaders {
1364
+ /** URL for checking the ongoing status of the operation. */
1365
+ azureAsyncOperation?: string;
1366
+ /** URL for determining when an operation has completed. Only use this value only when Azure-AsyncOperation isn't returned. */
1367
+ location?: string;
1368
+ /** Clients should wait for the Retry-After interval before polling again */
1369
+ retryAfter?: number;
1370
+ }
1371
+ /** Defines headers for ReservationOrder_purchase operation. */
1372
+ export interface ReservationOrderPurchaseHeaders {
1373
+ /** URL for determining when an operation has completed. Only use this value only when Azure-AsyncOperation isn't returned. */
1374
+ location?: string;
1375
+ /** Clients should wait for the Retry-After interval before polling again */
1376
+ retryAfter?: number;
1377
+ }
1151
1378
  /** Defines headers for Return_post operation. */
1152
1379
  export interface ReturnPostHeaders {
1153
1380
  location?: string;
@@ -1497,7 +1724,9 @@ export declare enum KnownAppliedScopeType {
1497
1724
  /** Single */
1498
1725
  Single = "Single",
1499
1726
  /** Shared */
1500
- Shared = "Shared"
1727
+ Shared = "Shared",
1728
+ /** ManagementGroup */
1729
+ ManagementGroup = "ManagementGroup"
1501
1730
  }
1502
1731
  /**
1503
1732
  * Defines values for AppliedScopeType. \
@@ -1505,7 +1734,8 @@ export declare enum KnownAppliedScopeType {
1505
1734
  * this enum contains the known values that the service supports.
1506
1735
  * ### Known values supported by the service
1507
1736
  * **Single** \
1508
- * **Shared**
1737
+ * **Shared** \
1738
+ * **ManagementGroup**
1509
1739
  */
1510
1740
  export declare type AppliedScopeType = string;
1511
1741
  /** Known values of {@link InstanceFlexibility} that the service accepts. */
@@ -1657,6 +1887,48 @@ export declare enum KnownCreatedByType {
1657
1887
  * **Key**
1658
1888
  */
1659
1889
  export declare type CreatedByType = string;
1890
+ /** Known values of {@link SavingsPlanTerm} that the service accepts. */
1891
+ export declare enum KnownSavingsPlanTerm {
1892
+ /** P1Y */
1893
+ P1Y = "P1Y",
1894
+ /** P3Y */
1895
+ P3Y = "P3Y"
1896
+ }
1897
+ /**
1898
+ * Defines values for SavingsPlanTerm. \
1899
+ * {@link KnownSavingsPlanTerm} can be used interchangeably with SavingsPlanTerm,
1900
+ * this enum contains the known values that the service supports.
1901
+ * ### Known values supported by the service
1902
+ * **P1Y** \
1903
+ * **P3Y**
1904
+ */
1905
+ export declare type SavingsPlanTerm = string;
1906
+ /** Known values of {@link BillingPlan} that the service accepts. */
1907
+ export declare enum KnownBillingPlan {
1908
+ /** P1M */
1909
+ P1M = "P1M"
1910
+ }
1911
+ /**
1912
+ * Defines values for BillingPlan. \
1913
+ * {@link KnownBillingPlan} can be used interchangeably with BillingPlan,
1914
+ * this enum contains the known values that the service supports.
1915
+ * ### Known values supported by the service
1916
+ * **P1M**
1917
+ */
1918
+ export declare type BillingPlan = string;
1919
+ /** Known values of {@link CommitmentGrain} that the service accepts. */
1920
+ export declare enum KnownCommitmentGrain {
1921
+ /** Hourly */
1922
+ Hourly = "Hourly"
1923
+ }
1924
+ /**
1925
+ * Defines values for CommitmentGrain. \
1926
+ * {@link KnownCommitmentGrain} can be used interchangeably with CommitmentGrain,
1927
+ * this enum contains the known values that the service supports.
1928
+ * ### Known values supported by the service
1929
+ * **Hourly**
1930
+ */
1931
+ export declare type CommitmentGrain = string;
1660
1932
  /** Known values of {@link CalculateExchangeOperationResultStatus} that the service accepts. */
1661
1933
  export declare enum KnownCalculateExchangeOperationResultStatus {
1662
1934
  /** Succeeded */
@@ -1873,7 +2145,11 @@ export declare enum KnownDisplayProvisioningState {
1873
2145
  /** Cancelled */
1874
2146
  Cancelled = "Cancelled",
1875
2147
  /** Failed */
1876
- Failed = "Failed"
2148
+ Failed = "Failed",
2149
+ /** Warning */
2150
+ Warning = "Warning",
2151
+ /** NoBenefit */
2152
+ NoBenefit = "NoBenefit"
1877
2153
  }
1878
2154
  /**
1879
2155
  * Defines values for DisplayProvisioningState. \
@@ -1886,7 +2162,9 @@ export declare enum KnownDisplayProvisioningState {
1886
2162
  * **Pending** \
1887
2163
  * **Processing** \
1888
2164
  * **Cancelled** \
1889
- * **Failed**
2165
+ * **Failed** \
2166
+ * **Warning** \
2167
+ * **NoBenefit**
1890
2168
  */
1891
2169
  export declare type DisplayProvisioningState = string;
1892
2170
  /** Known values of {@link UserFriendlyAppliedScopeType} that the service accepts. */
@@ -2000,7 +2278,7 @@ export interface ReservationListRevisionsOptionalParams extends coreClient.Opera
2000
2278
  export declare type ReservationListRevisionsResponse = ReservationList;
2001
2279
  /** Optional parameters. */
2002
2280
  export interface ReservationListAllOptionalParams extends coreClient.OperationOptions {
2003
- /** May be used to filter by reservation properties. The filter supports 'eq', 'or', and 'and'. It does not currently support 'ne', 'gt', 'le', 'ge', or 'not'. Reservation properties include sku/name, properties/{appliedScopeType, archived, displayName, displayProvisioningState, effectiveDateTime, expiryDate, provisioningState, quantity, renew, reservedResourceType, term, userFriendlyAppliedScopeType, userFriendlyRenewState} */
2281
+ /** May be used to filter by reservation properties. The filter supports 'eq', 'or', and 'and'. It does not currently support 'ne', 'gt', 'le', 'ge', or 'not'. Reservation properties include sku/name, properties/{appliedScopeType, archived, displayName, displayProvisioningState, effectiveDateTime, expiryDate, expiryDateTime, provisioningState, quantity, renew, reservedResourceType, term, userFriendlyAppliedScopeType, userFriendlyRenewState} */
2004
2282
  filter?: string;
2005
2283
  /** May be used to sort order by reservation properties. */
2006
2284
  orderby?: string;
@@ -2027,26 +2305,16 @@ export interface ReservationListRevisionsNextOptionalParams extends coreClient.O
2027
2305
  export declare type ReservationListRevisionsNextResponse = ReservationList;
2028
2306
  /** Optional parameters. */
2029
2307
  export interface ReservationListAllNextOptionalParams extends coreClient.OperationOptions {
2030
- /** May be used to filter by reservation properties. The filter supports 'eq', 'or', and 'and'. It does not currently support 'ne', 'gt', 'le', 'ge', or 'not'. Reservation properties include sku/name, properties/{appliedScopeType, archived, displayName, displayProvisioningState, effectiveDateTime, expiryDate, provisioningState, quantity, renew, reservedResourceType, term, userFriendlyAppliedScopeType, userFriendlyRenewState} */
2031
- filter?: string;
2032
- /** May be used to sort order by reservation properties. */
2033
- orderby?: string;
2034
- /** To indicate whether to refresh the roll up counts of the reservations group by provisioning states */
2035
- refreshSummary?: string;
2036
- /** The number of reservations to skip from the list before returning results */
2037
- skiptoken?: number;
2038
- /** The selected provisioning state */
2039
- selectedState?: string;
2040
- /** To number of reservations to return */
2041
- take?: number;
2042
2308
  }
2043
2309
  /** Contains response data for the listAllNext operation. */
2044
2310
  export declare type ReservationListAllNextResponse = ReservationsListResult;
2045
2311
  /** Optional parameters. */
2046
2312
  export interface GetCatalogOptionalParams extends coreClient.OperationOptions {
2313
+ /** May be used to filter by Catalog properties. The filter supports 'eq', 'or', and 'and'. */
2314
+ filter?: string;
2047
2315
  /** The type of the resource for which the skus should be provided. */
2048
2316
  reservedResourceType?: string;
2049
- /** Filters the skus based on the location specified in this parameter. This can be an azure region or global */
2317
+ /** Filters the skus based on the location specified in this parameter. This can be an Azure region or global */
2050
2318
  location?: string;
2051
2319
  /** Publisher id used to get the third party products */
2052
2320
  publisherId?: string;
@@ -2054,15 +2322,24 @@ export interface GetCatalogOptionalParams extends coreClient.OperationOptions {
2054
2322
  offerId?: string;
2055
2323
  /** Plan id used to get the third party products */
2056
2324
  planId?: string;
2325
+ /** The number of reservations to skip from the list before returning results */
2326
+ skip?: number;
2327
+ /** To number of reservations to return */
2328
+ take?: number;
2057
2329
  }
2058
2330
  /** Contains response data for the getCatalog operation. */
2059
- export declare type GetCatalogResponse = Catalog[];
2331
+ export declare type GetCatalogResponse = CatalogsResult;
2060
2332
  /** Optional parameters. */
2061
2333
  export interface GetAppliedReservationListOptionalParams extends coreClient.OperationOptions {
2062
2334
  }
2063
2335
  /** Contains response data for the getAppliedReservationList operation. */
2064
2336
  export declare type GetAppliedReservationListResponse = AppliedReservations;
2065
2337
  /** Optional parameters. */
2338
+ export interface GetCatalogNextOptionalParams extends coreClient.OperationOptions {
2339
+ }
2340
+ /** Contains response data for the getCatalogNext operation. */
2341
+ export declare type GetCatalogNextResponse = CatalogsResult;
2342
+ /** Optional parameters. */
2066
2343
  export interface ReservationOrderCalculateOptionalParams extends coreClient.OperationOptions {
2067
2344
  }
2068
2345
  /** Contains response data for the calculate operation. */
@@ -2115,6 +2392,10 @@ export interface CalculateRefundPostOptionalParams extends coreClient.OperationO
2115
2392
  export declare type CalculateRefundPostResponse = CalculateRefundResponse;
2116
2393
  /** Optional parameters. */
2117
2394
  export interface ReturnPostOptionalParams extends coreClient.OperationOptions {
2395
+ /** Delay to wait until next poll, in milliseconds. */
2396
+ updateIntervalInMs?: number;
2397
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
2398
+ resumeFrom?: string;
2118
2399
  }
2119
2400
  /** Contains response data for the post operation. */
2120
2401
  export declare type ReturnPostResponse = ReturnPostHeaders & RefundResponse;
@@ -2191,16 +2472,6 @@ export interface QuotaRequestStatusListOptionalParams extends coreClient.Operati
2191
2472
  export declare type QuotaRequestStatusListResponse = QuotaRequestDetailsList;
2192
2473
  /** Optional parameters. */
2193
2474
  export interface QuotaRequestStatusListNextOptionalParams extends coreClient.OperationOptions {
2194
- /**
2195
- * | Field | Supported operators |
2196
- * |---------------------|------------------------|
2197
- * |requestSubmitTime | ge, le, eq, gt, lt |
2198
- */
2199
- filter?: string;
2200
- /** Number of records to return. */
2201
- top?: number;
2202
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element includes a skiptoken parameter that specifies a starting point to use for subsequent calls. */
2203
- skiptoken?: string;
2204
2475
  }
2205
2476
  /** Contains response data for the listNext operation. */
2206
2477
  export declare type QuotaRequestStatusListNextResponse = QuotaRequestDetailsList;