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