metronome-sdk 0.1.0.pre.alpha.2 → 0.1.0.pre.alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (551) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +45 -0
  3. data/README.md +120 -74
  4. data/SECURITY.md +2 -2
  5. data/lib/metronome_sdk/client.rb +4 -4
  6. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +3 -1
  7. data/lib/metronome_sdk/internal/type/array_of.rb +8 -0
  8. data/lib/metronome_sdk/internal/type/base_model.rb +13 -0
  9. data/lib/metronome_sdk/internal/type/boolean.rb +8 -0
  10. data/lib/metronome_sdk/internal/type/enum.rb +12 -0
  11. data/lib/metronome_sdk/internal/type/file_input.rb +7 -0
  12. data/lib/metronome_sdk/internal/type/hash_of.rb +8 -0
  13. data/lib/metronome_sdk/internal/type/union.rb +12 -0
  14. data/lib/metronome_sdk/internal/type/unknown.rb +8 -0
  15. data/lib/metronome_sdk/internal/util.rb +54 -1
  16. data/lib/metronome_sdk/internal.rb +3 -0
  17. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +14 -3
  18. data/lib/metronome_sdk/models/v1/alert_create_params.rb +11 -11
  19. data/lib/metronome_sdk/models/v1/alert_create_response.rb +14 -3
  20. data/lib/metronome_sdk/models/v1/audit_log_list_params.rb +2 -2
  21. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +8 -2
  22. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +14 -3
  23. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +88 -8
  24. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +14 -3
  25. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +85 -6
  26. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +85 -8
  27. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +291 -143
  28. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +14 -3
  29. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +14 -3
  30. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +12 -12
  31. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +1276 -3
  32. data/lib/metronome_sdk/models/v1/contract_create_params.rb +827 -299
  33. data/lib/metronome_sdk/models/v1/contract_create_response.rb +14 -3
  34. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +1644 -8
  35. data/lib/metronome_sdk/models/v1/contract_list_response.rb +10879 -55
  36. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +33 -5
  37. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +317 -10
  38. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +10908 -55
  39. data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rb +34 -0
  40. data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rb +81 -0
  41. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +4 -4
  42. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +1276 -3
  43. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +14 -3
  44. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +14 -3
  45. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +99 -8
  46. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +14 -3
  47. data/lib/metronome_sdk/models/v1/contracts/product_list_params.rb +4 -4
  48. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +561 -12
  49. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +8 -2
  50. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +559 -14
  51. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +97 -6
  52. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +14 -3
  53. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +8 -2
  54. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +14 -3
  55. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -4
  56. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +14 -3
  57. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +42 -6
  58. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +8 -2
  59. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +33 -5
  60. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +181 -7
  61. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +42 -6
  62. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +2 -2
  63. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +14 -3
  64. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +14 -3
  65. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +2 -2
  66. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +14 -3
  67. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +86 -20
  68. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +16 -3
  69. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +76 -14
  70. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +61 -9
  71. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +33 -5
  72. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +180 -7
  73. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +85 -21
  74. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +14 -3
  75. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +14 -3
  76. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +153 -11
  77. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +175 -14
  78. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +14 -3
  79. data/lib/metronome_sdk/models/v1/custom_field_add_key_params.rb +2 -2
  80. data/lib/metronome_sdk/models/v1/custom_field_delete_values_params.rb +2 -2
  81. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +2 -2
  82. data/lib/metronome_sdk/models/v1/custom_field_remove_key_params.rb +2 -2
  83. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +2 -2
  84. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +8 -2
  85. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +14 -3
  86. data/lib/metronome_sdk/models/v1/customer_create_params.rb +20 -20
  87. data/lib/metronome_sdk/models/v1/customer_create_response.rb +50 -3
  88. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +86 -6
  89. data/lib/metronome_sdk/models/v1/{customer_detail.rb → customer_list_response.rb} +15 -14
  90. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +126 -3
  91. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +50 -3
  92. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +2 -2
  93. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +276 -5
  94. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +2 -2
  95. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +279 -3
  96. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -6
  97. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +2 -2
  98. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +2 -2
  99. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +78 -26
  100. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +14 -3
  101. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +1047 -3
  102. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +14 -3
  103. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +59 -7
  104. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +14 -3
  105. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +593 -3
  106. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +14 -3
  107. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +4 -4
  108. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +1271 -2
  109. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +2 -2
  110. data/lib/metronome_sdk/models/v1/customers/{invoice.rb → invoice_list_response.rb} +303 -118
  111. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +1276 -3
  112. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +16 -15
  113. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +14 -3
  114. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +21 -3
  115. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +13 -13
  116. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +286 -3
  117. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +20 -3
  118. data/lib/metronome_sdk/models/v1/plan_list_customers_params.rb +2 -2
  119. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +128 -3
  120. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +2 -2
  121. data/lib/metronome_sdk/models/v1/usage_list_params.rb +9 -8
  122. data/lib/metronome_sdk/models/v1/usage_list_with_groups_params.rb +5 -5
  123. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +69 -17
  124. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +14 -3
  125. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +61 -9
  126. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +14 -3
  127. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1147 -377
  128. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +14 -3
  129. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +2212 -119
  130. data/lib/metronome_sdk/models/v2/contract_list_response.rb +1233 -202
  131. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +1235 -201
  132. data/lib/metronome_sdk/models.rb +28 -49
  133. data/lib/metronome_sdk/resources/v1/alerts.rb +3 -3
  134. data/lib/metronome_sdk/resources/v1/audit_logs.rb +1 -1
  135. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +3 -3
  136. data/lib/metronome_sdk/resources/v1/contracts/products.rb +9 -6
  137. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +1 -1
  138. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +8 -6
  139. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +4 -4
  140. data/lib/metronome_sdk/resources/v1/contracts.rb +55 -28
  141. data/lib/metronome_sdk/resources/v1/credit_grants.rb +3 -3
  142. data/lib/metronome_sdk/resources/v1/custom_fields.rb +5 -5
  143. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +2 -2
  144. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +5 -5
  145. data/lib/metronome_sdk/resources/v1/customers/commits.rb +7 -5
  146. data/lib/metronome_sdk/resources/v1/customers/credits.rb +5 -3
  147. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +5 -5
  148. data/lib/metronome_sdk/resources/v1/customers/plans.rb +3 -3
  149. data/lib/metronome_sdk/resources/v1/customers.rb +6 -5
  150. data/lib/metronome_sdk/resources/v1/dashboards.rb +4 -4
  151. data/lib/metronome_sdk/resources/v1/plans.rb +1 -1
  152. data/lib/metronome_sdk/resources/v1/usage.rb +5 -5
  153. data/lib/metronome_sdk/resources/v2/contracts.rb +39 -27
  154. data/lib/metronome_sdk/version.rb +1 -1
  155. data/lib/metronome_sdk.rb +7 -28
  156. data/rbi/metronome_sdk/internal/transport/pooled_net_requester.rbi +5 -1
  157. data/rbi/metronome_sdk/internal/type/array_of.rbi +6 -0
  158. data/rbi/metronome_sdk/internal/type/base_model.rbi +5 -0
  159. data/rbi/metronome_sdk/internal/type/boolean.rbi +6 -0
  160. data/rbi/metronome_sdk/internal/type/enum.rbi +5 -0
  161. data/rbi/metronome_sdk/internal/type/file_input.rbi +5 -0
  162. data/rbi/metronome_sdk/internal/type/hash_of.rbi +6 -0
  163. data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
  164. data/rbi/metronome_sdk/internal/type/unknown.rbi +6 -0
  165. data/rbi/metronome_sdk/internal/util.rbi +34 -0
  166. data/rbi/metronome_sdk/internal.rbi +5 -0
  167. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +37 -4
  168. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +4 -4
  169. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +37 -4
  170. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +12 -6
  171. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +44 -4
  172. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +177 -8
  173. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +43 -4
  174. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +177 -8
  175. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +175 -8
  176. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +341 -7
  177. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +37 -4
  178. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +39 -4
  179. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +2595 -3
  180. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1230 -74
  181. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +37 -4
  182. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3375 -5
  183. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +23626 -686
  184. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbi +72 -0
  185. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +698 -12
  186. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +23626 -686
  187. data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbi +58 -0
  188. data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbi +212 -0
  189. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +2595 -3
  190. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +44 -4
  191. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +44 -4
  192. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +209 -8
  193. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +44 -4
  194. data/rbi/metronome_sdk/models/v1/contracts/product_list_params.rbi +3 -3
  195. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +1143 -76
  196. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +9 -3
  197. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +1137 -76
  198. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +209 -8
  199. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +44 -4
  200. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +9 -3
  201. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +44 -4
  202. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +44 -4
  203. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +74 -8
  204. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +9 -3
  205. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbi +72 -0
  206. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +410 -8
  207. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +74 -8
  208. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +44 -4
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +44 -4
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +44 -4
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +180 -8
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +45 -4
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +180 -8
  214. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +149 -12
  215. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbi +72 -0
  216. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +410 -8
  217. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +166 -8
  218. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +41 -4
  219. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +39 -4
  220. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +231 -10
  221. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +281 -14
  222. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +39 -4
  223. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +12 -6
  224. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +39 -4
  225. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +84 -6
  226. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +177 -8
  227. data/rbi/metronome_sdk/models/v1/{customer_detail.rbi → customer_list_response.rbi} +26 -19
  228. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +255 -6
  229. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +86 -6
  230. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +623 -3
  231. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +622 -4
  232. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +109 -0
  233. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +44 -4
  234. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +2164 -3
  235. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +44 -4
  236. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +109 -0
  237. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +44 -4
  238. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +1224 -3
  239. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +44 -4
  240. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +2561 -4
  241. data/rbi/metronome_sdk/models/v1/customers/{invoice.rbi → invoice_list_response.rbi} +589 -182
  242. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +2612 -6
  243. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +41 -4
  244. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +39 -4
  245. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +560 -6
  246. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +37 -4
  247. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +248 -4
  248. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +105 -0
  249. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +41 -4
  250. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +105 -0
  251. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +41 -4
  252. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1980 -285
  253. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +37 -4
  254. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +7604 -2906
  255. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +3855 -1534
  256. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +3855 -1534
  257. data/rbi/metronome_sdk/models.rbi +0 -32
  258. data/rbi/metronome_sdk/resources/v1/alerts.rbi +2 -2
  259. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +6 -2
  260. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +6 -5
  261. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +9 -1
  262. data/rbi/metronome_sdk/resources/v1/contracts.rbi +30 -1
  263. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +9 -0
  264. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +9 -0
  265. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
  266. data/rbi/metronome_sdk/resources/v1/customers.rbi +5 -2
  267. data/rbi/metronome_sdk/resources/v2/contracts.rbi +49 -1
  268. data/sig/metronome_sdk/internal/transport/pooled_net_requester.rbs +2 -0
  269. data/sig/metronome_sdk/internal/type/array_of.rbs +3 -0
  270. data/sig/metronome_sdk/internal/type/base_model.rbs +2 -0
  271. data/sig/metronome_sdk/internal/type/boolean.rbs +3 -0
  272. data/sig/metronome_sdk/internal/type/enum.rbs +2 -0
  273. data/sig/metronome_sdk/internal/type/file_input.rbs +2 -0
  274. data/sig/metronome_sdk/internal/type/hash_of.rbs +3 -0
  275. data/sig/metronome_sdk/internal/type/union.rbs +2 -0
  276. data/sig/metronome_sdk/internal/type/unknown.rbs +3 -0
  277. data/sig/metronome_sdk/internal/util.rbs +12 -0
  278. data/sig/metronome_sdk/internal.rbs +2 -0
  279. data/sig/metronome_sdk/models/v1/alert_archive_params.rbs +6 -0
  280. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +20 -3
  281. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +29 -4
  282. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +20 -3
  283. data/sig/metronome_sdk/models/v1/audit_log_list_params.rbs +11 -0
  284. data/sig/metronome_sdk/models/v1/audit_log_list_response.rbs +16 -0
  285. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +13 -3
  286. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +20 -3
  287. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +83 -10
  288. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +20 -3
  289. data/sig/metronome_sdk/models/v1/billable_metric_list_params.rbs +7 -0
  290. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +84 -10
  291. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_params.rbs +5 -0
  292. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +88 -10
  293. data/sig/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbs +11 -0
  294. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +456 -79
  295. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +20 -3
  296. data/sig/metronome_sdk/models/v1/contract_archive_params.rbs +7 -0
  297. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +20 -3
  298. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbs +47 -12
  299. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +1292 -3
  300. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +1087 -198
  301. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +20 -3
  302. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +14 -0
  303. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1647 -1
  304. data/sig/metronome_sdk/models/v1/contract_list_params.rbs +10 -0
  305. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +10802 -104
  306. data/sig/metronome_sdk/models/v1/contract_retrieve_params.rbs +8 -0
  307. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbs +39 -0
  308. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +316 -12
  309. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +10802 -104
  310. data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbs +34 -0
  311. data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbs +101 -0
  312. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rbs +21 -0
  313. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +1292 -3
  314. data/sig/metronome_sdk/models/v1/contract_set_usage_filter_params.rbs +9 -0
  315. data/sig/metronome_sdk/models/v1/contract_update_end_date_params.rbs +8 -0
  316. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +20 -3
  317. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_params.rbs +7 -0
  318. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_response.rbs +10 -0
  319. data/sig/metronome_sdk/models/v1/contracts/named_schedule_update_params.rbs +9 -0
  320. data/sig/metronome_sdk/models/v1/contracts/product_archive_params.rbs +5 -0
  321. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +22 -3
  322. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +98 -6
  323. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +22 -3
  324. data/sig/metronome_sdk/models/v1/contracts/product_list_params.rbs +7 -0
  325. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +491 -12
  326. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +13 -3
  327. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +495 -12
  328. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +99 -6
  329. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +22 -3
  330. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +13 -3
  331. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +22 -3
  332. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_params.rbs +21 -0
  333. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +22 -3
  334. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_params.rbs +7 -0
  335. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +55 -8
  336. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +13 -3
  337. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbs +38 -0
  338. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +188 -8
  339. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +59 -8
  340. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_params.rbs +14 -0
  341. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +22 -3
  342. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_params.rbs +8 -0
  343. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_response.rbs +10 -0
  344. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_update_params.rbs +10 -0
  345. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_params.rbs +6 -0
  346. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +22 -3
  347. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rbs +8 -0
  348. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +22 -3
  349. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +97 -18
  350. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +22 -3
  351. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +89 -14
  352. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +78 -15
  353. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbs +38 -0
  354. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +183 -8
  355. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +98 -6
  356. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +20 -3
  357. data/sig/metronome_sdk/models/v1/credit_grant_edit_params.rbs +8 -0
  358. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +20 -3
  359. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +9 -0
  360. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +145 -9
  361. data/sig/metronome_sdk/models/v1/credit_grant_list_params.rbs +11 -0
  362. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +174 -12
  363. data/sig/metronome_sdk/models/v1/credit_grant_void_params.rbs +7 -0
  364. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +20 -3
  365. data/sig/metronome_sdk/models/v1/custom_field_add_key_params.rbs +7 -0
  366. data/sig/metronome_sdk/models/v1/custom_field_delete_values_params.rbs +7 -0
  367. data/sig/metronome_sdk/models/v1/custom_field_list_keys_params.rbs +12 -6
  368. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +11 -0
  369. data/sig/metronome_sdk/models/v1/custom_field_remove_key_params.rbs +6 -0
  370. data/sig/metronome_sdk/models/v1/custom_field_set_values_params.rbs +7 -0
  371. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +13 -3
  372. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +20 -3
  373. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +52 -26
  374. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +49 -3
  375. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_params.rbs +9 -0
  376. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +88 -10
  377. data/sig/metronome_sdk/models/v1/customer_list_costs_params.rbs +9 -0
  378. data/sig/metronome_sdk/models/v1/customer_list_costs_response.rbs +19 -0
  379. data/sig/metronome_sdk/models/v1/customer_list_params.rbs +10 -0
  380. data/sig/metronome_sdk/models/v1/customer_list_response.rbs +109 -0
  381. data/sig/metronome_sdk/models/v1/customer_retrieve_params.rbs +5 -0
  382. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +113 -3
  383. data/sig/metronome_sdk/models/v1/customer_set_ingest_aliases_params.rbs +6 -0
  384. data/sig/metronome_sdk/models/v1/customer_set_name_params.rbs +6 -0
  385. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +49 -3
  386. data/sig/metronome_sdk/models/v1/customer_update_config_params.rbs +7 -0
  387. data/sig/metronome_sdk/models/v1/customers/alert_list_params.rbs +13 -6
  388. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +247 -3
  389. data/sig/metronome_sdk/models/v1/customers/alert_reset_params.rbs +6 -0
  390. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +7 -0
  391. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +248 -3
  392. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +10 -0
  393. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +6 -0
  394. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +6 -0
  395. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +16 -0
  396. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +116 -8
  397. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +22 -3
  398. data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +14 -0
  399. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +1061 -3
  400. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_params.rbs +8 -0
  401. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +22 -3
  402. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +82 -0
  403. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +22 -3
  404. data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +14 -0
  405. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +600 -3
  406. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_params.rbs +7 -0
  407. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +22 -3
  408. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_params.rbs +11 -0
  409. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_response.rbs +2 -0
  410. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rbs +14 -0
  411. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +1282 -7
  412. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +13 -0
  413. data/sig/metronome_sdk/models/v1/customers/invoice_list_response.rbs +1290 -0
  414. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_params.rbs +7 -0
  415. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +1295 -3
  416. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_params.rbs +7 -0
  417. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_response.rbs +10 -0
  418. data/sig/metronome_sdk/models/v1/customers/named_schedule_update_params.rbs +9 -0
  419. data/sig/metronome_sdk/models/v1/customers/plan_add_params.rbs +38 -4
  420. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +20 -3
  421. data/sig/metronome_sdk/models/v1/customers/plan_end_params.rbs +9 -0
  422. data/sig/metronome_sdk/models/v1/customers/plan_end_response.rbs +2 -0
  423. data/sig/metronome_sdk/models/v1/customers/plan_list_params.rbs +7 -0
  424. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_params.rbs +8 -0
  425. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbs +14 -0
  426. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +38 -3
  427. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +28 -6
  428. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_response.rbs +6 -0
  429. data/sig/metronome_sdk/models/v1/invoice_regenerate_params.rbs +5 -0
  430. data/sig/metronome_sdk/models/v1/invoice_regenerate_response.rbs +6 -0
  431. data/sig/metronome_sdk/models/v1/invoice_void_params.rbs +5 -0
  432. data/sig/metronome_sdk/models/v1/invoice_void_response.rbs +6 -0
  433. data/sig/metronome_sdk/models/v1/plan_get_details_params.rbs +5 -0
  434. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +268 -3
  435. data/sig/metronome_sdk/models/v1/plan_list_charges_params.rbs +7 -0
  436. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +43 -3
  437. data/sig/metronome_sdk/models/v1/plan_list_customers_params.rbs +8 -0
  438. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +121 -3
  439. data/sig/metronome_sdk/models/v1/plan_list_params.rbs +6 -0
  440. data/sig/metronome_sdk/models/v1/plan_list_response.rbs +7 -0
  441. data/sig/metronome_sdk/models/v1/pricing_unit_list_params.rbs +6 -0
  442. data/sig/metronome_sdk/models/v1/pricing_unit_list_response.rbs +2 -0
  443. data/sig/metronome_sdk/models/v1/service_list_params.rbs +2 -0
  444. data/sig/metronome_sdk/models/v1/service_list_response.rbs +10 -0
  445. data/sig/metronome_sdk/models/v1/usage_ingest_params.rbs +13 -0
  446. data/sig/metronome_sdk/models/v1/usage_list_params.rbs +17 -0
  447. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +15 -0
  448. data/sig/metronome_sdk/models/v1/usage_list_with_groups_params.rbs +15 -0
  449. data/sig/metronome_sdk/models/v1/usage_list_with_groups_response.rbs +8 -0
  450. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +110 -1
  451. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +20 -3
  452. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +85 -1
  453. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +20 -3
  454. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +1476 -212
  455. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +20 -3
  456. data/sig/metronome_sdk/models/v2/contract_get_edit_history_params.rbs +6 -0
  457. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +2855 -442
  458. data/sig/metronome_sdk/models/v2/contract_list_params.rbs +10 -0
  459. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +1743 -194
  460. data/sig/metronome_sdk/models/v2/contract_retrieve_params.rbs +9 -0
  461. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +1743 -194
  462. data/sig/metronome_sdk/models.rbs +0 -32
  463. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
  464. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
  465. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +2 -1
  466. data/sig/metronome_sdk/resources/v1/contracts.rbs +9 -1
  467. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  468. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -1
  469. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
  470. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
  471. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
  472. data/sig/metronome_sdk/resources/v1/customers.rbs +1 -1
  473. data/sig/metronome_sdk/resources/v2/contracts.rbs +7 -1
  474. metadata +14 -83
  475. data/lib/metronome_sdk/models/base_usage_filter.rb +0 -27
  476. data/lib/metronome_sdk/models/commit.rb +0 -867
  477. data/lib/metronome_sdk/models/contract_without_amendments.rb +0 -1437
  478. data/lib/metronome_sdk/models/credit.rb +0 -484
  479. data/lib/metronome_sdk/models/credit_type_data.rb +0 -21
  480. data/lib/metronome_sdk/models/discount.rb +0 -68
  481. data/lib/metronome_sdk/models/event_type_filter.rb +0 -33
  482. data/lib/metronome_sdk/models/id.rb +0 -15
  483. data/lib/metronome_sdk/models/override.rb +0 -362
  484. data/lib/metronome_sdk/models/pro_service.rb +0 -73
  485. data/lib/metronome_sdk/models/property_filter.rb +0 -52
  486. data/lib/metronome_sdk/models/rate.rb +0 -101
  487. data/lib/metronome_sdk/models/schedule_duration.rb +0 -50
  488. data/lib/metronome_sdk/models/schedule_point_in_time.rb +0 -62
  489. data/lib/metronome_sdk/models/scheduled_charge.rb +0 -76
  490. data/lib/metronome_sdk/models/tier.rb +0 -21
  491. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +0 -148
  492. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +0 -57
  493. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +0 -45
  494. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +0 -69
  495. data/lib/metronome_sdk/models/v1/customer.rb +0 -53
  496. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +0 -270
  497. data/lib/metronome_sdk/models/v1/plan_detail.rb +0 -200
  498. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +0 -38
  499. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +0 -38
  500. data/rbi/metronome_sdk/models/base_usage_filter.rbi +0 -46
  501. data/rbi/metronome_sdk/models/commit.rbi +0 -1625
  502. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +0 -2939
  503. data/rbi/metronome_sdk/models/credit.rbi +0 -879
  504. data/rbi/metronome_sdk/models/credit_type_data.rbi +0 -26
  505. data/rbi/metronome_sdk/models/discount.rbi +0 -106
  506. data/rbi/metronome_sdk/models/event_type_filter.rbi +0 -57
  507. data/rbi/metronome_sdk/models/id.rbi +0 -23
  508. data/rbi/metronome_sdk/models/override.rbi +0 -609
  509. data/rbi/metronome_sdk/models/pro_service.rbi +0 -98
  510. data/rbi/metronome_sdk/models/property_filter.rbi +0 -88
  511. data/rbi/metronome_sdk/models/rate.rbi +0 -155
  512. data/rbi/metronome_sdk/models/schedule_duration.rbi +0 -89
  513. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +0 -121
  514. data/rbi/metronome_sdk/models/scheduled_charge.rbi +0 -119
  515. data/rbi/metronome_sdk/models/tier.rbi +0 -29
  516. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +0 -237
  517. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +0 -111
  518. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +0 -94
  519. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +0 -90
  520. data/rbi/metronome_sdk/models/v1/customer.rbi +0 -74
  521. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +0 -572
  522. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +0 -349
  523. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +0 -79
  524. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +0 -80
  525. data/sig/metronome_sdk/models/base_usage_filter.rbs +0 -22
  526. data/sig/metronome_sdk/models/commit.rbs +0 -714
  527. data/sig/metronome_sdk/models/contract_without_amendments.rbs +0 -1072
  528. data/sig/metronome_sdk/models/credit.rbs +0 -397
  529. data/sig/metronome_sdk/models/credit_type_data.rbs +0 -13
  530. data/sig/metronome_sdk/models/discount.rbs +0 -52
  531. data/sig/metronome_sdk/models/event_type_filter.rbs +0 -21
  532. data/sig/metronome_sdk/models/id.rbs +0 -11
  533. data/sig/metronome_sdk/models/override.rbs +0 -329
  534. data/sig/metronome_sdk/models/pro_service.rbs +0 -50
  535. data/sig/metronome_sdk/models/property_filter.rbs +0 -34
  536. data/sig/metronome_sdk/models/rate.rbs +0 -82
  537. data/sig/metronome_sdk/models/schedule_duration.rbs +0 -44
  538. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +0 -61
  539. data/sig/metronome_sdk/models/scheduled_charge.rbs +0 -58
  540. data/sig/metronome_sdk/models/tier.rbs +0 -15
  541. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +0 -102
  542. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +0 -41
  543. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +0 -36
  544. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +0 -42
  545. data/sig/metronome_sdk/models/v1/customer.rbs +0 -36
  546. data/sig/metronome_sdk/models/v1/customer_detail.rbs +0 -90
  547. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +0 -205
  548. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +0 -977
  549. data/sig/metronome_sdk/models/v1/plan_detail.rbs +0 -165
  550. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +0 -29
  551. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +0 -32
@@ -4,7 +4,7 @@ module MetronomeSDK
4
4
  module Models
5
5
  module V1
6
6
  module Customers
7
- class InvoiceListBreakdownsResponse < MetronomeSDK::Models::V1::Customers::Invoice
7
+ class InvoiceListBreakdownsResponse < MetronomeSDK::Internal::Type::BaseModel
8
8
  OrHash =
9
9
  T.type_alias do
10
10
  T.any(
@@ -13,28 +13,2585 @@ module MetronomeSDK
13
13
  )
14
14
  end
15
15
 
16
+ sig { returns(String) }
17
+ attr_accessor :id
18
+
16
19
  sig { returns(Time) }
17
20
  attr_accessor :breakdown_end_timestamp
18
21
 
19
22
  sig { returns(Time) }
20
23
  attr_accessor :breakdown_start_timestamp
21
24
 
25
+ sig do
26
+ returns(
27
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CreditType
28
+ )
29
+ end
30
+ attr_reader :credit_type
31
+
32
+ sig do
33
+ params(
34
+ credit_type:
35
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CreditType::OrHash
36
+ ).void
37
+ end
38
+ attr_writer :credit_type
39
+
40
+ sig { returns(String) }
41
+ attr_accessor :customer_id
42
+
43
+ sig do
44
+ returns(
45
+ T::Array[
46
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem
47
+ ]
48
+ )
49
+ end
50
+ attr_accessor :line_items
51
+
52
+ sig { returns(String) }
53
+ attr_accessor :status
54
+
55
+ sig { returns(Float) }
56
+ attr_accessor :total
57
+
58
+ sig { returns(String) }
59
+ attr_accessor :type
60
+
61
+ sig { returns(T.nilable(String)) }
62
+ attr_reader :amendment_id
63
+
64
+ sig { params(amendment_id: String).void }
65
+ attr_writer :amendment_id
66
+
67
+ # This field's availability is dependent on your client's configuration.
68
+ sig do
69
+ returns(
70
+ T.nilable(
71
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::BillableStatus::TaggedSymbol
72
+ )
73
+ )
74
+ end
75
+ attr_reader :billable_status
76
+
77
+ sig do
78
+ params(
79
+ billable_status:
80
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::BillableStatus::OrSymbol
81
+ ).void
82
+ end
83
+ attr_writer :billable_status
84
+
85
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
86
+ attr_reader :contract_custom_fields
87
+
88
+ sig { params(contract_custom_fields: T::Hash[Symbol, String]).void }
89
+ attr_writer :contract_custom_fields
90
+
91
+ sig { returns(T.nilable(String)) }
92
+ attr_reader :contract_id
93
+
94
+ sig { params(contract_id: String).void }
95
+ attr_writer :contract_id
96
+
97
+ sig do
98
+ returns(
99
+ T.nilable(
100
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord
101
+ )
102
+ )
103
+ end
104
+ attr_reader :correction_record
105
+
106
+ sig do
107
+ params(
108
+ correction_record:
109
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::OrHash
110
+ ).void
111
+ end
112
+ attr_writer :correction_record
113
+
114
+ # When the invoice was created (UTC). This field is present for correction
115
+ # invoices only.
116
+ sig { returns(T.nilable(Time)) }
117
+ attr_reader :created_at
118
+
119
+ sig { params(created_at: Time).void }
120
+ attr_writer :created_at
121
+
122
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
123
+ attr_reader :custom_fields
124
+
125
+ sig { params(custom_fields: T::Hash[Symbol, T.anything]).void }
126
+ attr_writer :custom_fields
127
+
128
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
129
+ attr_reader :customer_custom_fields
130
+
131
+ sig { params(customer_custom_fields: T::Hash[Symbol, String]).void }
132
+ attr_writer :customer_custom_fields
133
+
134
+ # End of the usage period this invoice covers (UTC)
135
+ sig { returns(T.nilable(Time)) }
136
+ attr_reader :end_timestamp
137
+
138
+ sig { params(end_timestamp: Time).void }
139
+ attr_writer :end_timestamp
140
+
141
+ sig do
142
+ returns(
143
+ T.nilable(
144
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice
145
+ )
146
+ )
147
+ end
148
+ attr_reader :external_invoice
149
+
150
+ sig do
151
+ params(
152
+ external_invoice:
153
+ T.nilable(
154
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::OrHash
155
+ )
156
+ ).void
157
+ end
158
+ attr_writer :external_invoice
159
+
160
+ sig do
161
+ returns(
162
+ T.nilable(
163
+ T::Array[
164
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment
165
+ ]
166
+ )
167
+ )
168
+ end
169
+ attr_reader :invoice_adjustments
170
+
171
+ sig do
172
+ params(
173
+ invoice_adjustments:
174
+ T::Array[
175
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment::OrHash
176
+ ]
177
+ ).void
178
+ end
179
+ attr_writer :invoice_adjustments
180
+
181
+ # When the invoice was issued (UTC)
182
+ sig { returns(T.nilable(Time)) }
183
+ attr_reader :issued_at
184
+
185
+ sig { params(issued_at: Time).void }
186
+ attr_writer :issued_at
187
+
188
+ sig { returns(T.nilable(Float)) }
189
+ attr_reader :net_payment_terms_days
190
+
191
+ sig { params(net_payment_terms_days: Float).void }
192
+ attr_writer :net_payment_terms_days
193
+
194
+ # This field's availability is dependent on your client's configuration.
195
+ sig { returns(T.nilable(String)) }
196
+ attr_reader :netsuite_sales_order_id
197
+
198
+ sig { params(netsuite_sales_order_id: String).void }
199
+ attr_writer :netsuite_sales_order_id
200
+
201
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
202
+ attr_reader :plan_custom_fields
203
+
204
+ sig { params(plan_custom_fields: T::Hash[Symbol, String]).void }
205
+ attr_writer :plan_custom_fields
206
+
207
+ sig { returns(T.nilable(String)) }
208
+ attr_reader :plan_id
209
+
210
+ sig { params(plan_id: String).void }
211
+ attr_writer :plan_id
212
+
213
+ sig { returns(T.nilable(String)) }
214
+ attr_reader :plan_name
215
+
216
+ sig { params(plan_name: String).void }
217
+ attr_writer :plan_name
218
+
219
+ # Only present for contract invoices with reseller royalties.
220
+ sig do
221
+ returns(
222
+ T.nilable(
223
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty
224
+ )
225
+ )
226
+ end
227
+ attr_reader :reseller_royalty
228
+
229
+ sig do
230
+ params(
231
+ reseller_royalty:
232
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::OrHash
233
+ ).void
234
+ end
235
+ attr_writer :reseller_royalty
236
+
237
+ # This field's availability is dependent on your client's configuration.
238
+ sig { returns(T.nilable(String)) }
239
+ attr_reader :salesforce_opportunity_id
240
+
241
+ sig { params(salesforce_opportunity_id: String).void }
242
+ attr_writer :salesforce_opportunity_id
243
+
244
+ # Beginning of the usage period this invoice covers (UTC)
245
+ sig { returns(T.nilable(Time)) }
246
+ attr_reader :start_timestamp
247
+
248
+ sig { params(start_timestamp: Time).void }
249
+ attr_writer :start_timestamp
250
+
251
+ sig { returns(T.nilable(Float)) }
252
+ attr_reader :subtotal
253
+
254
+ sig { params(subtotal: Float).void }
255
+ attr_writer :subtotal
256
+
22
257
  sig do
23
258
  params(
259
+ id: String,
24
260
  breakdown_end_timestamp: Time,
25
- breakdown_start_timestamp: Time
261
+ breakdown_start_timestamp: Time,
262
+ credit_type:
263
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CreditType::OrHash,
264
+ customer_id: String,
265
+ line_items:
266
+ T::Array[
267
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::OrHash
268
+ ],
269
+ status: String,
270
+ total: Float,
271
+ type: String,
272
+ amendment_id: String,
273
+ billable_status:
274
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::BillableStatus::OrSymbol,
275
+ contract_custom_fields: T::Hash[Symbol, String],
276
+ contract_id: String,
277
+ correction_record:
278
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::OrHash,
279
+ created_at: Time,
280
+ custom_fields: T::Hash[Symbol, T.anything],
281
+ customer_custom_fields: T::Hash[Symbol, String],
282
+ end_timestamp: Time,
283
+ external_invoice:
284
+ T.nilable(
285
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::OrHash
286
+ ),
287
+ invoice_adjustments:
288
+ T::Array[
289
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment::OrHash
290
+ ],
291
+ issued_at: Time,
292
+ net_payment_terms_days: Float,
293
+ netsuite_sales_order_id: String,
294
+ plan_custom_fields: T::Hash[Symbol, String],
295
+ plan_id: String,
296
+ plan_name: String,
297
+ reseller_royalty:
298
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::OrHash,
299
+ salesforce_opportunity_id: String,
300
+ start_timestamp: Time,
301
+ subtotal: Float
26
302
  ).returns(T.attached_class)
27
303
  end
28
- def self.new(breakdown_end_timestamp:, breakdown_start_timestamp:)
304
+ def self.new(
305
+ id:,
306
+ breakdown_end_timestamp:,
307
+ breakdown_start_timestamp:,
308
+ credit_type:,
309
+ customer_id:,
310
+ line_items:,
311
+ status:,
312
+ total:,
313
+ type:,
314
+ amendment_id: nil,
315
+ # This field's availability is dependent on your client's configuration.
316
+ billable_status: nil,
317
+ contract_custom_fields: nil,
318
+ contract_id: nil,
319
+ correction_record: nil,
320
+ # When the invoice was created (UTC). This field is present for correction
321
+ # invoices only.
322
+ created_at: nil,
323
+ custom_fields: nil,
324
+ customer_custom_fields: nil,
325
+ # End of the usage period this invoice covers (UTC)
326
+ end_timestamp: nil,
327
+ external_invoice: nil,
328
+ invoice_adjustments: nil,
329
+ # When the invoice was issued (UTC)
330
+ issued_at: nil,
331
+ net_payment_terms_days: nil,
332
+ # This field's availability is dependent on your client's configuration.
333
+ netsuite_sales_order_id: nil,
334
+ plan_custom_fields: nil,
335
+ plan_id: nil,
336
+ plan_name: nil,
337
+ # Only present for contract invoices with reseller royalties.
338
+ reseller_royalty: nil,
339
+ # This field's availability is dependent on your client's configuration.
340
+ salesforce_opportunity_id: nil,
341
+ # Beginning of the usage period this invoice covers (UTC)
342
+ start_timestamp: nil,
343
+ subtotal: nil
344
+ )
29
345
  end
30
346
 
31
347
  sig do
32
348
  override.returns(
33
- { breakdown_end_timestamp: Time, breakdown_start_timestamp: Time }
349
+ {
350
+ id: String,
351
+ breakdown_end_timestamp: Time,
352
+ breakdown_start_timestamp: Time,
353
+ credit_type:
354
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CreditType,
355
+ customer_id: String,
356
+ line_items:
357
+ T::Array[
358
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem
359
+ ],
360
+ status: String,
361
+ total: Float,
362
+ type: String,
363
+ amendment_id: String,
364
+ billable_status:
365
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::BillableStatus::TaggedSymbol,
366
+ contract_custom_fields: T::Hash[Symbol, String],
367
+ contract_id: String,
368
+ correction_record:
369
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord,
370
+ created_at: Time,
371
+ custom_fields: T::Hash[Symbol, T.anything],
372
+ customer_custom_fields: T::Hash[Symbol, String],
373
+ end_timestamp: Time,
374
+ external_invoice:
375
+ T.nilable(
376
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice
377
+ ),
378
+ invoice_adjustments:
379
+ T::Array[
380
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment
381
+ ],
382
+ issued_at: Time,
383
+ net_payment_terms_days: Float,
384
+ netsuite_sales_order_id: String,
385
+ plan_custom_fields: T::Hash[Symbol, String],
386
+ plan_id: String,
387
+ plan_name: String,
388
+ reseller_royalty:
389
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty,
390
+ salesforce_opportunity_id: String,
391
+ start_timestamp: Time,
392
+ subtotal: Float
393
+ }
34
394
  )
35
395
  end
36
396
  def to_hash
37
397
  end
398
+
399
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
400
+ OrHash =
401
+ T.type_alias do
402
+ T.any(
403
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CreditType,
404
+ MetronomeSDK::Internal::AnyHash
405
+ )
406
+ end
407
+
408
+ sig { returns(String) }
409
+ attr_accessor :id
410
+
411
+ sig { returns(String) }
412
+ attr_accessor :name
413
+
414
+ sig { params(id: String, name: String).returns(T.attached_class) }
415
+ def self.new(id:, name:)
416
+ end
417
+
418
+ sig { override.returns({ id: String, name: String }) }
419
+ def to_hash
420
+ end
421
+ end
422
+
423
+ class LineItem < MetronomeSDK::Internal::Type::BaseModel
424
+ OrHash =
425
+ T.type_alias do
426
+ T.any(
427
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem,
428
+ MetronomeSDK::Internal::AnyHash
429
+ )
430
+ end
431
+
432
+ sig do
433
+ returns(
434
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::CreditType
435
+ )
436
+ end
437
+ attr_reader :credit_type
438
+
439
+ sig do
440
+ params(
441
+ credit_type:
442
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::CreditType::OrHash
443
+ ).void
444
+ end
445
+ attr_writer :credit_type
446
+
447
+ sig { returns(String) }
448
+ attr_accessor :name
449
+
450
+ sig { returns(Float) }
451
+ attr_accessor :total
452
+
453
+ # Details about the credit or commit that was applied to this line item. Only
454
+ # present on line items with product of `USAGE`, `SUBSCRIPTION` or `COMPOSITE`
455
+ # types.
456
+ sig do
457
+ returns(
458
+ T.nilable(
459
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit
460
+ )
461
+ )
462
+ end
463
+ attr_reader :applied_commit_or_credit
464
+
465
+ sig do
466
+ params(
467
+ applied_commit_or_credit:
468
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::OrHash
469
+ ).void
470
+ end
471
+ attr_writer :applied_commit_or_credit
472
+
473
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
474
+ attr_reader :commit_custom_fields
475
+
476
+ sig { params(commit_custom_fields: T::Hash[Symbol, String]).void }
477
+ attr_writer :commit_custom_fields
478
+
479
+ # For line items with product of `USAGE`, `SUBSCRIPTION`, or `COMPOSITE` types,
480
+ # the ID of the credit or commit that was applied to this line item. For line
481
+ # items with product type of `FIXED`, the ID of the prepaid or postpaid commit
482
+ # that is being paid for.
483
+ sig { returns(T.nilable(String)) }
484
+ attr_reader :commit_id
485
+
486
+ sig { params(commit_id: String).void }
487
+ attr_writer :commit_id
488
+
489
+ sig { returns(T.nilable(String)) }
490
+ attr_reader :commit_netsuite_item_id
491
+
492
+ sig { params(commit_netsuite_item_id: String).void }
493
+ attr_writer :commit_netsuite_item_id
494
+
495
+ sig { returns(T.nilable(String)) }
496
+ attr_reader :commit_netsuite_sales_order_id
497
+
498
+ sig { params(commit_netsuite_sales_order_id: String).void }
499
+ attr_writer :commit_netsuite_sales_order_id
500
+
501
+ sig { returns(T.nilable(String)) }
502
+ attr_reader :commit_segment_id
503
+
504
+ sig { params(commit_segment_id: String).void }
505
+ attr_writer :commit_segment_id
506
+
507
+ # `PrepaidCommit` (for commit types `PREPAID` and `CREDIT`) or `PostpaidCommit`
508
+ # (for commit type `POSTPAID`).
509
+ sig { returns(T.nilable(String)) }
510
+ attr_reader :commit_type
511
+
512
+ sig { params(commit_type: String).void }
513
+ attr_writer :commit_type
514
+
515
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
516
+ attr_reader :custom_fields
517
+
518
+ sig { params(custom_fields: T::Hash[Symbol, String]).void }
519
+ attr_writer :custom_fields
520
+
521
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
522
+ attr_reader :discount_custom_fields
523
+
524
+ sig { params(discount_custom_fields: T::Hash[Symbol, String]).void }
525
+ attr_writer :discount_custom_fields
526
+
527
+ # ID of the discount applied to this line item.
528
+ sig { returns(T.nilable(String)) }
529
+ attr_reader :discount_id
530
+
531
+ sig { params(discount_id: String).void }
532
+ attr_writer :discount_id
533
+
534
+ # The line item's end date (exclusive).
535
+ sig { returns(T.nilable(Time)) }
536
+ attr_reader :ending_before
537
+
538
+ sig { params(ending_before: Time).void }
539
+ attr_writer :ending_before
540
+
541
+ sig { returns(T.nilable(String)) }
542
+ attr_reader :group_key
543
+
544
+ sig { params(group_key: String).void }
545
+ attr_writer :group_key
546
+
547
+ sig { returns(T.nilable(String)) }
548
+ attr_accessor :group_value
549
+
550
+ # Indicates whether the line item is prorated for `SUBSCRIPTION` type product.
551
+ sig { returns(T.nilable(T::Boolean)) }
552
+ attr_reader :is_prorated
553
+
554
+ sig { params(is_prorated: T::Boolean).void }
555
+ attr_writer :is_prorated
556
+
557
+ # Only present for contract invoices and when the `include_list_prices` query
558
+ # parameter is set to true. This will include the list rate for the charge if
559
+ # applicable. Only present for usage and subscription line items.
560
+ sig do
561
+ returns(
562
+ T.nilable(
563
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice
564
+ )
565
+ )
566
+ end
567
+ attr_reader :list_price
568
+
569
+ sig do
570
+ params(
571
+ list_price:
572
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::OrHash
573
+ ).void
574
+ end
575
+ attr_writer :list_price
576
+
577
+ sig { returns(T.nilable(String)) }
578
+ attr_reader :metadata
579
+
580
+ sig { params(metadata: String).void }
581
+ attr_writer :metadata
582
+
583
+ # The end date for the billing period on the invoice.
584
+ sig { returns(T.nilable(Time)) }
585
+ attr_reader :netsuite_invoice_billing_end
586
+
587
+ sig { params(netsuite_invoice_billing_end: Time).void }
588
+ attr_writer :netsuite_invoice_billing_end
589
+
590
+ # The start date for the billing period on the invoice.
591
+ sig { returns(T.nilable(Time)) }
592
+ attr_reader :netsuite_invoice_billing_start
593
+
594
+ sig { params(netsuite_invoice_billing_start: Time).void }
595
+ attr_writer :netsuite_invoice_billing_start
596
+
597
+ sig { returns(T.nilable(String)) }
598
+ attr_reader :netsuite_item_id
599
+
600
+ sig { params(netsuite_item_id: String).void }
601
+ attr_writer :netsuite_item_id
602
+
603
+ # Only present for line items paying for a postpaid commit true-up.
604
+ sig do
605
+ returns(
606
+ T.nilable(
607
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::PostpaidCommit
608
+ )
609
+ )
610
+ end
611
+ attr_reader :postpaid_commit
612
+
613
+ sig do
614
+ params(
615
+ postpaid_commit:
616
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::PostpaidCommit::OrHash
617
+ ).void
618
+ end
619
+ attr_writer :postpaid_commit
620
+
621
+ # Includes the presentation group values associated with this line item if
622
+ # presentation group keys are used.
623
+ sig { returns(T.nilable(T::Hash[Symbol, T.nilable(String)])) }
624
+ attr_reader :presentation_group_values
625
+
626
+ sig do
627
+ params(
628
+ presentation_group_values: T::Hash[Symbol, T.nilable(String)]
629
+ ).void
630
+ end
631
+ attr_writer :presentation_group_values
632
+
633
+ # Includes the pricing group values associated with this line item if dimensional
634
+ # pricing is used.
635
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
636
+ attr_reader :pricing_group_values
637
+
638
+ sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
639
+ attr_writer :pricing_group_values
640
+
641
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
642
+ attr_reader :product_custom_fields
643
+
644
+ sig { params(product_custom_fields: T::Hash[Symbol, String]).void }
645
+ attr_writer :product_custom_fields
646
+
647
+ # ID of the product associated with the line item.
648
+ sig { returns(T.nilable(String)) }
649
+ attr_reader :product_id
650
+
651
+ sig { params(product_id: String).void }
652
+ attr_writer :product_id
653
+
654
+ # The current product tags associated with the line item's `product_id`.
655
+ sig { returns(T.nilable(T::Array[String])) }
656
+ attr_reader :product_tags
657
+
658
+ sig { params(product_tags: T::Array[String]).void }
659
+ attr_writer :product_tags
660
+
661
+ # The type of the line item's product. Possible values are `FixedProductListItem`
662
+ # (for `FIXED` type products), `UsageProductListItem` (for `USAGE` type products),
663
+ # `SubscriptionProductListItem` (for `SUBSCRIPTION` type products) or
664
+ # `CompositeProductListItem` (for `COMPOSITE` type products). For scheduled
665
+ # charges, commit and credit payments, the value is `FixedProductListItem`.
666
+ sig { returns(T.nilable(String)) }
667
+ attr_reader :product_type
668
+
669
+ sig { params(product_type: String).void }
670
+ attr_writer :product_type
671
+
672
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
673
+ attr_reader :professional_service_custom_fields
674
+
675
+ sig do
676
+ params(
677
+ professional_service_custom_fields: T::Hash[Symbol, String]
678
+ ).void
679
+ end
680
+ attr_writer :professional_service_custom_fields
681
+
682
+ sig { returns(T.nilable(String)) }
683
+ attr_reader :professional_service_id
684
+
685
+ sig { params(professional_service_id: String).void }
686
+ attr_writer :professional_service_id
687
+
688
+ # The quantity associated with the line item.
689
+ sig { returns(T.nilable(Float)) }
690
+ attr_reader :quantity
691
+
692
+ sig { params(quantity: Float).void }
693
+ attr_writer :quantity
694
+
695
+ sig do
696
+ returns(
697
+ T.nilable(
698
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::TaggedSymbol
699
+ )
700
+ )
701
+ end
702
+ attr_reader :reseller_type
703
+
704
+ sig do
705
+ params(
706
+ reseller_type:
707
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::OrSymbol
708
+ ).void
709
+ end
710
+ attr_writer :reseller_type
711
+
712
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
713
+ attr_reader :scheduled_charge_custom_fields
714
+
715
+ sig do
716
+ params(
717
+ scheduled_charge_custom_fields: T::Hash[Symbol, String]
718
+ ).void
719
+ end
720
+ attr_writer :scheduled_charge_custom_fields
721
+
722
+ # ID of scheduled charge.
723
+ sig { returns(T.nilable(String)) }
724
+ attr_reader :scheduled_charge_id
725
+
726
+ sig { params(scheduled_charge_id: String).void }
727
+ attr_writer :scheduled_charge_id
728
+
729
+ # The line item's start date (inclusive).
730
+ sig { returns(T.nilable(Time)) }
731
+ attr_reader :starting_at
732
+
733
+ sig { params(starting_at: Time).void }
734
+ attr_writer :starting_at
735
+
736
+ sig do
737
+ returns(
738
+ T.nilable(
739
+ T::Array[
740
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem
741
+ ]
742
+ )
743
+ )
744
+ end
745
+ attr_reader :sub_line_items
746
+
747
+ sig do
748
+ params(
749
+ sub_line_items:
750
+ T::Array[
751
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::OrHash
752
+ ]
753
+ ).void
754
+ end
755
+ attr_writer :sub_line_items
756
+
757
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
758
+ attr_reader :subscription_custom_fields
759
+
760
+ sig do
761
+ params(subscription_custom_fields: T::Hash[Symbol, String]).void
762
+ end
763
+ attr_writer :subscription_custom_fields
764
+
765
+ # Populated if the line item has a tiered price.
766
+ sig do
767
+ returns(
768
+ T.nilable(
769
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::Tier
770
+ )
771
+ )
772
+ end
773
+ attr_reader :tier
774
+
775
+ sig do
776
+ params(
777
+ tier:
778
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::Tier::OrHash
779
+ ).void
780
+ end
781
+ attr_writer :tier
782
+
783
+ # The unit price associated with the line item.
784
+ sig { returns(T.nilable(Float)) }
785
+ attr_reader :unit_price
786
+
787
+ sig { params(unit_price: Float).void }
788
+ attr_writer :unit_price
789
+
790
+ sig do
791
+ params(
792
+ credit_type:
793
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::CreditType::OrHash,
794
+ name: String,
795
+ total: Float,
796
+ applied_commit_or_credit:
797
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::OrHash,
798
+ commit_custom_fields: T::Hash[Symbol, String],
799
+ commit_id: String,
800
+ commit_netsuite_item_id: String,
801
+ commit_netsuite_sales_order_id: String,
802
+ commit_segment_id: String,
803
+ commit_type: String,
804
+ custom_fields: T::Hash[Symbol, String],
805
+ discount_custom_fields: T::Hash[Symbol, String],
806
+ discount_id: String,
807
+ ending_before: Time,
808
+ group_key: String,
809
+ group_value: T.nilable(String),
810
+ is_prorated: T::Boolean,
811
+ list_price:
812
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::OrHash,
813
+ metadata: String,
814
+ netsuite_invoice_billing_end: Time,
815
+ netsuite_invoice_billing_start: Time,
816
+ netsuite_item_id: String,
817
+ postpaid_commit:
818
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::PostpaidCommit::OrHash,
819
+ presentation_group_values: T::Hash[Symbol, T.nilable(String)],
820
+ pricing_group_values: T::Hash[Symbol, String],
821
+ product_custom_fields: T::Hash[Symbol, String],
822
+ product_id: String,
823
+ product_tags: T::Array[String],
824
+ product_type: String,
825
+ professional_service_custom_fields: T::Hash[Symbol, String],
826
+ professional_service_id: String,
827
+ quantity: Float,
828
+ reseller_type:
829
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::OrSymbol,
830
+ scheduled_charge_custom_fields: T::Hash[Symbol, String],
831
+ scheduled_charge_id: String,
832
+ starting_at: Time,
833
+ sub_line_items:
834
+ T::Array[
835
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::OrHash
836
+ ],
837
+ subscription_custom_fields: T::Hash[Symbol, String],
838
+ tier:
839
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::Tier::OrHash,
840
+ unit_price: Float
841
+ ).returns(T.attached_class)
842
+ end
843
+ def self.new(
844
+ credit_type:,
845
+ name:,
846
+ total:,
847
+ # Details about the credit or commit that was applied to this line item. Only
848
+ # present on line items with product of `USAGE`, `SUBSCRIPTION` or `COMPOSITE`
849
+ # types.
850
+ applied_commit_or_credit: nil,
851
+ commit_custom_fields: nil,
852
+ # For line items with product of `USAGE`, `SUBSCRIPTION`, or `COMPOSITE` types,
853
+ # the ID of the credit or commit that was applied to this line item. For line
854
+ # items with product type of `FIXED`, the ID of the prepaid or postpaid commit
855
+ # that is being paid for.
856
+ commit_id: nil,
857
+ commit_netsuite_item_id: nil,
858
+ commit_netsuite_sales_order_id: nil,
859
+ commit_segment_id: nil,
860
+ # `PrepaidCommit` (for commit types `PREPAID` and `CREDIT`) or `PostpaidCommit`
861
+ # (for commit type `POSTPAID`).
862
+ commit_type: nil,
863
+ custom_fields: nil,
864
+ discount_custom_fields: nil,
865
+ # ID of the discount applied to this line item.
866
+ discount_id: nil,
867
+ # The line item's end date (exclusive).
868
+ ending_before: nil,
869
+ group_key: nil,
870
+ group_value: nil,
871
+ # Indicates whether the line item is prorated for `SUBSCRIPTION` type product.
872
+ is_prorated: nil,
873
+ # Only present for contract invoices and when the `include_list_prices` query
874
+ # parameter is set to true. This will include the list rate for the charge if
875
+ # applicable. Only present for usage and subscription line items.
876
+ list_price: nil,
877
+ metadata: nil,
878
+ # The end date for the billing period on the invoice.
879
+ netsuite_invoice_billing_end: nil,
880
+ # The start date for the billing period on the invoice.
881
+ netsuite_invoice_billing_start: nil,
882
+ netsuite_item_id: nil,
883
+ # Only present for line items paying for a postpaid commit true-up.
884
+ postpaid_commit: nil,
885
+ # Includes the presentation group values associated with this line item if
886
+ # presentation group keys are used.
887
+ presentation_group_values: nil,
888
+ # Includes the pricing group values associated with this line item if dimensional
889
+ # pricing is used.
890
+ pricing_group_values: nil,
891
+ product_custom_fields: nil,
892
+ # ID of the product associated with the line item.
893
+ product_id: nil,
894
+ # The current product tags associated with the line item's `product_id`.
895
+ product_tags: nil,
896
+ # The type of the line item's product. Possible values are `FixedProductListItem`
897
+ # (for `FIXED` type products), `UsageProductListItem` (for `USAGE` type products),
898
+ # `SubscriptionProductListItem` (for `SUBSCRIPTION` type products) or
899
+ # `CompositeProductListItem` (for `COMPOSITE` type products). For scheduled
900
+ # charges, commit and credit payments, the value is `FixedProductListItem`.
901
+ product_type: nil,
902
+ professional_service_custom_fields: nil,
903
+ professional_service_id: nil,
904
+ # The quantity associated with the line item.
905
+ quantity: nil,
906
+ reseller_type: nil,
907
+ scheduled_charge_custom_fields: nil,
908
+ # ID of scheduled charge.
909
+ scheduled_charge_id: nil,
910
+ # The line item's start date (inclusive).
911
+ starting_at: nil,
912
+ sub_line_items: nil,
913
+ subscription_custom_fields: nil,
914
+ # Populated if the line item has a tiered price.
915
+ tier: nil,
916
+ # The unit price associated with the line item.
917
+ unit_price: nil
918
+ )
919
+ end
920
+
921
+ sig do
922
+ override.returns(
923
+ {
924
+ credit_type:
925
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::CreditType,
926
+ name: String,
927
+ total: Float,
928
+ applied_commit_or_credit:
929
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit,
930
+ commit_custom_fields: T::Hash[Symbol, String],
931
+ commit_id: String,
932
+ commit_netsuite_item_id: String,
933
+ commit_netsuite_sales_order_id: String,
934
+ commit_segment_id: String,
935
+ commit_type: String,
936
+ custom_fields: T::Hash[Symbol, String],
937
+ discount_custom_fields: T::Hash[Symbol, String],
938
+ discount_id: String,
939
+ ending_before: Time,
940
+ group_key: String,
941
+ group_value: T.nilable(String),
942
+ is_prorated: T::Boolean,
943
+ list_price:
944
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice,
945
+ metadata: String,
946
+ netsuite_invoice_billing_end: Time,
947
+ netsuite_invoice_billing_start: Time,
948
+ netsuite_item_id: String,
949
+ postpaid_commit:
950
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::PostpaidCommit,
951
+ presentation_group_values: T::Hash[Symbol, T.nilable(String)],
952
+ pricing_group_values: T::Hash[Symbol, String],
953
+ product_custom_fields: T::Hash[Symbol, String],
954
+ product_id: String,
955
+ product_tags: T::Array[String],
956
+ product_type: String,
957
+ professional_service_custom_fields: T::Hash[Symbol, String],
958
+ professional_service_id: String,
959
+ quantity: Float,
960
+ reseller_type:
961
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::TaggedSymbol,
962
+ scheduled_charge_custom_fields: T::Hash[Symbol, String],
963
+ scheduled_charge_id: String,
964
+ starting_at: Time,
965
+ sub_line_items:
966
+ T::Array[
967
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem
968
+ ],
969
+ subscription_custom_fields: T::Hash[Symbol, String],
970
+ tier:
971
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::Tier,
972
+ unit_price: Float
973
+ }
974
+ )
975
+ end
976
+ def to_hash
977
+ end
978
+
979
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
980
+ OrHash =
981
+ T.type_alias do
982
+ T.any(
983
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::CreditType,
984
+ MetronomeSDK::Internal::AnyHash
985
+ )
986
+ end
987
+
988
+ sig { returns(String) }
989
+ attr_accessor :id
990
+
991
+ sig { returns(String) }
992
+ attr_accessor :name
993
+
994
+ sig { params(id: String, name: String).returns(T.attached_class) }
995
+ def self.new(id:, name:)
996
+ end
997
+
998
+ sig { override.returns({ id: String, name: String }) }
999
+ def to_hash
1000
+ end
1001
+ end
1002
+
1003
+ class AppliedCommitOrCredit < MetronomeSDK::Internal::Type::BaseModel
1004
+ OrHash =
1005
+ T.type_alias do
1006
+ T.any(
1007
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit,
1008
+ MetronomeSDK::Internal::AnyHash
1009
+ )
1010
+ end
1011
+
1012
+ sig { returns(String) }
1013
+ attr_accessor :id
1014
+
1015
+ sig do
1016
+ returns(
1017
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
1018
+ )
1019
+ end
1020
+ attr_accessor :type
1021
+
1022
+ # Details about the credit or commit that was applied to this line item. Only
1023
+ # present on line items with product of `USAGE`, `SUBSCRIPTION` or `COMPOSITE`
1024
+ # types.
1025
+ sig do
1026
+ params(
1027
+ id: String,
1028
+ type:
1029
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::Type::OrSymbol
1030
+ ).returns(T.attached_class)
1031
+ end
1032
+ def self.new(id:, type:)
1033
+ end
1034
+
1035
+ sig do
1036
+ override.returns(
1037
+ {
1038
+ id: String,
1039
+ type:
1040
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
1041
+ }
1042
+ )
1043
+ end
1044
+ def to_hash
1045
+ end
1046
+
1047
+ module Type
1048
+ extend MetronomeSDK::Internal::Type::Enum
1049
+
1050
+ TaggedSymbol =
1051
+ T.type_alias do
1052
+ T.all(
1053
+ Symbol,
1054
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::Type
1055
+ )
1056
+ end
1057
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1058
+
1059
+ PREPAID =
1060
+ T.let(
1061
+ :PREPAID,
1062
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
1063
+ )
1064
+ POSTPAID =
1065
+ T.let(
1066
+ :POSTPAID,
1067
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
1068
+ )
1069
+ CREDIT =
1070
+ T.let(
1071
+ :CREDIT,
1072
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
1073
+ )
1074
+
1075
+ sig do
1076
+ override.returns(
1077
+ T::Array[
1078
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
1079
+ ]
1080
+ )
1081
+ end
1082
+ def self.values
1083
+ end
1084
+ end
1085
+ end
1086
+
1087
+ class ListPrice < MetronomeSDK::Internal::Type::BaseModel
1088
+ OrHash =
1089
+ T.type_alias do
1090
+ T.any(
1091
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice,
1092
+ MetronomeSDK::Internal::AnyHash
1093
+ )
1094
+ end
1095
+
1096
+ sig do
1097
+ returns(
1098
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::TaggedSymbol
1099
+ )
1100
+ end
1101
+ attr_accessor :rate_type
1102
+
1103
+ sig do
1104
+ returns(
1105
+ T.nilable(
1106
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::CreditType
1107
+ )
1108
+ )
1109
+ end
1110
+ attr_reader :credit_type
1111
+
1112
+ sig do
1113
+ params(
1114
+ credit_type:
1115
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::CreditType::OrHash
1116
+ ).void
1117
+ end
1118
+ attr_writer :credit_type
1119
+
1120
+ # Only set for CUSTOM rate_type. This field is interpreted by custom rate
1121
+ # processors.
1122
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
1123
+ attr_reader :custom_rate
1124
+
1125
+ sig { params(custom_rate: T::Hash[Symbol, T.anything]).void }
1126
+ attr_writer :custom_rate
1127
+
1128
+ # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
1129
+ # set to true.
1130
+ sig { returns(T.nilable(T::Boolean)) }
1131
+ attr_reader :is_prorated
1132
+
1133
+ sig { params(is_prorated: T::Boolean).void }
1134
+ attr_writer :is_prorated
1135
+
1136
+ # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
1137
+ # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
1138
+ sig { returns(T.nilable(Float)) }
1139
+ attr_reader :price
1140
+
1141
+ sig { params(price: Float).void }
1142
+ attr_writer :price
1143
+
1144
+ # if pricing groups are used, this will contain the values used to calculate the
1145
+ # price
1146
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1147
+ attr_reader :pricing_group_values
1148
+
1149
+ sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
1150
+ attr_writer :pricing_group_values
1151
+
1152
+ # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
1153
+ sig { returns(T.nilable(Float)) }
1154
+ attr_reader :quantity
1155
+
1156
+ sig { params(quantity: Float).void }
1157
+ attr_writer :quantity
1158
+
1159
+ # Only set for TIERED rate_type.
1160
+ sig do
1161
+ returns(
1162
+ T.nilable(
1163
+ T::Array[
1164
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::Tier
1165
+ ]
1166
+ )
1167
+ )
1168
+ end
1169
+ attr_reader :tiers
1170
+
1171
+ sig do
1172
+ params(
1173
+ tiers:
1174
+ T::Array[
1175
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::Tier::OrHash
1176
+ ]
1177
+ ).void
1178
+ end
1179
+ attr_writer :tiers
1180
+
1181
+ # Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
1182
+ # using list prices rather than the standard rates for this product on the
1183
+ # contract.
1184
+ sig { returns(T.nilable(T::Boolean)) }
1185
+ attr_reader :use_list_prices
1186
+
1187
+ sig { params(use_list_prices: T::Boolean).void }
1188
+ attr_writer :use_list_prices
1189
+
1190
+ # Only present for contract invoices and when the `include_list_prices` query
1191
+ # parameter is set to true. This will include the list rate for the charge if
1192
+ # applicable. Only present for usage and subscription line items.
1193
+ sig do
1194
+ params(
1195
+ rate_type:
1196
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::OrSymbol,
1197
+ credit_type:
1198
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::CreditType::OrHash,
1199
+ custom_rate: T::Hash[Symbol, T.anything],
1200
+ is_prorated: T::Boolean,
1201
+ price: Float,
1202
+ pricing_group_values: T::Hash[Symbol, String],
1203
+ quantity: Float,
1204
+ tiers:
1205
+ T::Array[
1206
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::Tier::OrHash
1207
+ ],
1208
+ use_list_prices: T::Boolean
1209
+ ).returns(T.attached_class)
1210
+ end
1211
+ def self.new(
1212
+ rate_type:,
1213
+ credit_type: nil,
1214
+ # Only set for CUSTOM rate_type. This field is interpreted by custom rate
1215
+ # processors.
1216
+ custom_rate: nil,
1217
+ # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
1218
+ # set to true.
1219
+ is_prorated: nil,
1220
+ # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
1221
+ # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
1222
+ price: nil,
1223
+ # if pricing groups are used, this will contain the values used to calculate the
1224
+ # price
1225
+ pricing_group_values: nil,
1226
+ # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
1227
+ quantity: nil,
1228
+ # Only set for TIERED rate_type.
1229
+ tiers: nil,
1230
+ # Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
1231
+ # using list prices rather than the standard rates for this product on the
1232
+ # contract.
1233
+ use_list_prices: nil
1234
+ )
1235
+ end
1236
+
1237
+ sig do
1238
+ override.returns(
1239
+ {
1240
+ rate_type:
1241
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::TaggedSymbol,
1242
+ credit_type:
1243
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::CreditType,
1244
+ custom_rate: T::Hash[Symbol, T.anything],
1245
+ is_prorated: T::Boolean,
1246
+ price: Float,
1247
+ pricing_group_values: T::Hash[Symbol, String],
1248
+ quantity: Float,
1249
+ tiers:
1250
+ T::Array[
1251
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::Tier
1252
+ ],
1253
+ use_list_prices: T::Boolean
1254
+ }
1255
+ )
1256
+ end
1257
+ def to_hash
1258
+ end
1259
+
1260
+ module RateType
1261
+ extend MetronomeSDK::Internal::Type::Enum
1262
+
1263
+ TaggedSymbol =
1264
+ T.type_alias do
1265
+ T.all(
1266
+ Symbol,
1267
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType
1268
+ )
1269
+ end
1270
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1271
+
1272
+ FLAT =
1273
+ T.let(
1274
+ :FLAT,
1275
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::TaggedSymbol
1276
+ )
1277
+ PERCENTAGE =
1278
+ T.let(
1279
+ :PERCENTAGE,
1280
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::TaggedSymbol
1281
+ )
1282
+ SUBSCRIPTION =
1283
+ T.let(
1284
+ :SUBSCRIPTION,
1285
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::TaggedSymbol
1286
+ )
1287
+ CUSTOM =
1288
+ T.let(
1289
+ :CUSTOM,
1290
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::TaggedSymbol
1291
+ )
1292
+ TIERED =
1293
+ T.let(
1294
+ :TIERED,
1295
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::TaggedSymbol
1296
+ )
1297
+
1298
+ sig do
1299
+ override.returns(
1300
+ T::Array[
1301
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::RateType::TaggedSymbol
1302
+ ]
1303
+ )
1304
+ end
1305
+ def self.values
1306
+ end
1307
+ end
1308
+
1309
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
1310
+ OrHash =
1311
+ T.type_alias do
1312
+ T.any(
1313
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::CreditType,
1314
+ MetronomeSDK::Internal::AnyHash
1315
+ )
1316
+ end
1317
+
1318
+ sig { returns(String) }
1319
+ attr_accessor :id
1320
+
1321
+ sig { returns(String) }
1322
+ attr_accessor :name
1323
+
1324
+ sig do
1325
+ params(id: String, name: String).returns(T.attached_class)
1326
+ end
1327
+ def self.new(id:, name:)
1328
+ end
1329
+
1330
+ sig { override.returns({ id: String, name: String }) }
1331
+ def to_hash
1332
+ end
1333
+ end
1334
+
1335
+ class Tier < MetronomeSDK::Internal::Type::BaseModel
1336
+ OrHash =
1337
+ T.type_alias do
1338
+ T.any(
1339
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ListPrice::Tier,
1340
+ MetronomeSDK::Internal::AnyHash
1341
+ )
1342
+ end
1343
+
1344
+ sig { returns(Float) }
1345
+ attr_accessor :price
1346
+
1347
+ sig { returns(T.nilable(Float)) }
1348
+ attr_reader :size
1349
+
1350
+ sig { params(size: Float).void }
1351
+ attr_writer :size
1352
+
1353
+ sig do
1354
+ params(price: Float, size: Float).returns(T.attached_class)
1355
+ end
1356
+ def self.new(price:, size: nil)
1357
+ end
1358
+
1359
+ sig { override.returns({ price: Float, size: Float }) }
1360
+ def to_hash
1361
+ end
1362
+ end
1363
+ end
1364
+
1365
+ class PostpaidCommit < MetronomeSDK::Internal::Type::BaseModel
1366
+ OrHash =
1367
+ T.type_alias do
1368
+ T.any(
1369
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::PostpaidCommit,
1370
+ MetronomeSDK::Internal::AnyHash
1371
+ )
1372
+ end
1373
+
1374
+ sig { returns(String) }
1375
+ attr_accessor :id
1376
+
1377
+ # Only present for line items paying for a postpaid commit true-up.
1378
+ sig { params(id: String).returns(T.attached_class) }
1379
+ def self.new(id:)
1380
+ end
1381
+
1382
+ sig { override.returns({ id: String }) }
1383
+ def to_hash
1384
+ end
1385
+ end
1386
+
1387
+ module ResellerType
1388
+ extend MetronomeSDK::Internal::Type::Enum
1389
+
1390
+ TaggedSymbol =
1391
+ T.type_alias do
1392
+ T.all(
1393
+ Symbol,
1394
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType
1395
+ )
1396
+ end
1397
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1398
+
1399
+ AWS =
1400
+ T.let(
1401
+ :AWS,
1402
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::TaggedSymbol
1403
+ )
1404
+ AWS_PRO_SERVICE =
1405
+ T.let(
1406
+ :AWS_PRO_SERVICE,
1407
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::TaggedSymbol
1408
+ )
1409
+ GCP =
1410
+ T.let(
1411
+ :GCP,
1412
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::TaggedSymbol
1413
+ )
1414
+ GCP_PRO_SERVICE =
1415
+ T.let(
1416
+ :GCP_PRO_SERVICE,
1417
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::TaggedSymbol
1418
+ )
1419
+
1420
+ sig do
1421
+ override.returns(
1422
+ T::Array[
1423
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::ResellerType::TaggedSymbol
1424
+ ]
1425
+ )
1426
+ end
1427
+ def self.values
1428
+ end
1429
+ end
1430
+
1431
+ class SubLineItem < MetronomeSDK::Internal::Type::BaseModel
1432
+ OrHash =
1433
+ T.type_alias do
1434
+ T.any(
1435
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem,
1436
+ MetronomeSDK::Internal::AnyHash
1437
+ )
1438
+ end
1439
+
1440
+ sig { returns(T::Hash[Symbol, String]) }
1441
+ attr_accessor :custom_fields
1442
+
1443
+ sig { returns(String) }
1444
+ attr_accessor :name
1445
+
1446
+ sig { returns(Float) }
1447
+ attr_accessor :quantity
1448
+
1449
+ sig { returns(Float) }
1450
+ attr_accessor :subtotal
1451
+
1452
+ sig { returns(T.nilable(String)) }
1453
+ attr_reader :charge_id
1454
+
1455
+ sig { params(charge_id: String).void }
1456
+ attr_writer :charge_id
1457
+
1458
+ sig { returns(T.nilable(String)) }
1459
+ attr_reader :credit_grant_id
1460
+
1461
+ sig { params(credit_grant_id: String).void }
1462
+ attr_writer :credit_grant_id
1463
+
1464
+ # The end date for the charge (for seats charges only).
1465
+ sig { returns(T.nilable(Time)) }
1466
+ attr_reader :end_date
1467
+
1468
+ sig { params(end_date: Time).void }
1469
+ attr_writer :end_date
1470
+
1471
+ # the unit price for this charge, present only if the charge is not tiered and the
1472
+ # quantity is nonzero
1473
+ sig { returns(T.nilable(Float)) }
1474
+ attr_reader :price
1475
+
1476
+ sig { params(price: Float).void }
1477
+ attr_writer :price
1478
+
1479
+ # The start date for the charge (for seats charges only).
1480
+ sig { returns(T.nilable(Time)) }
1481
+ attr_reader :start_date
1482
+
1483
+ sig { params(start_date: Time).void }
1484
+ attr_writer :start_date
1485
+
1486
+ # when the current tier started and ends (for tiered charges only)
1487
+ sig do
1488
+ returns(
1489
+ T.nilable(
1490
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::TierPeriod
1491
+ )
1492
+ )
1493
+ end
1494
+ attr_reader :tier_period
1495
+
1496
+ sig do
1497
+ params(
1498
+ tier_period:
1499
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::TierPeriod::OrHash
1500
+ ).void
1501
+ end
1502
+ attr_writer :tier_period
1503
+
1504
+ sig do
1505
+ returns(
1506
+ T.nilable(
1507
+ T::Array[
1508
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::Tier
1509
+ ]
1510
+ )
1511
+ )
1512
+ end
1513
+ attr_reader :tiers
1514
+
1515
+ sig do
1516
+ params(
1517
+ tiers:
1518
+ T::Array[
1519
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::Tier::OrHash
1520
+ ]
1521
+ ).void
1522
+ end
1523
+ attr_writer :tiers
1524
+
1525
+ sig do
1526
+ params(
1527
+ custom_fields: T::Hash[Symbol, String],
1528
+ name: String,
1529
+ quantity: Float,
1530
+ subtotal: Float,
1531
+ charge_id: String,
1532
+ credit_grant_id: String,
1533
+ end_date: Time,
1534
+ price: Float,
1535
+ start_date: Time,
1536
+ tier_period:
1537
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::TierPeriod::OrHash,
1538
+ tiers:
1539
+ T::Array[
1540
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::Tier::OrHash
1541
+ ]
1542
+ ).returns(T.attached_class)
1543
+ end
1544
+ def self.new(
1545
+ custom_fields:,
1546
+ name:,
1547
+ quantity:,
1548
+ subtotal:,
1549
+ charge_id: nil,
1550
+ credit_grant_id: nil,
1551
+ # The end date for the charge (for seats charges only).
1552
+ end_date: nil,
1553
+ # the unit price for this charge, present only if the charge is not tiered and the
1554
+ # quantity is nonzero
1555
+ price: nil,
1556
+ # The start date for the charge (for seats charges only).
1557
+ start_date: nil,
1558
+ # when the current tier started and ends (for tiered charges only)
1559
+ tier_period: nil,
1560
+ tiers: nil
1561
+ )
1562
+ end
1563
+
1564
+ sig do
1565
+ override.returns(
1566
+ {
1567
+ custom_fields: T::Hash[Symbol, String],
1568
+ name: String,
1569
+ quantity: Float,
1570
+ subtotal: Float,
1571
+ charge_id: String,
1572
+ credit_grant_id: String,
1573
+ end_date: Time,
1574
+ price: Float,
1575
+ start_date: Time,
1576
+ tier_period:
1577
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::TierPeriod,
1578
+ tiers:
1579
+ T::Array[
1580
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::Tier
1581
+ ]
1582
+ }
1583
+ )
1584
+ end
1585
+ def to_hash
1586
+ end
1587
+
1588
+ class TierPeriod < MetronomeSDK::Internal::Type::BaseModel
1589
+ OrHash =
1590
+ T.type_alias do
1591
+ T.any(
1592
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::TierPeriod,
1593
+ MetronomeSDK::Internal::AnyHash
1594
+ )
1595
+ end
1596
+
1597
+ sig { returns(Time) }
1598
+ attr_accessor :starting_at
1599
+
1600
+ sig { returns(T.nilable(Time)) }
1601
+ attr_reader :ending_before
1602
+
1603
+ sig { params(ending_before: Time).void }
1604
+ attr_writer :ending_before
1605
+
1606
+ # when the current tier started and ends (for tiered charges only)
1607
+ sig do
1608
+ params(starting_at: Time, ending_before: Time).returns(
1609
+ T.attached_class
1610
+ )
1611
+ end
1612
+ def self.new(starting_at:, ending_before: nil)
1613
+ end
1614
+
1615
+ sig do
1616
+ override.returns({ starting_at: Time, ending_before: Time })
1617
+ end
1618
+ def to_hash
1619
+ end
1620
+ end
1621
+
1622
+ class Tier < MetronomeSDK::Internal::Type::BaseModel
1623
+ OrHash =
1624
+ T.type_alias do
1625
+ T.any(
1626
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::SubLineItem::Tier,
1627
+ MetronomeSDK::Internal::AnyHash
1628
+ )
1629
+ end
1630
+
1631
+ sig { returns(Float) }
1632
+ attr_accessor :price
1633
+
1634
+ sig { returns(Float) }
1635
+ attr_accessor :quantity
1636
+
1637
+ # at what metric amount this tier begins
1638
+ sig { returns(Float) }
1639
+ attr_accessor :starting_at
1640
+
1641
+ sig { returns(Float) }
1642
+ attr_accessor :subtotal
1643
+
1644
+ sig do
1645
+ params(
1646
+ price: Float,
1647
+ quantity: Float,
1648
+ starting_at: Float,
1649
+ subtotal: Float
1650
+ ).returns(T.attached_class)
1651
+ end
1652
+ def self.new(
1653
+ price:,
1654
+ quantity:,
1655
+ # at what metric amount this tier begins
1656
+ starting_at:,
1657
+ subtotal:
1658
+ )
1659
+ end
1660
+
1661
+ sig do
1662
+ override.returns(
1663
+ {
1664
+ price: Float,
1665
+ quantity: Float,
1666
+ starting_at: Float,
1667
+ subtotal: Float
1668
+ }
1669
+ )
1670
+ end
1671
+ def to_hash
1672
+ end
1673
+ end
1674
+ end
1675
+
1676
+ class Tier < MetronomeSDK::Internal::Type::BaseModel
1677
+ OrHash =
1678
+ T.type_alias do
1679
+ T.any(
1680
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::LineItem::Tier,
1681
+ MetronomeSDK::Internal::AnyHash
1682
+ )
1683
+ end
1684
+
1685
+ sig { returns(Float) }
1686
+ attr_accessor :level
1687
+
1688
+ sig { returns(String) }
1689
+ attr_accessor :starting_at
1690
+
1691
+ sig { returns(T.nilable(String)) }
1692
+ attr_accessor :size
1693
+
1694
+ # Populated if the line item has a tiered price.
1695
+ sig do
1696
+ params(
1697
+ level: Float,
1698
+ starting_at: String,
1699
+ size: T.nilable(String)
1700
+ ).returns(T.attached_class)
1701
+ end
1702
+ def self.new(level:, starting_at:, size: nil)
1703
+ end
1704
+
1705
+ sig do
1706
+ override.returns(
1707
+ { level: Float, starting_at: String, size: T.nilable(String) }
1708
+ )
1709
+ end
1710
+ def to_hash
1711
+ end
1712
+ end
1713
+ end
1714
+
1715
+ # This field's availability is dependent on your client's configuration.
1716
+ module BillableStatus
1717
+ extend MetronomeSDK::Internal::Type::Enum
1718
+
1719
+ TaggedSymbol =
1720
+ T.type_alias do
1721
+ T.all(
1722
+ Symbol,
1723
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::BillableStatus
1724
+ )
1725
+ end
1726
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1727
+
1728
+ BILLABLE =
1729
+ T.let(
1730
+ :billable,
1731
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::BillableStatus::TaggedSymbol
1732
+ )
1733
+ UNBILLABLE =
1734
+ T.let(
1735
+ :unbillable,
1736
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::BillableStatus::TaggedSymbol
1737
+ )
1738
+
1739
+ sig do
1740
+ override.returns(
1741
+ T::Array[
1742
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::BillableStatus::TaggedSymbol
1743
+ ]
1744
+ )
1745
+ end
1746
+ def self.values
1747
+ end
1748
+ end
1749
+
1750
+ class CorrectionRecord < MetronomeSDK::Internal::Type::BaseModel
1751
+ OrHash =
1752
+ T.type_alias do
1753
+ T.any(
1754
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord,
1755
+ MetronomeSDK::Internal::AnyHash
1756
+ )
1757
+ end
1758
+
1759
+ sig { returns(String) }
1760
+ attr_accessor :corrected_invoice_id
1761
+
1762
+ sig { returns(String) }
1763
+ attr_accessor :memo
1764
+
1765
+ sig { returns(String) }
1766
+ attr_accessor :reason
1767
+
1768
+ sig do
1769
+ returns(
1770
+ T.nilable(
1771
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice
1772
+ )
1773
+ )
1774
+ end
1775
+ attr_reader :corrected_external_invoice
1776
+
1777
+ sig do
1778
+ params(
1779
+ corrected_external_invoice:
1780
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::OrHash
1781
+ ).void
1782
+ end
1783
+ attr_writer :corrected_external_invoice
1784
+
1785
+ sig do
1786
+ params(
1787
+ corrected_invoice_id: String,
1788
+ memo: String,
1789
+ reason: String,
1790
+ corrected_external_invoice:
1791
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::OrHash
1792
+ ).returns(T.attached_class)
1793
+ end
1794
+ def self.new(
1795
+ corrected_invoice_id:,
1796
+ memo:,
1797
+ reason:,
1798
+ corrected_external_invoice: nil
1799
+ )
1800
+ end
1801
+
1802
+ sig do
1803
+ override.returns(
1804
+ {
1805
+ corrected_invoice_id: String,
1806
+ memo: String,
1807
+ reason: String,
1808
+ corrected_external_invoice:
1809
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice
1810
+ }
1811
+ )
1812
+ end
1813
+ def to_hash
1814
+ end
1815
+
1816
+ class CorrectedExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
1817
+ OrHash =
1818
+ T.type_alias do
1819
+ T.any(
1820
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice,
1821
+ MetronomeSDK::Internal::AnyHash
1822
+ )
1823
+ end
1824
+
1825
+ sig do
1826
+ returns(
1827
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1828
+ )
1829
+ end
1830
+ attr_accessor :billing_provider_type
1831
+
1832
+ sig do
1833
+ returns(
1834
+ T.nilable(
1835
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1836
+ )
1837
+ )
1838
+ end
1839
+ attr_reader :external_status
1840
+
1841
+ sig do
1842
+ params(
1843
+ external_status:
1844
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::OrSymbol
1845
+ ).void
1846
+ end
1847
+ attr_writer :external_status
1848
+
1849
+ sig { returns(T.nilable(String)) }
1850
+ attr_reader :invoice_id
1851
+
1852
+ sig { params(invoice_id: String).void }
1853
+ attr_writer :invoice_id
1854
+
1855
+ sig { returns(T.nilable(Time)) }
1856
+ attr_reader :issued_at_timestamp
1857
+
1858
+ sig { params(issued_at_timestamp: Time).void }
1859
+ attr_writer :issued_at_timestamp
1860
+
1861
+ sig do
1862
+ params(
1863
+ billing_provider_type:
1864
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::OrSymbol,
1865
+ external_status:
1866
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::OrSymbol,
1867
+ invoice_id: String,
1868
+ issued_at_timestamp: Time
1869
+ ).returns(T.attached_class)
1870
+ end
1871
+ def self.new(
1872
+ billing_provider_type:,
1873
+ external_status: nil,
1874
+ invoice_id: nil,
1875
+ issued_at_timestamp: nil
1876
+ )
1877
+ end
1878
+
1879
+ sig do
1880
+ override.returns(
1881
+ {
1882
+ billing_provider_type:
1883
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol,
1884
+ external_status:
1885
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol,
1886
+ invoice_id: String,
1887
+ issued_at_timestamp: Time
1888
+ }
1889
+ )
1890
+ end
1891
+ def to_hash
1892
+ end
1893
+
1894
+ module BillingProviderType
1895
+ extend MetronomeSDK::Internal::Type::Enum
1896
+
1897
+ TaggedSymbol =
1898
+ T.type_alias do
1899
+ T.all(
1900
+ Symbol,
1901
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType
1902
+ )
1903
+ end
1904
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1905
+
1906
+ AWS_MARKETPLACE =
1907
+ T.let(
1908
+ :aws_marketplace,
1909
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1910
+ )
1911
+ STRIPE =
1912
+ T.let(
1913
+ :stripe,
1914
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1915
+ )
1916
+ NETSUITE =
1917
+ T.let(
1918
+ :netsuite,
1919
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1920
+ )
1921
+ CUSTOM =
1922
+ T.let(
1923
+ :custom,
1924
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1925
+ )
1926
+ AZURE_MARKETPLACE =
1927
+ T.let(
1928
+ :azure_marketplace,
1929
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1930
+ )
1931
+ QUICKBOOKS_ONLINE =
1932
+ T.let(
1933
+ :quickbooks_online,
1934
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1935
+ )
1936
+ WORKDAY =
1937
+ T.let(
1938
+ :workday,
1939
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1940
+ )
1941
+ GCP_MARKETPLACE =
1942
+ T.let(
1943
+ :gcp_marketplace,
1944
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1945
+ )
1946
+
1947
+ sig do
1948
+ override.returns(
1949
+ T::Array[
1950
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1951
+ ]
1952
+ )
1953
+ end
1954
+ def self.values
1955
+ end
1956
+ end
1957
+
1958
+ module ExternalStatus
1959
+ extend MetronomeSDK::Internal::Type::Enum
1960
+
1961
+ TaggedSymbol =
1962
+ T.type_alias do
1963
+ T.all(
1964
+ Symbol,
1965
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus
1966
+ )
1967
+ end
1968
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1969
+
1970
+ DRAFT =
1971
+ T.let(
1972
+ :DRAFT,
1973
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1974
+ )
1975
+ FINALIZED =
1976
+ T.let(
1977
+ :FINALIZED,
1978
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1979
+ )
1980
+ PAID =
1981
+ T.let(
1982
+ :PAID,
1983
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1984
+ )
1985
+ UNCOLLECTIBLE =
1986
+ T.let(
1987
+ :UNCOLLECTIBLE,
1988
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1989
+ )
1990
+ VOID =
1991
+ T.let(
1992
+ :VOID,
1993
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1994
+ )
1995
+ DELETED =
1996
+ T.let(
1997
+ :DELETED,
1998
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1999
+ )
2000
+ PAYMENT_FAILED =
2001
+ T.let(
2002
+ :PAYMENT_FAILED,
2003
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
2004
+ )
2005
+ INVALID_REQUEST_ERROR =
2006
+ T.let(
2007
+ :INVALID_REQUEST_ERROR,
2008
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
2009
+ )
2010
+ SKIPPED =
2011
+ T.let(
2012
+ :SKIPPED,
2013
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
2014
+ )
2015
+ SENT =
2016
+ T.let(
2017
+ :SENT,
2018
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
2019
+ )
2020
+ QUEUED =
2021
+ T.let(
2022
+ :QUEUED,
2023
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
2024
+ )
2025
+
2026
+ sig do
2027
+ override.returns(
2028
+ T::Array[
2029
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
2030
+ ]
2031
+ )
2032
+ end
2033
+ def self.values
2034
+ end
2035
+ end
2036
+ end
2037
+ end
2038
+
2039
+ class ExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
2040
+ OrHash =
2041
+ T.type_alias do
2042
+ T.any(
2043
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice,
2044
+ MetronomeSDK::Internal::AnyHash
2045
+ )
2046
+ end
2047
+
2048
+ sig do
2049
+ returns(
2050
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2051
+ )
2052
+ end
2053
+ attr_accessor :billing_provider_type
2054
+
2055
+ sig do
2056
+ returns(
2057
+ T.nilable(
2058
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2059
+ )
2060
+ )
2061
+ end
2062
+ attr_reader :external_status
2063
+
2064
+ sig do
2065
+ params(
2066
+ external_status:
2067
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::OrSymbol
2068
+ ).void
2069
+ end
2070
+ attr_writer :external_status
2071
+
2072
+ sig { returns(T.nilable(String)) }
2073
+ attr_reader :invoice_id
2074
+
2075
+ sig { params(invoice_id: String).void }
2076
+ attr_writer :invoice_id
2077
+
2078
+ sig { returns(T.nilable(Time)) }
2079
+ attr_reader :issued_at_timestamp
2080
+
2081
+ sig { params(issued_at_timestamp: Time).void }
2082
+ attr_writer :issued_at_timestamp
2083
+
2084
+ sig do
2085
+ params(
2086
+ billing_provider_type:
2087
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::OrSymbol,
2088
+ external_status:
2089
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::OrSymbol,
2090
+ invoice_id: String,
2091
+ issued_at_timestamp: Time
2092
+ ).returns(T.attached_class)
2093
+ end
2094
+ def self.new(
2095
+ billing_provider_type:,
2096
+ external_status: nil,
2097
+ invoice_id: nil,
2098
+ issued_at_timestamp: nil
2099
+ )
2100
+ end
2101
+
2102
+ sig do
2103
+ override.returns(
2104
+ {
2105
+ billing_provider_type:
2106
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol,
2107
+ external_status:
2108
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol,
2109
+ invoice_id: String,
2110
+ issued_at_timestamp: Time
2111
+ }
2112
+ )
2113
+ end
2114
+ def to_hash
2115
+ end
2116
+
2117
+ module BillingProviderType
2118
+ extend MetronomeSDK::Internal::Type::Enum
2119
+
2120
+ TaggedSymbol =
2121
+ T.type_alias do
2122
+ T.all(
2123
+ Symbol,
2124
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType
2125
+ )
2126
+ end
2127
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2128
+
2129
+ AWS_MARKETPLACE =
2130
+ T.let(
2131
+ :aws_marketplace,
2132
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2133
+ )
2134
+ STRIPE =
2135
+ T.let(
2136
+ :stripe,
2137
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2138
+ )
2139
+ NETSUITE =
2140
+ T.let(
2141
+ :netsuite,
2142
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2143
+ )
2144
+ CUSTOM =
2145
+ T.let(
2146
+ :custom,
2147
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2148
+ )
2149
+ AZURE_MARKETPLACE =
2150
+ T.let(
2151
+ :azure_marketplace,
2152
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2153
+ )
2154
+ QUICKBOOKS_ONLINE =
2155
+ T.let(
2156
+ :quickbooks_online,
2157
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2158
+ )
2159
+ WORKDAY =
2160
+ T.let(
2161
+ :workday,
2162
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2163
+ )
2164
+ GCP_MARKETPLACE =
2165
+ T.let(
2166
+ :gcp_marketplace,
2167
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2168
+ )
2169
+
2170
+ sig do
2171
+ override.returns(
2172
+ T::Array[
2173
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::BillingProviderType::TaggedSymbol
2174
+ ]
2175
+ )
2176
+ end
2177
+ def self.values
2178
+ end
2179
+ end
2180
+
2181
+ module ExternalStatus
2182
+ extend MetronomeSDK::Internal::Type::Enum
2183
+
2184
+ TaggedSymbol =
2185
+ T.type_alias do
2186
+ T.all(
2187
+ Symbol,
2188
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus
2189
+ )
2190
+ end
2191
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2192
+
2193
+ DRAFT =
2194
+ T.let(
2195
+ :DRAFT,
2196
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2197
+ )
2198
+ FINALIZED =
2199
+ T.let(
2200
+ :FINALIZED,
2201
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2202
+ )
2203
+ PAID =
2204
+ T.let(
2205
+ :PAID,
2206
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2207
+ )
2208
+ UNCOLLECTIBLE =
2209
+ T.let(
2210
+ :UNCOLLECTIBLE,
2211
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2212
+ )
2213
+ VOID =
2214
+ T.let(
2215
+ :VOID,
2216
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2217
+ )
2218
+ DELETED =
2219
+ T.let(
2220
+ :DELETED,
2221
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2222
+ )
2223
+ PAYMENT_FAILED =
2224
+ T.let(
2225
+ :PAYMENT_FAILED,
2226
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2227
+ )
2228
+ INVALID_REQUEST_ERROR =
2229
+ T.let(
2230
+ :INVALID_REQUEST_ERROR,
2231
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2232
+ )
2233
+ SKIPPED =
2234
+ T.let(
2235
+ :SKIPPED,
2236
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2237
+ )
2238
+ SENT =
2239
+ T.let(
2240
+ :SENT,
2241
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2242
+ )
2243
+ QUEUED =
2244
+ T.let(
2245
+ :QUEUED,
2246
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2247
+ )
2248
+
2249
+ sig do
2250
+ override.returns(
2251
+ T::Array[
2252
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ExternalInvoice::ExternalStatus::TaggedSymbol
2253
+ ]
2254
+ )
2255
+ end
2256
+ def self.values
2257
+ end
2258
+ end
2259
+ end
2260
+
2261
+ class InvoiceAdjustment < MetronomeSDK::Internal::Type::BaseModel
2262
+ OrHash =
2263
+ T.type_alias do
2264
+ T.any(
2265
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment,
2266
+ MetronomeSDK::Internal::AnyHash
2267
+ )
2268
+ end
2269
+
2270
+ sig do
2271
+ returns(
2272
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment::CreditType
2273
+ )
2274
+ end
2275
+ attr_reader :credit_type
2276
+
2277
+ sig do
2278
+ params(
2279
+ credit_type:
2280
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment::CreditType::OrHash
2281
+ ).void
2282
+ end
2283
+ attr_writer :credit_type
2284
+
2285
+ sig { returns(String) }
2286
+ attr_accessor :name
2287
+
2288
+ sig { returns(Float) }
2289
+ attr_accessor :total
2290
+
2291
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
2292
+ attr_reader :credit_grant_custom_fields
2293
+
2294
+ sig do
2295
+ params(credit_grant_custom_fields: T::Hash[Symbol, String]).void
2296
+ end
2297
+ attr_writer :credit_grant_custom_fields
2298
+
2299
+ sig { returns(T.nilable(String)) }
2300
+ attr_reader :credit_grant_id
2301
+
2302
+ sig { params(credit_grant_id: String).void }
2303
+ attr_writer :credit_grant_id
2304
+
2305
+ sig do
2306
+ params(
2307
+ credit_type:
2308
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment::CreditType::OrHash,
2309
+ name: String,
2310
+ total: Float,
2311
+ credit_grant_custom_fields: T::Hash[Symbol, String],
2312
+ credit_grant_id: String
2313
+ ).returns(T.attached_class)
2314
+ end
2315
+ def self.new(
2316
+ credit_type:,
2317
+ name:,
2318
+ total:,
2319
+ credit_grant_custom_fields: nil,
2320
+ credit_grant_id: nil
2321
+ )
2322
+ end
2323
+
2324
+ sig do
2325
+ override.returns(
2326
+ {
2327
+ credit_type:
2328
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment::CreditType,
2329
+ name: String,
2330
+ total: Float,
2331
+ credit_grant_custom_fields: T::Hash[Symbol, String],
2332
+ credit_grant_id: String
2333
+ }
2334
+ )
2335
+ end
2336
+ def to_hash
2337
+ end
2338
+
2339
+ class CreditType < MetronomeSDK::Internal::Type::BaseModel
2340
+ OrHash =
2341
+ T.type_alias do
2342
+ T.any(
2343
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::InvoiceAdjustment::CreditType,
2344
+ MetronomeSDK::Internal::AnyHash
2345
+ )
2346
+ end
2347
+
2348
+ sig { returns(String) }
2349
+ attr_accessor :id
2350
+
2351
+ sig { returns(String) }
2352
+ attr_accessor :name
2353
+
2354
+ sig { params(id: String, name: String).returns(T.attached_class) }
2355
+ def self.new(id:, name:)
2356
+ end
2357
+
2358
+ sig { override.returns({ id: String, name: String }) }
2359
+ def to_hash
2360
+ end
2361
+ end
2362
+ end
2363
+
2364
+ class ResellerRoyalty < MetronomeSDK::Internal::Type::BaseModel
2365
+ OrHash =
2366
+ T.type_alias do
2367
+ T.any(
2368
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty,
2369
+ MetronomeSDK::Internal::AnyHash
2370
+ )
2371
+ end
2372
+
2373
+ sig { returns(String) }
2374
+ attr_accessor :fraction
2375
+
2376
+ sig { returns(String) }
2377
+ attr_accessor :netsuite_reseller_id
2378
+
2379
+ sig do
2380
+ returns(
2381
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType::TaggedSymbol
2382
+ )
2383
+ end
2384
+ attr_accessor :reseller_type
2385
+
2386
+ sig do
2387
+ returns(
2388
+ T.nilable(
2389
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::AwsOptions
2390
+ )
2391
+ )
2392
+ end
2393
+ attr_reader :aws_options
2394
+
2395
+ sig do
2396
+ params(
2397
+ aws_options:
2398
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::AwsOptions::OrHash
2399
+ ).void
2400
+ end
2401
+ attr_writer :aws_options
2402
+
2403
+ sig do
2404
+ returns(
2405
+ T.nilable(
2406
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::GcpOptions
2407
+ )
2408
+ )
2409
+ end
2410
+ attr_reader :gcp_options
2411
+
2412
+ sig do
2413
+ params(
2414
+ gcp_options:
2415
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::GcpOptions::OrHash
2416
+ ).void
2417
+ end
2418
+ attr_writer :gcp_options
2419
+
2420
+ # Only present for contract invoices with reseller royalties.
2421
+ sig do
2422
+ params(
2423
+ fraction: String,
2424
+ netsuite_reseller_id: String,
2425
+ reseller_type:
2426
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType::OrSymbol,
2427
+ aws_options:
2428
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::AwsOptions::OrHash,
2429
+ gcp_options:
2430
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::GcpOptions::OrHash
2431
+ ).returns(T.attached_class)
2432
+ end
2433
+ def self.new(
2434
+ fraction:,
2435
+ netsuite_reseller_id:,
2436
+ reseller_type:,
2437
+ aws_options: nil,
2438
+ gcp_options: nil
2439
+ )
2440
+ end
2441
+
2442
+ sig do
2443
+ override.returns(
2444
+ {
2445
+ fraction: String,
2446
+ netsuite_reseller_id: String,
2447
+ reseller_type:
2448
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType::TaggedSymbol,
2449
+ aws_options:
2450
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::AwsOptions,
2451
+ gcp_options:
2452
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::GcpOptions
2453
+ }
2454
+ )
2455
+ end
2456
+ def to_hash
2457
+ end
2458
+
2459
+ module ResellerType
2460
+ extend MetronomeSDK::Internal::Type::Enum
2461
+
2462
+ TaggedSymbol =
2463
+ T.type_alias do
2464
+ T.all(
2465
+ Symbol,
2466
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType
2467
+ )
2468
+ end
2469
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2470
+
2471
+ AWS =
2472
+ T.let(
2473
+ :AWS,
2474
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType::TaggedSymbol
2475
+ )
2476
+ AWS_PRO_SERVICE =
2477
+ T.let(
2478
+ :AWS_PRO_SERVICE,
2479
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType::TaggedSymbol
2480
+ )
2481
+ GCP =
2482
+ T.let(
2483
+ :GCP,
2484
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType::TaggedSymbol
2485
+ )
2486
+ GCP_PRO_SERVICE =
2487
+ T.let(
2488
+ :GCP_PRO_SERVICE,
2489
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType::TaggedSymbol
2490
+ )
2491
+
2492
+ sig do
2493
+ override.returns(
2494
+ T::Array[
2495
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::ResellerType::TaggedSymbol
2496
+ ]
2497
+ )
2498
+ end
2499
+ def self.values
2500
+ end
2501
+ end
2502
+
2503
+ class AwsOptions < MetronomeSDK::Internal::Type::BaseModel
2504
+ OrHash =
2505
+ T.type_alias do
2506
+ T.any(
2507
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::AwsOptions,
2508
+ MetronomeSDK::Internal::AnyHash
2509
+ )
2510
+ end
2511
+
2512
+ sig { returns(T.nilable(String)) }
2513
+ attr_reader :aws_account_number
2514
+
2515
+ sig { params(aws_account_number: String).void }
2516
+ attr_writer :aws_account_number
2517
+
2518
+ sig { returns(T.nilable(String)) }
2519
+ attr_reader :aws_offer_id
2520
+
2521
+ sig { params(aws_offer_id: String).void }
2522
+ attr_writer :aws_offer_id
2523
+
2524
+ sig { returns(T.nilable(String)) }
2525
+ attr_reader :aws_payer_reference_id
2526
+
2527
+ sig { params(aws_payer_reference_id: String).void }
2528
+ attr_writer :aws_payer_reference_id
2529
+
2530
+ sig do
2531
+ params(
2532
+ aws_account_number: String,
2533
+ aws_offer_id: String,
2534
+ aws_payer_reference_id: String
2535
+ ).returns(T.attached_class)
2536
+ end
2537
+ def self.new(
2538
+ aws_account_number: nil,
2539
+ aws_offer_id: nil,
2540
+ aws_payer_reference_id: nil
2541
+ )
2542
+ end
2543
+
2544
+ sig do
2545
+ override.returns(
2546
+ {
2547
+ aws_account_number: String,
2548
+ aws_offer_id: String,
2549
+ aws_payer_reference_id: String
2550
+ }
2551
+ )
2552
+ end
2553
+ def to_hash
2554
+ end
2555
+ end
2556
+
2557
+ class GcpOptions < MetronomeSDK::Internal::Type::BaseModel
2558
+ OrHash =
2559
+ T.type_alias do
2560
+ T.any(
2561
+ MetronomeSDK::Models::V1::Customers::InvoiceListBreakdownsResponse::ResellerRoyalty::GcpOptions,
2562
+ MetronomeSDK::Internal::AnyHash
2563
+ )
2564
+ end
2565
+
2566
+ sig { returns(T.nilable(String)) }
2567
+ attr_reader :gcp_account_id
2568
+
2569
+ sig { params(gcp_account_id: String).void }
2570
+ attr_writer :gcp_account_id
2571
+
2572
+ sig { returns(T.nilable(String)) }
2573
+ attr_reader :gcp_offer_id
2574
+
2575
+ sig { params(gcp_offer_id: String).void }
2576
+ attr_writer :gcp_offer_id
2577
+
2578
+ sig do
2579
+ params(gcp_account_id: String, gcp_offer_id: String).returns(
2580
+ T.attached_class
2581
+ )
2582
+ end
2583
+ def self.new(gcp_account_id: nil, gcp_offer_id: nil)
2584
+ end
2585
+
2586
+ sig do
2587
+ override.returns(
2588
+ { gcp_account_id: String, gcp_offer_id: String }
2589
+ )
2590
+ end
2591
+ def to_hash
2592
+ end
2593
+ end
2594
+ end
38
2595
  end
39
2596
  end
40
2597
  end