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