@azure/arm-billing 5.0.1-alpha.20250619.1 → 5.0.1-alpha.20250718.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 (275) hide show
  1. package/dist/browser/billingManagementClient.js +43 -5
  2. package/dist/browser/billingManagementClient.js.map +1 -1
  3. package/dist/browser/lroImpl.js +7 -3
  4. package/dist/browser/lroImpl.js.map +1 -1
  5. package/dist/browser/models/mappers.js +868 -393
  6. package/dist/browser/models/mappers.js.map +1 -1
  7. package/dist/browser/operations/address.js +1 -0
  8. package/dist/browser/operations/address.js.map +1 -1
  9. package/dist/browser/operations/agreements.js +23 -40
  10. package/dist/browser/operations/agreements.js.map +1 -1
  11. package/dist/browser/operations/associatedTenants.js +45 -52
  12. package/dist/browser/operations/associatedTenants.js.map +1 -1
  13. package/dist/browser/operations/availableBalances.js +1 -0
  14. package/dist/browser/operations/availableBalances.js.map +1 -1
  15. package/dist/browser/operations/billingAccounts.js +79 -98
  16. package/dist/browser/operations/billingAccounts.js.map +1 -1
  17. package/dist/browser/operations/billingPermissions.js +162 -281
  18. package/dist/browser/operations/billingPermissions.js.map +1 -1
  19. package/dist/browser/operations/billingProfiles.js +45 -52
  20. package/dist/browser/operations/billingProfiles.js.map +1 -1
  21. package/dist/browser/operations/billingPropertyOperations.js +1 -0
  22. package/dist/browser/operations/billingPropertyOperations.js.map +1 -1
  23. package/dist/browser/operations/billingRequests.js +122 -202
  24. package/dist/browser/operations/billingRequests.js.map +1 -1
  25. package/dist/browser/operations/billingRoleAssignments.js +260 -307
  26. package/dist/browser/operations/billingRoleAssignments.js.map +1 -1
  27. package/dist/browser/operations/billingRoleDefinitionOperations.js +139 -241
  28. package/dist/browser/operations/billingRoleDefinitionOperations.js.map +1 -1
  29. package/dist/browser/operations/billingSubscriptions.js +199 -271
  30. package/dist/browser/operations/billingSubscriptions.js.map +1 -1
  31. package/dist/browser/operations/billingSubscriptionsAliases.js +34 -46
  32. package/dist/browser/operations/billingSubscriptionsAliases.js.map +1 -1
  33. package/dist/browser/operations/customers.js +45 -79
  34. package/dist/browser/operations/customers.js.map +1 -1
  35. package/dist/browser/operations/departments.js +23 -40
  36. package/dist/browser/operations/departments.js.map +1 -1
  37. package/dist/browser/operations/enrollmentAccounts.js +45 -79
  38. package/dist/browser/operations/enrollmentAccounts.js.map +1 -1
  39. package/dist/browser/operations/invoiceSections.js +45 -52
  40. package/dist/browser/operations/invoiceSections.js.map +1 -1
  41. package/dist/browser/operations/invoices.js +133 -154
  42. package/dist/browser/operations/invoices.js.map +1 -1
  43. package/dist/browser/operations/operations.js +23 -40
  44. package/dist/browser/operations/operations.js.map +1 -1
  45. package/dist/browser/operations/partnerTransfers.js +23 -40
  46. package/dist/browser/operations/partnerTransfers.js.map +1 -1
  47. package/dist/browser/operations/paymentMethods.js +67 -118
  48. package/dist/browser/operations/paymentMethods.js.map +1 -1
  49. package/dist/browser/operations/policies.js +45 -24
  50. package/dist/browser/operations/policies.js.map +1 -1
  51. package/dist/browser/operations/products.js +100 -163
  52. package/dist/browser/operations/products.js.map +1 -1
  53. package/dist/browser/operations/recipientTransfers.js +23 -40
  54. package/dist/browser/operations/recipientTransfers.js.map +1 -1
  55. package/dist/browser/operations/reservationOrders.js +23 -40
  56. package/dist/browser/operations/reservationOrders.js.map +1 -1
  57. package/dist/browser/operations/reservations.js +78 -124
  58. package/dist/browser/operations/reservations.js.map +1 -1
  59. package/dist/browser/operations/savingsPlanOrders.js +23 -40
  60. package/dist/browser/operations/savingsPlanOrders.js.map +1 -1
  61. package/dist/browser/operations/savingsPlans.js +56 -85
  62. package/dist/browser/operations/savingsPlans.js.map +1 -1
  63. package/dist/browser/operations/transactions.js +100 -163
  64. package/dist/browser/operations/transactions.js.map +1 -1
  65. package/dist/browser/operations/transfers.js +23 -40
  66. package/dist/browser/operations/transfers.js.map +1 -1
  67. package/dist/browser/pagingHelper.js +2 -4
  68. package/dist/browser/pagingHelper.js.map +1 -1
  69. package/dist/commonjs/billingManagementClient.js +43 -5
  70. package/dist/commonjs/billingManagementClient.js.map +1 -1
  71. package/dist/commonjs/lroImpl.js +7 -3
  72. package/dist/commonjs/lroImpl.js.map +1 -1
  73. package/dist/commonjs/models/mappers.js +868 -393
  74. package/dist/commonjs/models/mappers.js.map +1 -1
  75. package/dist/commonjs/operations/address.js +1 -0
  76. package/dist/commonjs/operations/address.js.map +1 -1
  77. package/dist/commonjs/operations/agreements.js +23 -39
  78. package/dist/commonjs/operations/agreements.js.map +1 -1
  79. package/dist/commonjs/operations/associatedTenants.js +45 -51
  80. package/dist/commonjs/operations/associatedTenants.js.map +1 -1
  81. package/dist/commonjs/operations/availableBalances.js +1 -0
  82. package/dist/commonjs/operations/availableBalances.js.map +1 -1
  83. package/dist/commonjs/operations/billingAccounts.js +79 -97
  84. package/dist/commonjs/operations/billingAccounts.js.map +1 -1
  85. package/dist/commonjs/operations/billingPermissions.js +155 -273
  86. package/dist/commonjs/operations/billingPermissions.js.map +1 -1
  87. package/dist/commonjs/operations/billingProfiles.js +45 -51
  88. package/dist/commonjs/operations/billingProfiles.js.map +1 -1
  89. package/dist/commonjs/operations/billingPropertyOperations.js +1 -0
  90. package/dist/commonjs/operations/billingPropertyOperations.js.map +1 -1
  91. package/dist/commonjs/operations/billingRequests.js +122 -201
  92. package/dist/commonjs/operations/billingRequests.js.map +1 -1
  93. package/dist/commonjs/operations/billingRoleAssignments.js +260 -306
  94. package/dist/commonjs/operations/billingRoleAssignments.js.map +1 -1
  95. package/dist/commonjs/operations/billingRoleDefinitionOperations.js +139 -240
  96. package/dist/commonjs/operations/billingRoleDefinitionOperations.js.map +1 -1
  97. package/dist/commonjs/operations/billingSubscriptions.js +199 -270
  98. package/dist/commonjs/operations/billingSubscriptions.js.map +1 -1
  99. package/dist/commonjs/operations/billingSubscriptionsAliases.js +34 -45
  100. package/dist/commonjs/operations/billingSubscriptionsAliases.js.map +1 -1
  101. package/dist/commonjs/operations/customers.js +45 -78
  102. package/dist/commonjs/operations/customers.js.map +1 -1
  103. package/dist/commonjs/operations/departments.js +23 -39
  104. package/dist/commonjs/operations/departments.js.map +1 -1
  105. package/dist/commonjs/operations/enrollmentAccounts.js +45 -78
  106. package/dist/commonjs/operations/enrollmentAccounts.js.map +1 -1
  107. package/dist/commonjs/operations/invoiceSections.js +45 -51
  108. package/dist/commonjs/operations/invoiceSections.js.map +1 -1
  109. package/dist/commonjs/operations/invoices.js +133 -153
  110. package/dist/commonjs/operations/invoices.js.map +1 -1
  111. package/dist/commonjs/operations/operations.js +23 -39
  112. package/dist/commonjs/operations/operations.js.map +1 -1
  113. package/dist/commonjs/operations/partnerTransfers.js +23 -39
  114. package/dist/commonjs/operations/partnerTransfers.js.map +1 -1
  115. package/dist/commonjs/operations/paymentMethods.js +67 -117
  116. package/dist/commonjs/operations/paymentMethods.js.map +1 -1
  117. package/dist/commonjs/operations/policies.js +45 -24
  118. package/dist/commonjs/operations/policies.js.map +1 -1
  119. package/dist/commonjs/operations/products.js +100 -162
  120. package/dist/commonjs/operations/products.js.map +1 -1
  121. package/dist/commonjs/operations/recipientTransfers.js +23 -39
  122. package/dist/commonjs/operations/recipientTransfers.js.map +1 -1
  123. package/dist/commonjs/operations/reservationOrders.js +23 -39
  124. package/dist/commonjs/operations/reservationOrders.js.map +1 -1
  125. package/dist/commonjs/operations/reservations.js +78 -123
  126. package/dist/commonjs/operations/reservations.js.map +1 -1
  127. package/dist/commonjs/operations/savingsPlanOrders.js +23 -39
  128. package/dist/commonjs/operations/savingsPlanOrders.js.map +1 -1
  129. package/dist/commonjs/operations/savingsPlans.js +56 -84
  130. package/dist/commonjs/operations/savingsPlans.js.map +1 -1
  131. package/dist/commonjs/operations/transactions.js +100 -162
  132. package/dist/commonjs/operations/transactions.js.map +1 -1
  133. package/dist/commonjs/operations/transfers.js +23 -39
  134. package/dist/commonjs/operations/transfers.js.map +1 -1
  135. package/dist/commonjs/pagingHelper.js +2 -4
  136. package/dist/commonjs/pagingHelper.js.map +1 -1
  137. package/dist/commonjs/tsdoc-metadata.json +11 -11
  138. package/dist/esm/billingManagementClient.js +43 -5
  139. package/dist/esm/billingManagementClient.js.map +1 -1
  140. package/dist/esm/lroImpl.js +7 -3
  141. package/dist/esm/lroImpl.js.map +1 -1
  142. package/dist/esm/models/mappers.js +868 -393
  143. package/dist/esm/models/mappers.js.map +1 -1
  144. package/dist/esm/operations/address.js +1 -0
  145. package/dist/esm/operations/address.js.map +1 -1
  146. package/dist/esm/operations/agreements.js +23 -40
  147. package/dist/esm/operations/agreements.js.map +1 -1
  148. package/dist/esm/operations/associatedTenants.js +45 -52
  149. package/dist/esm/operations/associatedTenants.js.map +1 -1
  150. package/dist/esm/operations/availableBalances.js +1 -0
  151. package/dist/esm/operations/availableBalances.js.map +1 -1
  152. package/dist/esm/operations/billingAccounts.js +79 -98
  153. package/dist/esm/operations/billingAccounts.js.map +1 -1
  154. package/dist/esm/operations/billingPermissions.js +162 -281
  155. package/dist/esm/operations/billingPermissions.js.map +1 -1
  156. package/dist/esm/operations/billingProfiles.js +45 -52
  157. package/dist/esm/operations/billingProfiles.js.map +1 -1
  158. package/dist/esm/operations/billingPropertyOperations.js +1 -0
  159. package/dist/esm/operations/billingPropertyOperations.js.map +1 -1
  160. package/dist/esm/operations/billingRequests.js +122 -202
  161. package/dist/esm/operations/billingRequests.js.map +1 -1
  162. package/dist/esm/operations/billingRoleAssignments.js +260 -307
  163. package/dist/esm/operations/billingRoleAssignments.js.map +1 -1
  164. package/dist/esm/operations/billingRoleDefinitionOperations.js +139 -241
  165. package/dist/esm/operations/billingRoleDefinitionOperations.js.map +1 -1
  166. package/dist/esm/operations/billingSubscriptions.js +199 -271
  167. package/dist/esm/operations/billingSubscriptions.js.map +1 -1
  168. package/dist/esm/operations/billingSubscriptionsAliases.js +34 -46
  169. package/dist/esm/operations/billingSubscriptionsAliases.js.map +1 -1
  170. package/dist/esm/operations/customers.js +45 -79
  171. package/dist/esm/operations/customers.js.map +1 -1
  172. package/dist/esm/operations/departments.js +23 -40
  173. package/dist/esm/operations/departments.js.map +1 -1
  174. package/dist/esm/operations/enrollmentAccounts.js +45 -79
  175. package/dist/esm/operations/enrollmentAccounts.js.map +1 -1
  176. package/dist/esm/operations/invoiceSections.js +45 -52
  177. package/dist/esm/operations/invoiceSections.js.map +1 -1
  178. package/dist/esm/operations/invoices.js +133 -154
  179. package/dist/esm/operations/invoices.js.map +1 -1
  180. package/dist/esm/operations/operations.js +23 -40
  181. package/dist/esm/operations/operations.js.map +1 -1
  182. package/dist/esm/operations/partnerTransfers.js +23 -40
  183. package/dist/esm/operations/partnerTransfers.js.map +1 -1
  184. package/dist/esm/operations/paymentMethods.js +67 -118
  185. package/dist/esm/operations/paymentMethods.js.map +1 -1
  186. package/dist/esm/operations/policies.js +45 -24
  187. package/dist/esm/operations/policies.js.map +1 -1
  188. package/dist/esm/operations/products.js +100 -163
  189. package/dist/esm/operations/products.js.map +1 -1
  190. package/dist/esm/operations/recipientTransfers.js +23 -40
  191. package/dist/esm/operations/recipientTransfers.js.map +1 -1
  192. package/dist/esm/operations/reservationOrders.js +23 -40
  193. package/dist/esm/operations/reservationOrders.js.map +1 -1
  194. package/dist/esm/operations/reservations.js +78 -124
  195. package/dist/esm/operations/reservations.js.map +1 -1
  196. package/dist/esm/operations/savingsPlanOrders.js +23 -40
  197. package/dist/esm/operations/savingsPlanOrders.js.map +1 -1
  198. package/dist/esm/operations/savingsPlans.js +56 -85
  199. package/dist/esm/operations/savingsPlans.js.map +1 -1
  200. package/dist/esm/operations/transactions.js +100 -163
  201. package/dist/esm/operations/transactions.js.map +1 -1
  202. package/dist/esm/operations/transfers.js +23 -40
  203. package/dist/esm/operations/transfers.js.map +1 -1
  204. package/dist/esm/pagingHelper.js +2 -4
  205. package/dist/esm/pagingHelper.js.map +1 -1
  206. package/dist/react-native/billingManagementClient.js +43 -5
  207. package/dist/react-native/billingManagementClient.js.map +1 -1
  208. package/dist/react-native/lroImpl.js +7 -3
  209. package/dist/react-native/lroImpl.js.map +1 -1
  210. package/dist/react-native/models/mappers.js +868 -393
  211. package/dist/react-native/models/mappers.js.map +1 -1
  212. package/dist/react-native/operations/address.js +1 -0
  213. package/dist/react-native/operations/address.js.map +1 -1
  214. package/dist/react-native/operations/agreements.js +23 -40
  215. package/dist/react-native/operations/agreements.js.map +1 -1
  216. package/dist/react-native/operations/associatedTenants.js +45 -52
  217. package/dist/react-native/operations/associatedTenants.js.map +1 -1
  218. package/dist/react-native/operations/availableBalances.js +1 -0
  219. package/dist/react-native/operations/availableBalances.js.map +1 -1
  220. package/dist/react-native/operations/billingAccounts.js +79 -98
  221. package/dist/react-native/operations/billingAccounts.js.map +1 -1
  222. package/dist/react-native/operations/billingPermissions.js +162 -281
  223. package/dist/react-native/operations/billingPermissions.js.map +1 -1
  224. package/dist/react-native/operations/billingProfiles.js +45 -52
  225. package/dist/react-native/operations/billingProfiles.js.map +1 -1
  226. package/dist/react-native/operations/billingPropertyOperations.js +1 -0
  227. package/dist/react-native/operations/billingPropertyOperations.js.map +1 -1
  228. package/dist/react-native/operations/billingRequests.js +122 -202
  229. package/dist/react-native/operations/billingRequests.js.map +1 -1
  230. package/dist/react-native/operations/billingRoleAssignments.js +260 -307
  231. package/dist/react-native/operations/billingRoleAssignments.js.map +1 -1
  232. package/dist/react-native/operations/billingRoleDefinitionOperations.js +139 -241
  233. package/dist/react-native/operations/billingRoleDefinitionOperations.js.map +1 -1
  234. package/dist/react-native/operations/billingSubscriptions.js +199 -271
  235. package/dist/react-native/operations/billingSubscriptions.js.map +1 -1
  236. package/dist/react-native/operations/billingSubscriptionsAliases.js +34 -46
  237. package/dist/react-native/operations/billingSubscriptionsAliases.js.map +1 -1
  238. package/dist/react-native/operations/customers.js +45 -79
  239. package/dist/react-native/operations/customers.js.map +1 -1
  240. package/dist/react-native/operations/departments.js +23 -40
  241. package/dist/react-native/operations/departments.js.map +1 -1
  242. package/dist/react-native/operations/enrollmentAccounts.js +45 -79
  243. package/dist/react-native/operations/enrollmentAccounts.js.map +1 -1
  244. package/dist/react-native/operations/invoiceSections.js +45 -52
  245. package/dist/react-native/operations/invoiceSections.js.map +1 -1
  246. package/dist/react-native/operations/invoices.js +133 -154
  247. package/dist/react-native/operations/invoices.js.map +1 -1
  248. package/dist/react-native/operations/operations.js +23 -40
  249. package/dist/react-native/operations/operations.js.map +1 -1
  250. package/dist/react-native/operations/partnerTransfers.js +23 -40
  251. package/dist/react-native/operations/partnerTransfers.js.map +1 -1
  252. package/dist/react-native/operations/paymentMethods.js +67 -118
  253. package/dist/react-native/operations/paymentMethods.js.map +1 -1
  254. package/dist/react-native/operations/policies.js +45 -24
  255. package/dist/react-native/operations/policies.js.map +1 -1
  256. package/dist/react-native/operations/products.js +100 -163
  257. package/dist/react-native/operations/products.js.map +1 -1
  258. package/dist/react-native/operations/recipientTransfers.js +23 -40
  259. package/dist/react-native/operations/recipientTransfers.js.map +1 -1
  260. package/dist/react-native/operations/reservationOrders.js +23 -40
  261. package/dist/react-native/operations/reservationOrders.js.map +1 -1
  262. package/dist/react-native/operations/reservations.js +78 -124
  263. package/dist/react-native/operations/reservations.js.map +1 -1
  264. package/dist/react-native/operations/savingsPlanOrders.js +23 -40
  265. package/dist/react-native/operations/savingsPlanOrders.js.map +1 -1
  266. package/dist/react-native/operations/savingsPlans.js +56 -85
  267. package/dist/react-native/operations/savingsPlans.js.map +1 -1
  268. package/dist/react-native/operations/transactions.js +100 -163
  269. package/dist/react-native/operations/transactions.js.map +1 -1
  270. package/dist/react-native/operations/transfers.js +23 -40
  271. package/dist/react-native/operations/transfers.js.map +1 -1
  272. package/dist/react-native/pagingHelper.js +2 -4
  273. package/dist/react-native/pagingHelper.js.map +1 -1
  274. package/package.json +2 -2
  275. /package/review/{arm-billing.api.md → arm-billing-node.api.md} +0 -0
@@ -18,6 +18,7 @@ const lroImpl_js_1 = require("../lroImpl.js");
18
18
  /// <reference lib="esnext.asynciterable" />
19
19
  /** Class containing SavingsPlans operations. */
20
20
  class SavingsPlansImpl {
21
+ client;
21
22
  /**
22
23
  * Initialize a new instance of the class SavingsPlans class.
23
24
  * @param client Reference to the service client
@@ -41,52 +42,35 @@ class SavingsPlansImpl {
41
42
  return this;
42
43
  },
43
44
  byPage: (settings) => {
44
- if (settings === null || settings === void 0 ? void 0 : settings.maxPageSize) {
45
+ if (settings?.maxPageSize) {
45
46
  throw new Error("maxPageSize is not supported by this operation.");
46
47
  }
47
48
  return this.listBySavingsPlanOrderPagingPage(billingAccountName, savingsPlanOrderId, options, settings);
48
49
  },
49
50
  };
50
51
  }
51
- listBySavingsPlanOrderPagingPage(billingAccountName, savingsPlanOrderId, options, settings) {
52
- return tslib_1.__asyncGenerator(this, arguments, function* listBySavingsPlanOrderPagingPage_1() {
53
- let result;
54
- let continuationToken = settings === null || settings === void 0 ? void 0 : settings.continuationToken;
55
- if (!continuationToken) {
56
- result = yield tslib_1.__await(this._listBySavingsPlanOrder(billingAccountName, savingsPlanOrderId, options));
57
- let page = result.value || [];
58
- continuationToken = result.nextLink;
59
- (0, pagingHelper_js_1.setContinuationToken)(page, continuationToken);
60
- yield yield tslib_1.__await(page);
61
- }
62
- while (continuationToken) {
63
- result = yield tslib_1.__await(this._listBySavingsPlanOrderNext(billingAccountName, savingsPlanOrderId, continuationToken, options));
64
- continuationToken = result.nextLink;
65
- let page = result.value || [];
66
- (0, pagingHelper_js_1.setContinuationToken)(page, continuationToken);
67
- yield yield tslib_1.__await(page);
68
- }
69
- });
52
+ async *listBySavingsPlanOrderPagingPage(billingAccountName, savingsPlanOrderId, options, settings) {
53
+ let result;
54
+ let continuationToken = settings?.continuationToken;
55
+ if (!continuationToken) {
56
+ result = await this._listBySavingsPlanOrder(billingAccountName, savingsPlanOrderId, options);
57
+ let page = result.value || [];
58
+ continuationToken = result.nextLink;
59
+ (0, pagingHelper_js_1.setContinuationToken)(page, continuationToken);
60
+ yield page;
61
+ }
62
+ while (continuationToken) {
63
+ result = await this._listBySavingsPlanOrderNext(billingAccountName, savingsPlanOrderId, continuationToken, options);
64
+ continuationToken = result.nextLink;
65
+ let page = result.value || [];
66
+ (0, pagingHelper_js_1.setContinuationToken)(page, continuationToken);
67
+ yield page;
68
+ }
70
69
  }
71
- listBySavingsPlanOrderPagingAll(billingAccountName, savingsPlanOrderId, options) {
72
- return tslib_1.__asyncGenerator(this, arguments, function* listBySavingsPlanOrderPagingAll_1() {
73
- var _a, e_1, _b, _c;
74
- try {
75
- for (var _d = true, _e = tslib_1.__asyncValues(this.listBySavingsPlanOrderPagingPage(billingAccountName, savingsPlanOrderId, options)), _f; _f = yield tslib_1.__await(_e.next()), _a = _f.done, !_a; _d = true) {
76
- _c = _f.value;
77
- _d = false;
78
- const page = _c;
79
- yield tslib_1.__await(yield* tslib_1.__asyncDelegator(tslib_1.__asyncValues(page)));
80
- }
81
- }
82
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
83
- finally {
84
- try {
85
- if (!_d && !_a && (_b = _e.return)) yield tslib_1.__await(_b.call(_e));
86
- }
87
- finally { if (e_1) throw e_1.error; }
88
- }
89
- });
70
+ async *listBySavingsPlanOrderPagingAll(billingAccountName, savingsPlanOrderId, options) {
71
+ for await (const page of this.listBySavingsPlanOrderPagingPage(billingAccountName, savingsPlanOrderId, options)) {
72
+ yield* page;
73
+ }
90
74
  }
91
75
  /**
92
76
  * List savings plans by billing account.
@@ -103,52 +87,35 @@ class SavingsPlansImpl {
103
87
  return this;
104
88
  },
105
89
  byPage: (settings) => {
106
- if (settings === null || settings === void 0 ? void 0 : settings.maxPageSize) {
90
+ if (settings?.maxPageSize) {
107
91
  throw new Error("maxPageSize is not supported by this operation.");
108
92
  }
109
93
  return this.listByBillingAccountPagingPage(billingAccountName, options, settings);
110
94
  },
111
95
  };
112
96
  }
113
- listByBillingAccountPagingPage(billingAccountName, options, settings) {
114
- return tslib_1.__asyncGenerator(this, arguments, function* listByBillingAccountPagingPage_1() {
115
- let result;
116
- let continuationToken = settings === null || settings === void 0 ? void 0 : settings.continuationToken;
117
- if (!continuationToken) {
118
- result = yield tslib_1.__await(this._listByBillingAccount(billingAccountName, options));
119
- let page = result.value || [];
120
- continuationToken = result.nextLink;
121
- (0, pagingHelper_js_1.setContinuationToken)(page, continuationToken);
122
- yield yield tslib_1.__await(page);
123
- }
124
- while (continuationToken) {
125
- result = yield tslib_1.__await(this._listByBillingAccountNext(billingAccountName, continuationToken, options));
126
- continuationToken = result.nextLink;
127
- let page = result.value || [];
128
- (0, pagingHelper_js_1.setContinuationToken)(page, continuationToken);
129
- yield yield tslib_1.__await(page);
130
- }
131
- });
97
+ async *listByBillingAccountPagingPage(billingAccountName, options, settings) {
98
+ let result;
99
+ let continuationToken = settings?.continuationToken;
100
+ if (!continuationToken) {
101
+ result = await this._listByBillingAccount(billingAccountName, options);
102
+ let page = result.value || [];
103
+ continuationToken = result.nextLink;
104
+ (0, pagingHelper_js_1.setContinuationToken)(page, continuationToken);
105
+ yield page;
106
+ }
107
+ while (continuationToken) {
108
+ result = await this._listByBillingAccountNext(billingAccountName, continuationToken, options);
109
+ continuationToken = result.nextLink;
110
+ let page = result.value || [];
111
+ (0, pagingHelper_js_1.setContinuationToken)(page, continuationToken);
112
+ yield page;
113
+ }
132
114
  }
133
- listByBillingAccountPagingAll(billingAccountName, options) {
134
- return tslib_1.__asyncGenerator(this, arguments, function* listByBillingAccountPagingAll_1() {
135
- var _a, e_2, _b, _c;
136
- try {
137
- for (var _d = true, _e = tslib_1.__asyncValues(this.listByBillingAccountPagingPage(billingAccountName, options)), _f; _f = yield tslib_1.__await(_e.next()), _a = _f.done, !_a; _d = true) {
138
- _c = _f.value;
139
- _d = false;
140
- const page = _c;
141
- yield tslib_1.__await(yield* tslib_1.__asyncDelegator(tslib_1.__asyncValues(page)));
142
- }
143
- }
144
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
145
- finally {
146
- try {
147
- if (!_d && !_a && (_b = _e.return)) yield tslib_1.__await(_b.call(_e));
148
- }
149
- finally { if (e_2) throw e_2.error; }
150
- }
151
- });
115
+ async *listByBillingAccountPagingAll(billingAccountName, options) {
116
+ for await (const page of this.listByBillingAccountPagingPage(billingAccountName, options)) {
117
+ yield* page;
118
+ }
152
119
  }
153
120
  /**
154
121
  * List savings plans in an order by billing account.
@@ -190,14 +157,19 @@ class SavingsPlansImpl {
190
157
  return this.client.sendOperationRequest(args, spec);
191
158
  };
192
159
  const sendOperationFn = async (args, spec) => {
193
- var _a;
194
160
  let currentRawResponse = undefined;
195
- const providedCallback = (_a = args.options) === null || _a === void 0 ? void 0 : _a.onResponse;
161
+ const providedCallback = args.options?.onResponse;
196
162
  const callback = (rawResponse, flatResponse) => {
197
163
  currentRawResponse = rawResponse;
198
- providedCallback === null || providedCallback === void 0 ? void 0 : providedCallback(rawResponse, flatResponse);
164
+ providedCallback?.(rawResponse, flatResponse);
165
+ };
166
+ const updatedArgs = {
167
+ ...args,
168
+ options: {
169
+ ...args.options,
170
+ onResponse: callback,
171
+ },
199
172
  };
200
- const updatedArgs = Object.assign(Object.assign({}, args), { options: Object.assign(Object.assign({}, args.options), { onResponse: callback }) });
201
173
  const flatResponse = await directSendOperation(updatedArgs, spec);
202
174
  return {
203
175
  flatResponse,
@@ -220,8 +192,8 @@ class SavingsPlansImpl {
220
192
  spec: updateByBillingAccountOperationSpec,
221
193
  });
222
194
  const poller = await (0, core_lro_1.createHttpPoller)(lro, {
223
- restoreFrom: options === null || options === void 0 ? void 0 : options.resumeFrom,
224
- intervalInMs: options === null || options === void 0 ? void 0 : options.updateIntervalInMs,
195
+ restoreFrom: options?.resumeFrom,
196
+ intervalInMs: options?.updateIntervalInMs,
225
197
  resourceLocationConfig: "azure-async-operation",
226
198
  });
227
199
  await poller.poll();
@@ -1 +1 @@
1
- {"version":3,"file":"savingsPlans.js","sourceRoot":"","sources":["../../../src/operations/savingsPlans.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper.js\";\nimport { SavingsPlans } from \"../operationsInterfaces/index.js\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers.js\";\nimport * as Parameters from \"../models/parameters.js\";\nimport { BillingManagementClient } from \"../billingManagementClient.js\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller,\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl.js\";\nimport {\n SavingsPlanModel,\n SavingsPlansListBySavingsPlanOrderNextOptionalParams,\n SavingsPlansListBySavingsPlanOrderOptionalParams,\n SavingsPlansListBySavingsPlanOrderResponse,\n SavingsPlansListByBillingAccountNextOptionalParams,\n SavingsPlansListByBillingAccountOptionalParams,\n SavingsPlansListByBillingAccountResponse,\n SavingsPlansGetByBillingAccountOptionalParams,\n SavingsPlansGetByBillingAccountResponse,\n SavingsPlanUpdateRequest,\n SavingsPlansUpdateByBillingAccountOptionalParams,\n SavingsPlansUpdateByBillingAccountResponse,\n SavingsPlanUpdateValidateRequest,\n SavingsPlansValidateUpdateByBillingAccountOptionalParams,\n SavingsPlansValidateUpdateByBillingAccountResponse,\n SavingsPlansListBySavingsPlanOrderNextResponse,\n SavingsPlansListByBillingAccountNextResponse,\n} from \"../models/index.js\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing SavingsPlans operations. */\nexport class SavingsPlansImpl implements SavingsPlans {\n private readonly client: BillingManagementClient;\n\n /**\n * Initialize a new instance of the class SavingsPlans class.\n * @param client Reference to the service client\n */\n constructor(client: BillingManagementClient) {\n this.client = client;\n }\n\n /**\n * List savings plans in an order by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param options The options parameters.\n */\n public listBySavingsPlanOrder(\n billingAccountName: string,\n savingsPlanOrderId: string,\n options?: SavingsPlansListBySavingsPlanOrderOptionalParams,\n ): PagedAsyncIterableIterator<SavingsPlanModel> {\n const iter = this.listBySavingsPlanOrderPagingAll(\n billingAccountName,\n savingsPlanOrderId,\n options,\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listBySavingsPlanOrderPagingPage(\n billingAccountName,\n savingsPlanOrderId,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listBySavingsPlanOrderPagingPage(\n billingAccountName: string,\n savingsPlanOrderId: string,\n options?: SavingsPlansListBySavingsPlanOrderOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<SavingsPlanModel[]> {\n let result: SavingsPlansListBySavingsPlanOrderResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listBySavingsPlanOrder(\n billingAccountName,\n savingsPlanOrderId,\n options,\n );\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listBySavingsPlanOrderNext(\n billingAccountName,\n savingsPlanOrderId,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listBySavingsPlanOrderPagingAll(\n billingAccountName: string,\n savingsPlanOrderId: string,\n options?: SavingsPlansListBySavingsPlanOrderOptionalParams,\n ): AsyncIterableIterator<SavingsPlanModel> {\n for await (const page of this.listBySavingsPlanOrderPagingPage(\n billingAccountName,\n savingsPlanOrderId,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * List savings plans by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param options The options parameters.\n */\n public listByBillingAccount(\n billingAccountName: string,\n options?: SavingsPlansListByBillingAccountOptionalParams,\n ): PagedAsyncIterableIterator<SavingsPlanModel> {\n const iter = this.listByBillingAccountPagingAll(\n billingAccountName,\n options,\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByBillingAccountPagingPage(\n billingAccountName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByBillingAccountPagingPage(\n billingAccountName: string,\n options?: SavingsPlansListByBillingAccountOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<SavingsPlanModel[]> {\n let result: SavingsPlansListByBillingAccountResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByBillingAccount(billingAccountName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByBillingAccountNext(\n billingAccountName,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByBillingAccountPagingAll(\n billingAccountName: string,\n options?: SavingsPlansListByBillingAccountOptionalParams,\n ): AsyncIterableIterator<SavingsPlanModel> {\n for await (const page of this.listByBillingAccountPagingPage(\n billingAccountName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * List savings plans in an order by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param options The options parameters.\n */\n private _listBySavingsPlanOrder(\n billingAccountName: string,\n savingsPlanOrderId: string,\n options?: SavingsPlansListBySavingsPlanOrderOptionalParams,\n ): Promise<SavingsPlansListBySavingsPlanOrderResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, savingsPlanOrderId, options },\n listBySavingsPlanOrderOperationSpec,\n );\n }\n\n /**\n * List savings plans by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param options The options parameters.\n */\n private _listByBillingAccount(\n billingAccountName: string,\n options?: SavingsPlansListByBillingAccountOptionalParams,\n ): Promise<SavingsPlansListByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, options },\n listByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Get savings plan by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param savingsPlanId ID of the savings plan\n * @param options The options parameters.\n */\n getByBillingAccount(\n billingAccountName: string,\n savingsPlanOrderId: string,\n savingsPlanId: string,\n options?: SavingsPlansGetByBillingAccountOptionalParams,\n ): Promise<SavingsPlansGetByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, savingsPlanOrderId, savingsPlanId, options },\n getByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Update savings plan by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param savingsPlanId ID of the savings plan\n * @param body Request body for patching a savings plan order alias\n * @param options The options parameters.\n */\n async beginUpdateByBillingAccount(\n billingAccountName: string,\n savingsPlanOrderId: string,\n savingsPlanId: string,\n body: SavingsPlanUpdateRequest,\n options?: SavingsPlansUpdateByBillingAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<SavingsPlansUpdateByBillingAccountResponse>,\n SavingsPlansUpdateByBillingAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<SavingsPlansUpdateByBillingAccountResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown,\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback,\n },\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON(),\n },\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n billingAccountName,\n savingsPlanOrderId,\n savingsPlanId,\n body,\n options,\n },\n spec: updateByBillingAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n SavingsPlansUpdateByBillingAccountResponse,\n OperationState<SavingsPlansUpdateByBillingAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Update savings plan by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param savingsPlanId ID of the savings plan\n * @param body Request body for patching a savings plan order alias\n * @param options The options parameters.\n */\n async beginUpdateByBillingAccountAndWait(\n billingAccountName: string,\n savingsPlanOrderId: string,\n savingsPlanId: string,\n body: SavingsPlanUpdateRequest,\n options?: SavingsPlansUpdateByBillingAccountOptionalParams,\n ): Promise<SavingsPlansUpdateByBillingAccountResponse> {\n const poller = await this.beginUpdateByBillingAccount(\n billingAccountName,\n savingsPlanOrderId,\n savingsPlanId,\n body,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Validate savings plan patch by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param savingsPlanId ID of the savings plan\n * @param body Request body for patching a savings plan order alias\n * @param options The options parameters.\n */\n validateUpdateByBillingAccount(\n billingAccountName: string,\n savingsPlanOrderId: string,\n savingsPlanId: string,\n body: SavingsPlanUpdateValidateRequest,\n options?: SavingsPlansValidateUpdateByBillingAccountOptionalParams,\n ): Promise<SavingsPlansValidateUpdateByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, savingsPlanOrderId, savingsPlanId, body, options },\n validateUpdateByBillingAccountOperationSpec,\n );\n }\n\n /**\n * ListBySavingsPlanOrderNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param nextLink The nextLink from the previous successful call to the ListBySavingsPlanOrder method.\n * @param options The options parameters.\n */\n private _listBySavingsPlanOrderNext(\n billingAccountName: string,\n savingsPlanOrderId: string,\n nextLink: string,\n options?: SavingsPlansListBySavingsPlanOrderNextOptionalParams,\n ): Promise<SavingsPlansListBySavingsPlanOrderNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, savingsPlanOrderId, nextLink, options },\n listBySavingsPlanOrderNextOperationSpec,\n );\n }\n\n /**\n * ListByBillingAccountNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param nextLink The nextLink from the previous successful call to the ListByBillingAccount method.\n * @param options The options parameters.\n */\n private _listByBillingAccountNext(\n billingAccountName: string,\n nextLink: string,\n options?: SavingsPlansListByBillingAccountNextOptionalParams,\n ): Promise<SavingsPlansListByBillingAccountNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, nextLink, options },\n listByBillingAccountNextOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listBySavingsPlanOrderOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModelList,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.savingsPlanOrderId,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlans\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModelListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.orderBy,\n Parameters.skiptoken,\n Parameters.take,\n Parameters.selectedState,\n Parameters.refreshSummary,\n ],\n urlParameters: [Parameters.$host, Parameters.billingAccountName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.savingsPlanOrderId,\n Parameters.savingsPlanId,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst updateByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n 201: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n 202: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n 204: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.body,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.savingsPlanOrderId,\n Parameters.savingsPlanId,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst validateUpdateByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanValidateResponse,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.body1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.savingsPlanOrderId,\n Parameters.savingsPlanId,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst listBySavingsPlanOrderNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModelList,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.savingsPlanOrderId,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByBillingAccountNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModelListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\n"]}
1
+ {"version":3,"file":"savingsPlans.js","sourceRoot":"","sources":["../../../src/operations/savingsPlans.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper.js\";\nimport { SavingsPlans } from \"../operationsInterfaces/index.js\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers.js\";\nimport * as Parameters from \"../models/parameters.js\";\nimport { BillingManagementClient } from \"../billingManagementClient.js\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller,\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl.js\";\nimport {\n SavingsPlanModel,\n SavingsPlansListBySavingsPlanOrderNextOptionalParams,\n SavingsPlansListBySavingsPlanOrderOptionalParams,\n SavingsPlansListBySavingsPlanOrderResponse,\n SavingsPlansListByBillingAccountNextOptionalParams,\n SavingsPlansListByBillingAccountOptionalParams,\n SavingsPlansListByBillingAccountResponse,\n SavingsPlansGetByBillingAccountOptionalParams,\n SavingsPlansGetByBillingAccountResponse,\n SavingsPlanUpdateRequest,\n SavingsPlansUpdateByBillingAccountOptionalParams,\n SavingsPlansUpdateByBillingAccountResponse,\n SavingsPlanUpdateValidateRequest,\n SavingsPlansValidateUpdateByBillingAccountOptionalParams,\n SavingsPlansValidateUpdateByBillingAccountResponse,\n SavingsPlansListBySavingsPlanOrderNextResponse,\n SavingsPlansListByBillingAccountNextResponse,\n} from \"../models/index.js\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing SavingsPlans operations. */\nexport class SavingsPlansImpl implements SavingsPlans {\n private readonly client: BillingManagementClient;\n\n /**\n * Initialize a new instance of the class SavingsPlans class.\n * @param client Reference to the service client\n */\n constructor(client: BillingManagementClient) {\n this.client = client;\n }\n\n /**\n * List savings plans in an order by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param options The options parameters.\n */\n public listBySavingsPlanOrder(\n billingAccountName: string,\n savingsPlanOrderId: string,\n options?: SavingsPlansListBySavingsPlanOrderOptionalParams,\n ): PagedAsyncIterableIterator<SavingsPlanModel> {\n const iter = this.listBySavingsPlanOrderPagingAll(\n billingAccountName,\n savingsPlanOrderId,\n options,\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listBySavingsPlanOrderPagingPage(\n billingAccountName,\n savingsPlanOrderId,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listBySavingsPlanOrderPagingPage(\n billingAccountName: string,\n savingsPlanOrderId: string,\n options?: SavingsPlansListBySavingsPlanOrderOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<SavingsPlanModel[]> {\n let result: SavingsPlansListBySavingsPlanOrderResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listBySavingsPlanOrder(\n billingAccountName,\n savingsPlanOrderId,\n options,\n );\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listBySavingsPlanOrderNext(\n billingAccountName,\n savingsPlanOrderId,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listBySavingsPlanOrderPagingAll(\n billingAccountName: string,\n savingsPlanOrderId: string,\n options?: SavingsPlansListBySavingsPlanOrderOptionalParams,\n ): AsyncIterableIterator<SavingsPlanModel> {\n for await (const page of this.listBySavingsPlanOrderPagingPage(\n billingAccountName,\n savingsPlanOrderId,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * List savings plans by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param options The options parameters.\n */\n public listByBillingAccount(\n billingAccountName: string,\n options?: SavingsPlansListByBillingAccountOptionalParams,\n ): PagedAsyncIterableIterator<SavingsPlanModel> {\n const iter = this.listByBillingAccountPagingAll(\n billingAccountName,\n options,\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByBillingAccountPagingPage(\n billingAccountName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByBillingAccountPagingPage(\n billingAccountName: string,\n options?: SavingsPlansListByBillingAccountOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<SavingsPlanModel[]> {\n let result: SavingsPlansListByBillingAccountResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByBillingAccount(billingAccountName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByBillingAccountNext(\n billingAccountName,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByBillingAccountPagingAll(\n billingAccountName: string,\n options?: SavingsPlansListByBillingAccountOptionalParams,\n ): AsyncIterableIterator<SavingsPlanModel> {\n for await (const page of this.listByBillingAccountPagingPage(\n billingAccountName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * List savings plans in an order by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param options The options parameters.\n */\n private _listBySavingsPlanOrder(\n billingAccountName: string,\n savingsPlanOrderId: string,\n options?: SavingsPlansListBySavingsPlanOrderOptionalParams,\n ): Promise<SavingsPlansListBySavingsPlanOrderResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, savingsPlanOrderId, options },\n listBySavingsPlanOrderOperationSpec,\n );\n }\n\n /**\n * List savings plans by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param options The options parameters.\n */\n private _listByBillingAccount(\n billingAccountName: string,\n options?: SavingsPlansListByBillingAccountOptionalParams,\n ): Promise<SavingsPlansListByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, options },\n listByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Get savings plan by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param savingsPlanId ID of the savings plan\n * @param options The options parameters.\n */\n getByBillingAccount(\n billingAccountName: string,\n savingsPlanOrderId: string,\n savingsPlanId: string,\n options?: SavingsPlansGetByBillingAccountOptionalParams,\n ): Promise<SavingsPlansGetByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, savingsPlanOrderId, savingsPlanId, options },\n getByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Update savings plan by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param savingsPlanId ID of the savings plan\n * @param body Request body for patching a savings plan order alias\n * @param options The options parameters.\n */\n async beginUpdateByBillingAccount(\n billingAccountName: string,\n savingsPlanOrderId: string,\n savingsPlanId: string,\n body: SavingsPlanUpdateRequest,\n options?: SavingsPlansUpdateByBillingAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<SavingsPlansUpdateByBillingAccountResponse>,\n SavingsPlansUpdateByBillingAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<SavingsPlansUpdateByBillingAccountResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown,\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback,\n },\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON(),\n },\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n billingAccountName,\n savingsPlanOrderId,\n savingsPlanId,\n body,\n options,\n },\n spec: updateByBillingAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n SavingsPlansUpdateByBillingAccountResponse,\n OperationState<SavingsPlansUpdateByBillingAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Update savings plan by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param savingsPlanId ID of the savings plan\n * @param body Request body for patching a savings plan order alias\n * @param options The options parameters.\n */\n async beginUpdateByBillingAccountAndWait(\n billingAccountName: string,\n savingsPlanOrderId: string,\n savingsPlanId: string,\n body: SavingsPlanUpdateRequest,\n options?: SavingsPlansUpdateByBillingAccountOptionalParams,\n ): Promise<SavingsPlansUpdateByBillingAccountResponse> {\n const poller = await this.beginUpdateByBillingAccount(\n billingAccountName,\n savingsPlanOrderId,\n savingsPlanId,\n body,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Validate savings plan patch by billing account.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param savingsPlanId ID of the savings plan\n * @param body Request body for patching a savings plan order alias\n * @param options The options parameters.\n */\n validateUpdateByBillingAccount(\n billingAccountName: string,\n savingsPlanOrderId: string,\n savingsPlanId: string,\n body: SavingsPlanUpdateValidateRequest,\n options?: SavingsPlansValidateUpdateByBillingAccountOptionalParams,\n ): Promise<SavingsPlansValidateUpdateByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, savingsPlanOrderId, savingsPlanId, body, options },\n validateUpdateByBillingAccountOperationSpec,\n );\n }\n\n /**\n * ListBySavingsPlanOrderNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param savingsPlanOrderId Order ID of the savings plan\n * @param nextLink The nextLink from the previous successful call to the ListBySavingsPlanOrder method.\n * @param options The options parameters.\n */\n private _listBySavingsPlanOrderNext(\n billingAccountName: string,\n savingsPlanOrderId: string,\n nextLink: string,\n options?: SavingsPlansListBySavingsPlanOrderNextOptionalParams,\n ): Promise<SavingsPlansListBySavingsPlanOrderNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, savingsPlanOrderId, nextLink, options },\n listBySavingsPlanOrderNextOperationSpec,\n );\n }\n\n /**\n * ListByBillingAccountNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param nextLink The nextLink from the previous successful call to the ListByBillingAccount method.\n * @param options The options parameters.\n */\n private _listByBillingAccountNext(\n billingAccountName: string,\n nextLink: string,\n options?: SavingsPlansListByBillingAccountNextOptionalParams,\n ): Promise<SavingsPlansListByBillingAccountNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, nextLink, options },\n listByBillingAccountNextOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listBySavingsPlanOrderOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModelList,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.savingsPlanOrderId,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlans\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModelListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.orderBy,\n Parameters.skiptoken,\n Parameters.take,\n Parameters.selectedState,\n Parameters.refreshSummary,\n ],\n urlParameters: [Parameters.$host, Parameters.billingAccountName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion, Parameters.expand],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.savingsPlanOrderId,\n Parameters.savingsPlanId,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst updateByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n 201: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n 202: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n 204: {\n bodyMapper: Mappers.SavingsPlanModel,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.body,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.savingsPlanOrderId,\n Parameters.savingsPlanId,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst validateUpdateByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}/validate\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanValidateResponse,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.body1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.savingsPlanOrderId,\n Parameters.savingsPlanId,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst listBySavingsPlanOrderNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModelList,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.savingsPlanOrderId,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByBillingAccountNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SavingsPlanModelListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\n"]}