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
@@ -7,6 +7,14 @@ module MetronomeSDK
7
7
  extend MetronomeSDK::Internal::Type::RequestParameters::Converter
8
8
  include MetronomeSDK::Internal::Type::RequestParameters
9
9
 
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ MetronomeSDK::V1::ContractAmendParams,
14
+ MetronomeSDK::Internal::AnyHash
15
+ )
16
+ end
17
+
10
18
  # ID of the contract to amend
11
19
  sig { returns(String) }
12
20
  attr_accessor :contract_id
@@ -19,25 +27,33 @@ module MetronomeSDK
19
27
  sig { returns(Time) }
20
28
  attr_accessor :starting_at
21
29
 
22
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit])) }
30
+ sig do
31
+ returns(
32
+ T.nilable(T::Array[MetronomeSDK::V1::ContractAmendParams::Commit])
33
+ )
34
+ end
23
35
  attr_reader :commits
24
36
 
25
37
  sig do
26
38
  params(
27
- commits: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Commit, MetronomeSDK::Internal::AnyHash)]
28
- )
29
- .void
39
+ commits:
40
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Commit::OrHash]
41
+ ).void
30
42
  end
31
43
  attr_writer :commits
32
44
 
33
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Credit])) }
45
+ sig do
46
+ returns(
47
+ T.nilable(T::Array[MetronomeSDK::V1::ContractAmendParams::Credit])
48
+ )
49
+ end
34
50
  attr_reader :credits
35
51
 
36
52
  sig do
37
53
  params(
38
- credits: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Credit, MetronomeSDK::Internal::AnyHash)]
39
- )
40
- .void
54
+ credits:
55
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Credit::OrHash]
56
+ ).void
41
57
  end
42
58
  attr_writer :credits
43
59
 
@@ -48,14 +64,18 @@ module MetronomeSDK
48
64
  attr_writer :custom_fields
49
65
 
50
66
  # This field's availability is dependent on your client's configuration.
51
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Discount])) }
67
+ sig do
68
+ returns(
69
+ T.nilable(T::Array[MetronomeSDK::V1::ContractAmendParams::Discount])
70
+ )
71
+ end
52
72
  attr_reader :discounts
53
73
 
54
74
  sig do
55
75
  params(
56
- discounts: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Discount, MetronomeSDK::Internal::AnyHash)]
57
- )
58
- .void
76
+ discounts:
77
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Discount::OrHash]
78
+ ).void
59
79
  end
60
80
  attr_writer :discounts
61
81
 
@@ -66,38 +86,60 @@ module MetronomeSDK
66
86
  sig { params(netsuite_sales_order_id: String).void }
67
87
  attr_writer :netsuite_sales_order_id
68
88
 
69
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override])) }
89
+ sig do
90
+ returns(
91
+ T.nilable(T::Array[MetronomeSDK::V1::ContractAmendParams::Override])
92
+ )
93
+ end
70
94
  attr_reader :overrides
71
95
 
72
96
  sig do
73
97
  params(
74
- overrides: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Override, MetronomeSDK::Internal::AnyHash)]
75
- )
76
- .void
98
+ overrides:
99
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Override::OrHash]
100
+ ).void
77
101
  end
78
102
  attr_writer :overrides
79
103
 
80
104
  # This field's availability is dependent on your client's configuration.
81
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ProfessionalService])) }
105
+ sig do
106
+ returns(
107
+ T.nilable(
108
+ T::Array[
109
+ MetronomeSDK::V1::ContractAmendParams::ProfessionalService
110
+ ]
111
+ )
112
+ )
113
+ end
82
114
  attr_reader :professional_services
83
115
 
84
116
  sig do
85
117
  params(
86
- professional_services: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::ProfessionalService, MetronomeSDK::Internal::AnyHash)]
87
- )
88
- .void
118
+ professional_services:
119
+ T::Array[
120
+ MetronomeSDK::V1::ContractAmendParams::ProfessionalService::OrHash
121
+ ]
122
+ ).void
89
123
  end
90
124
  attr_writer :professional_services
91
125
 
92
126
  # This field's availability is dependent on your client's configuration.
93
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty])) }
127
+ sig do
128
+ returns(
129
+ T.nilable(
130
+ T::Array[MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty]
131
+ )
132
+ )
133
+ end
94
134
  attr_reader :reseller_royalties
95
135
 
96
136
  sig do
97
137
  params(
98
- reseller_royalties: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty, MetronomeSDK::Internal::AnyHash)]
99
- )
100
- .void
138
+ reseller_royalties:
139
+ T::Array[
140
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::OrHash
141
+ ]
142
+ ).void
101
143
  end
102
144
  attr_writer :reseller_royalties
103
145
 
@@ -108,14 +150,22 @@ module MetronomeSDK
108
150
  sig { params(salesforce_opportunity_id: String).void }
109
151
  attr_writer :salesforce_opportunity_id
110
152
 
111
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge])) }
153
+ sig do
154
+ returns(
155
+ T.nilable(
156
+ T::Array[MetronomeSDK::V1::ContractAmendParams::ScheduledCharge]
157
+ )
158
+ )
159
+ end
112
160
  attr_reader :scheduled_charges
113
161
 
114
162
  sig do
115
163
  params(
116
- scheduled_charges: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge, MetronomeSDK::Internal::AnyHash)]
117
- )
118
- .void
164
+ scheduled_charges:
165
+ T::Array[
166
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::OrHash
167
+ ]
168
+ ).void
119
169
  end
120
170
  attr_writer :scheduled_charges
121
171
 
@@ -131,20 +181,32 @@ module MetronomeSDK
131
181
  contract_id: String,
132
182
  customer_id: String,
133
183
  starting_at: Time,
134
- commits: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Commit, MetronomeSDK::Internal::AnyHash)],
135
- credits: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Credit, MetronomeSDK::Internal::AnyHash)],
184
+ commits:
185
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Commit::OrHash],
186
+ credits:
187
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Credit::OrHash],
136
188
  custom_fields: T::Hash[Symbol, String],
137
- discounts: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Discount, MetronomeSDK::Internal::AnyHash)],
189
+ discounts:
190
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Discount::OrHash],
138
191
  netsuite_sales_order_id: String,
139
- overrides: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Override, MetronomeSDK::Internal::AnyHash)],
140
- professional_services: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::ProfessionalService, MetronomeSDK::Internal::AnyHash)],
141
- reseller_royalties: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty, MetronomeSDK::Internal::AnyHash)],
192
+ overrides:
193
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Override::OrHash],
194
+ professional_services:
195
+ T::Array[
196
+ MetronomeSDK::V1::ContractAmendParams::ProfessionalService::OrHash
197
+ ],
198
+ reseller_royalties:
199
+ T::Array[
200
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::OrHash
201
+ ],
142
202
  salesforce_opportunity_id: String,
143
- scheduled_charges: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge, MetronomeSDK::Internal::AnyHash)],
203
+ scheduled_charges:
204
+ T::Array[
205
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::OrHash
206
+ ],
144
207
  total_contract_value: Float,
145
- request_options: T.any(MetronomeSDK::RequestOptions, MetronomeSDK::Internal::AnyHash)
146
- )
147
- .returns(T.attached_class)
208
+ request_options: MetronomeSDK::RequestOptions::OrHash
209
+ ).returns(T.attached_class)
148
210
  end
149
211
  def self.new(
150
212
  # ID of the contract to amend
@@ -171,52 +233,80 @@ module MetronomeSDK
171
233
  # This field's availability is dependent on your client's configuration.
172
234
  total_contract_value: nil,
173
235
  request_options: {}
174
- ); end
236
+ )
237
+ end
238
+
175
239
  sig do
176
- override
177
- .returns(
178
- {
179
- contract_id: String,
180
- customer_id: String,
181
- starting_at: Time,
182
- commits: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit],
183
- credits: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Credit],
184
- custom_fields: T::Hash[Symbol, String],
185
- discounts: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Discount],
186
- netsuite_sales_order_id: String,
187
- overrides: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override],
188
- professional_services: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ProfessionalService],
189
- reseller_royalties: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty],
190
- salesforce_opportunity_id: String,
191
- scheduled_charges: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge],
192
- total_contract_value: Float,
193
- request_options: MetronomeSDK::RequestOptions
194
- }
195
- )
240
+ override.returns(
241
+ {
242
+ contract_id: String,
243
+ customer_id: String,
244
+ starting_at: Time,
245
+ commits: T::Array[MetronomeSDK::V1::ContractAmendParams::Commit],
246
+ credits: T::Array[MetronomeSDK::V1::ContractAmendParams::Credit],
247
+ custom_fields: T::Hash[Symbol, String],
248
+ discounts:
249
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Discount],
250
+ netsuite_sales_order_id: String,
251
+ overrides:
252
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Override],
253
+ professional_services:
254
+ T::Array[
255
+ MetronomeSDK::V1::ContractAmendParams::ProfessionalService
256
+ ],
257
+ reseller_royalties:
258
+ T::Array[
259
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty
260
+ ],
261
+ salesforce_opportunity_id: String,
262
+ scheduled_charges:
263
+ T::Array[
264
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge
265
+ ],
266
+ total_contract_value: Float,
267
+ request_options: MetronomeSDK::RequestOptions
268
+ }
269
+ )
270
+ end
271
+ def to_hash
196
272
  end
197
- def to_hash; end
198
273
 
199
274
  class Commit < MetronomeSDK::Internal::Type::BaseModel
275
+ OrHash =
276
+ T.type_alias do
277
+ T.any(
278
+ MetronomeSDK::V1::ContractAmendParams::Commit,
279
+ MetronomeSDK::Internal::AnyHash
280
+ )
281
+ end
282
+
200
283
  sig { returns(String) }
201
284
  attr_accessor :product_id
202
285
 
203
- sig { returns(MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type::OrSymbol) }
286
+ sig do
287
+ returns(
288
+ MetronomeSDK::V1::ContractAmendParams::Commit::Type::OrSymbol
289
+ )
290
+ end
204
291
  attr_accessor :type
205
292
 
206
293
  # Required: Schedule for distributing the commit to the customer. For "POSTPAID"
207
294
  # commits only one schedule item is allowed and amount must match invoice_schedule
208
295
  # total.
209
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule)) }
296
+ sig do
297
+ returns(
298
+ T.nilable(
299
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule
300
+ )
301
+ )
302
+ end
210
303
  attr_reader :access_schedule
211
304
 
212
305
  sig do
213
306
  params(
214
- access_schedule: T.any(
215
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule,
216
- MetronomeSDK::Internal::AnyHash
217
- )
218
- )
219
- .void
307
+ access_schedule:
308
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::OrHash
309
+ ).void
220
310
  end
221
311
  attr_writer :access_schedule
222
312
 
@@ -260,17 +350,20 @@ module MetronomeSDK
260
350
  # time and only one schedule item is allowed; the total must match access_schedule
261
351
  # amount. Optional for "PREPAID" commits: if not provided, this will be a
262
352
  # "complimentary" commit with no invoice.
263
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule)) }
353
+ sig do
354
+ returns(
355
+ T.nilable(
356
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule
357
+ )
358
+ )
359
+ end
264
360
  attr_reader :invoice_schedule
265
361
 
266
362
  sig do
267
363
  params(
268
- invoice_schedule: T.any(
269
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule,
270
- MetronomeSDK::Internal::AnyHash
271
- )
272
- )
273
- .void
364
+ invoice_schedule:
365
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::OrHash
366
+ ).void
274
367
  end
275
368
  attr_writer :invoice_schedule
276
369
 
@@ -289,17 +382,20 @@ module MetronomeSDK
289
382
  attr_writer :netsuite_sales_order_id
290
383
 
291
384
  # optionally payment gate this commit
292
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig)) }
385
+ sig do
386
+ returns(
387
+ T.nilable(
388
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig
389
+ )
390
+ )
391
+ end
293
392
  attr_reader :payment_gate_config
294
393
 
295
394
  sig do
296
395
  params(
297
- payment_gate_config: T.any(
298
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig,
299
- MetronomeSDK::Internal::AnyHash
300
- )
301
- )
302
- .void
396
+ payment_gate_config:
397
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::OrHash
398
+ ).void
303
399
  end
304
400
  attr_writer :payment_gate_config
305
401
 
@@ -311,10 +407,21 @@ module MetronomeSDK
311
407
  sig { params(priority: Float).void }
312
408
  attr_writer :priority
313
409
 
314
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType::OrSymbol)) }
410
+ sig do
411
+ returns(
412
+ T.nilable(
413
+ MetronomeSDK::V1::ContractAmendParams::Commit::RateType::OrSymbol
414
+ )
415
+ )
416
+ end
315
417
  attr_reader :rate_type
316
418
 
317
- sig { params(rate_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType::OrSymbol).void }
419
+ sig do
420
+ params(
421
+ rate_type:
422
+ MetronomeSDK::V1::ContractAmendParams::Commit::RateType::OrSymbol
423
+ ).void
424
+ end
318
425
  attr_writer :rate_type
319
426
 
320
427
  # Fraction of unused segments that will be rolled over. Must be between 0 and 1.
@@ -324,6 +431,31 @@ module MetronomeSDK
324
431
  sig { params(rollover_fraction: Float).void }
325
432
  attr_writer :rollover_fraction
326
433
 
434
+ # List of filters that determine what kind of customer usage draws down a commit
435
+ # or credit. A customer's usage needs to meet the condition of at least one of the
436
+ # specifiers to contribute to a commit's or credit's drawdown. This field cannot
437
+ # be used together with `applicable_product_ids` or `applicable_product_tags`.
438
+ sig do
439
+ returns(
440
+ T.nilable(
441
+ T::Array[
442
+ MetronomeSDK::V1::ContractAmendParams::Commit::Specifier
443
+ ]
444
+ )
445
+ )
446
+ end
447
+ attr_reader :specifiers
448
+
449
+ sig do
450
+ params(
451
+ specifiers:
452
+ T::Array[
453
+ MetronomeSDK::V1::ContractAmendParams::Commit::Specifier::OrHash
454
+ ]
455
+ ).void
456
+ end
457
+ attr_writer :specifiers
458
+
327
459
  # A temporary ID for the commit that can be used to reference the commit for
328
460
  # commit specific overrides.
329
461
  sig { returns(T.nilable(String)) }
@@ -335,32 +467,31 @@ module MetronomeSDK
335
467
  sig do
336
468
  params(
337
469
  product_id: String,
338
- type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type::OrSymbol,
339
- access_schedule: T.any(
340
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule,
341
- MetronomeSDK::Internal::AnyHash
342
- ),
470
+ type:
471
+ MetronomeSDK::V1::ContractAmendParams::Commit::Type::OrSymbol,
472
+ access_schedule:
473
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::OrHash,
343
474
  amount: Float,
344
475
  applicable_product_ids: T::Array[String],
345
476
  applicable_product_tags: T::Array[String],
346
477
  custom_fields: T::Hash[Symbol, String],
347
478
  description: String,
348
- invoice_schedule: T.any(
349
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule,
350
- MetronomeSDK::Internal::AnyHash
351
- ),
479
+ invoice_schedule:
480
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::OrHash,
352
481
  name: String,
353
482
  netsuite_sales_order_id: String,
354
- payment_gate_config: T.any(
355
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig,
356
- MetronomeSDK::Internal::AnyHash
357
- ),
483
+ payment_gate_config:
484
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::OrHash,
358
485
  priority: Float,
359
- rate_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType::OrSymbol,
486
+ rate_type:
487
+ MetronomeSDK::V1::ContractAmendParams::Commit::RateType::OrSymbol,
360
488
  rollover_fraction: Float,
489
+ specifiers:
490
+ T::Array[
491
+ MetronomeSDK::V1::ContractAmendParams::Commit::Specifier::OrHash
492
+ ],
361
493
  temporary_id: String
362
- )
363
- .returns(T.attached_class)
494
+ ).returns(T.attached_class)
364
495
  end
365
496
  def self.new(
366
497
  product_id:,
@@ -397,51 +528,101 @@ module MetronomeSDK
397
528
  rate_type: nil,
398
529
  # Fraction of unused segments that will be rolled over. Must be between 0 and 1.
399
530
  rollover_fraction: nil,
531
+ # List of filters that determine what kind of customer usage draws down a commit
532
+ # or credit. A customer's usage needs to meet the condition of at least one of the
533
+ # specifiers to contribute to a commit's or credit's drawdown. This field cannot
534
+ # be used together with `applicable_product_ids` or `applicable_product_tags`.
535
+ specifiers: nil,
400
536
  # A temporary ID for the commit that can be used to reference the commit for
401
537
  # commit specific overrides.
402
538
  temporary_id: nil
403
- ); end
539
+ )
540
+ end
541
+
404
542
  sig do
405
- override
406
- .returns(
407
- {
408
- product_id: String,
409
- type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type::OrSymbol,
410
- access_schedule: MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule,
411
- amount: Float,
412
- applicable_product_ids: T::Array[String],
413
- applicable_product_tags: T::Array[String],
414
- custom_fields: T::Hash[Symbol, String],
415
- description: String,
416
- invoice_schedule: MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule,
417
- name: String,
418
- netsuite_sales_order_id: String,
419
- payment_gate_config: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig,
420
- priority: Float,
421
- rate_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType::OrSymbol,
422
- rollover_fraction: Float,
423
- temporary_id: String
424
- }
425
- )
543
+ override.returns(
544
+ {
545
+ product_id: String,
546
+ type:
547
+ MetronomeSDK::V1::ContractAmendParams::Commit::Type::OrSymbol,
548
+ access_schedule:
549
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule,
550
+ amount: Float,
551
+ applicable_product_ids: T::Array[String],
552
+ applicable_product_tags: T::Array[String],
553
+ custom_fields: T::Hash[Symbol, String],
554
+ description: String,
555
+ invoice_schedule:
556
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule,
557
+ name: String,
558
+ netsuite_sales_order_id: String,
559
+ payment_gate_config:
560
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig,
561
+ priority: Float,
562
+ rate_type:
563
+ MetronomeSDK::V1::ContractAmendParams::Commit::RateType::OrSymbol,
564
+ rollover_fraction: Float,
565
+ specifiers:
566
+ T::Array[
567
+ MetronomeSDK::V1::ContractAmendParams::Commit::Specifier
568
+ ],
569
+ temporary_id: String
570
+ }
571
+ )
572
+ end
573
+ def to_hash
426
574
  end
427
- def to_hash; end
428
575
 
429
576
  module Type
430
577
  extend MetronomeSDK::Internal::Type::Enum
431
578
 
432
579
  TaggedSymbol =
433
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type) }
580
+ T.type_alias do
581
+ T.all(
582
+ Symbol,
583
+ MetronomeSDK::V1::ContractAmendParams::Commit::Type
584
+ )
585
+ end
434
586
  OrSymbol = T.type_alias { T.any(Symbol, String) }
435
587
 
436
- PREPAID = T.let(:PREPAID, MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type::TaggedSymbol)
437
- POSTPAID = T.let(:POSTPAID, MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type::TaggedSymbol)
588
+ PREPAID =
589
+ T.let(
590
+ :PREPAID,
591
+ MetronomeSDK::V1::ContractAmendParams::Commit::Type::TaggedSymbol
592
+ )
593
+ POSTPAID =
594
+ T.let(
595
+ :POSTPAID,
596
+ MetronomeSDK::V1::ContractAmendParams::Commit::Type::TaggedSymbol
597
+ )
438
598
 
439
- sig { override.returns(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::Type::TaggedSymbol]) }
440
- def self.values; end
599
+ sig do
600
+ override.returns(
601
+ T::Array[
602
+ MetronomeSDK::V1::ContractAmendParams::Commit::Type::TaggedSymbol
603
+ ]
604
+ )
605
+ end
606
+ def self.values
607
+ end
441
608
  end
442
609
 
443
610
  class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
444
- sig { returns(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem]) }
611
+ OrHash =
612
+ T.type_alias do
613
+ T.any(
614
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule,
615
+ MetronomeSDK::Internal::AnyHash
616
+ )
617
+ end
618
+
619
+ sig do
620
+ returns(
621
+ T::Array[
622
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem
623
+ ]
624
+ )
625
+ end
445
626
  attr_accessor :schedule_items
446
627
 
447
628
  # Defaults to USD (cents) if not passed
@@ -456,33 +637,43 @@ module MetronomeSDK
456
637
  # total.
457
638
  sig do
458
639
  params(
459
- schedule_items: T::Array[
460
- T.any(
461
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem,
462
- MetronomeSDK::Internal::AnyHash
463
- )
464
- ],
640
+ schedule_items:
641
+ T::Array[
642
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem::OrHash
643
+ ],
465
644
  credit_type_id: String
466
- )
467
- .returns(T.attached_class)
645
+ ).returns(T.attached_class)
468
646
  end
469
647
  def self.new(
470
648
  schedule_items:,
471
649
  # Defaults to USD (cents) if not passed
472
650
  credit_type_id: nil
473
- ); end
651
+ )
652
+ end
653
+
474
654
  sig do
475
- override
476
- .returns(
477
- {
478
- schedule_items: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem],
479
- credit_type_id: String
480
- }
481
- )
655
+ override.returns(
656
+ {
657
+ schedule_items:
658
+ T::Array[
659
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem
660
+ ],
661
+ credit_type_id: String
662
+ }
663
+ )
664
+ end
665
+ def to_hash
482
666
  end
483
- def to_hash; end
484
667
 
485
668
  class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
669
+ OrHash =
670
+ T.type_alias do
671
+ T.any(
672
+ MetronomeSDK::V1::ContractAmendParams::Commit::AccessSchedule::ScheduleItem,
673
+ MetronomeSDK::Internal::AnyHash
674
+ )
675
+ end
676
+
486
677
  sig { returns(Float) }
487
678
  attr_accessor :amount
488
679
 
@@ -494,20 +685,41 @@ module MetronomeSDK
494
685
  sig { returns(Time) }
495
686
  attr_accessor :starting_at
496
687
 
497
- sig { params(amount: Float, ending_before: Time, starting_at: Time).returns(T.attached_class) }
688
+ sig do
689
+ params(
690
+ amount: Float,
691
+ ending_before: Time,
692
+ starting_at: Time
693
+ ).returns(T.attached_class)
694
+ end
498
695
  def self.new(
499
696
  amount:,
500
697
  # RFC 3339 timestamp (exclusive)
501
698
  ending_before:,
502
699
  # RFC 3339 timestamp (inclusive)
503
700
  starting_at:
504
- ); end
505
- sig { override.returns({amount: Float, ending_before: Time, starting_at: Time}) }
506
- def to_hash; end
701
+ )
702
+ end
703
+
704
+ sig do
705
+ override.returns(
706
+ { amount: Float, ending_before: Time, starting_at: Time }
707
+ )
708
+ end
709
+ def to_hash
710
+ end
507
711
  end
508
712
  end
509
713
 
510
714
  class InvoiceSchedule < MetronomeSDK::Internal::Type::BaseModel
715
+ OrHash =
716
+ T.type_alias do
717
+ T.any(
718
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule,
719
+ MetronomeSDK::Internal::AnyHash
720
+ )
721
+ end
722
+
511
723
  # Defaults to USD (cents) if not passed.
512
724
  sig { returns(T.nilable(String)) }
513
725
  attr_reader :credit_type_id
@@ -520,40 +732,40 @@ module MetronomeSDK
520
732
  # quantity is inferred to be 1.
521
733
  sig do
522
734
  returns(
523
- T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule)
735
+ T.nilable(
736
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule
737
+ )
524
738
  )
525
739
  end
526
740
  attr_reader :recurring_schedule
527
741
 
528
742
  sig do
529
743
  params(
530
- recurring_schedule: T.any(
531
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule,
532
- MetronomeSDK::Internal::AnyHash
533
- )
534
- )
535
- .void
744
+ recurring_schedule:
745
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::OrHash
746
+ ).void
536
747
  end
537
748
  attr_writer :recurring_schedule
538
749
 
539
750
  # Either provide amount or provide both unit_price and quantity.
540
751
  sig do
541
752
  returns(
542
- T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem])
753
+ T.nilable(
754
+ T::Array[
755
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem
756
+ ]
757
+ )
543
758
  )
544
759
  end
545
760
  attr_reader :schedule_items
546
761
 
547
762
  sig do
548
763
  params(
549
- schedule_items: T::Array[
550
- T.any(
551
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem,
552
- MetronomeSDK::Internal::AnyHash
553
- )
554
- ]
555
- )
556
- .void
764
+ schedule_items:
765
+ T::Array[
766
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem::OrHash
767
+ ]
768
+ ).void
557
769
  end
558
770
  attr_writer :schedule_items
559
771
 
@@ -564,18 +776,13 @@ module MetronomeSDK
564
776
  sig do
565
777
  params(
566
778
  credit_type_id: String,
567
- recurring_schedule: T.any(
568
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule,
569
- MetronomeSDK::Internal::AnyHash
570
- ),
571
- schedule_items: T::Array[
572
- T.any(
573
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem,
574
- MetronomeSDK::Internal::AnyHash
575
- )
576
- ]
577
- )
578
- .returns(T.attached_class)
779
+ recurring_schedule:
780
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::OrHash,
781
+ schedule_items:
782
+ T::Array[
783
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem::OrHash
784
+ ]
785
+ ).returns(T.attached_class)
579
786
  end
580
787
  def self.new(
581
788
  # Defaults to USD (cents) if not passed.
@@ -586,23 +793,37 @@ module MetronomeSDK
586
793
  recurring_schedule: nil,
587
794
  # Either provide amount or provide both unit_price and quantity.
588
795
  schedule_items: nil
589
- ); end
796
+ )
797
+ end
798
+
590
799
  sig do
591
- override
592
- .returns(
593
- {
594
- credit_type_id: String,
595
- recurring_schedule: MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule,
596
- schedule_items: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem]
597
- }
598
- )
800
+ override.returns(
801
+ {
802
+ credit_type_id: String,
803
+ recurring_schedule:
804
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule,
805
+ schedule_items:
806
+ T::Array[
807
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem
808
+ ]
809
+ }
810
+ )
811
+ end
812
+ def to_hash
599
813
  end
600
- def to_hash; end
601
814
 
602
815
  class RecurringSchedule < MetronomeSDK::Internal::Type::BaseModel
816
+ OrHash =
817
+ T.type_alias do
818
+ T.any(
819
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule,
820
+ MetronomeSDK::Internal::AnyHash
821
+ )
822
+ end
823
+
603
824
  sig do
604
825
  returns(
605
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::OrSymbol
826
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::OrSymbol
606
827
  )
607
828
  end
608
829
  attr_accessor :amount_distribution
@@ -613,7 +834,7 @@ module MetronomeSDK
613
834
 
614
835
  sig do
615
836
  returns(
616
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::OrSymbol
837
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::OrSymbol
617
838
  )
618
839
  end
619
840
  attr_accessor :frequency
@@ -654,15 +875,16 @@ module MetronomeSDK
654
875
  # quantity is inferred to be 1.
655
876
  sig do
656
877
  params(
657
- amount_distribution: MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::OrSymbol,
878
+ amount_distribution:
879
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::OrSymbol,
658
880
  ending_before: Time,
659
- frequency: MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::OrSymbol,
881
+ frequency:
882
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::OrSymbol,
660
883
  starting_at: Time,
661
884
  amount: Float,
662
885
  quantity: Float,
663
886
  unit_price: Float
664
- )
665
- .returns(T.attached_class)
887
+ ).returns(T.attached_class)
666
888
  end
667
889
  def self.new(
668
890
  amount_distribution:,
@@ -683,57 +905,64 @@ module MetronomeSDK
683
905
  # amount and must be specified with quantity. If specified amount cannot be
684
906
  # provided.
685
907
  unit_price: nil
686
- ); end
908
+ )
909
+ end
910
+
687
911
  sig do
688
- override
689
- .returns(
690
- {
691
- amount_distribution: MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::OrSymbol,
692
- ending_before: Time,
693
- frequency: MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::OrSymbol,
694
- starting_at: Time,
695
- amount: Float,
696
- quantity: Float,
697
- unit_price: Float
698
- }
699
- )
912
+ override.returns(
913
+ {
914
+ amount_distribution:
915
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::OrSymbol,
916
+ ending_before: Time,
917
+ frequency:
918
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::OrSymbol,
919
+ starting_at: Time,
920
+ amount: Float,
921
+ quantity: Float,
922
+ unit_price: Float
923
+ }
924
+ )
925
+ end
926
+ def to_hash
700
927
  end
701
- def to_hash; end
702
928
 
703
929
  module AmountDistribution
704
930
  extend MetronomeSDK::Internal::Type::Enum
705
931
 
706
932
  TaggedSymbol =
707
933
  T.type_alias do
708
- T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution)
934
+ T.all(
935
+ Symbol,
936
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution
937
+ )
709
938
  end
710
939
  OrSymbol = T.type_alias { T.any(Symbol, String) }
711
940
 
712
941
  DIVIDED =
713
942
  T.let(
714
943
  :DIVIDED,
715
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::TaggedSymbol
944
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::TaggedSymbol
716
945
  )
717
946
  DIVIDED_ROUNDED =
718
947
  T.let(
719
948
  :DIVIDED_ROUNDED,
720
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::TaggedSymbol
949
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::TaggedSymbol
721
950
  )
722
951
  EACH =
723
952
  T.let(
724
953
  :EACH,
725
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::TaggedSymbol
954
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::TaggedSymbol
726
955
  )
727
956
 
728
957
  sig do
729
- override
730
- .returns(
731
- T::Array[
732
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::TaggedSymbol
733
- ]
734
- )
958
+ override.returns(
959
+ T::Array[
960
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution::TaggedSymbol
961
+ ]
962
+ )
963
+ end
964
+ def self.values
735
965
  end
736
- def self.values; end
737
966
  end
738
967
 
739
968
  module Frequency
@@ -741,44 +970,55 @@ module MetronomeSDK
741
970
 
742
971
  TaggedSymbol =
743
972
  T.type_alias do
744
- T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency)
973
+ T.all(
974
+ Symbol,
975
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency
976
+ )
745
977
  end
746
978
  OrSymbol = T.type_alias { T.any(Symbol, String) }
747
979
 
748
980
  MONTHLY =
749
981
  T.let(
750
982
  :MONTHLY,
751
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
983
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
752
984
  )
753
985
  QUARTERLY =
754
986
  T.let(
755
987
  :QUARTERLY,
756
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
988
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
757
989
  )
758
990
  SEMI_ANNUAL =
759
991
  T.let(
760
992
  :SEMI_ANNUAL,
761
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
993
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
762
994
  )
763
995
  ANNUAL =
764
996
  T.let(
765
997
  :ANNUAL,
766
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
998
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
767
999
  )
768
1000
 
769
1001
  sig do
770
- override
771
- .returns(
772
- T::Array[
773
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
774
- ]
775
- )
1002
+ override.returns(
1003
+ T::Array[
1004
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency::TaggedSymbol
1005
+ ]
1006
+ )
1007
+ end
1008
+ def self.values
776
1009
  end
777
- def self.values; end
778
1010
  end
779
1011
  end
780
1012
 
781
1013
  class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1014
+ OrHash =
1015
+ T.type_alias do
1016
+ T.any(
1017
+ MetronomeSDK::V1::ContractAmendParams::Commit::InvoiceSchedule::ScheduleItem,
1018
+ MetronomeSDK::Internal::AnyHash
1019
+ )
1020
+ end
1021
+
782
1022
  # timestamp of the scheduled event
783
1023
  sig { returns(Time) }
784
1024
  attr_accessor :timestamp
@@ -833,36 +1073,59 @@ module MetronomeSDK
833
1073
  # amount and must be specified with quantity. If specified amount cannot be
834
1074
  # provided.
835
1075
  unit_price: nil
836
- ); end
837
- sig { override.returns({timestamp: Time, amount: Float, quantity: Float, unit_price: Float}) }
838
- def to_hash; end
1076
+ )
1077
+ end
1078
+
1079
+ sig do
1080
+ override.returns(
1081
+ {
1082
+ timestamp: Time,
1083
+ amount: Float,
1084
+ quantity: Float,
1085
+ unit_price: Float
1086
+ }
1087
+ )
1088
+ end
1089
+ def to_hash
1090
+ end
839
1091
  end
840
1092
  end
841
1093
 
842
1094
  class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
843
- # Gate access to the commit balance based on successful collection of payment.
844
- # Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
1095
+ OrHash =
1096
+ T.type_alias do
1097
+ T.any(
1098
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig,
1099
+ MetronomeSDK::Internal::AnyHash
1100
+ )
1101
+ end
1102
+
1103
+ # Gate access to the commit balance based on successful collection of payment.
1104
+ # Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
845
1105
  # facilitate payment using your own payment integration. Select NONE if you do not
846
1106
  # wish to payment gate the commit balance.
847
1107
  sig do
848
1108
  returns(
849
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::OrSymbol
1109
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::OrSymbol
850
1110
  )
851
1111
  end
852
1112
  attr_accessor :payment_gate_type
853
1113
 
854
1114
  # Only applicable if using Stripe as your payment gateway through Metronome.
855
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig)) }
1115
+ sig do
1116
+ returns(
1117
+ T.nilable(
1118
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig
1119
+ )
1120
+ )
1121
+ end
856
1122
  attr_reader :stripe_config
857
1123
 
858
1124
  sig do
859
1125
  params(
860
- stripe_config: T.any(
861
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig,
862
- MetronomeSDK::Internal::AnyHash
863
- )
864
- )
865
- .void
1126
+ stripe_config:
1127
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::OrHash
1128
+ ).void
866
1129
  end
867
1130
  attr_writer :stripe_config
868
1131
 
@@ -871,30 +1134,31 @@ module MetronomeSDK
871
1134
  # will default to NONE.
872
1135
  sig do
873
1136
  returns(
874
- T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::OrSymbol)
1137
+ T.nilable(
1138
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::OrSymbol
1139
+ )
875
1140
  )
876
1141
  end
877
1142
  attr_reader :tax_type
878
1143
 
879
1144
  sig do
880
1145
  params(
881
- tax_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::OrSymbol
882
- )
883
- .void
1146
+ tax_type:
1147
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::OrSymbol
1148
+ ).void
884
1149
  end
885
1150
  attr_writer :tax_type
886
1151
 
887
1152
  # optionally payment gate this commit
888
1153
  sig do
889
1154
  params(
890
- payment_gate_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::OrSymbol,
891
- stripe_config: T.any(
892
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig,
893
- MetronomeSDK::Internal::AnyHash
894
- ),
895
- tax_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::OrSymbol
896
- )
897
- .returns(T.attached_class)
1155
+ payment_gate_type:
1156
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::OrSymbol,
1157
+ stripe_config:
1158
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::OrHash,
1159
+ tax_type:
1160
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::OrSymbol
1161
+ ).returns(T.attached_class)
898
1162
  end
899
1163
  def self.new(
900
1164
  # Gate access to the commit balance based on successful collection of payment.
@@ -908,18 +1172,23 @@ module MetronomeSDK
908
1172
  # not wish Metronome to calculate tax on your behalf. Leaving this field blank
909
1173
  # will default to NONE.
910
1174
  tax_type: nil
911
- ); end
1175
+ )
1176
+ end
1177
+
912
1178
  sig do
913
- override
914
- .returns(
915
- {
916
- payment_gate_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::OrSymbol,
917
- stripe_config: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig,
918
- tax_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::OrSymbol
919
- }
920
- )
1179
+ override.returns(
1180
+ {
1181
+ payment_gate_type:
1182
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::OrSymbol,
1183
+ stripe_config:
1184
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig,
1185
+ tax_type:
1186
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::OrSymbol
1187
+ }
1188
+ )
1189
+ end
1190
+ def to_hash
921
1191
  end
922
- def to_hash; end
923
1192
 
924
1193
  # Gate access to the commit balance based on successful collection of payment.
925
1194
  # Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
@@ -929,39 +1198,54 @@ module MetronomeSDK
929
1198
  extend MetronomeSDK::Internal::Type::Enum
930
1199
 
931
1200
  TaggedSymbol =
932
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType) }
1201
+ T.type_alias do
1202
+ T.all(
1203
+ Symbol,
1204
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType
1205
+ )
1206
+ end
933
1207
  OrSymbol = T.type_alias { T.any(Symbol, String) }
934
1208
 
935
1209
  NONE =
936
1210
  T.let(
937
1211
  :NONE,
938
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::TaggedSymbol
1212
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::TaggedSymbol
939
1213
  )
940
1214
  STRIPE =
941
1215
  T.let(
942
1216
  :STRIPE,
943
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::TaggedSymbol
1217
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::TaggedSymbol
944
1218
  )
945
1219
  EXTERNAL =
946
1220
  T.let(
947
1221
  :EXTERNAL,
948
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::TaggedSymbol
1222
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::TaggedSymbol
949
1223
  )
950
1224
 
951
1225
  sig do
952
- override
953
- .returns(
954
- T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::TaggedSymbol]
955
- )
1226
+ override.returns(
1227
+ T::Array[
1228
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::PaymentGateType::TaggedSymbol
1229
+ ]
1230
+ )
1231
+ end
1232
+ def self.values
956
1233
  end
957
- def self.values; end
958
1234
  end
959
1235
 
960
1236
  class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
1237
+ OrHash =
1238
+ T.type_alias do
1239
+ T.any(
1240
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig,
1241
+ MetronomeSDK::Internal::AnyHash
1242
+ )
1243
+ end
1244
+
961
1245
  # If left blank, will default to INVOICE
962
1246
  sig do
963
1247
  returns(
964
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
1248
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
965
1249
  )
966
1250
  end
967
1251
  attr_accessor :payment_type
@@ -969,23 +1253,26 @@ module MetronomeSDK
969
1253
  # Only applicable if using Stripe as your payment gateway through Metronome.
970
1254
  sig do
971
1255
  params(
972
- payment_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
973
- )
974
- .returns(T.attached_class)
1256
+ payment_type:
1257
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
1258
+ ).returns(T.attached_class)
975
1259
  end
976
1260
  def self.new(
977
1261
  # If left blank, will default to INVOICE
978
1262
  payment_type:
979
- ); end
1263
+ )
1264
+ end
1265
+
980
1266
  sig do
981
- override
982
- .returns(
983
- {
984
- payment_type: MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
985
- }
986
- )
1267
+ override.returns(
1268
+ {
1269
+ payment_type:
1270
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
1271
+ }
1272
+ )
1273
+ end
1274
+ def to_hash
987
1275
  end
988
- def to_hash; end
989
1276
 
990
1277
  # If left blank, will default to INVOICE
991
1278
  module PaymentType
@@ -993,30 +1280,33 @@ module MetronomeSDK
993
1280
 
994
1281
  TaggedSymbol =
995
1282
  T.type_alias do
996
- T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType)
1283
+ T.all(
1284
+ Symbol,
1285
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType
1286
+ )
997
1287
  end
998
1288
  OrSymbol = T.type_alias { T.any(Symbol, String) }
999
1289
 
1000
1290
  INVOICE =
1001
1291
  T.let(
1002
1292
  :INVOICE,
1003
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
1293
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
1004
1294
  )
1005
1295
  PAYMENT_INTENT =
1006
1296
  T.let(
1007
1297
  :PAYMENT_INTENT,
1008
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
1298
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
1009
1299
  )
1010
1300
 
1011
1301
  sig do
1012
- override
1013
- .returns(
1014
- T::Array[
1015
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
1016
- ]
1017
- )
1302
+ override.returns(
1303
+ T::Array[
1304
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
1305
+ ]
1306
+ )
1307
+ end
1308
+ def self.values
1018
1309
  end
1019
- def self.values; end
1020
1310
  end
1021
1311
  end
1022
1312
 
@@ -1027,27 +1317,34 @@ module MetronomeSDK
1027
1317
  extend MetronomeSDK::Internal::Type::Enum
1028
1318
 
1029
1319
  TaggedSymbol =
1030
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType) }
1320
+ T.type_alias do
1321
+ T.all(
1322
+ Symbol,
1323
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType
1324
+ )
1325
+ end
1031
1326
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1032
1327
 
1033
1328
  NONE =
1034
1329
  T.let(
1035
1330
  :NONE,
1036
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol
1331
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol
1037
1332
  )
1038
1333
  STRIPE =
1039
1334
  T.let(
1040
1335
  :STRIPE,
1041
- MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol
1336
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol
1042
1337
  )
1043
1338
 
1044
1339
  sig do
1045
- override
1046
- .returns(
1047
- T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol]
1048
- )
1340
+ override.returns(
1341
+ T::Array[
1342
+ MetronomeSDK::V1::ContractAmendParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol
1343
+ ]
1344
+ )
1345
+ end
1346
+ def self.values
1049
1347
  end
1050
- def self.values; end
1051
1348
  end
1052
1349
  end
1053
1350
 
@@ -1055,32 +1352,130 @@ module MetronomeSDK
1055
1352
  extend MetronomeSDK::Internal::Type::Enum
1056
1353
 
1057
1354
  TaggedSymbol =
1058
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType) }
1355
+ T.type_alias do
1356
+ T.all(
1357
+ Symbol,
1358
+ MetronomeSDK::V1::ContractAmendParams::Commit::RateType
1359
+ )
1360
+ end
1059
1361
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1060
1362
 
1061
1363
  COMMIT_RATE =
1062
- T.let(:COMMIT_RATE, MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType::TaggedSymbol)
1364
+ T.let(
1365
+ :COMMIT_RATE,
1366
+ MetronomeSDK::V1::ContractAmendParams::Commit::RateType::TaggedSymbol
1367
+ )
1063
1368
  LIST_RATE =
1064
- T.let(:LIST_RATE, MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType::TaggedSymbol)
1369
+ T.let(
1370
+ :LIST_RATE,
1371
+ MetronomeSDK::V1::ContractAmendParams::Commit::RateType::TaggedSymbol
1372
+ )
1065
1373
 
1066
- sig { override.returns(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::RateType::TaggedSymbol]) }
1067
- def self.values; end
1374
+ sig do
1375
+ override.returns(
1376
+ T::Array[
1377
+ MetronomeSDK::V1::ContractAmendParams::Commit::RateType::TaggedSymbol
1378
+ ]
1379
+ )
1380
+ end
1381
+ def self.values
1382
+ end
1383
+ end
1384
+
1385
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
1386
+ OrHash =
1387
+ T.type_alias do
1388
+ T.any(
1389
+ MetronomeSDK::V1::ContractAmendParams::Commit::Specifier,
1390
+ MetronomeSDK::Internal::AnyHash
1391
+ )
1392
+ end
1393
+
1394
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1395
+ attr_reader :presentation_group_values
1396
+
1397
+ sig do
1398
+ params(presentation_group_values: T::Hash[Symbol, String]).void
1399
+ end
1400
+ attr_writer :presentation_group_values
1401
+
1402
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1403
+ attr_reader :pricing_group_values
1404
+
1405
+ sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
1406
+ attr_writer :pricing_group_values
1407
+
1408
+ # If provided, the specifier will only apply to the product with the specified ID.
1409
+ sig { returns(T.nilable(String)) }
1410
+ attr_reader :product_id
1411
+
1412
+ sig { params(product_id: String).void }
1413
+ attr_writer :product_id
1414
+
1415
+ # If provided, the specifier will only apply to products with all the specified
1416
+ # tags.
1417
+ sig { returns(T.nilable(T::Array[String])) }
1418
+ attr_reader :product_tags
1419
+
1420
+ sig { params(product_tags: T::Array[String]).void }
1421
+ attr_writer :product_tags
1422
+
1423
+ sig do
1424
+ params(
1425
+ presentation_group_values: T::Hash[Symbol, String],
1426
+ pricing_group_values: T::Hash[Symbol, String],
1427
+ product_id: String,
1428
+ product_tags: T::Array[String]
1429
+ ).returns(T.attached_class)
1430
+ end
1431
+ def self.new(
1432
+ presentation_group_values: nil,
1433
+ pricing_group_values: nil,
1434
+ # If provided, the specifier will only apply to the product with the specified ID.
1435
+ product_id: nil,
1436
+ # If provided, the specifier will only apply to products with all the specified
1437
+ # tags.
1438
+ product_tags: nil
1439
+ )
1440
+ end
1441
+
1442
+ sig do
1443
+ override.returns(
1444
+ {
1445
+ presentation_group_values: T::Hash[Symbol, String],
1446
+ pricing_group_values: T::Hash[Symbol, String],
1447
+ product_id: String,
1448
+ product_tags: T::Array[String]
1449
+ }
1450
+ )
1451
+ end
1452
+ def to_hash
1453
+ end
1068
1454
  end
1069
1455
  end
1070
1456
 
1071
1457
  class Credit < MetronomeSDK::Internal::Type::BaseModel
1458
+ OrHash =
1459
+ T.type_alias do
1460
+ T.any(
1461
+ MetronomeSDK::V1::ContractAmendParams::Credit,
1462
+ MetronomeSDK::Internal::AnyHash
1463
+ )
1464
+ end
1465
+
1072
1466
  # Schedule for distributing the credit to the customer.
1073
- sig { returns(MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule) }
1467
+ sig do
1468
+ returns(
1469
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule
1470
+ )
1471
+ end
1074
1472
  attr_reader :access_schedule
1075
1473
 
1076
1474
  sig do
1077
1475
  params(
1078
- access_schedule: T.any(
1079
- MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule,
1080
- MetronomeSDK::Internal::AnyHash
1081
- )
1082
- )
1083
- .void
1476
+ access_schedule:
1477
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::OrHash
1478
+ ).void
1084
1479
  end
1085
1480
  attr_writer :access_schedule
1086
1481
 
@@ -1138,18 +1533,52 @@ module MetronomeSDK
1138
1533
  sig { params(priority: Float).void }
1139
1534
  attr_writer :priority
1140
1535
 
1141
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType::OrSymbol)) }
1536
+ sig do
1537
+ returns(
1538
+ T.nilable(
1539
+ MetronomeSDK::V1::ContractAmendParams::Credit::RateType::OrSymbol
1540
+ )
1541
+ )
1542
+ end
1142
1543
  attr_reader :rate_type
1143
1544
 
1144
- sig { params(rate_type: MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType::OrSymbol).void }
1545
+ sig do
1546
+ params(
1547
+ rate_type:
1548
+ MetronomeSDK::V1::ContractAmendParams::Credit::RateType::OrSymbol
1549
+ ).void
1550
+ end
1145
1551
  attr_writer :rate_type
1146
1552
 
1553
+ # List of filters that determine what kind of customer usage draws down a commit
1554
+ # or credit. A customer's usage needs to meet the condition of at least one of the
1555
+ # specifiers to contribute to a commit's or credit's drawdown. This field cannot
1556
+ # be used together with `applicable_product_ids` or `applicable_product_tags`.
1557
+ sig do
1558
+ returns(
1559
+ T.nilable(
1560
+ T::Array[
1561
+ MetronomeSDK::V1::ContractAmendParams::Credit::Specifier
1562
+ ]
1563
+ )
1564
+ )
1565
+ end
1566
+ attr_reader :specifiers
1567
+
1147
1568
  sig do
1148
1569
  params(
1149
- access_schedule: T.any(
1150
- MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule,
1151
- MetronomeSDK::Internal::AnyHash
1152
- ),
1570
+ specifiers:
1571
+ T::Array[
1572
+ MetronomeSDK::V1::ContractAmendParams::Credit::Specifier::OrHash
1573
+ ]
1574
+ ).void
1575
+ end
1576
+ attr_writer :specifiers
1577
+
1578
+ sig do
1579
+ params(
1580
+ access_schedule:
1581
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::OrHash,
1153
1582
  product_id: String,
1154
1583
  applicable_product_ids: T::Array[String],
1155
1584
  applicable_product_tags: T::Array[String],
@@ -1158,9 +1587,13 @@ module MetronomeSDK
1158
1587
  name: String,
1159
1588
  netsuite_sales_order_id: String,
1160
1589
  priority: Float,
1161
- rate_type: MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType::OrSymbol
1162
- )
1163
- .returns(T.attached_class)
1590
+ rate_type:
1591
+ MetronomeSDK::V1::ContractAmendParams::Credit::RateType::OrSymbol,
1592
+ specifiers:
1593
+ T::Array[
1594
+ MetronomeSDK::V1::ContractAmendParams::Credit::Specifier::OrHash
1595
+ ]
1596
+ ).returns(T.attached_class)
1164
1597
  end
1165
1598
  def self.new(
1166
1599
  # Schedule for distributing the credit to the customer.
@@ -1182,29 +1615,56 @@ module MetronomeSDK
1182
1615
  # If multiple credits are applicable, the one with the lower priority will apply
1183
1616
  # first.
1184
1617
  priority: nil,
1185
- rate_type: nil
1186
- ); end
1618
+ rate_type: nil,
1619
+ # List of filters that determine what kind of customer usage draws down a commit
1620
+ # or credit. A customer's usage needs to meet the condition of at least one of the
1621
+ # specifiers to contribute to a commit's or credit's drawdown. This field cannot
1622
+ # be used together with `applicable_product_ids` or `applicable_product_tags`.
1623
+ specifiers: nil
1624
+ )
1625
+ end
1626
+
1187
1627
  sig do
1188
- override
1189
- .returns(
1190
- {
1191
- access_schedule: MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule,
1192
- product_id: String,
1193
- applicable_product_ids: T::Array[String],
1194
- applicable_product_tags: T::Array[String],
1195
- custom_fields: T::Hash[Symbol, String],
1196
- description: String,
1197
- name: String,
1198
- netsuite_sales_order_id: String,
1199
- priority: Float,
1200
- rate_type: MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType::OrSymbol
1201
- }
1202
- )
1628
+ override.returns(
1629
+ {
1630
+ access_schedule:
1631
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule,
1632
+ product_id: String,
1633
+ applicable_product_ids: T::Array[String],
1634
+ applicable_product_tags: T::Array[String],
1635
+ custom_fields: T::Hash[Symbol, String],
1636
+ description: String,
1637
+ name: String,
1638
+ netsuite_sales_order_id: String,
1639
+ priority: Float,
1640
+ rate_type:
1641
+ MetronomeSDK::V1::ContractAmendParams::Credit::RateType::OrSymbol,
1642
+ specifiers:
1643
+ T::Array[
1644
+ MetronomeSDK::V1::ContractAmendParams::Credit::Specifier
1645
+ ]
1646
+ }
1647
+ )
1648
+ end
1649
+ def to_hash
1203
1650
  end
1204
- def to_hash; end
1205
1651
 
1206
1652
  class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
1207
- sig { returns(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem]) }
1653
+ OrHash =
1654
+ T.type_alias do
1655
+ T.any(
1656
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule,
1657
+ MetronomeSDK::Internal::AnyHash
1658
+ )
1659
+ end
1660
+
1661
+ sig do
1662
+ returns(
1663
+ T::Array[
1664
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem
1665
+ ]
1666
+ )
1667
+ end
1208
1668
  attr_accessor :schedule_items
1209
1669
 
1210
1670
  # Defaults to USD (cents) if not passed
@@ -1217,33 +1677,43 @@ module MetronomeSDK
1217
1677
  # Schedule for distributing the credit to the customer.
1218
1678
  sig do
1219
1679
  params(
1220
- schedule_items: T::Array[
1221
- T.any(
1222
- MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem,
1223
- MetronomeSDK::Internal::AnyHash
1224
- )
1225
- ],
1680
+ schedule_items:
1681
+ T::Array[
1682
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem::OrHash
1683
+ ],
1226
1684
  credit_type_id: String
1227
- )
1228
- .returns(T.attached_class)
1685
+ ).returns(T.attached_class)
1229
1686
  end
1230
1687
  def self.new(
1231
1688
  schedule_items:,
1232
1689
  # Defaults to USD (cents) if not passed
1233
1690
  credit_type_id: nil
1234
- ); end
1691
+ )
1692
+ end
1693
+
1235
1694
  sig do
1236
- override
1237
- .returns(
1238
- {
1239
- schedule_items: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem],
1240
- credit_type_id: String
1241
- }
1242
- )
1695
+ override.returns(
1696
+ {
1697
+ schedule_items:
1698
+ T::Array[
1699
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem
1700
+ ],
1701
+ credit_type_id: String
1702
+ }
1703
+ )
1704
+ end
1705
+ def to_hash
1243
1706
  end
1244
- def to_hash; end
1245
1707
 
1246
1708
  class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1709
+ OrHash =
1710
+ T.type_alias do
1711
+ T.any(
1712
+ MetronomeSDK::V1::ContractAmendParams::Credit::AccessSchedule::ScheduleItem,
1713
+ MetronomeSDK::Internal::AnyHash
1714
+ )
1715
+ end
1716
+
1247
1717
  sig { returns(Float) }
1248
1718
  attr_accessor :amount
1249
1719
 
@@ -1255,49 +1725,161 @@ module MetronomeSDK
1255
1725
  sig { returns(Time) }
1256
1726
  attr_accessor :starting_at
1257
1727
 
1258
- sig { params(amount: Float, ending_before: Time, starting_at: Time).returns(T.attached_class) }
1728
+ sig do
1729
+ params(
1730
+ amount: Float,
1731
+ ending_before: Time,
1732
+ starting_at: Time
1733
+ ).returns(T.attached_class)
1734
+ end
1259
1735
  def self.new(
1260
1736
  amount:,
1261
1737
  # RFC 3339 timestamp (exclusive)
1262
1738
  ending_before:,
1263
1739
  # RFC 3339 timestamp (inclusive)
1264
1740
  starting_at:
1265
- ); end
1266
- sig { override.returns({amount: Float, ending_before: Time, starting_at: Time}) }
1267
- def to_hash; end
1741
+ )
1742
+ end
1743
+
1744
+ sig do
1745
+ override.returns(
1746
+ { amount: Float, ending_before: Time, starting_at: Time }
1747
+ )
1748
+ end
1749
+ def to_hash
1750
+ end
1268
1751
  end
1269
1752
  end
1270
1753
 
1271
1754
  module RateType
1272
1755
  extend MetronomeSDK::Internal::Type::Enum
1273
1756
 
1274
- TaggedSymbol =
1275
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType) }
1276
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1757
+ TaggedSymbol =
1758
+ T.type_alias do
1759
+ T.all(
1760
+ Symbol,
1761
+ MetronomeSDK::V1::ContractAmendParams::Credit::RateType
1762
+ )
1763
+ end
1764
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1765
+
1766
+ COMMIT_RATE =
1767
+ T.let(
1768
+ :COMMIT_RATE,
1769
+ MetronomeSDK::V1::ContractAmendParams::Credit::RateType::TaggedSymbol
1770
+ )
1771
+ LIST_RATE =
1772
+ T.let(
1773
+ :LIST_RATE,
1774
+ MetronomeSDK::V1::ContractAmendParams::Credit::RateType::TaggedSymbol
1775
+ )
1776
+
1777
+ sig do
1778
+ override.returns(
1779
+ T::Array[
1780
+ MetronomeSDK::V1::ContractAmendParams::Credit::RateType::TaggedSymbol
1781
+ ]
1782
+ )
1783
+ end
1784
+ def self.values
1785
+ end
1786
+ end
1787
+
1788
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
1789
+ OrHash =
1790
+ T.type_alias do
1791
+ T.any(
1792
+ MetronomeSDK::V1::ContractAmendParams::Credit::Specifier,
1793
+ MetronomeSDK::Internal::AnyHash
1794
+ )
1795
+ end
1796
+
1797
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1798
+ attr_reader :presentation_group_values
1799
+
1800
+ sig do
1801
+ params(presentation_group_values: T::Hash[Symbol, String]).void
1802
+ end
1803
+ attr_writer :presentation_group_values
1804
+
1805
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1806
+ attr_reader :pricing_group_values
1807
+
1808
+ sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
1809
+ attr_writer :pricing_group_values
1810
+
1811
+ # If provided, the specifier will only apply to the product with the specified ID.
1812
+ sig { returns(T.nilable(String)) }
1813
+ attr_reader :product_id
1814
+
1815
+ sig { params(product_id: String).void }
1816
+ attr_writer :product_id
1817
+
1818
+ # If provided, the specifier will only apply to products with all the specified
1819
+ # tags.
1820
+ sig { returns(T.nilable(T::Array[String])) }
1821
+ attr_reader :product_tags
1822
+
1823
+ sig { params(product_tags: T::Array[String]).void }
1824
+ attr_writer :product_tags
1277
1825
 
1278
- COMMIT_RATE =
1279
- T.let(:COMMIT_RATE, MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType::TaggedSymbol)
1280
- LIST_RATE =
1281
- T.let(:LIST_RATE, MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType::TaggedSymbol)
1826
+ sig do
1827
+ params(
1828
+ presentation_group_values: T::Hash[Symbol, String],
1829
+ pricing_group_values: T::Hash[Symbol, String],
1830
+ product_id: String,
1831
+ product_tags: T::Array[String]
1832
+ ).returns(T.attached_class)
1833
+ end
1834
+ def self.new(
1835
+ presentation_group_values: nil,
1836
+ pricing_group_values: nil,
1837
+ # If provided, the specifier will only apply to the product with the specified ID.
1838
+ product_id: nil,
1839
+ # If provided, the specifier will only apply to products with all the specified
1840
+ # tags.
1841
+ product_tags: nil
1842
+ )
1843
+ end
1282
1844
 
1283
- sig { override.returns(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Credit::RateType::TaggedSymbol]) }
1284
- def self.values; end
1845
+ sig do
1846
+ override.returns(
1847
+ {
1848
+ presentation_group_values: T::Hash[Symbol, String],
1849
+ pricing_group_values: T::Hash[Symbol, String],
1850
+ product_id: String,
1851
+ product_tags: T::Array[String]
1852
+ }
1853
+ )
1854
+ end
1855
+ def to_hash
1856
+ end
1285
1857
  end
1286
1858
  end
1287
1859
 
1288
1860
  class Discount < MetronomeSDK::Internal::Type::BaseModel
1861
+ OrHash =
1862
+ T.type_alias do
1863
+ T.any(
1864
+ MetronomeSDK::V1::ContractAmendParams::Discount,
1865
+ MetronomeSDK::Internal::AnyHash
1866
+ )
1867
+ end
1868
+
1289
1869
  sig { returns(String) }
1290
1870
  attr_accessor :product_id
1291
1871
 
1292
1872
  # Must provide either schedule_items or recurring_schedule.
1293
- sig { returns(MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule) }
1873
+ sig do
1874
+ returns(MetronomeSDK::V1::ContractAmendParams::Discount::Schedule)
1875
+ end
1294
1876
  attr_reader :schedule
1295
1877
 
1296
1878
  sig do
1297
1879
  params(
1298
- schedule: T.any(MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule, MetronomeSDK::Internal::AnyHash)
1299
- )
1300
- .void
1880
+ schedule:
1881
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::OrHash
1882
+ ).void
1301
1883
  end
1302
1884
  attr_writer :schedule
1303
1885
 
@@ -1324,12 +1906,12 @@ module MetronomeSDK
1324
1906
  sig do
1325
1907
  params(
1326
1908
  product_id: String,
1327
- schedule: T.any(MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule, MetronomeSDK::Internal::AnyHash),
1909
+ schedule:
1910
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::OrHash,
1328
1911
  custom_fields: T::Hash[Symbol, String],
1329
1912
  name: String,
1330
1913
  netsuite_sales_order_id: String
1331
- )
1332
- .returns(T.attached_class)
1914
+ ).returns(T.attached_class)
1333
1915
  end
1334
1916
  def self.new(
1335
1917
  product_id:,
@@ -1340,22 +1922,33 @@ module MetronomeSDK
1340
1922
  name: nil,
1341
1923
  # This field's availability is dependent on your client's configuration.
1342
1924
  netsuite_sales_order_id: nil
1343
- ); end
1925
+ )
1926
+ end
1927
+
1344
1928
  sig do
1345
- override
1346
- .returns(
1347
- {
1348
- product_id: String,
1349
- schedule: MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule,
1350
- custom_fields: T::Hash[Symbol, String],
1351
- name: String,
1352
- netsuite_sales_order_id: String
1353
- }
1354
- )
1929
+ override.returns(
1930
+ {
1931
+ product_id: String,
1932
+ schedule:
1933
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule,
1934
+ custom_fields: T::Hash[Symbol, String],
1935
+ name: String,
1936
+ netsuite_sales_order_id: String
1937
+ }
1938
+ )
1939
+ end
1940
+ def to_hash
1355
1941
  end
1356
- def to_hash; end
1357
1942
 
1358
1943
  class Schedule < MetronomeSDK::Internal::Type::BaseModel
1944
+ OrHash =
1945
+ T.type_alias do
1946
+ T.any(
1947
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule,
1948
+ MetronomeSDK::Internal::AnyHash
1949
+ )
1950
+ end
1951
+
1359
1952
  # Defaults to USD (cents) if not passed.
1360
1953
  sig { returns(T.nilable(String)) }
1361
1954
  attr_reader :credit_type_id
@@ -1366,38 +1959,42 @@ module MetronomeSDK
1366
1959
  # Enter the unit price and quantity for the charge or instead only send the
1367
1960
  # amount. If amount is sent, the unit price is assumed to be the amount and
1368
1961
  # quantity is inferred to be 1.
1369
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule)) }
1962
+ sig do
1963
+ returns(
1964
+ T.nilable(
1965
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule
1966
+ )
1967
+ )
1968
+ end
1370
1969
  attr_reader :recurring_schedule
1371
1970
 
1372
1971
  sig do
1373
1972
  params(
1374
- recurring_schedule: T.any(
1375
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule,
1376
- MetronomeSDK::Internal::AnyHash
1377
- )
1378
- )
1379
- .void
1973
+ recurring_schedule:
1974
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::OrHash
1975
+ ).void
1380
1976
  end
1381
1977
  attr_writer :recurring_schedule
1382
1978
 
1383
1979
  # Either provide amount or provide both unit_price and quantity.
1384
1980
  sig do
1385
1981
  returns(
1386
- T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::ScheduleItem])
1982
+ T.nilable(
1983
+ T::Array[
1984
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem
1985
+ ]
1986
+ )
1387
1987
  )
1388
1988
  end
1389
1989
  attr_reader :schedule_items
1390
1990
 
1391
1991
  sig do
1392
1992
  params(
1393
- schedule_items: T::Array[
1394
- T.any(
1395
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::ScheduleItem,
1396
- MetronomeSDK::Internal::AnyHash
1397
- )
1398
- ]
1399
- )
1400
- .void
1993
+ schedule_items:
1994
+ T::Array[
1995
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem::OrHash
1996
+ ]
1997
+ ).void
1401
1998
  end
1402
1999
  attr_writer :schedule_items
1403
2000
 
@@ -1405,18 +2002,13 @@ module MetronomeSDK
1405
2002
  sig do
1406
2003
  params(
1407
2004
  credit_type_id: String,
1408
- recurring_schedule: T.any(
1409
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule,
1410
- MetronomeSDK::Internal::AnyHash
1411
- ),
1412
- schedule_items: T::Array[
1413
- T.any(
1414
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::ScheduleItem,
1415
- MetronomeSDK::Internal::AnyHash
1416
- )
1417
- ]
1418
- )
1419
- .returns(T.attached_class)
2005
+ recurring_schedule:
2006
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::OrHash,
2007
+ schedule_items:
2008
+ T::Array[
2009
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem::OrHash
2010
+ ]
2011
+ ).returns(T.attached_class)
1420
2012
  end
1421
2013
  def self.new(
1422
2014
  # Defaults to USD (cents) if not passed.
@@ -1427,23 +2019,37 @@ module MetronomeSDK
1427
2019
  recurring_schedule: nil,
1428
2020
  # Either provide amount or provide both unit_price and quantity.
1429
2021
  schedule_items: nil
1430
- ); end
2022
+ )
2023
+ end
2024
+
1431
2025
  sig do
1432
- override
1433
- .returns(
1434
- {
1435
- credit_type_id: String,
1436
- recurring_schedule: MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule,
1437
- schedule_items: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::ScheduleItem]
1438
- }
1439
- )
2026
+ override.returns(
2027
+ {
2028
+ credit_type_id: String,
2029
+ recurring_schedule:
2030
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule,
2031
+ schedule_items:
2032
+ T::Array[
2033
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem
2034
+ ]
2035
+ }
2036
+ )
2037
+ end
2038
+ def to_hash
1440
2039
  end
1441
- def to_hash; end
1442
2040
 
1443
2041
  class RecurringSchedule < MetronomeSDK::Internal::Type::BaseModel
2042
+ OrHash =
2043
+ T.type_alias do
2044
+ T.any(
2045
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule,
2046
+ MetronomeSDK::Internal::AnyHash
2047
+ )
2048
+ end
2049
+
1444
2050
  sig do
1445
2051
  returns(
1446
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::OrSymbol
2052
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::OrSymbol
1447
2053
  )
1448
2054
  end
1449
2055
  attr_accessor :amount_distribution
@@ -1454,7 +2060,7 @@ module MetronomeSDK
1454
2060
 
1455
2061
  sig do
1456
2062
  returns(
1457
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::OrSymbol
2063
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::OrSymbol
1458
2064
  )
1459
2065
  end
1460
2066
  attr_accessor :frequency
@@ -1495,15 +2101,16 @@ module MetronomeSDK
1495
2101
  # quantity is inferred to be 1.
1496
2102
  sig do
1497
2103
  params(
1498
- amount_distribution: MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::OrSymbol,
2104
+ amount_distribution:
2105
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::OrSymbol,
1499
2106
  ending_before: Time,
1500
- frequency: MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::OrSymbol,
2107
+ frequency:
2108
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::OrSymbol,
1501
2109
  starting_at: Time,
1502
2110
  amount: Float,
1503
2111
  quantity: Float,
1504
2112
  unit_price: Float
1505
- )
1506
- .returns(T.attached_class)
2113
+ ).returns(T.attached_class)
1507
2114
  end
1508
2115
  def self.new(
1509
2116
  amount_distribution:,
@@ -1524,57 +2131,64 @@ module MetronomeSDK
1524
2131
  # amount and must be specified with quantity. If specified amount cannot be
1525
2132
  # provided.
1526
2133
  unit_price: nil
1527
- ); end
2134
+ )
2135
+ end
2136
+
1528
2137
  sig do
1529
- override
1530
- .returns(
1531
- {
1532
- amount_distribution: MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::OrSymbol,
1533
- ending_before: Time,
1534
- frequency: MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::OrSymbol,
1535
- starting_at: Time,
1536
- amount: Float,
1537
- quantity: Float,
1538
- unit_price: Float
1539
- }
1540
- )
2138
+ override.returns(
2139
+ {
2140
+ amount_distribution:
2141
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::OrSymbol,
2142
+ ending_before: Time,
2143
+ frequency:
2144
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::OrSymbol,
2145
+ starting_at: Time,
2146
+ amount: Float,
2147
+ quantity: Float,
2148
+ unit_price: Float
2149
+ }
2150
+ )
2151
+ end
2152
+ def to_hash
1541
2153
  end
1542
- def to_hash; end
1543
2154
 
1544
2155
  module AmountDistribution
1545
2156
  extend MetronomeSDK::Internal::Type::Enum
1546
2157
 
1547
2158
  TaggedSymbol =
1548
2159
  T.type_alias do
1549
- T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution)
2160
+ T.all(
2161
+ Symbol,
2162
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution
2163
+ )
1550
2164
  end
1551
2165
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1552
2166
 
1553
2167
  DIVIDED =
1554
2168
  T.let(
1555
2169
  :DIVIDED,
1556
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
2170
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
1557
2171
  )
1558
2172
  DIVIDED_ROUNDED =
1559
2173
  T.let(
1560
2174
  :DIVIDED_ROUNDED,
1561
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
2175
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
1562
2176
  )
1563
2177
  EACH =
1564
2178
  T.let(
1565
2179
  :EACH,
1566
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
2180
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
1567
2181
  )
1568
2182
 
1569
2183
  sig do
1570
- override
1571
- .returns(
1572
- T::Array[
1573
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
1574
- ]
1575
- )
2184
+ override.returns(
2185
+ T::Array[
2186
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
2187
+ ]
2188
+ )
2189
+ end
2190
+ def self.values
1576
2191
  end
1577
- def self.values; end
1578
2192
  end
1579
2193
 
1580
2194
  module Frequency
@@ -1582,44 +2196,55 @@ module MetronomeSDK
1582
2196
 
1583
2197
  TaggedSymbol =
1584
2198
  T.type_alias do
1585
- T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency)
2199
+ T.all(
2200
+ Symbol,
2201
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency
2202
+ )
1586
2203
  end
1587
2204
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1588
2205
 
1589
2206
  MONTHLY =
1590
2207
  T.let(
1591
2208
  :MONTHLY,
1592
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2209
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
1593
2210
  )
1594
2211
  QUARTERLY =
1595
2212
  T.let(
1596
2213
  :QUARTERLY,
1597
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2214
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
1598
2215
  )
1599
2216
  SEMI_ANNUAL =
1600
2217
  T.let(
1601
2218
  :SEMI_ANNUAL,
1602
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2219
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
1603
2220
  )
1604
2221
  ANNUAL =
1605
2222
  T.let(
1606
2223
  :ANNUAL,
1607
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2224
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
1608
2225
  )
1609
2226
 
1610
2227
  sig do
1611
- override
1612
- .returns(
1613
- T::Array[
1614
- MetronomeSDK::Models::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
1615
- ]
1616
- )
2228
+ override.returns(
2229
+ T::Array[
2230
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2231
+ ]
2232
+ )
2233
+ end
2234
+ def self.values
1617
2235
  end
1618
- def self.values; end
1619
2236
  end
1620
2237
  end
1621
2238
 
1622
2239
  class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2240
+ OrHash =
2241
+ T.type_alias do
2242
+ T.any(
2243
+ MetronomeSDK::V1::ContractAmendParams::Discount::Schedule::ScheduleItem,
2244
+ MetronomeSDK::Internal::AnyHash
2245
+ )
2246
+ end
2247
+
1623
2248
  # timestamp of the scheduled event
1624
2249
  sig { returns(Time) }
1625
2250
  attr_accessor :timestamp
@@ -1674,14 +2299,34 @@ module MetronomeSDK
1674
2299
  # amount and must be specified with quantity. If specified amount cannot be
1675
2300
  # provided.
1676
2301
  unit_price: nil
1677
- ); end
1678
- sig { override.returns({timestamp: Time, amount: Float, quantity: Float, unit_price: Float}) }
1679
- def to_hash; end
2302
+ )
2303
+ end
2304
+
2305
+ sig do
2306
+ override.returns(
2307
+ {
2308
+ timestamp: Time,
2309
+ amount: Float,
2310
+ quantity: Float,
2311
+ unit_price: Float
2312
+ }
2313
+ )
2314
+ end
2315
+ def to_hash
2316
+ end
1680
2317
  end
1681
2318
  end
1682
2319
  end
1683
2320
 
1684
2321
  class Override < MetronomeSDK::Internal::Type::BaseModel
2322
+ OrHash =
2323
+ T.type_alias do
2324
+ T.any(
2325
+ MetronomeSDK::V1::ContractAmendParams::Override,
2326
+ MetronomeSDK::Internal::AnyHash
2327
+ )
2328
+ end
2329
+
1685
2330
  # RFC 3339 timestamp indicating when the override will start applying (inclusive)
1686
2331
  sig { returns(Time) }
1687
2332
  attr_accessor :starting_at
@@ -1726,34 +2371,42 @@ module MetronomeSDK
1726
2371
 
1727
2372
  # Cannot be used in conjunction with product_id or applicable_product_tags. If
1728
2373
  # provided, the override will apply to all products with the specified specifiers.
1729
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier])) }
2374
+ sig do
2375
+ returns(
2376
+ T.nilable(
2377
+ T::Array[
2378
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier
2379
+ ]
2380
+ )
2381
+ )
2382
+ end
1730
2383
  attr_reader :override_specifiers
1731
2384
 
1732
2385
  sig do
1733
2386
  params(
1734
- override_specifiers: T::Array[
1735
- T.any(
1736
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier,
1737
- MetronomeSDK::Internal::AnyHash
1738
- )
1739
- ]
1740
- )
1741
- .void
2387
+ override_specifiers:
2388
+ T::Array[
2389
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::OrHash
2390
+ ]
2391
+ ).void
1742
2392
  end
1743
2393
  attr_writer :override_specifiers
1744
2394
 
1745
2395
  # Required for OVERWRITE type.
1746
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate)) }
2396
+ sig do
2397
+ returns(
2398
+ T.nilable(
2399
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate
2400
+ )
2401
+ )
2402
+ end
1747
2403
  attr_reader :overwrite_rate
1748
2404
 
1749
2405
  sig do
1750
2406
  params(
1751
- overwrite_rate: T.any(
1752
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate,
1753
- MetronomeSDK::Internal::AnyHash
1754
- )
1755
- )
1756
- .void
2407
+ overwrite_rate:
2408
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::OrHash
2409
+ ).void
1757
2410
  end
1758
2411
  attr_writer :overwrite_rate
1759
2412
 
@@ -1778,29 +2431,59 @@ module MetronomeSDK
1778
2431
  # Indicates whether the override applies to commit rates or list rates. Can only
1779
2432
  # be used for overrides that have `is_commit_specific` set to `true`. Defaults to
1780
2433
  # `"LIST_RATE"`.
1781
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Override::Target::OrSymbol)) }
2434
+ sig do
2435
+ returns(
2436
+ T.nilable(
2437
+ MetronomeSDK::V1::ContractAmendParams::Override::Target::OrSymbol
2438
+ )
2439
+ )
2440
+ end
1782
2441
  attr_reader :target
1783
2442
 
1784
- sig { params(target: MetronomeSDK::Models::V1::ContractAmendParams::Override::Target::OrSymbol).void }
2443
+ sig do
2444
+ params(
2445
+ target:
2446
+ MetronomeSDK::V1::ContractAmendParams::Override::Target::OrSymbol
2447
+ ).void
2448
+ end
1785
2449
  attr_writer :target
1786
2450
 
1787
2451
  # Required for TIERED type. Must have at least one tier.
1788
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override::Tier])) }
2452
+ sig do
2453
+ returns(
2454
+ T.nilable(
2455
+ T::Array[MetronomeSDK::V1::ContractAmendParams::Override::Tier]
2456
+ )
2457
+ )
2458
+ end
1789
2459
  attr_reader :tiers
1790
2460
 
1791
2461
  sig do
1792
2462
  params(
1793
- tiers: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Override::Tier, MetronomeSDK::Internal::AnyHash)]
1794
- )
1795
- .void
2463
+ tiers:
2464
+ T::Array[
2465
+ MetronomeSDK::V1::ContractAmendParams::Override::Tier::OrHash
2466
+ ]
2467
+ ).void
1796
2468
  end
1797
2469
  attr_writer :tiers
1798
2470
 
1799
2471
  # Overwrites are prioritized over multipliers and tiered overrides.
1800
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::Override::Type::OrSymbol)) }
2472
+ sig do
2473
+ returns(
2474
+ T.nilable(
2475
+ MetronomeSDK::V1::ContractAmendParams::Override::Type::OrSymbol
2476
+ )
2477
+ )
2478
+ end
1801
2479
  attr_reader :type
1802
2480
 
1803
- sig { params(type: MetronomeSDK::Models::V1::ContractAmendParams::Override::Type::OrSymbol).void }
2481
+ sig do
2482
+ params(
2483
+ type:
2484
+ MetronomeSDK::V1::ContractAmendParams::Override::Type::OrSymbol
2485
+ ).void
2486
+ end
1804
2487
  attr_writer :type
1805
2488
 
1806
2489
  sig do
@@ -1811,23 +2494,23 @@ module MetronomeSDK
1811
2494
  entitled: T::Boolean,
1812
2495
  is_commit_specific: T::Boolean,
1813
2496
  multiplier: Float,
1814
- override_specifiers: T::Array[
1815
- T.any(
1816
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier,
1817
- MetronomeSDK::Internal::AnyHash
1818
- )
1819
- ],
1820
- overwrite_rate: T.any(
1821
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate,
1822
- MetronomeSDK::Internal::AnyHash
1823
- ),
2497
+ override_specifiers:
2498
+ T::Array[
2499
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::OrHash
2500
+ ],
2501
+ overwrite_rate:
2502
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::OrHash,
1824
2503
  priority: Float,
1825
2504
  product_id: String,
1826
- target: MetronomeSDK::Models::V1::ContractAmendParams::Override::Target::OrSymbol,
1827
- tiers: T::Array[T.any(MetronomeSDK::Models::V1::ContractAmendParams::Override::Tier, MetronomeSDK::Internal::AnyHash)],
1828
- type: MetronomeSDK::Models::V1::ContractAmendParams::Override::Type::OrSymbol
1829
- )
1830
- .returns(T.attached_class)
2505
+ target:
2506
+ MetronomeSDK::V1::ContractAmendParams::Override::Target::OrSymbol,
2507
+ tiers:
2508
+ T::Array[
2509
+ MetronomeSDK::V1::ContractAmendParams::Override::Tier::OrHash
2510
+ ],
2511
+ type:
2512
+ MetronomeSDK::V1::ContractAmendParams::Override::Type::OrSymbol
2513
+ ).returns(T.attached_class)
1831
2514
  end
1832
2515
  def self.new(
1833
2516
  # RFC 3339 timestamp indicating when the override will start applying (inclusive)
@@ -1866,30 +2549,66 @@ module MetronomeSDK
1866
2549
  tiers: nil,
1867
2550
  # Overwrites are prioritized over multipliers and tiered overrides.
1868
2551
  type: nil
1869
- ); end
2552
+ )
2553
+ end
2554
+
1870
2555
  sig do
1871
- override
1872
- .returns(
1873
- {
1874
- starting_at: Time,
1875
- applicable_product_tags: T::Array[String],
1876
- ending_before: Time,
1877
- entitled: T::Boolean,
1878
- is_commit_specific: T::Boolean,
1879
- multiplier: Float,
1880
- override_specifiers: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier],
1881
- overwrite_rate: MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate,
1882
- priority: Float,
1883
- product_id: String,
1884
- target: MetronomeSDK::Models::V1::ContractAmendParams::Override::Target::OrSymbol,
1885
- tiers: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override::Tier],
1886
- type: MetronomeSDK::Models::V1::ContractAmendParams::Override::Type::OrSymbol
1887
- }
1888
- )
2556
+ override.returns(
2557
+ {
2558
+ starting_at: Time,
2559
+ applicable_product_tags: T::Array[String],
2560
+ ending_before: Time,
2561
+ entitled: T::Boolean,
2562
+ is_commit_specific: T::Boolean,
2563
+ multiplier: Float,
2564
+ override_specifiers:
2565
+ T::Array[
2566
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier
2567
+ ],
2568
+ overwrite_rate:
2569
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate,
2570
+ priority: Float,
2571
+ product_id: String,
2572
+ target:
2573
+ MetronomeSDK::V1::ContractAmendParams::Override::Target::OrSymbol,
2574
+ tiers:
2575
+ T::Array[
2576
+ MetronomeSDK::V1::ContractAmendParams::Override::Tier
2577
+ ],
2578
+ type:
2579
+ MetronomeSDK::V1::ContractAmendParams::Override::Type::OrSymbol
2580
+ }
2581
+ )
2582
+ end
2583
+ def to_hash
1889
2584
  end
1890
- def to_hash; end
1891
2585
 
1892
2586
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
2587
+ OrHash =
2588
+ T.type_alias do
2589
+ T.any(
2590
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier,
2591
+ MetronomeSDK::Internal::AnyHash
2592
+ )
2593
+ end
2594
+
2595
+ sig do
2596
+ returns(
2597
+ T.nilable(
2598
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::OrSymbol
2599
+ )
2600
+ )
2601
+ end
2602
+ attr_reader :billing_frequency
2603
+
2604
+ sig do
2605
+ params(
2606
+ billing_frequency:
2607
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::OrSymbol
2608
+ ).void
2609
+ end
2610
+ attr_writer :billing_frequency
2611
+
1893
2612
  # Can only be used for commit specific overrides. Must be used in conjunction with
1894
2613
  # one of product_id, product_tags, pricing_group_values, or
1895
2614
  # presentation_group_values. If provided, the override will only apply to the
@@ -1905,7 +2624,9 @@ module MetronomeSDK
1905
2624
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
1906
2625
  attr_reader :presentation_group_values
1907
2626
 
1908
- sig { params(presentation_group_values: T::Hash[Symbol, String]).void }
2627
+ sig do
2628
+ params(presentation_group_values: T::Hash[Symbol, String]).void
2629
+ end
1909
2630
  attr_writer :presentation_group_values
1910
2631
 
1911
2632
  # A map of pricing group names to values. The override will only apply to products
@@ -1953,6 +2674,8 @@ module MetronomeSDK
1953
2674
 
1954
2675
  sig do
1955
2676
  params(
2677
+ billing_frequency:
2678
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::OrSymbol,
1956
2679
  commit_ids: T::Array[String],
1957
2680
  presentation_group_values: T::Hash[Symbol, String],
1958
2681
  pricing_group_values: T::Hash[Symbol, String],
@@ -1960,10 +2683,10 @@ module MetronomeSDK
1960
2683
  product_tags: T::Array[String],
1961
2684
  recurring_commit_ids: T::Array[String],
1962
2685
  recurring_credit_ids: T::Array[String]
1963
- )
1964
- .returns(T.attached_class)
2686
+ ).returns(T.attached_class)
1965
2687
  end
1966
2688
  def self.new(
2689
+ billing_frequency: nil,
1967
2690
  # Can only be used for commit specific overrides. Must be used in conjunction with
1968
2691
  # one of product_id, product_tags, pricing_group_values, or
1969
2692
  # presentation_group_values. If provided, the override will only apply to the
@@ -1990,26 +2713,86 @@ module MetronomeSDK
1990
2713
  # presentation_group_values. If provided, the override will only apply to credits
1991
2714
  # created by the specified recurring credit ids.
1992
2715
  recurring_credit_ids: nil
1993
- ); end
2716
+ )
2717
+ end
2718
+
1994
2719
  sig do
1995
- override
1996
- .returns(
1997
- {
1998
- commit_ids: T::Array[String],
1999
- presentation_group_values: T::Hash[Symbol, String],
2000
- pricing_group_values: T::Hash[Symbol, String],
2001
- product_id: String,
2002
- product_tags: T::Array[String],
2003
- recurring_commit_ids: T::Array[String],
2004
- recurring_credit_ids: T::Array[String]
2005
- }
2720
+ override.returns(
2721
+ {
2722
+ billing_frequency:
2723
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::OrSymbol,
2724
+ commit_ids: T::Array[String],
2725
+ presentation_group_values: T::Hash[Symbol, String],
2726
+ pricing_group_values: T::Hash[Symbol, String],
2727
+ product_id: String,
2728
+ product_tags: T::Array[String],
2729
+ recurring_commit_ids: T::Array[String],
2730
+ recurring_credit_ids: T::Array[String]
2731
+ }
2732
+ )
2733
+ end
2734
+ def to_hash
2735
+ end
2736
+
2737
+ module BillingFrequency
2738
+ extend MetronomeSDK::Internal::Type::Enum
2739
+
2740
+ TaggedSymbol =
2741
+ T.type_alias do
2742
+ T.all(
2743
+ Symbol,
2744
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency
2745
+ )
2746
+ end
2747
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2748
+
2749
+ MONTHLY =
2750
+ T.let(
2751
+ :MONTHLY,
2752
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
2753
+ )
2754
+ QUARTERLY =
2755
+ T.let(
2756
+ :QUARTERLY,
2757
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
2758
+ )
2759
+ ANNUAL =
2760
+ T.let(
2761
+ :ANNUAL,
2762
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
2763
+ )
2764
+ WEEKLY =
2765
+ T.let(
2766
+ :WEEKLY,
2767
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
2768
+ )
2769
+
2770
+ sig do
2771
+ override.returns(
2772
+ T::Array[
2773
+ MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
2774
+ ]
2006
2775
  )
2776
+ end
2777
+ def self.values
2778
+ end
2007
2779
  end
2008
- def to_hash; end
2009
2780
  end
2010
2781
 
2011
2782
  class OverwriteRate < MetronomeSDK::Internal::Type::BaseModel
2012
- sig { returns(MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::OrSymbol) }
2783
+ OrHash =
2784
+ T.type_alias do
2785
+ T.any(
2786
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate,
2787
+ MetronomeSDK::Internal::AnyHash
2788
+ )
2789
+ end
2790
+
2791
+ sig do
2792
+ returns(
2793
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::OrSymbol
2794
+ )
2795
+ end
2013
2796
  attr_accessor :rate_type
2014
2797
 
2015
2798
  sig { returns(T.nilable(String)) }
@@ -2050,24 +2833,42 @@ module MetronomeSDK
2050
2833
  attr_writer :quantity
2051
2834
 
2052
2835
  # Only set for TIERED rate_type.
2053
- sig { returns(T.nilable(T::Array[MetronomeSDK::Models::Tier])) }
2836
+ sig do
2837
+ returns(
2838
+ T.nilable(
2839
+ T::Array[
2840
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::Tier
2841
+ ]
2842
+ )
2843
+ )
2844
+ end
2054
2845
  attr_reader :tiers
2055
2846
 
2056
- sig { params(tiers: T::Array[T.any(MetronomeSDK::Models::Tier, MetronomeSDK::Internal::AnyHash)]).void }
2847
+ sig do
2848
+ params(
2849
+ tiers:
2850
+ T::Array[
2851
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::Tier::OrHash
2852
+ ]
2853
+ ).void
2854
+ end
2057
2855
  attr_writer :tiers
2058
2856
 
2059
2857
  # Required for OVERWRITE type.
2060
2858
  sig do
2061
2859
  params(
2062
- rate_type: MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::OrSymbol,
2860
+ rate_type:
2861
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::OrSymbol,
2063
2862
  credit_type_id: String,
2064
2863
  custom_rate: T::Hash[Symbol, T.anything],
2065
2864
  is_prorated: T::Boolean,
2066
2865
  price: Float,
2067
2866
  quantity: Float,
2068
- tiers: T::Array[T.any(MetronomeSDK::Models::Tier, MetronomeSDK::Internal::AnyHash)]
2069
- )
2070
- .returns(T.attached_class)
2867
+ tiers:
2868
+ T::Array[
2869
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::Tier::OrHash
2870
+ ]
2871
+ ).returns(T.attached_class)
2071
2872
  end
2072
2873
  def self.new(
2073
2874
  rate_type:,
@@ -2085,63 +2886,105 @@ module MetronomeSDK
2085
2886
  quantity: nil,
2086
2887
  # Only set for TIERED rate_type.
2087
2888
  tiers: nil
2088
- ); end
2889
+ )
2890
+ end
2891
+
2089
2892
  sig do
2090
- override
2091
- .returns(
2092
- {
2093
- rate_type: MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::OrSymbol,
2094
- credit_type_id: String,
2095
- custom_rate: T::Hash[Symbol, T.anything],
2096
- is_prorated: T::Boolean,
2097
- price: Float,
2098
- quantity: Float,
2099
- tiers: T::Array[MetronomeSDK::Models::Tier]
2100
- }
2101
- )
2893
+ override.returns(
2894
+ {
2895
+ rate_type:
2896
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::OrSymbol,
2897
+ credit_type_id: String,
2898
+ custom_rate: T::Hash[Symbol, T.anything],
2899
+ is_prorated: T::Boolean,
2900
+ price: Float,
2901
+ quantity: Float,
2902
+ tiers:
2903
+ T::Array[
2904
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::Tier
2905
+ ]
2906
+ }
2907
+ )
2908
+ end
2909
+ def to_hash
2102
2910
  end
2103
- def to_hash; end
2104
2911
 
2105
2912
  module RateType
2106
2913
  extend MetronomeSDK::Internal::Type::Enum
2107
2914
 
2108
2915
  TaggedSymbol =
2109
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType) }
2916
+ T.type_alias do
2917
+ T.all(
2918
+ Symbol,
2919
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType
2920
+ )
2921
+ end
2110
2922
  OrSymbol = T.type_alias { T.any(Symbol, String) }
2111
2923
 
2112
2924
  FLAT =
2113
2925
  T.let(
2114
2926
  :FLAT,
2115
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2927
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2116
2928
  )
2117
2929
  PERCENTAGE =
2118
2930
  T.let(
2119
2931
  :PERCENTAGE,
2120
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2932
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2121
2933
  )
2122
2934
  SUBSCRIPTION =
2123
2935
  T.let(
2124
2936
  :SUBSCRIPTION,
2125
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2937
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2126
2938
  )
2127
2939
  TIERED =
2128
2940
  T.let(
2129
2941
  :TIERED,
2130
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2942
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2131
2943
  )
2132
2944
  CUSTOM =
2133
2945
  T.let(
2134
2946
  :CUSTOM,
2135
- MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2947
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2136
2948
  )
2137
2949
 
2138
2950
  sig do
2139
- override
2140
- .returns(
2141
- T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol]
2951
+ override.returns(
2952
+ T::Array[
2953
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::RateType::TaggedSymbol
2954
+ ]
2955
+ )
2956
+ end
2957
+ def self.values
2958
+ end
2959
+ end
2960
+
2961
+ class Tier < MetronomeSDK::Internal::Type::BaseModel
2962
+ OrHash =
2963
+ T.type_alias do
2964
+ T.any(
2965
+ MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::Tier,
2966
+ MetronomeSDK::Internal::AnyHash
2142
2967
  )
2968
+ end
2969
+
2970
+ sig { returns(Float) }
2971
+ attr_accessor :price
2972
+
2973
+ sig { returns(T.nilable(Float)) }
2974
+ attr_reader :size
2975
+
2976
+ sig { params(size: Float).void }
2977
+ attr_writer :size
2978
+
2979
+ sig do
2980
+ params(price: Float, size: Float).returns(T.attached_class)
2981
+ end
2982
+ def self.new(price:, size: nil)
2983
+ end
2984
+
2985
+ sig { override.returns({ price: Float, size: Float }) }
2986
+ def to_hash
2143
2987
  end
2144
- def self.values; end
2145
2988
  end
2146
2989
  end
2147
2990
 
@@ -2152,19 +2995,45 @@ module MetronomeSDK
2152
2995
  extend MetronomeSDK::Internal::Type::Enum
2153
2996
 
2154
2997
  TaggedSymbol =
2155
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::Target) }
2998
+ T.type_alias do
2999
+ T.all(
3000
+ Symbol,
3001
+ MetronomeSDK::V1::ContractAmendParams::Override::Target
3002
+ )
3003
+ end
2156
3004
  OrSymbol = T.type_alias { T.any(Symbol, String) }
2157
3005
 
2158
3006
  COMMIT_RATE =
2159
- T.let(:COMMIT_RATE, MetronomeSDK::Models::V1::ContractAmendParams::Override::Target::TaggedSymbol)
3007
+ T.let(
3008
+ :COMMIT_RATE,
3009
+ MetronomeSDK::V1::ContractAmendParams::Override::Target::TaggedSymbol
3010
+ )
2160
3011
  LIST_RATE =
2161
- T.let(:LIST_RATE, MetronomeSDK::Models::V1::ContractAmendParams::Override::Target::TaggedSymbol)
3012
+ T.let(
3013
+ :LIST_RATE,
3014
+ MetronomeSDK::V1::ContractAmendParams::Override::Target::TaggedSymbol
3015
+ )
2162
3016
 
2163
- sig { override.returns(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override::Target::TaggedSymbol]) }
2164
- def self.values; end
3017
+ sig do
3018
+ override.returns(
3019
+ T::Array[
3020
+ MetronomeSDK::V1::ContractAmendParams::Override::Target::TaggedSymbol
3021
+ ]
3022
+ )
3023
+ end
3024
+ def self.values
3025
+ end
2165
3026
  end
2166
3027
 
2167
3028
  class Tier < MetronomeSDK::Internal::Type::BaseModel
3029
+ OrHash =
3030
+ T.type_alias do
3031
+ T.any(
3032
+ MetronomeSDK::V1::ContractAmendParams::Override::Tier,
3033
+ MetronomeSDK::Internal::AnyHash
3034
+ )
3035
+ end
3036
+
2168
3037
  sig { returns(Float) }
2169
3038
  attr_accessor :multiplier
2170
3039
 
@@ -2174,11 +3043,15 @@ module MetronomeSDK
2174
3043
  sig { params(size: Float).void }
2175
3044
  attr_writer :size
2176
3045
 
2177
- sig { params(multiplier: Float, size: Float).returns(T.attached_class) }
2178
- def self.new(multiplier:, size: nil); end
3046
+ sig do
3047
+ params(multiplier: Float, size: Float).returns(T.attached_class)
3048
+ end
3049
+ def self.new(multiplier:, size: nil)
3050
+ end
2179
3051
 
2180
- sig { override.returns({multiplier: Float, size: Float}) }
2181
- def to_hash; end
3052
+ sig { override.returns({ multiplier: Float, size: Float }) }
3053
+ def to_hash
3054
+ end
2182
3055
  end
2183
3056
 
2184
3057
  # Overwrites are prioritized over multipliers and tiered overrides.
@@ -2186,21 +3059,51 @@ module MetronomeSDK
2186
3059
  extend MetronomeSDK::Internal::Type::Enum
2187
3060
 
2188
3061
  TaggedSymbol =
2189
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::Override::Type) }
3062
+ T.type_alias do
3063
+ T.all(
3064
+ Symbol,
3065
+ MetronomeSDK::V1::ContractAmendParams::Override::Type
3066
+ )
3067
+ end
2190
3068
  OrSymbol = T.type_alias { T.any(Symbol, String) }
2191
3069
 
2192
3070
  OVERWRITE =
2193
- T.let(:OVERWRITE, MetronomeSDK::Models::V1::ContractAmendParams::Override::Type::TaggedSymbol)
3071
+ T.let(
3072
+ :OVERWRITE,
3073
+ MetronomeSDK::V1::ContractAmendParams::Override::Type::TaggedSymbol
3074
+ )
2194
3075
  MULTIPLIER =
2195
- T.let(:MULTIPLIER, MetronomeSDK::Models::V1::ContractAmendParams::Override::Type::TaggedSymbol)
2196
- TIERED = T.let(:TIERED, MetronomeSDK::Models::V1::ContractAmendParams::Override::Type::TaggedSymbol)
3076
+ T.let(
3077
+ :MULTIPLIER,
3078
+ MetronomeSDK::V1::ContractAmendParams::Override::Type::TaggedSymbol
3079
+ )
3080
+ TIERED =
3081
+ T.let(
3082
+ :TIERED,
3083
+ MetronomeSDK::V1::ContractAmendParams::Override::Type::TaggedSymbol
3084
+ )
2197
3085
 
2198
- sig { override.returns(T::Array[MetronomeSDK::Models::V1::ContractAmendParams::Override::Type::TaggedSymbol]) }
2199
- def self.values; end
3086
+ sig do
3087
+ override.returns(
3088
+ T::Array[
3089
+ MetronomeSDK::V1::ContractAmendParams::Override::Type::TaggedSymbol
3090
+ ]
3091
+ )
3092
+ end
3093
+ def self.values
3094
+ end
2200
3095
  end
2201
3096
  end
2202
3097
 
2203
3098
  class ProfessionalService < MetronomeSDK::Internal::Type::BaseModel
3099
+ OrHash =
3100
+ T.type_alias do
3101
+ T.any(
3102
+ MetronomeSDK::V1::ContractAmendParams::ProfessionalService,
3103
+ MetronomeSDK::Internal::AnyHash
3104
+ )
3105
+ end
3106
+
2204
3107
  # Maximum amount for the term.
2205
3108
  sig { returns(Float) }
2206
3109
  attr_accessor :max_amount
@@ -2246,8 +3149,7 @@ module MetronomeSDK
2246
3149
  custom_fields: T::Hash[Symbol, String],
2247
3150
  description: String,
2248
3151
  netsuite_sales_order_id: String
2249
- )
2250
- .returns(T.attached_class)
3152
+ ).returns(T.attached_class)
2251
3153
  end
2252
3154
  def self.new(
2253
3155
  # Maximum amount for the term.
@@ -2263,26 +3165,40 @@ module MetronomeSDK
2263
3165
  description: nil,
2264
3166
  # This field's availability is dependent on your client's configuration.
2265
3167
  netsuite_sales_order_id: nil
2266
- ); end
3168
+ )
3169
+ end
3170
+
2267
3171
  sig do
2268
- override
2269
- .returns(
2270
- {
2271
- max_amount: Float,
2272
- product_id: String,
2273
- quantity: Float,
2274
- unit_price: Float,
2275
- custom_fields: T::Hash[Symbol, String],
2276
- description: String,
2277
- netsuite_sales_order_id: String
2278
- }
2279
- )
3172
+ override.returns(
3173
+ {
3174
+ max_amount: Float,
3175
+ product_id: String,
3176
+ quantity: Float,
3177
+ unit_price: Float,
3178
+ custom_fields: T::Hash[Symbol, String],
3179
+ description: String,
3180
+ netsuite_sales_order_id: String
3181
+ }
3182
+ )
3183
+ end
3184
+ def to_hash
2280
3185
  end
2281
- def to_hash; end
2282
3186
  end
2283
3187
 
2284
3188
  class ResellerRoyalty < MetronomeSDK::Internal::Type::BaseModel
2285
- sig { returns(MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType::OrSymbol) }
3189
+ OrHash =
3190
+ T.type_alias do
3191
+ T.any(
3192
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty,
3193
+ MetronomeSDK::Internal::AnyHash
3194
+ )
3195
+ end
3196
+
3197
+ sig do
3198
+ returns(
3199
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType::OrSymbol
3200
+ )
3201
+ end
2286
3202
  attr_accessor :reseller_type
2287
3203
 
2288
3204
  # Must provide at least one of applicable_product_ids or applicable_product_tags.
@@ -2299,17 +3215,20 @@ module MetronomeSDK
2299
3215
  sig { params(applicable_product_tags: T::Array[String]).void }
2300
3216
  attr_writer :applicable_product_tags
2301
3217
 
2302
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::AwsOptions)) }
3218
+ sig do
3219
+ returns(
3220
+ T.nilable(
3221
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::AwsOptions
3222
+ )
3223
+ )
3224
+ end
2303
3225
  attr_reader :aws_options
2304
3226
 
2305
3227
  sig do
2306
3228
  params(
2307
- aws_options: T.any(
2308
- MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::AwsOptions,
2309
- MetronomeSDK::Internal::AnyHash
2310
- )
2311
- )
2312
- .void
3229
+ aws_options:
3230
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::AwsOptions::OrHash
3231
+ ).void
2313
3232
  end
2314
3233
  attr_writer :aws_options
2315
3234
 
@@ -2323,17 +3242,20 @@ module MetronomeSDK
2323
3242
  sig { params(fraction: Float).void }
2324
3243
  attr_writer :fraction
2325
3244
 
2326
- sig { returns(T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::GcpOptions)) }
3245
+ sig do
3246
+ returns(
3247
+ T.nilable(
3248
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::GcpOptions
3249
+ )
3250
+ )
3251
+ end
2327
3252
  attr_reader :gcp_options
2328
3253
 
2329
3254
  sig do
2330
3255
  params(
2331
- gcp_options: T.any(
2332
- MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::GcpOptions,
2333
- MetronomeSDK::Internal::AnyHash
2334
- )
2335
- )
2336
- .void
3256
+ gcp_options:
3257
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::GcpOptions::OrHash
3258
+ ).void
2337
3259
  end
2338
3260
  attr_writer :gcp_options
2339
3261
 
@@ -2357,24 +3279,20 @@ module MetronomeSDK
2357
3279
 
2358
3280
  sig do
2359
3281
  params(
2360
- reseller_type: MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType::OrSymbol,
3282
+ reseller_type:
3283
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType::OrSymbol,
2361
3284
  applicable_product_ids: T::Array[String],
2362
3285
  applicable_product_tags: T::Array[String],
2363
- aws_options: T.any(
2364
- MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::AwsOptions,
2365
- MetronomeSDK::Internal::AnyHash
2366
- ),
3286
+ aws_options:
3287
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::AwsOptions::OrHash,
2367
3288
  ending_before: T.nilable(Time),
2368
3289
  fraction: Float,
2369
- gcp_options: T.any(
2370
- MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::GcpOptions,
2371
- MetronomeSDK::Internal::AnyHash
2372
- ),
3290
+ gcp_options:
3291
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::GcpOptions::OrHash,
2373
3292
  netsuite_reseller_id: String,
2374
3293
  reseller_contract_value: Float,
2375
3294
  starting_at: Time
2376
- )
2377
- .returns(T.attached_class)
3295
+ ).returns(T.attached_class)
2378
3296
  end
2379
3297
  def self.new(
2380
3298
  reseller_type:,
@@ -2390,58 +3308,84 @@ module MetronomeSDK
2390
3308
  netsuite_reseller_id: nil,
2391
3309
  reseller_contract_value: nil,
2392
3310
  starting_at: nil
2393
- ); end
3311
+ )
3312
+ end
3313
+
2394
3314
  sig do
2395
- override
2396
- .returns(
2397
- {
2398
- reseller_type: MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType::OrSymbol,
2399
- applicable_product_ids: T::Array[String],
2400
- applicable_product_tags: T::Array[String],
2401
- aws_options: MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::AwsOptions,
2402
- ending_before: T.nilable(Time),
2403
- fraction: Float,
2404
- gcp_options: MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::GcpOptions,
2405
- netsuite_reseller_id: String,
2406
- reseller_contract_value: Float,
2407
- starting_at: Time
2408
- }
2409
- )
3315
+ override.returns(
3316
+ {
3317
+ reseller_type:
3318
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType::OrSymbol,
3319
+ applicable_product_ids: T::Array[String],
3320
+ applicable_product_tags: T::Array[String],
3321
+ aws_options:
3322
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::AwsOptions,
3323
+ ending_before: T.nilable(Time),
3324
+ fraction: Float,
3325
+ gcp_options:
3326
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::GcpOptions,
3327
+ netsuite_reseller_id: String,
3328
+ reseller_contract_value: Float,
3329
+ starting_at: Time
3330
+ }
3331
+ )
3332
+ end
3333
+ def to_hash
2410
3334
  end
2411
- def to_hash; end
2412
3335
 
2413
3336
  module ResellerType
2414
3337
  extend MetronomeSDK::Internal::Type::Enum
2415
3338
 
2416
3339
  TaggedSymbol =
2417
- T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType) }
3340
+ T.type_alias do
3341
+ T.all(
3342
+ Symbol,
3343
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType
3344
+ )
3345
+ end
2418
3346
  OrSymbol = T.type_alias { T.any(Symbol, String) }
2419
3347
 
2420
3348
  AWS =
2421
- T.let(:AWS, MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol)
3349
+ T.let(
3350
+ :AWS,
3351
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol
3352
+ )
2422
3353
  AWS_PRO_SERVICE =
2423
3354
  T.let(
2424
3355
  :AWS_PRO_SERVICE,
2425
- MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol
3356
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol
2426
3357
  )
2427
3358
  GCP =
2428
- T.let(:GCP, MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol)
3359
+ T.let(
3360
+ :GCP,
3361
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol
3362
+ )
2429
3363
  GCP_PRO_SERVICE =
2430
3364
  T.let(
2431
3365
  :GCP_PRO_SERVICE,
2432
- MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol
3366
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol
2433
3367
  )
2434
3368
 
2435
3369
  sig do
2436
- override
2437
- .returns(
2438
- T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol]
2439
- )
3370
+ override.returns(
3371
+ T::Array[
3372
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::ResellerType::TaggedSymbol
3373
+ ]
3374
+ )
3375
+ end
3376
+ def self.values
2440
3377
  end
2441
- def self.values; end
2442
3378
  end
2443
3379
 
2444
3380
  class AwsOptions < MetronomeSDK::Internal::Type::BaseModel
3381
+ OrHash =
3382
+ T.type_alias do
3383
+ T.any(
3384
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::AwsOptions,
3385
+ MetronomeSDK::Internal::AnyHash
3386
+ )
3387
+ end
3388
+
2445
3389
  sig { returns(T.nilable(String)) }
2446
3390
  attr_reader :aws_account_number
2447
3391
 
@@ -2461,10 +3405,18 @@ module MetronomeSDK
2461
3405
  attr_writer :aws_payer_reference_id
2462
3406
 
2463
3407
  sig do
2464
- params(aws_account_number: String, aws_offer_id: String, aws_payer_reference_id: String)
2465
- .returns(T.attached_class)
3408
+ params(
3409
+ aws_account_number: String,
3410
+ aws_offer_id: String,
3411
+ aws_payer_reference_id: String
3412
+ ).returns(T.attached_class)
3413
+ end
3414
+ def self.new(
3415
+ aws_account_number: nil,
3416
+ aws_offer_id: nil,
3417
+ aws_payer_reference_id: nil
3418
+ )
2466
3419
  end
2467
- def self.new(aws_account_number: nil, aws_offer_id: nil, aws_payer_reference_id: nil); end
2468
3420
 
2469
3421
  sig do
2470
3422
  override.returns(
@@ -2475,10 +3427,19 @@ module MetronomeSDK
2475
3427
  }
2476
3428
  )
2477
3429
  end
2478
- def to_hash; end
3430
+ def to_hash
3431
+ end
2479
3432
  end
2480
3433
 
2481
3434
  class GcpOptions < MetronomeSDK::Internal::Type::BaseModel
3435
+ OrHash =
3436
+ T.type_alias do
3437
+ T.any(
3438
+ MetronomeSDK::V1::ContractAmendParams::ResellerRoyalty::GcpOptions,
3439
+ MetronomeSDK::Internal::AnyHash
3440
+ )
3441
+ end
3442
+
2482
3443
  sig { returns(T.nilable(String)) }
2483
3444
  attr_reader :gcp_account_id
2484
3445
 
@@ -2491,30 +3452,47 @@ module MetronomeSDK
2491
3452
  sig { params(gcp_offer_id: String).void }
2492
3453
  attr_writer :gcp_offer_id
2493
3454
 
2494
- sig { params(gcp_account_id: String, gcp_offer_id: String).returns(T.attached_class) }
2495
- def self.new(gcp_account_id: nil, gcp_offer_id: nil); end
3455
+ sig do
3456
+ params(gcp_account_id: String, gcp_offer_id: String).returns(
3457
+ T.attached_class
3458
+ )
3459
+ end
3460
+ def self.new(gcp_account_id: nil, gcp_offer_id: nil)
3461
+ end
2496
3462
 
2497
- sig { override.returns({gcp_account_id: String, gcp_offer_id: String}) }
2498
- def to_hash; end
3463
+ sig do
3464
+ override.returns({ gcp_account_id: String, gcp_offer_id: String })
3465
+ end
3466
+ def to_hash
3467
+ end
2499
3468
  end
2500
3469
  end
2501
3470
 
2502
3471
  class ScheduledCharge < MetronomeSDK::Internal::Type::BaseModel
3472
+ OrHash =
3473
+ T.type_alias do
3474
+ T.any(
3475
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge,
3476
+ MetronomeSDK::Internal::AnyHash
3477
+ )
3478
+ end
3479
+
2503
3480
  sig { returns(String) }
2504
3481
  attr_accessor :product_id
2505
3482
 
2506
3483
  # Must provide either schedule_items or recurring_schedule.
2507
- sig { returns(MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule) }
3484
+ sig do
3485
+ returns(
3486
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule
3487
+ )
3488
+ end
2508
3489
  attr_reader :schedule
2509
3490
 
2510
3491
  sig do
2511
3492
  params(
2512
- schedule: T.any(
2513
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule,
2514
- MetronomeSDK::Internal::AnyHash
2515
- )
2516
- )
2517
- .void
3493
+ schedule:
3494
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::OrHash
3495
+ ).void
2518
3496
  end
2519
3497
  attr_writer :schedule
2520
3498
 
@@ -2535,14 +3513,11 @@ module MetronomeSDK
2535
3513
  sig do
2536
3514
  params(
2537
3515
  product_id: String,
2538
- schedule: T.any(
2539
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule,
2540
- MetronomeSDK::Internal::AnyHash
2541
- ),
3516
+ schedule:
3517
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::OrHash,
2542
3518
  name: String,
2543
3519
  netsuite_sales_order_id: String
2544
- )
2545
- .returns(T.attached_class)
3520
+ ).returns(T.attached_class)
2546
3521
  end
2547
3522
  def self.new(
2548
3523
  product_id:,
@@ -2552,21 +3527,32 @@ module MetronomeSDK
2552
3527
  name: nil,
2553
3528
  # This field's availability is dependent on your client's configuration.
2554
3529
  netsuite_sales_order_id: nil
2555
- ); end
3530
+ )
3531
+ end
3532
+
2556
3533
  sig do
2557
- override
2558
- .returns(
2559
- {
2560
- product_id: String,
2561
- schedule: MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule,
2562
- name: String,
2563
- netsuite_sales_order_id: String
2564
- }
2565
- )
3534
+ override.returns(
3535
+ {
3536
+ product_id: String,
3537
+ schedule:
3538
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule,
3539
+ name: String,
3540
+ netsuite_sales_order_id: String
3541
+ }
3542
+ )
3543
+ end
3544
+ def to_hash
2566
3545
  end
2567
- def to_hash; end
2568
3546
 
2569
3547
  class Schedule < MetronomeSDK::Internal::Type::BaseModel
3548
+ OrHash =
3549
+ T.type_alias do
3550
+ T.any(
3551
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule,
3552
+ MetronomeSDK::Internal::AnyHash
3553
+ )
3554
+ end
3555
+
2570
3556
  # Defaults to USD (cents) if not passed.
2571
3557
  sig { returns(T.nilable(String)) }
2572
3558
  attr_reader :credit_type_id
@@ -2579,19 +3565,18 @@ module MetronomeSDK
2579
3565
  # quantity is inferred to be 1.
2580
3566
  sig do
2581
3567
  returns(
2582
- T.nilable(MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule)
3568
+ T.nilable(
3569
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule
3570
+ )
2583
3571
  )
2584
3572
  end
2585
3573
  attr_reader :recurring_schedule
2586
3574
 
2587
3575
  sig do
2588
3576
  params(
2589
- recurring_schedule: T.any(
2590
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule,
2591
- MetronomeSDK::Internal::AnyHash
2592
- )
2593
- )
2594
- .void
3577
+ recurring_schedule:
3578
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::OrHash
3579
+ ).void
2595
3580
  end
2596
3581
  attr_writer :recurring_schedule
2597
3582
 
@@ -2599,7 +3584,9 @@ module MetronomeSDK
2599
3584
  sig do
2600
3585
  returns(
2601
3586
  T.nilable(
2602
- T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem]
3587
+ T::Array[
3588
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem
3589
+ ]
2603
3590
  )
2604
3591
  )
2605
3592
  end
@@ -2607,14 +3594,11 @@ module MetronomeSDK
2607
3594
 
2608
3595
  sig do
2609
3596
  params(
2610
- schedule_items: T::Array[
2611
- T.any(
2612
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem,
2613
- MetronomeSDK::Internal::AnyHash
2614
- )
2615
- ]
2616
- )
2617
- .void
3597
+ schedule_items:
3598
+ T::Array[
3599
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem::OrHash
3600
+ ]
3601
+ ).void
2618
3602
  end
2619
3603
  attr_writer :schedule_items
2620
3604
 
@@ -2622,18 +3606,13 @@ module MetronomeSDK
2622
3606
  sig do
2623
3607
  params(
2624
3608
  credit_type_id: String,
2625
- recurring_schedule: T.any(
2626
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule,
2627
- MetronomeSDK::Internal::AnyHash
2628
- ),
2629
- schedule_items: T::Array[
2630
- T.any(
2631
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem,
2632
- MetronomeSDK::Internal::AnyHash
2633
- )
2634
- ]
2635
- )
2636
- .returns(T.attached_class)
3609
+ recurring_schedule:
3610
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::OrHash,
3611
+ schedule_items:
3612
+ T::Array[
3613
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem::OrHash
3614
+ ]
3615
+ ).returns(T.attached_class)
2637
3616
  end
2638
3617
  def self.new(
2639
3618
  # Defaults to USD (cents) if not passed.
@@ -2644,23 +3623,37 @@ module MetronomeSDK
2644
3623
  recurring_schedule: nil,
2645
3624
  # Either provide amount or provide both unit_price and quantity.
2646
3625
  schedule_items: nil
2647
- ); end
3626
+ )
3627
+ end
3628
+
2648
3629
  sig do
2649
- override
2650
- .returns(
2651
- {
2652
- credit_type_id: String,
2653
- recurring_schedule: MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule,
2654
- schedule_items: T::Array[MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem]
2655
- }
2656
- )
3630
+ override.returns(
3631
+ {
3632
+ credit_type_id: String,
3633
+ recurring_schedule:
3634
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule,
3635
+ schedule_items:
3636
+ T::Array[
3637
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem
3638
+ ]
3639
+ }
3640
+ )
3641
+ end
3642
+ def to_hash
2657
3643
  end
2658
- def to_hash; end
2659
3644
 
2660
3645
  class RecurringSchedule < MetronomeSDK::Internal::Type::BaseModel
3646
+ OrHash =
3647
+ T.type_alias do
3648
+ T.any(
3649
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule,
3650
+ MetronomeSDK::Internal::AnyHash
3651
+ )
3652
+ end
3653
+
2661
3654
  sig do
2662
3655
  returns(
2663
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::OrSymbol
3656
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::OrSymbol
2664
3657
  )
2665
3658
  end
2666
3659
  attr_accessor :amount_distribution
@@ -2671,7 +3664,7 @@ module MetronomeSDK
2671
3664
 
2672
3665
  sig do
2673
3666
  returns(
2674
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::OrSymbol
3667
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::OrSymbol
2675
3668
  )
2676
3669
  end
2677
3670
  attr_accessor :frequency
@@ -2712,15 +3705,16 @@ module MetronomeSDK
2712
3705
  # quantity is inferred to be 1.
2713
3706
  sig do
2714
3707
  params(
2715
- amount_distribution: MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::OrSymbol,
3708
+ amount_distribution:
3709
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::OrSymbol,
2716
3710
  ending_before: Time,
2717
- frequency: MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::OrSymbol,
3711
+ frequency:
3712
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::OrSymbol,
2718
3713
  starting_at: Time,
2719
3714
  amount: Float,
2720
3715
  quantity: Float,
2721
3716
  unit_price: Float
2722
- )
2723
- .returns(T.attached_class)
3717
+ ).returns(T.attached_class)
2724
3718
  end
2725
3719
  def self.new(
2726
3720
  amount_distribution:,
@@ -2741,57 +3735,64 @@ module MetronomeSDK
2741
3735
  # amount and must be specified with quantity. If specified amount cannot be
2742
3736
  # provided.
2743
3737
  unit_price: nil
2744
- ); end
3738
+ )
3739
+ end
3740
+
2745
3741
  sig do
2746
- override
2747
- .returns(
2748
- {
2749
- amount_distribution: MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::OrSymbol,
2750
- ending_before: Time,
2751
- frequency: MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::OrSymbol,
2752
- starting_at: Time,
2753
- amount: Float,
2754
- quantity: Float,
2755
- unit_price: Float
2756
- }
2757
- )
3742
+ override.returns(
3743
+ {
3744
+ amount_distribution:
3745
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::OrSymbol,
3746
+ ending_before: Time,
3747
+ frequency:
3748
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::OrSymbol,
3749
+ starting_at: Time,
3750
+ amount: Float,
3751
+ quantity: Float,
3752
+ unit_price: Float
3753
+ }
3754
+ )
3755
+ end
3756
+ def to_hash
2758
3757
  end
2759
- def to_hash; end
2760
3758
 
2761
3759
  module AmountDistribution
2762
3760
  extend MetronomeSDK::Internal::Type::Enum
2763
3761
 
2764
3762
  TaggedSymbol =
2765
3763
  T.type_alias do
2766
- T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution)
3764
+ T.all(
3765
+ Symbol,
3766
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution
3767
+ )
2767
3768
  end
2768
3769
  OrSymbol = T.type_alias { T.any(Symbol, String) }
2769
3770
 
2770
3771
  DIVIDED =
2771
3772
  T.let(
2772
3773
  :DIVIDED,
2773
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
3774
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
2774
3775
  )
2775
3776
  DIVIDED_ROUNDED =
2776
3777
  T.let(
2777
3778
  :DIVIDED_ROUNDED,
2778
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
3779
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
2779
3780
  )
2780
3781
  EACH =
2781
3782
  T.let(
2782
3783
  :EACH,
2783
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
3784
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
2784
3785
  )
2785
3786
 
2786
3787
  sig do
2787
- override
2788
- .returns(
2789
- T::Array[
2790
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
2791
- ]
2792
- )
3788
+ override.returns(
3789
+ T::Array[
3790
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution::TaggedSymbol
3791
+ ]
3792
+ )
3793
+ end
3794
+ def self.values
2793
3795
  end
2794
- def self.values; end
2795
3796
  end
2796
3797
 
2797
3798
  module Frequency
@@ -2799,44 +3800,55 @@ module MetronomeSDK
2799
3800
 
2800
3801
  TaggedSymbol =
2801
3802
  T.type_alias do
2802
- T.all(Symbol, MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency)
3803
+ T.all(
3804
+ Symbol,
3805
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency
3806
+ )
2803
3807
  end
2804
3808
  OrSymbol = T.type_alias { T.any(Symbol, String) }
2805
3809
 
2806
3810
  MONTHLY =
2807
3811
  T.let(
2808
3812
  :MONTHLY,
2809
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
3813
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2810
3814
  )
2811
3815
  QUARTERLY =
2812
3816
  T.let(
2813
3817
  :QUARTERLY,
2814
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
3818
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2815
3819
  )
2816
3820
  SEMI_ANNUAL =
2817
3821
  T.let(
2818
3822
  :SEMI_ANNUAL,
2819
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
3823
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2820
3824
  )
2821
3825
  ANNUAL =
2822
3826
  T.let(
2823
3827
  :ANNUAL,
2824
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
3828
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2825
3829
  )
2826
3830
 
2827
3831
  sig do
2828
- override
2829
- .returns(
2830
- T::Array[
2831
- MetronomeSDK::Models::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
2832
- ]
2833
- )
3832
+ override.returns(
3833
+ T::Array[
3834
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency::TaggedSymbol
3835
+ ]
3836
+ )
3837
+ end
3838
+ def self.values
2834
3839
  end
2835
- def self.values; end
2836
3840
  end
2837
3841
  end
2838
3842
 
2839
3843
  class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
3844
+ OrHash =
3845
+ T.type_alias do
3846
+ T.any(
3847
+ MetronomeSDK::V1::ContractAmendParams::ScheduledCharge::Schedule::ScheduleItem,
3848
+ MetronomeSDK::Internal::AnyHash
3849
+ )
3850
+ end
3851
+
2840
3852
  # timestamp of the scheduled event
2841
3853
  sig { returns(Time) }
2842
3854
  attr_accessor :timestamp
@@ -2891,9 +3903,21 @@ module MetronomeSDK
2891
3903
  # amount and must be specified with quantity. If specified amount cannot be
2892
3904
  # provided.
2893
3905
  unit_price: nil
2894
- ); end
2895
- sig { override.returns({timestamp: Time, amount: Float, quantity: Float, unit_price: Float}) }
2896
- def to_hash; end
3906
+ )
3907
+ end
3908
+
3909
+ sig do
3910
+ override.returns(
3911
+ {
3912
+ timestamp: Time,
3913
+ amount: Float,
3914
+ quantity: Float,
3915
+ unit_price: Float
3916
+ }
3917
+ )
3918
+ end
3919
+ def to_hash
3920
+ end
2897
3921
  end
2898
3922
  end
2899
3923
  end