@azure/arm-billing 5.0.1-alpha.20250618.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
@@ -1 +1 @@
1
- {"version":3,"file":"billingRoleAssignments.js","sourceRoot":"","sources":["../../../src/operations/billingRoleAssignments.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 { BillingRoleAssignments } 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 BillingRoleAssignment,\n BillingRoleAssignmentsListByBillingProfileNextOptionalParams,\n BillingRoleAssignmentsListByBillingProfileOptionalParams,\n BillingRoleAssignmentsListByBillingProfileResponse,\n BillingRoleAssignmentsListByCustomerNextOptionalParams,\n BillingRoleAssignmentsListByCustomerOptionalParams,\n BillingRoleAssignmentsListByCustomerResponse,\n BillingRoleAssignmentsListByInvoiceSectionNextOptionalParams,\n BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsListByInvoiceSectionResponse,\n BillingRoleAssignmentsListByBillingAccountNextOptionalParams,\n BillingRoleAssignmentsListByBillingAccountOptionalParams,\n BillingRoleAssignmentsListByBillingAccountResponse,\n BillingRoleAssignmentsListByDepartmentNextOptionalParams,\n BillingRoleAssignmentsListByDepartmentOptionalParams,\n BillingRoleAssignmentsListByDepartmentResponse,\n BillingRoleAssignmentsListByEnrollmentAccountNextOptionalParams,\n BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n BillingRoleAssignmentsListByEnrollmentAccountResponse,\n BillingRoleAssignmentsDeleteByBillingProfileOptionalParams,\n BillingRoleAssignmentsGetByBillingProfileOptionalParams,\n BillingRoleAssignmentsGetByBillingProfileResponse,\n BillingRoleAssignmentProperties,\n BillingRoleAssignmentsCreateByBillingProfileOptionalParams,\n BillingRoleAssignmentsCreateByBillingProfileResponse,\n BillingRoleAssignmentsDeleteByCustomerOptionalParams,\n BillingRoleAssignmentsGetByCustomerOptionalParams,\n BillingRoleAssignmentsGetByCustomerResponse,\n BillingRoleAssignmentsCreateByCustomerOptionalParams,\n BillingRoleAssignmentsCreateByCustomerResponse,\n BillingRoleAssignmentsResolveByCustomerOptionalParams,\n BillingRoleAssignmentsResolveByCustomerResponse,\n BillingRoleAssignmentsDeleteByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsGetByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsGetByInvoiceSectionResponse,\n BillingRoleAssignmentsCreateByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsCreateByInvoiceSectionResponse,\n BillingRoleAssignmentsResolveByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsResolveByInvoiceSectionResponse,\n BillingRoleAssignmentsResolveByBillingProfileOptionalParams,\n BillingRoleAssignmentsResolveByBillingProfileResponse,\n BillingRoleAssignmentsDeleteByBillingAccountOptionalParams,\n BillingRoleAssignmentsGetByBillingAccountOptionalParams,\n BillingRoleAssignmentsGetByBillingAccountResponse,\n BillingRoleAssignmentsCreateOrUpdateByBillingAccountOptionalParams,\n BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse,\n BillingRoleAssignmentsCreateByBillingAccountOptionalParams,\n BillingRoleAssignmentsCreateByBillingAccountResponse,\n BillingRoleAssignmentsDeleteByDepartmentOptionalParams,\n BillingRoleAssignmentsGetByDepartmentOptionalParams,\n BillingRoleAssignmentsGetByDepartmentResponse,\n BillingRoleAssignmentsCreateOrUpdateByDepartmentOptionalParams,\n BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse,\n BillingRoleAssignmentsDeleteByEnrollmentAccountOptionalParams,\n BillingRoleAssignmentsGetByEnrollmentAccountOptionalParams,\n BillingRoleAssignmentsGetByEnrollmentAccountResponse,\n BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountOptionalParams,\n BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse,\n BillingRoleAssignmentsResolveByBillingAccountOptionalParams,\n BillingRoleAssignmentsResolveByBillingAccountResponse,\n BillingRoleAssignmentsListByBillingProfileNextResponse,\n BillingRoleAssignmentsListByCustomerNextResponse,\n BillingRoleAssignmentsListByInvoiceSectionNextResponse,\n BillingRoleAssignmentsListByBillingAccountNextResponse,\n BillingRoleAssignmentsListByDepartmentNextResponse,\n BillingRoleAssignmentsListByEnrollmentAccountNextResponse,\n} from \"../models/index.js\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing BillingRoleAssignments operations. */\nexport class BillingRoleAssignmentsImpl implements BillingRoleAssignments {\n private readonly client: BillingManagementClient;\n\n /**\n * Initialize a new instance of the class BillingRoleAssignments class.\n * @param client Reference to the service client\n */\n constructor(client: BillingManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists the role assignments for the caller on a billing profile. The operation is supported for\n * billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param options The options parameters.\n */\n public listByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsListByBillingProfileOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByBillingProfilePagingAll(\n billingAccountName,\n billingProfileName,\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.listByBillingProfilePagingPage(\n billingAccountName,\n billingProfileName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByBillingProfilePagingPage(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsListByBillingProfileOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByBillingProfileResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByBillingProfile(\n billingAccountName,\n billingProfileName,\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._listByBillingProfileNext(\n billingAccountName,\n billingProfileName,\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 *listByBillingProfilePagingAll(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsListByBillingProfileOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByBillingProfilePagingPage(\n billingAccountName,\n billingProfileName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on customer. The operation is supported for billing\n * accounts with agreement type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param options The options parameters.\n */\n public listByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsListByCustomerOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByCustomerPagingAll(\n billingAccountName,\n billingProfileName,\n customerName,\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.listByCustomerPagingPage(\n billingAccountName,\n billingProfileName,\n customerName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByCustomerPagingPage(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsListByCustomerOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByCustomerResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByCustomer(\n billingAccountName,\n billingProfileName,\n customerName,\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._listByCustomerNext(\n billingAccountName,\n billingProfileName,\n customerName,\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 *listByCustomerPagingAll(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsListByCustomerOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByCustomerPagingPage(\n billingAccountName,\n billingProfileName,\n customerName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on an invoice section. The operation is supported for\n * billing accounts with agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param options The options parameters.\n */\n public listByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByInvoiceSectionPagingAll(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\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.listByInvoiceSectionPagingPage(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByInvoiceSectionPagingPage(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByInvoiceSectionResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByInvoiceSection(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\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._listByInvoiceSectionNext(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\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 *listByInvoiceSectionPagingAll(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByInvoiceSectionPagingPage(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on a billing account. The operation is supported for\n * billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or\n * Enterprise Agreement.\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?: BillingRoleAssignmentsListByBillingAccountOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\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?: BillingRoleAssignmentsListByBillingAccountOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByBillingAccountResponse;\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?: BillingRoleAssignmentsListByBillingAccountOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByBillingAccountPagingPage(\n billingAccountName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on a department. The operation is supported for billing\n * accounts of type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param options The options parameters.\n */\n public listByDepartment(\n billingAccountName: string,\n departmentName: string,\n options?: BillingRoleAssignmentsListByDepartmentOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByDepartmentPagingAll(\n billingAccountName,\n departmentName,\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.listByDepartmentPagingPage(\n billingAccountName,\n departmentName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByDepartmentPagingPage(\n billingAccountName: string,\n departmentName: string,\n options?: BillingRoleAssignmentsListByDepartmentOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByDepartmentResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByDepartment(\n billingAccountName,\n departmentName,\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._listByDepartmentNext(\n billingAccountName,\n departmentName,\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 *listByDepartmentPagingAll(\n billingAccountName: string,\n departmentName: string,\n options?: BillingRoleAssignmentsListByDepartmentOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByDepartmentPagingPage(\n billingAccountName,\n departmentName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on a enrollment account. The operation is supported for\n * billing accounts of type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param options The options parameters.\n */\n public listByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByEnrollmentAccountPagingAll(\n billingAccountName,\n enrollmentAccountName,\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.listByEnrollmentAccountPagingPage(\n billingAccountName,\n enrollmentAccountName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByEnrollmentAccountPagingPage(\n billingAccountName: string,\n enrollmentAccountName: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByEnrollmentAccountResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByEnrollmentAccount(\n billingAccountName,\n enrollmentAccountName,\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._listByEnrollmentAccountNext(\n billingAccountName,\n enrollmentAccountName,\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 *listByEnrollmentAccountPagingAll(\n billingAccountName: string,\n enrollmentAccountName: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByEnrollmentAccountPagingPage(\n billingAccountName,\n enrollmentAccountName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Deletes a role assignment on a billing profile. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByBillingProfileOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n billingRoleAssignmentName,\n options,\n },\n deleteByBillingProfileOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a billing profile. The operation is supported for billing\n * accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByBillingProfileOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByBillingProfileResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n billingRoleAssignmentName,\n options,\n },\n getByBillingProfileOperationSpec,\n );\n }\n\n /**\n * Lists the role assignments for the caller on a billing profile. The operation is supported for\n * billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param options The options parameters.\n */\n private _listByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsListByBillingProfileOptionalParams,\n ): Promise<BillingRoleAssignmentsListByBillingProfileResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingProfileName, options },\n listByBillingProfileOperationSpec,\n );\n }\n\n /**\n * Adds a role assignment on a billing profile. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByBillingProfileOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateByBillingProfileResponse>,\n BillingRoleAssignmentsCreateByBillingProfileResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateByBillingProfileResponse> => {\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: { billingAccountName, billingProfileName, parameters, options },\n spec: createByBillingProfileOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateByBillingProfileResponse,\n OperationState<BillingRoleAssignmentsCreateByBillingProfileResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Adds a role assignment on a billing profile. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByBillingProfileAndWait(\n billingAccountName: string,\n billingProfileName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByBillingProfileOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateByBillingProfileResponse> {\n const poller = await this.beginCreateByBillingProfile(\n billingAccountName,\n billingProfileName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes a role assignment on a customer. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByCustomerOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n customerName,\n billingRoleAssignmentName,\n options,\n },\n deleteByCustomerOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a customer. The operation is supported for billing accounts\n * with agreement type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByCustomerOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByCustomerResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n customerName,\n billingRoleAssignmentName,\n options,\n },\n getByCustomerOperationSpec,\n );\n }\n\n /**\n * Lists the role assignments for the caller on customer. The operation is supported for billing\n * accounts with agreement type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param options The options parameters.\n */\n private _listByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsListByCustomerOptionalParams,\n ): Promise<BillingRoleAssignmentsListByCustomerResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingProfileName, customerName, options },\n listByCustomerOperationSpec,\n );\n }\n\n /**\n * Adds a role assignment on a customer. The operation is supported for billing accounts with agreement\n * type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByCustomerOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateByCustomerResponse>,\n BillingRoleAssignmentsCreateByCustomerResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateByCustomerResponse> => {\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 billingProfileName,\n customerName,\n parameters,\n options,\n },\n spec: createByCustomerOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateByCustomerResponse,\n OperationState<BillingRoleAssignmentsCreateByCustomerResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Adds a role assignment on a customer. The operation is supported for billing accounts with agreement\n * type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByCustomerAndWait(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByCustomerOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateByCustomerResponse> {\n const poller = await this.beginCreateByCustomer(\n billingAccountName,\n billingProfileName,\n customerName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on a customer while fetching user info for each role\n * assignment. The operation is supported for billing accounts with agreement type Microsoft Partner\n * Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param options The options parameters.\n */\n async beginResolveByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsResolveByCustomerOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsResolveByCustomerResponse>,\n BillingRoleAssignmentsResolveByCustomerResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsResolveByCustomerResponse> => {\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: { billingAccountName, billingProfileName, customerName, options },\n spec: resolveByCustomerOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsResolveByCustomerResponse,\n OperationState<BillingRoleAssignmentsResolveByCustomerResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Lists the role assignments for the caller on a customer while fetching user info for each role\n * assignment. The operation is supported for billing accounts with agreement type Microsoft Partner\n * Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param options The options parameters.\n */\n async beginResolveByCustomerAndWait(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsResolveByCustomerOptionalParams,\n ): Promise<BillingRoleAssignmentsResolveByCustomerResponse> {\n const poller = await this.beginResolveByCustomer(\n billingAccountName,\n billingProfileName,\n customerName,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes a role assignment on an invoice section. The operation is supported for billing accounts\n * with agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByInvoiceSectionOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n billingRoleAssignmentName,\n options,\n },\n deleteByInvoiceSectionOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on an invoice section. The operation is supported for billing\n * accounts with agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByInvoiceSectionOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByInvoiceSectionResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n billingRoleAssignmentName,\n options,\n },\n getByInvoiceSectionOperationSpec,\n );\n }\n\n /**\n * Lists the role assignments for the caller on an invoice section. The operation is supported for\n * billing accounts with agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param options The options parameters.\n */\n private _listByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n ): Promise<BillingRoleAssignmentsListByInvoiceSectionResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingProfileName, invoiceSectionName, options },\n listByInvoiceSectionOperationSpec,\n );\n }\n\n /**\n * Adds a role assignment on an invoice section. The operation is supported for billing accounts with\n * agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByInvoiceSectionOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateByInvoiceSectionResponse>,\n BillingRoleAssignmentsCreateByInvoiceSectionResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateByInvoiceSectionResponse> => {\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 billingProfileName,\n invoiceSectionName,\n parameters,\n options,\n },\n spec: createByInvoiceSectionOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateByInvoiceSectionResponse,\n OperationState<BillingRoleAssignmentsCreateByInvoiceSectionResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Adds a role assignment on an invoice section. The operation is supported for billing accounts with\n * agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByInvoiceSectionAndWait(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByInvoiceSectionOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateByInvoiceSectionResponse> {\n const poller = await this.beginCreateByInvoiceSection(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on an invoice section while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param options The options parameters.\n */\n async beginResolveByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsResolveByInvoiceSectionOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsResolveByInvoiceSectionResponse>,\n BillingRoleAssignmentsResolveByInvoiceSectionResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsResolveByInvoiceSectionResponse> => {\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 billingProfileName,\n invoiceSectionName,\n options,\n },\n spec: resolveByInvoiceSectionOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsResolveByInvoiceSectionResponse,\n OperationState<BillingRoleAssignmentsResolveByInvoiceSectionResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Lists the role assignments for the caller on an invoice section while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param options The options parameters.\n */\n async beginResolveByInvoiceSectionAndWait(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsResolveByInvoiceSectionOptionalParams,\n ): Promise<BillingRoleAssignmentsResolveByInvoiceSectionResponse> {\n const poller = await this.beginResolveByInvoiceSection(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on an billing profile while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param options The options parameters.\n */\n async beginResolveByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsResolveByBillingProfileOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsResolveByBillingProfileResponse>,\n BillingRoleAssignmentsResolveByBillingProfileResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsResolveByBillingProfileResponse> => {\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: { billingAccountName, billingProfileName, options },\n spec: resolveByBillingProfileOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsResolveByBillingProfileResponse,\n OperationState<BillingRoleAssignmentsResolveByBillingProfileResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Lists the role assignments for the caller on an billing profile while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param options The options parameters.\n */\n async beginResolveByBillingProfileAndWait(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsResolveByBillingProfileOptionalParams,\n ): Promise<BillingRoleAssignmentsResolveByBillingProfileResponse> {\n const poller = await this.beginResolveByBillingProfile(\n billingAccountName,\n billingProfileName,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes a role assignment on a billing account. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByBillingAccount(\n billingAccountName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByBillingAccountOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingRoleAssignmentName, options },\n deleteByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a billing account. The operation is supported for billing\n * accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise\n * Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByBillingAccount(\n billingAccountName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingRoleAssignmentName, options },\n getByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByBillingAccount(\n billingAccountName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByBillingAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse>,\n BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse> => {\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 billingRoleAssignmentName,\n parameters,\n options,\n },\n spec: createOrUpdateByBillingAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse,\n OperationState<BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByBillingAccountAndWait(\n billingAccountName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse> {\n const poller = await this.beginCreateOrUpdateByBillingAccount(\n billingAccountName,\n billingRoleAssignmentName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on a billing account. The operation is supported for\n * billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or\n * Enterprise Agreement.\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?: BillingRoleAssignmentsListByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsListByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, options },\n listByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Adds a role assignment on a billing account. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByBillingAccount(\n billingAccountName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByBillingAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateByBillingAccountResponse>,\n BillingRoleAssignmentsCreateByBillingAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateByBillingAccountResponse> => {\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: { billingAccountName, parameters, options },\n spec: createByBillingAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateByBillingAccountResponse,\n OperationState<BillingRoleAssignmentsCreateByBillingAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Adds a role assignment on a billing account. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByBillingAccountAndWait(\n billingAccountName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateByBillingAccountResponse> {\n const poller = await this.beginCreateByBillingAccount(\n billingAccountName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes a role assignment on a department. The operation is supported only for billing accounts with\n * agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByDepartment(\n billingAccountName: string,\n departmentName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByDepartmentOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n departmentName,\n billingRoleAssignmentName,\n options,\n },\n deleteByDepartmentOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a department. The operation is supported only for billing\n * accounts with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByDepartment(\n billingAccountName: string,\n departmentName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByDepartmentOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByDepartmentResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n departmentName,\n billingRoleAssignmentName,\n options,\n },\n getByDepartmentOperationSpec,\n );\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByDepartment(\n billingAccountName: string,\n departmentName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByDepartmentOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse>,\n BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse> => {\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 departmentName,\n billingRoleAssignmentName,\n parameters,\n options,\n },\n spec: createOrUpdateByDepartmentOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse,\n OperationState<BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByDepartmentAndWait(\n billingAccountName: string,\n departmentName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByDepartmentOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse> {\n const poller = await this.beginCreateOrUpdateByDepartment(\n billingAccountName,\n departmentName,\n billingRoleAssignmentName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on a department. The operation is supported for billing\n * accounts of type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param options The options parameters.\n */\n private _listByDepartment(\n billingAccountName: string,\n departmentName: string,\n options?: BillingRoleAssignmentsListByDepartmentOptionalParams,\n ): Promise<BillingRoleAssignmentsListByDepartmentResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, departmentName, options },\n listByDepartmentOperationSpec,\n );\n }\n\n /**\n * Deletes a role assignment on a enrollment Account. The operation is supported only for billing\n * accounts with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByEnrollmentAccountOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n enrollmentAccountName,\n billingRoleAssignmentName,\n options,\n },\n deleteByEnrollmentAccountOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a enrollment Account. The operation is supported only for\n * billing accounts with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByEnrollmentAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByEnrollmentAccountResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n enrollmentAccountName,\n billingRoleAssignmentName,\n options,\n },\n getByEnrollmentAccountOperationSpec,\n );\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse>,\n BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse> => {\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 enrollmentAccountName,\n billingRoleAssignmentName,\n parameters,\n options,\n },\n spec: createOrUpdateByEnrollmentAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse,\n OperationState<BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByEnrollmentAccountAndWait(\n billingAccountName: string,\n enrollmentAccountName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse> {\n const poller = await this.beginCreateOrUpdateByEnrollmentAccount(\n billingAccountName,\n enrollmentAccountName,\n billingRoleAssignmentName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on a enrollment account. The operation is supported for\n * billing accounts of type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param options The options parameters.\n */\n private _listByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsListByEnrollmentAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, enrollmentAccountName, options },\n listByEnrollmentAccountOperationSpec,\n );\n }\n\n /**\n * Lists the role assignments for the caller on a billing account while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param options The options parameters.\n */\n async beginResolveByBillingAccount(\n billingAccountName: string,\n options?: BillingRoleAssignmentsResolveByBillingAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsResolveByBillingAccountResponse>,\n BillingRoleAssignmentsResolveByBillingAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsResolveByBillingAccountResponse> => {\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: { billingAccountName, options },\n spec: resolveByBillingAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsResolveByBillingAccountResponse,\n OperationState<BillingRoleAssignmentsResolveByBillingAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Lists the role assignments for the caller on a billing account while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param options The options parameters.\n */\n async beginResolveByBillingAccountAndWait(\n billingAccountName: string,\n options?: BillingRoleAssignmentsResolveByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsResolveByBillingAccountResponse> {\n const poller = await this.beginResolveByBillingAccount(\n billingAccountName,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListByBillingProfileNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param nextLink The nextLink from the previous successful call to the ListByBillingProfile method.\n * @param options The options parameters.\n */\n private _listByBillingProfileNext(\n billingAccountName: string,\n billingProfileName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByBillingProfileNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByBillingProfileNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingProfileName, nextLink, options },\n listByBillingProfileNextOperationSpec,\n );\n }\n\n /**\n * ListByCustomerNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param nextLink The nextLink from the previous successful call to the ListByCustomer method.\n * @param options The options parameters.\n */\n private _listByCustomerNext(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByCustomerNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByCustomerNextResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n customerName,\n nextLink,\n options,\n },\n listByCustomerNextOperationSpec,\n );\n }\n\n /**\n * ListByInvoiceSectionNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param nextLink The nextLink from the previous successful call to the ListByInvoiceSection method.\n * @param options The options parameters.\n */\n private _listByInvoiceSectionNext(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByInvoiceSectionNextResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n nextLink,\n options,\n },\n listByInvoiceSectionNextOperationSpec,\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?: BillingRoleAssignmentsListByBillingAccountNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByBillingAccountNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, nextLink, options },\n listByBillingAccountNextOperationSpec,\n );\n }\n\n /**\n * ListByDepartmentNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param nextLink The nextLink from the previous successful call to the ListByDepartment method.\n * @param options The options parameters.\n */\n private _listByDepartmentNext(\n billingAccountName: string,\n departmentName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByDepartmentNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByDepartmentNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, departmentName, nextLink, options },\n listByDepartmentNextOperationSpec,\n );\n }\n\n /**\n * ListByEnrollmentAccountNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param nextLink The nextLink from the previous successful call to the ListByEnrollmentAccount\n * method.\n * @param options The options parameters.\n */\n private _listByEnrollmentAccountNext(\n billingAccountName: string,\n enrollmentAccountName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByEnrollmentAccountNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, enrollmentAccountName, nextLink, options },\n listByEnrollmentAccountNextOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst deleteByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.skip,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/createBillingRoleAssignment\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst deleteByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.skip,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/createBillingRoleAssignment\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst resolveByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/resolveBillingRoleAssignments\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.resolveScopeDisplayNames,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst deleteByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.skip,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/createBillingRoleAssignment\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst resolveByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/resolveBillingRoleAssignments\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.resolveScopeDisplayNames,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst resolveByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/resolveBillingRoleAssignments\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.resolveScopeDisplayNames,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst deleteByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters10,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst listByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.skip,\n ],\n urlParameters: [Parameters.$host, Parameters.billingAccountName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/createBillingRoleAssignment\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.billingAccountName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst deleteByDepartmentOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.departmentName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByDepartmentOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.departmentName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateByDepartmentOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters10,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.departmentName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst listByDepartmentOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.departmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst deleteByEnrollmentAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.enrollmentAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByEnrollmentAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.enrollmentAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateByEnrollmentAccountOperationSpec: coreClient.OperationSpec =\n {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters10,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.enrollmentAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n };\nconst listByEnrollmentAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.enrollmentAccountName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst resolveByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/resolveBillingRoleAssignments\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.resolveScopeDisplayNames,\n ],\n urlParameters: [Parameters.$host, Parameters.billingAccountName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByBillingProfileNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.billingProfileName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByCustomerNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.billingProfileName,\n Parameters.customerName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByInvoiceSectionNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\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.BillingRoleAssignmentListResult,\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};\nconst listByDepartmentNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.departmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByEnrollmentAccountNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.enrollmentAccountName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\n"]}
1
+ {"version":3,"file":"billingRoleAssignments.js","sourceRoot":"","sources":["../../../src/operations/billingRoleAssignments.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 { BillingRoleAssignments } 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 BillingRoleAssignment,\n BillingRoleAssignmentsListByBillingProfileNextOptionalParams,\n BillingRoleAssignmentsListByBillingProfileOptionalParams,\n BillingRoleAssignmentsListByBillingProfileResponse,\n BillingRoleAssignmentsListByCustomerNextOptionalParams,\n BillingRoleAssignmentsListByCustomerOptionalParams,\n BillingRoleAssignmentsListByCustomerResponse,\n BillingRoleAssignmentsListByInvoiceSectionNextOptionalParams,\n BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsListByInvoiceSectionResponse,\n BillingRoleAssignmentsListByBillingAccountNextOptionalParams,\n BillingRoleAssignmentsListByBillingAccountOptionalParams,\n BillingRoleAssignmentsListByBillingAccountResponse,\n BillingRoleAssignmentsListByDepartmentNextOptionalParams,\n BillingRoleAssignmentsListByDepartmentOptionalParams,\n BillingRoleAssignmentsListByDepartmentResponse,\n BillingRoleAssignmentsListByEnrollmentAccountNextOptionalParams,\n BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n BillingRoleAssignmentsListByEnrollmentAccountResponse,\n BillingRoleAssignmentsDeleteByBillingProfileOptionalParams,\n BillingRoleAssignmentsGetByBillingProfileOptionalParams,\n BillingRoleAssignmentsGetByBillingProfileResponse,\n BillingRoleAssignmentProperties,\n BillingRoleAssignmentsCreateByBillingProfileOptionalParams,\n BillingRoleAssignmentsCreateByBillingProfileResponse,\n BillingRoleAssignmentsDeleteByCustomerOptionalParams,\n BillingRoleAssignmentsGetByCustomerOptionalParams,\n BillingRoleAssignmentsGetByCustomerResponse,\n BillingRoleAssignmentsCreateByCustomerOptionalParams,\n BillingRoleAssignmentsCreateByCustomerResponse,\n BillingRoleAssignmentsResolveByCustomerOptionalParams,\n BillingRoleAssignmentsResolveByCustomerResponse,\n BillingRoleAssignmentsDeleteByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsGetByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsGetByInvoiceSectionResponse,\n BillingRoleAssignmentsCreateByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsCreateByInvoiceSectionResponse,\n BillingRoleAssignmentsResolveByInvoiceSectionOptionalParams,\n BillingRoleAssignmentsResolveByInvoiceSectionResponse,\n BillingRoleAssignmentsResolveByBillingProfileOptionalParams,\n BillingRoleAssignmentsResolveByBillingProfileResponse,\n BillingRoleAssignmentsDeleteByBillingAccountOptionalParams,\n BillingRoleAssignmentsGetByBillingAccountOptionalParams,\n BillingRoleAssignmentsGetByBillingAccountResponse,\n BillingRoleAssignmentsCreateOrUpdateByBillingAccountOptionalParams,\n BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse,\n BillingRoleAssignmentsCreateByBillingAccountOptionalParams,\n BillingRoleAssignmentsCreateByBillingAccountResponse,\n BillingRoleAssignmentsDeleteByDepartmentOptionalParams,\n BillingRoleAssignmentsGetByDepartmentOptionalParams,\n BillingRoleAssignmentsGetByDepartmentResponse,\n BillingRoleAssignmentsCreateOrUpdateByDepartmentOptionalParams,\n BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse,\n BillingRoleAssignmentsDeleteByEnrollmentAccountOptionalParams,\n BillingRoleAssignmentsGetByEnrollmentAccountOptionalParams,\n BillingRoleAssignmentsGetByEnrollmentAccountResponse,\n BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountOptionalParams,\n BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse,\n BillingRoleAssignmentsResolveByBillingAccountOptionalParams,\n BillingRoleAssignmentsResolveByBillingAccountResponse,\n BillingRoleAssignmentsListByBillingProfileNextResponse,\n BillingRoleAssignmentsListByCustomerNextResponse,\n BillingRoleAssignmentsListByInvoiceSectionNextResponse,\n BillingRoleAssignmentsListByBillingAccountNextResponse,\n BillingRoleAssignmentsListByDepartmentNextResponse,\n BillingRoleAssignmentsListByEnrollmentAccountNextResponse,\n} from \"../models/index.js\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing BillingRoleAssignments operations. */\nexport class BillingRoleAssignmentsImpl implements BillingRoleAssignments {\n private readonly client: BillingManagementClient;\n\n /**\n * Initialize a new instance of the class BillingRoleAssignments class.\n * @param client Reference to the service client\n */\n constructor(client: BillingManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists the role assignments for the caller on a billing profile. The operation is supported for\n * billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param options The options parameters.\n */\n public listByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsListByBillingProfileOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByBillingProfilePagingAll(\n billingAccountName,\n billingProfileName,\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.listByBillingProfilePagingPage(\n billingAccountName,\n billingProfileName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByBillingProfilePagingPage(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsListByBillingProfileOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByBillingProfileResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByBillingProfile(\n billingAccountName,\n billingProfileName,\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._listByBillingProfileNext(\n billingAccountName,\n billingProfileName,\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 *listByBillingProfilePagingAll(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsListByBillingProfileOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByBillingProfilePagingPage(\n billingAccountName,\n billingProfileName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on customer. The operation is supported for billing\n * accounts with agreement type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param options The options parameters.\n */\n public listByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsListByCustomerOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByCustomerPagingAll(\n billingAccountName,\n billingProfileName,\n customerName,\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.listByCustomerPagingPage(\n billingAccountName,\n billingProfileName,\n customerName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByCustomerPagingPage(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsListByCustomerOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByCustomerResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByCustomer(\n billingAccountName,\n billingProfileName,\n customerName,\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._listByCustomerNext(\n billingAccountName,\n billingProfileName,\n customerName,\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 *listByCustomerPagingAll(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsListByCustomerOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByCustomerPagingPage(\n billingAccountName,\n billingProfileName,\n customerName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on an invoice section. The operation is supported for\n * billing accounts with agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param options The options parameters.\n */\n public listByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByInvoiceSectionPagingAll(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\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.listByInvoiceSectionPagingPage(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByInvoiceSectionPagingPage(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByInvoiceSectionResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByInvoiceSection(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\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._listByInvoiceSectionNext(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\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 *listByInvoiceSectionPagingAll(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByInvoiceSectionPagingPage(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on a billing account. The operation is supported for\n * billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or\n * Enterprise Agreement.\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?: BillingRoleAssignmentsListByBillingAccountOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\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?: BillingRoleAssignmentsListByBillingAccountOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByBillingAccountResponse;\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?: BillingRoleAssignmentsListByBillingAccountOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByBillingAccountPagingPage(\n billingAccountName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on a department. The operation is supported for billing\n * accounts of type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param options The options parameters.\n */\n public listByDepartment(\n billingAccountName: string,\n departmentName: string,\n options?: BillingRoleAssignmentsListByDepartmentOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByDepartmentPagingAll(\n billingAccountName,\n departmentName,\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.listByDepartmentPagingPage(\n billingAccountName,\n departmentName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByDepartmentPagingPage(\n billingAccountName: string,\n departmentName: string,\n options?: BillingRoleAssignmentsListByDepartmentOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByDepartmentResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByDepartment(\n billingAccountName,\n departmentName,\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._listByDepartmentNext(\n billingAccountName,\n departmentName,\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 *listByDepartmentPagingAll(\n billingAccountName: string,\n departmentName: string,\n options?: BillingRoleAssignmentsListByDepartmentOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByDepartmentPagingPage(\n billingAccountName,\n departmentName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists the role assignments for the caller on a enrollment account. The operation is supported for\n * billing accounts of type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param options The options parameters.\n */\n public listByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n ): PagedAsyncIterableIterator<BillingRoleAssignment> {\n const iter = this.listByEnrollmentAccountPagingAll(\n billingAccountName,\n enrollmentAccountName,\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.listByEnrollmentAccountPagingPage(\n billingAccountName,\n enrollmentAccountName,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listByEnrollmentAccountPagingPage(\n billingAccountName: string,\n enrollmentAccountName: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<BillingRoleAssignment[]> {\n let result: BillingRoleAssignmentsListByEnrollmentAccountResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByEnrollmentAccount(\n billingAccountName,\n enrollmentAccountName,\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._listByEnrollmentAccountNext(\n billingAccountName,\n enrollmentAccountName,\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 *listByEnrollmentAccountPagingAll(\n billingAccountName: string,\n enrollmentAccountName: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n ): AsyncIterableIterator<BillingRoleAssignment> {\n for await (const page of this.listByEnrollmentAccountPagingPage(\n billingAccountName,\n enrollmentAccountName,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Deletes a role assignment on a billing profile. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByBillingProfileOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n billingRoleAssignmentName,\n options,\n },\n deleteByBillingProfileOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a billing profile. The operation is supported for billing\n * accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByBillingProfileOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByBillingProfileResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n billingRoleAssignmentName,\n options,\n },\n getByBillingProfileOperationSpec,\n );\n }\n\n /**\n * Lists the role assignments for the caller on a billing profile. The operation is supported for\n * billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param options The options parameters.\n */\n private _listByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsListByBillingProfileOptionalParams,\n ): Promise<BillingRoleAssignmentsListByBillingProfileResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingProfileName, options },\n listByBillingProfileOperationSpec,\n );\n }\n\n /**\n * Adds a role assignment on a billing profile. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByBillingProfileOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateByBillingProfileResponse>,\n BillingRoleAssignmentsCreateByBillingProfileResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateByBillingProfileResponse> => {\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: { billingAccountName, billingProfileName, parameters, options },\n spec: createByBillingProfileOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateByBillingProfileResponse,\n OperationState<BillingRoleAssignmentsCreateByBillingProfileResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Adds a role assignment on a billing profile. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByBillingProfileAndWait(\n billingAccountName: string,\n billingProfileName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByBillingProfileOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateByBillingProfileResponse> {\n const poller = await this.beginCreateByBillingProfile(\n billingAccountName,\n billingProfileName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes a role assignment on a customer. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByCustomerOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n customerName,\n billingRoleAssignmentName,\n options,\n },\n deleteByCustomerOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a customer. The operation is supported for billing accounts\n * with agreement type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByCustomerOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByCustomerResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n customerName,\n billingRoleAssignmentName,\n options,\n },\n getByCustomerOperationSpec,\n );\n }\n\n /**\n * Lists the role assignments for the caller on customer. The operation is supported for billing\n * accounts with agreement type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param options The options parameters.\n */\n private _listByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsListByCustomerOptionalParams,\n ): Promise<BillingRoleAssignmentsListByCustomerResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingProfileName, customerName, options },\n listByCustomerOperationSpec,\n );\n }\n\n /**\n * Adds a role assignment on a customer. The operation is supported for billing accounts with agreement\n * type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByCustomerOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateByCustomerResponse>,\n BillingRoleAssignmentsCreateByCustomerResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateByCustomerResponse> => {\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 billingProfileName,\n customerName,\n parameters,\n options,\n },\n spec: createByCustomerOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateByCustomerResponse,\n OperationState<BillingRoleAssignmentsCreateByCustomerResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Adds a role assignment on a customer. The operation is supported for billing accounts with agreement\n * type Microsoft Partner Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByCustomerAndWait(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByCustomerOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateByCustomerResponse> {\n const poller = await this.beginCreateByCustomer(\n billingAccountName,\n billingProfileName,\n customerName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on a customer while fetching user info for each role\n * assignment. The operation is supported for billing accounts with agreement type Microsoft Partner\n * Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param options The options parameters.\n */\n async beginResolveByCustomer(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsResolveByCustomerOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsResolveByCustomerResponse>,\n BillingRoleAssignmentsResolveByCustomerResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsResolveByCustomerResponse> => {\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: { billingAccountName, billingProfileName, customerName, options },\n spec: resolveByCustomerOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsResolveByCustomerResponse,\n OperationState<BillingRoleAssignmentsResolveByCustomerResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Lists the role assignments for the caller on a customer while fetching user info for each role\n * assignment. The operation is supported for billing accounts with agreement type Microsoft Partner\n * Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param options The options parameters.\n */\n async beginResolveByCustomerAndWait(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n options?: BillingRoleAssignmentsResolveByCustomerOptionalParams,\n ): Promise<BillingRoleAssignmentsResolveByCustomerResponse> {\n const poller = await this.beginResolveByCustomer(\n billingAccountName,\n billingProfileName,\n customerName,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes a role assignment on an invoice section. The operation is supported for billing accounts\n * with agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByInvoiceSectionOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n billingRoleAssignmentName,\n options,\n },\n deleteByInvoiceSectionOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on an invoice section. The operation is supported for billing\n * accounts with agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByInvoiceSectionOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByInvoiceSectionResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n billingRoleAssignmentName,\n options,\n },\n getByInvoiceSectionOperationSpec,\n );\n }\n\n /**\n * Lists the role assignments for the caller on an invoice section. The operation is supported for\n * billing accounts with agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param options The options parameters.\n */\n private _listByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionOptionalParams,\n ): Promise<BillingRoleAssignmentsListByInvoiceSectionResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingProfileName, invoiceSectionName, options },\n listByInvoiceSectionOperationSpec,\n );\n }\n\n /**\n * Adds a role assignment on an invoice section. The operation is supported for billing accounts with\n * agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByInvoiceSectionOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateByInvoiceSectionResponse>,\n BillingRoleAssignmentsCreateByInvoiceSectionResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateByInvoiceSectionResponse> => {\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 billingProfileName,\n invoiceSectionName,\n parameters,\n options,\n },\n spec: createByInvoiceSectionOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateByInvoiceSectionResponse,\n OperationState<BillingRoleAssignmentsCreateByInvoiceSectionResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Adds a role assignment on an invoice section. The operation is supported for billing accounts with\n * agreement type Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByInvoiceSectionAndWait(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByInvoiceSectionOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateByInvoiceSectionResponse> {\n const poller = await this.beginCreateByInvoiceSection(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on an invoice section while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param options The options parameters.\n */\n async beginResolveByInvoiceSection(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsResolveByInvoiceSectionOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsResolveByInvoiceSectionResponse>,\n BillingRoleAssignmentsResolveByInvoiceSectionResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsResolveByInvoiceSectionResponse> => {\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 billingProfileName,\n invoiceSectionName,\n options,\n },\n spec: resolveByInvoiceSectionOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsResolveByInvoiceSectionResponse,\n OperationState<BillingRoleAssignmentsResolveByInvoiceSectionResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Lists the role assignments for the caller on an invoice section while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param options The options parameters.\n */\n async beginResolveByInvoiceSectionAndWait(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n options?: BillingRoleAssignmentsResolveByInvoiceSectionOptionalParams,\n ): Promise<BillingRoleAssignmentsResolveByInvoiceSectionResponse> {\n const poller = await this.beginResolveByInvoiceSection(\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on an billing profile while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param options The options parameters.\n */\n async beginResolveByBillingProfile(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsResolveByBillingProfileOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsResolveByBillingProfileResponse>,\n BillingRoleAssignmentsResolveByBillingProfileResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsResolveByBillingProfileResponse> => {\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: { billingAccountName, billingProfileName, options },\n spec: resolveByBillingProfileOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsResolveByBillingProfileResponse,\n OperationState<BillingRoleAssignmentsResolveByBillingProfileResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Lists the role assignments for the caller on an billing profile while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param options The options parameters.\n */\n async beginResolveByBillingProfileAndWait(\n billingAccountName: string,\n billingProfileName: string,\n options?: BillingRoleAssignmentsResolveByBillingProfileOptionalParams,\n ): Promise<BillingRoleAssignmentsResolveByBillingProfileResponse> {\n const poller = await this.beginResolveByBillingProfile(\n billingAccountName,\n billingProfileName,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes a role assignment on a billing account. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByBillingAccount(\n billingAccountName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByBillingAccountOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingRoleAssignmentName, options },\n deleteByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a billing account. The operation is supported for billing\n * accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise\n * Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByBillingAccount(\n billingAccountName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingRoleAssignmentName, options },\n getByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByBillingAccount(\n billingAccountName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByBillingAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse>,\n BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse> => {\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 billingRoleAssignmentName,\n parameters,\n options,\n },\n spec: createOrUpdateByBillingAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse,\n OperationState<BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByBillingAccountAndWait(\n billingAccountName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByBillingAccountResponse> {\n const poller = await this.beginCreateOrUpdateByBillingAccount(\n billingAccountName,\n billingRoleAssignmentName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on a billing account. The operation is supported for\n * billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or\n * Enterprise Agreement.\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?: BillingRoleAssignmentsListByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsListByBillingAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, options },\n listByBillingAccountOperationSpec,\n );\n }\n\n /**\n * Adds a role assignment on a billing account. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByBillingAccount(\n billingAccountName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByBillingAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateByBillingAccountResponse>,\n BillingRoleAssignmentsCreateByBillingAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateByBillingAccountResponse> => {\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: { billingAccountName, parameters, options },\n spec: createByBillingAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateByBillingAccountResponse,\n OperationState<BillingRoleAssignmentsCreateByBillingAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Adds a role assignment on a billing account. The operation is supported for billing accounts with\n * agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateByBillingAccountAndWait(\n billingAccountName: string,\n parameters: BillingRoleAssignmentProperties,\n options?: BillingRoleAssignmentsCreateByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateByBillingAccountResponse> {\n const poller = await this.beginCreateByBillingAccount(\n billingAccountName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes a role assignment on a department. The operation is supported only for billing accounts with\n * agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByDepartment(\n billingAccountName: string,\n departmentName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByDepartmentOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n departmentName,\n billingRoleAssignmentName,\n options,\n },\n deleteByDepartmentOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a department. The operation is supported only for billing\n * accounts with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByDepartment(\n billingAccountName: string,\n departmentName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByDepartmentOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByDepartmentResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n departmentName,\n billingRoleAssignmentName,\n options,\n },\n getByDepartmentOperationSpec,\n );\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByDepartment(\n billingAccountName: string,\n departmentName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByDepartmentOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse>,\n BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse> => {\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 departmentName,\n billingRoleAssignmentName,\n parameters,\n options,\n },\n spec: createOrUpdateByDepartmentOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse,\n OperationState<BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByDepartmentAndWait(\n billingAccountName: string,\n departmentName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByDepartmentOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByDepartmentResponse> {\n const poller = await this.beginCreateOrUpdateByDepartment(\n billingAccountName,\n departmentName,\n billingRoleAssignmentName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on a department. The operation is supported for billing\n * accounts of type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param options The options parameters.\n */\n private _listByDepartment(\n billingAccountName: string,\n departmentName: string,\n options?: BillingRoleAssignmentsListByDepartmentOptionalParams,\n ): Promise<BillingRoleAssignmentsListByDepartmentResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, departmentName, options },\n listByDepartmentOperationSpec,\n );\n }\n\n /**\n * Deletes a role assignment on a enrollment Account. The operation is supported only for billing\n * accounts with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n deleteByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsDeleteByEnrollmentAccountOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n enrollmentAccountName,\n billingRoleAssignmentName,\n options,\n },\n deleteByEnrollmentAccountOperationSpec,\n );\n }\n\n /**\n * Gets a role assignment for the caller on a enrollment Account. The operation is supported only for\n * billing accounts with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param options The options parameters.\n */\n getByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n billingRoleAssignmentName: string,\n options?: BillingRoleAssignmentsGetByEnrollmentAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsGetByEnrollmentAccountResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n enrollmentAccountName,\n billingRoleAssignmentName,\n options,\n },\n getByEnrollmentAccountOperationSpec,\n );\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse>,\n BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse> => {\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 enrollmentAccountName,\n billingRoleAssignmentName,\n parameters,\n options,\n },\n spec: createOrUpdateByEnrollmentAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse,\n OperationState<BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Create or update a billing role assignment. The operation is supported only for billing accounts\n * with agreement type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param billingRoleAssignmentName The ID that uniquely identifies a role assignment.\n * @param parameters The properties of the billing role assignment.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateByEnrollmentAccountAndWait(\n billingAccountName: string,\n enrollmentAccountName: string,\n billingRoleAssignmentName: string,\n parameters: BillingRoleAssignment,\n options?: BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsCreateOrUpdateByEnrollmentAccountResponse> {\n const poller = await this.beginCreateOrUpdateByEnrollmentAccount(\n billingAccountName,\n enrollmentAccountName,\n billingRoleAssignmentName,\n parameters,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Lists the role assignments for the caller on a enrollment account. The operation is supported for\n * billing accounts of type Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param options The options parameters.\n */\n private _listByEnrollmentAccount(\n billingAccountName: string,\n enrollmentAccountName: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsListByEnrollmentAccountResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, enrollmentAccountName, options },\n listByEnrollmentAccountOperationSpec,\n );\n }\n\n /**\n * Lists the role assignments for the caller on a billing account while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param options The options parameters.\n */\n async beginResolveByBillingAccount(\n billingAccountName: string,\n options?: BillingRoleAssignmentsResolveByBillingAccountOptionalParams,\n ): Promise<\n SimplePollerLike<\n OperationState<BillingRoleAssignmentsResolveByBillingAccountResponse>,\n BillingRoleAssignmentsResolveByBillingAccountResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<BillingRoleAssignmentsResolveByBillingAccountResponse> => {\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: { billingAccountName, options },\n spec: resolveByBillingAccountOperationSpec,\n });\n const poller = await createHttpPoller<\n BillingRoleAssignmentsResolveByBillingAccountResponse,\n OperationState<BillingRoleAssignmentsResolveByBillingAccountResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Lists the role assignments for the caller on a billing account while fetching user info for each\n * role assignment. The operation is supported for billing accounts with agreement type Microsoft\n * Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param options The options parameters.\n */\n async beginResolveByBillingAccountAndWait(\n billingAccountName: string,\n options?: BillingRoleAssignmentsResolveByBillingAccountOptionalParams,\n ): Promise<BillingRoleAssignmentsResolveByBillingAccountResponse> {\n const poller = await this.beginResolveByBillingAccount(\n billingAccountName,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListByBillingProfileNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param nextLink The nextLink from the previous successful call to the ListByBillingProfile method.\n * @param options The options parameters.\n */\n private _listByBillingProfileNext(\n billingAccountName: string,\n billingProfileName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByBillingProfileNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByBillingProfileNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, billingProfileName, nextLink, options },\n listByBillingProfileNextOperationSpec,\n );\n }\n\n /**\n * ListByCustomerNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param customerName The ID that uniquely identifies a customer.\n * @param nextLink The nextLink from the previous successful call to the ListByCustomer method.\n * @param options The options parameters.\n */\n private _listByCustomerNext(\n billingAccountName: string,\n billingProfileName: string,\n customerName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByCustomerNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByCustomerNextResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n customerName,\n nextLink,\n options,\n },\n listByCustomerNextOperationSpec,\n );\n }\n\n /**\n * ListByInvoiceSectionNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param billingProfileName The ID that uniquely identifies a billing profile.\n * @param invoiceSectionName The ID that uniquely identifies an invoice section.\n * @param nextLink The nextLink from the previous successful call to the ListByInvoiceSection method.\n * @param options The options parameters.\n */\n private _listByInvoiceSectionNext(\n billingAccountName: string,\n billingProfileName: string,\n invoiceSectionName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByInvoiceSectionNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByInvoiceSectionNextResponse> {\n return this.client.sendOperationRequest(\n {\n billingAccountName,\n billingProfileName,\n invoiceSectionName,\n nextLink,\n options,\n },\n listByInvoiceSectionNextOperationSpec,\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?: BillingRoleAssignmentsListByBillingAccountNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByBillingAccountNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, nextLink, options },\n listByBillingAccountNextOperationSpec,\n );\n }\n\n /**\n * ListByDepartmentNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param departmentName The name of the department.\n * @param nextLink The nextLink from the previous successful call to the ListByDepartment method.\n * @param options The options parameters.\n */\n private _listByDepartmentNext(\n billingAccountName: string,\n departmentName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByDepartmentNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByDepartmentNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, departmentName, nextLink, options },\n listByDepartmentNextOperationSpec,\n );\n }\n\n /**\n * ListByEnrollmentAccountNext\n * @param billingAccountName The ID that uniquely identifies a billing account.\n * @param enrollmentAccountName The name of the enrollment account.\n * @param nextLink The nextLink from the previous successful call to the ListByEnrollmentAccount\n * method.\n * @param options The options parameters.\n */\n private _listByEnrollmentAccountNext(\n billingAccountName: string,\n enrollmentAccountName: string,\n nextLink: string,\n options?: BillingRoleAssignmentsListByEnrollmentAccountNextOptionalParams,\n ): Promise<BillingRoleAssignmentsListByEnrollmentAccountNextResponse> {\n return this.client.sendOperationRequest(\n { billingAccountName, enrollmentAccountName, nextLink, options },\n listByEnrollmentAccountNextOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst deleteByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.skip,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/createBillingRoleAssignment\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst deleteByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.skip,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/createBillingRoleAssignment\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst resolveByCustomerOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/resolveBillingRoleAssignments\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.resolveScopeDisplayNames,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.customerName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst deleteByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.skip,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/createBillingRoleAssignment\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst resolveByInvoiceSectionOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/resolveBillingRoleAssignments\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.resolveScopeDisplayNames,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst resolveByBillingProfileOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/resolveBillingRoleAssignments\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.resolveScopeDisplayNames,\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingProfileName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst deleteByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters10,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst listByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.top,\n Parameters.skip,\n ],\n urlParameters: [Parameters.$host, Parameters.billingAccountName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/createBillingRoleAssignment\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters9,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.billingAccountName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst deleteByDepartmentOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.departmentName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByDepartmentOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.departmentName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateByDepartmentOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters10,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.departmentName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst listByDepartmentOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.departmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst deleteByEnrollmentAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.enrollmentAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getByEnrollmentAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.enrollmentAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateByEnrollmentAccountOperationSpec: coreClient.OperationSpec =\n {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments/{billingRoleAssignmentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignment,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.parameters10,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.enrollmentAccountName,\n Parameters.billingRoleAssignmentName,\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n };\nconst listByEnrollmentAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.enrollmentAccountName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst resolveByBillingAccountOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/resolveBillingRoleAssignments\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 201: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 202: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n 204: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.filter,\n Parameters.resolveScopeDisplayNames,\n ],\n urlParameters: [Parameters.$host, Parameters.billingAccountName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByBillingProfileNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.billingProfileName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByCustomerNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.billingProfileName,\n Parameters.customerName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByInvoiceSectionNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.billingProfileName,\n Parameters.invoiceSectionName,\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.BillingRoleAssignmentListResult,\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};\nconst listByDepartmentNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.departmentName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listByEnrollmentAccountNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.BillingRoleAssignmentListResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n urlParameters: [\n Parameters.$host,\n Parameters.billingAccountName,\n Parameters.nextLink,\n Parameters.enrollmentAccountName,\n ],\n headerParameters: [Parameters.accept],\n serializer,\n};\n"]}