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

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 (475) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +85 -0
  3. data/README.md +120 -74
  4. data/SECURITY.md +2 -2
  5. data/lib/metronome_sdk/client.rb +4 -4
  6. data/lib/metronome_sdk/errors.rb +22 -0
  7. data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
  8. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +3 -1
  9. data/lib/metronome_sdk/internal/type/array_of.rb +14 -1
  10. data/lib/metronome_sdk/internal/type/base_model.rb +92 -23
  11. data/lib/metronome_sdk/internal/type/boolean.rb +15 -1
  12. data/lib/metronome_sdk/internal/type/converter.rb +42 -34
  13. data/lib/metronome_sdk/internal/type/enum.rb +25 -2
  14. data/lib/metronome_sdk/internal/type/file_input.rb +13 -1
  15. data/lib/metronome_sdk/internal/type/hash_of.rb +14 -1
  16. data/lib/metronome_sdk/internal/type/union.rb +27 -7
  17. data/lib/metronome_sdk/internal/type/unknown.rb +15 -1
  18. data/lib/metronome_sdk/internal/util.rb +62 -10
  19. data/lib/metronome_sdk/internal.rb +3 -0
  20. data/lib/metronome_sdk/models/commit.rb +230 -87
  21. data/lib/metronome_sdk/models/contract_without_amendments.rb +551 -185
  22. data/lib/metronome_sdk/models/credit.rb +201 -51
  23. data/lib/metronome_sdk/models/discount.rb +5 -5
  24. data/lib/metronome_sdk/models/event_type_filter.rb +1 -1
  25. data/lib/metronome_sdk/models/override.rb +53 -34
  26. data/lib/metronome_sdk/models/pro_service.rb +2 -2
  27. data/lib/metronome_sdk/models/property_filter.rb +1 -1
  28. data/lib/metronome_sdk/models/rate.rb +9 -9
  29. data/lib/metronome_sdk/models/schedule_duration.rb +4 -4
  30. data/lib/metronome_sdk/models/schedule_point_in_time.rb +11 -11
  31. data/lib/metronome_sdk/models/scheduled_charge.rb +5 -5
  32. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +2 -2
  33. data/lib/metronome_sdk/models/v1/alert_create_params.rb +15 -12
  34. data/lib/metronome_sdk/models/v1/alert_create_response.rb +2 -2
  35. data/lib/metronome_sdk/models/v1/audit_log_list_params.rb +2 -2
  36. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +2 -2
  37. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -6
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +2 -2
  39. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +4 -4
  40. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -4
  41. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +577 -152
  42. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +2 -2
  43. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +2 -2
  44. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +12 -12
  45. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +2 -2
  46. data/lib/metronome_sdk/models/v1/contract_create_params.rb +1317 -341
  47. data/lib/metronome_sdk/models/v1/contract_create_response.rb +2 -2
  48. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +3 -7
  49. data/lib/metronome_sdk/models/v1/contract_list_response.rb +421 -36
  50. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +33 -5
  51. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +28 -7
  52. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +422 -36
  53. data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rb +34 -0
  54. data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rb +81 -0
  55. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +4 -4
  56. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +2 -2
  57. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +2 -2
  58. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +2 -2
  59. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -6
  60. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +2 -2
  61. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +5 -5
  62. data/lib/metronome_sdk/models/v1/contracts/product_list_params.rb +4 -4
  63. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -8
  64. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -8
  65. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +4 -4
  66. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +2 -2
  67. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +3 -3
  68. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +3 -3
  69. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +2 -2
  70. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -4
  71. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +2 -2
  72. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +4 -4
  73. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +33 -5
  74. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +26 -5
  75. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +4 -4
  76. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +2 -2
  77. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +2 -2
  78. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +2 -2
  79. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +2 -2
  80. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +2 -2
  81. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +46 -18
  82. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +2 -2
  83. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +36 -12
  84. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +6 -6
  85. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +33 -5
  86. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +26 -5
  87. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +12 -20
  88. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +2 -2
  89. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +2 -2
  90. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
  91. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +6 -6
  92. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +8 -8
  93. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +2 -2
  94. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +1 -1
  95. data/lib/metronome_sdk/models/v1/custom_field_add_key_params.rb +2 -2
  96. data/lib/metronome_sdk/models/v1/custom_field_delete_values_params.rb +2 -2
  97. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +2 -2
  98. data/lib/metronome_sdk/models/v1/custom_field_remove_key_params.rb +2 -2
  99. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +2 -2
  100. data/lib/metronome_sdk/models/v1/customer.rb +1 -1
  101. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +2 -2
  102. data/lib/metronome_sdk/models/v1/customer_create_params.rb +20 -20
  103. data/lib/metronome_sdk/models/v1/customer_create_response.rb +2 -2
  104. data/lib/metronome_sdk/models/v1/customer_detail.rb +10 -10
  105. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +4 -4
  106. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
  107. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
  108. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +2 -2
  109. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +2 -2
  110. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +2 -2
  111. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +2 -2
  112. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +2 -2
  113. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +2 -2
  114. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -6
  115. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +2 -2
  116. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +2 -2
  117. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
  118. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +86 -32
  119. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +2 -2
  120. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +2 -2
  121. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +2 -2
  122. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +59 -7
  123. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +2 -2
  124. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +2 -2
  125. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +2 -2
  126. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +24 -24
  127. data/lib/metronome_sdk/models/v1/customers/invoice.rb +74 -73
  128. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +4 -4
  129. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +2 -2
  130. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +2 -2
  131. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +16 -15
  132. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +2 -2
  133. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -2
  134. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +14 -13
  135. data/lib/metronome_sdk/models/v1/plan_detail.rb +18 -18
  136. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +2 -2
  137. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -2
  138. data/lib/metronome_sdk/models/v1/plan_list_customers_params.rb +2 -2
  139. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -2
  140. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +3 -3
  141. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +3 -3
  142. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +2 -2
  143. data/lib/metronome_sdk/models/v1/usage_list_params.rb +9 -8
  144. data/lib/metronome_sdk/models/v1/usage_list_with_groups_params.rb +5 -5
  145. data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
  146. data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
  147. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +78 -23
  148. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +2 -2
  149. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +62 -9
  150. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +2 -2
  151. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1995 -443
  152. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +2 -2
  153. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +1959 -140
  154. data/lib/metronome_sdk/models/v2/contract_list_response.rb +963 -91
  155. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +964 -91
  156. data/lib/metronome_sdk/models.rb +30 -19
  157. data/lib/metronome_sdk/resources/v1/alerts.rb +4 -4
  158. data/lib/metronome_sdk/resources/v1/audit_logs.rb +1 -1
  159. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +3 -3
  160. data/lib/metronome_sdk/resources/v1/contracts/products.rb +9 -6
  161. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +1 -1
  162. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +8 -6
  163. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +4 -4
  164. data/lib/metronome_sdk/resources/v1/contracts.rb +59 -28
  165. data/lib/metronome_sdk/resources/v1/credit_grants.rb +7 -5
  166. data/lib/metronome_sdk/resources/v1/custom_fields.rb +5 -5
  167. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +2 -2
  168. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +5 -5
  169. data/lib/metronome_sdk/resources/v1/customers/commits.rb +9 -7
  170. data/lib/metronome_sdk/resources/v1/customers/credits.rb +5 -3
  171. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +4 -4
  172. data/lib/metronome_sdk/resources/v1/customers/plans.rb +3 -3
  173. data/lib/metronome_sdk/resources/v1/customers.rb +43 -4
  174. data/lib/metronome_sdk/resources/v1/dashboards.rb +4 -4
  175. data/lib/metronome_sdk/resources/v1/plans.rb +1 -1
  176. data/lib/metronome_sdk/resources/v1/usage.rb +30 -5
  177. data/lib/metronome_sdk/resources/v2/contracts.rb +45 -31
  178. data/lib/metronome_sdk/version.rb +1 -1
  179. data/lib/metronome_sdk.rb +9 -1
  180. data/rbi/metronome_sdk/errors.rbi +16 -0
  181. data/rbi/metronome_sdk/internal/transport/pooled_net_requester.rbi +5 -1
  182. data/rbi/metronome_sdk/internal/type/array_of.rbi +6 -0
  183. data/rbi/metronome_sdk/internal/type/base_model.rbi +5 -0
  184. data/rbi/metronome_sdk/internal/type/boolean.rbi +8 -0
  185. data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
  186. data/rbi/metronome_sdk/internal/type/enum.rbi +5 -0
  187. data/rbi/metronome_sdk/internal/type/file_input.rbi +5 -0
  188. data/rbi/metronome_sdk/internal/type/hash_of.rbi +6 -0
  189. data/rbi/metronome_sdk/internal/type/union.rbi +10 -0
  190. data/rbi/metronome_sdk/internal/type/unknown.rbi +8 -0
  191. data/rbi/metronome_sdk/internal/util.rbi +36 -0
  192. data/rbi/metronome_sdk/internal.rbi +5 -0
  193. data/rbi/metronome_sdk/models/commit.rbi +376 -39
  194. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +791 -54
  195. data/rbi/metronome_sdk/models/credit.rbi +376 -25
  196. data/rbi/metronome_sdk/models/override.rbi +66 -0
  197. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +9 -9
  198. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +10 -4
  199. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +995 -17
  200. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +2220 -136
  201. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +9 -2
  202. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +820 -28
  203. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbi +72 -0
  204. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +66 -0
  205. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +820 -28
  206. data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbi +58 -0
  207. data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbi +212 -0
  208. data/rbi/metronome_sdk/models/v1/contracts/product_list_params.rbi +3 -3
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbi +72 -0
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +66 -0
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +72 -0
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +72 -0
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbi +72 -0
  214. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +66 -0
  215. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
  216. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
  217. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
  218. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
  219. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +121 -8
  220. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +109 -0
  221. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
  222. data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
  223. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
  224. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +113 -8
  225. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +101 -0
  226. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3667 -315
  227. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +5965 -2014
  228. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +2279 -226
  229. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +2279 -226
  230. data/rbi/metronome_sdk/resources/v1/alerts.rbi +5 -2
  231. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +2 -1
  232. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +5 -0
  233. data/rbi/metronome_sdk/resources/v1/contracts.rbi +36 -1
  234. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
  235. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +15 -4
  236. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +9 -0
  237. data/rbi/metronome_sdk/resources/v1/customers.rbi +35 -1
  238. data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
  239. data/rbi/metronome_sdk/resources/v2/contracts.rbi +65 -7
  240. data/sig/metronome_sdk/errors.rbs +9 -0
  241. data/sig/metronome_sdk/internal/transport/pooled_net_requester.rbs +2 -0
  242. data/sig/metronome_sdk/internal/type/array_of.rbs +3 -0
  243. data/sig/metronome_sdk/internal/type/base_model.rbs +2 -0
  244. data/sig/metronome_sdk/internal/type/boolean.rbs +3 -0
  245. data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
  246. data/sig/metronome_sdk/internal/type/enum.rbs +2 -0
  247. data/sig/metronome_sdk/internal/type/file_input.rbs +2 -0
  248. data/sig/metronome_sdk/internal/type/hash_of.rbs +3 -0
  249. data/sig/metronome_sdk/internal/type/union.rbs +2 -0
  250. data/sig/metronome_sdk/internal/type/unknown.rbs +3 -0
  251. data/sig/metronome_sdk/internal/util.rbs +12 -0
  252. data/sig/metronome_sdk/internal.rbs +2 -0
  253. data/sig/metronome_sdk/models/base_usage_filter.rbs +6 -0
  254. data/sig/metronome_sdk/models/commit.rbs +374 -68
  255. data/sig/metronome_sdk/models/contract_without_amendments.rbs +620 -110
  256. data/sig/metronome_sdk/models/credit.rbs +286 -40
  257. data/sig/metronome_sdk/models/credit_type_data.rbs +2 -0
  258. data/sig/metronome_sdk/models/discount.rbs +11 -0
  259. data/sig/metronome_sdk/models/event_type_filter.rbs +5 -0
  260. data/sig/metronome_sdk/models/id.rbs +2 -0
  261. data/sig/metronome_sdk/models/override.rbs +92 -22
  262. data/sig/metronome_sdk/models/pro_service.rbs +11 -0
  263. data/sig/metronome_sdk/models/property_filter.rbs +7 -0
  264. data/sig/metronome_sdk/models/rate.rbs +16 -4
  265. data/sig/metronome_sdk/models/schedule_duration.rbs +12 -0
  266. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +20 -6
  267. data/sig/metronome_sdk/models/scheduled_charge.rbs +12 -0
  268. data/sig/metronome_sdk/models/tier.rbs +2 -0
  269. data/sig/metronome_sdk/models/v1/alert_archive_params.rbs +6 -0
  270. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +2 -0
  271. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +29 -4
  272. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +2 -0
  273. data/sig/metronome_sdk/models/v1/audit_log_list_params.rbs +11 -0
  274. data/sig/metronome_sdk/models/v1/audit_log_list_response.rbs +16 -0
  275. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +2 -0
  276. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +2 -0
  277. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -0
  278. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +2 -0
  279. data/sig/metronome_sdk/models/v1/billable_metric_list_params.rbs +7 -0
  280. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +13 -0
  281. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_params.rbs +5 -0
  282. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +17 -0
  283. data/sig/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbs +11 -0
  284. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +719 -75
  285. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +2 -0
  286. data/sig/metronome_sdk/models/v1/contract_archive_params.rbs +7 -0
  287. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +2 -0
  288. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbs +47 -12
  289. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +2 -0
  290. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +1503 -250
  291. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +2 -0
  292. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +14 -0
  293. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +5 -0
  294. data/sig/metronome_sdk/models/v1/contract_list_params.rbs +10 -0
  295. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +459 -10
  296. data/sig/metronome_sdk/models/v1/contract_retrieve_params.rbs +8 -0
  297. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbs +39 -0
  298. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +48 -0
  299. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +459 -10
  300. data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbs +34 -0
  301. data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbs +101 -0
  302. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rbs +21 -0
  303. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +2 -0
  304. data/sig/metronome_sdk/models/v1/contract_set_usage_filter_params.rbs +9 -0
  305. data/sig/metronome_sdk/models/v1/contract_update_end_date_params.rbs +8 -0
  306. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +2 -0
  307. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_params.rbs +7 -0
  308. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_response.rbs +10 -0
  309. data/sig/metronome_sdk/models/v1/contracts/named_schedule_update_params.rbs +9 -0
  310. data/sig/metronome_sdk/models/v1/contracts/product_archive_params.rbs +5 -0
  311. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +2 -0
  312. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +18 -0
  313. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +2 -0
  314. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +19 -0
  315. data/sig/metronome_sdk/models/v1/contracts/product_list_params.rbs +7 -0
  316. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +29 -0
  317. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +2 -0
  318. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +33 -0
  319. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +19 -0
  320. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +2 -0
  321. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +10 -4
  322. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +9 -4
  323. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +2 -0
  324. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +2 -0
  325. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_params.rbs +21 -0
  326. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +2 -0
  327. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_params.rbs +7 -0
  328. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +23 -0
  329. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +2 -0
  330. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbs +38 -0
  331. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +46 -0
  332. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +27 -0
  333. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_params.rbs +14 -0
  334. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +2 -0
  335. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_params.rbs +8 -0
  336. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_response.rbs +10 -0
  337. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_update_params.rbs +10 -0
  338. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_params.rbs +6 -0
  339. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +2 -0
  340. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rbs +8 -0
  341. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +2 -0
  342. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +59 -8
  343. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +2 -0
  344. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +51 -4
  345. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +23 -0
  346. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbs +38 -0
  347. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +41 -0
  348. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +32 -4
  349. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +2 -0
  350. data/sig/metronome_sdk/models/v1/credit_grant_edit_params.rbs +8 -0
  351. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +2 -0
  352. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +29 -0
  353. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +30 -0
  354. data/sig/metronome_sdk/models/v1/credit_grant_list_params.rbs +11 -0
  355. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +38 -0
  356. data/sig/metronome_sdk/models/v1/credit_grant_void_params.rbs +7 -0
  357. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +2 -0
  358. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +10 -0
  359. data/sig/metronome_sdk/models/v1/custom_field_add_key_params.rbs +7 -0
  360. data/sig/metronome_sdk/models/v1/custom_field_delete_values_params.rbs +7 -0
  361. data/sig/metronome_sdk/models/v1/custom_field_list_keys_params.rbs +12 -6
  362. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +11 -0
  363. data/sig/metronome_sdk/models/v1/custom_field_remove_key_params.rbs +6 -0
  364. data/sig/metronome_sdk/models/v1/custom_field_set_values_params.rbs +7 -0
  365. data/sig/metronome_sdk/models/v1/customer.rbs +8 -0
  366. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +2 -0
  367. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +2 -0
  368. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +52 -26
  369. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +2 -0
  370. data/sig/metronome_sdk/models/v1/customer_detail.rbs +23 -4
  371. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_params.rbs +9 -0
  372. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +17 -0
  373. data/sig/metronome_sdk/models/v1/customer_list_costs_params.rbs +9 -0
  374. data/sig/metronome_sdk/models/v1/customer_list_costs_response.rbs +19 -0
  375. data/sig/metronome_sdk/models/v1/customer_list_params.rbs +10 -0
  376. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
  377. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
  378. data/sig/metronome_sdk/models/v1/customer_retrieve_params.rbs +5 -0
  379. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +2 -0
  380. data/sig/metronome_sdk/models/v1/customer_set_ingest_aliases_params.rbs +6 -0
  381. data/sig/metronome_sdk/models/v1/customer_set_name_params.rbs +6 -0
  382. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +2 -0
  383. data/sig/metronome_sdk/models/v1/customer_update_config_params.rbs +7 -0
  384. data/sig/metronome_sdk/models/v1/customers/alert_list_params.rbs +13 -6
  385. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +5 -0
  386. data/sig/metronome_sdk/models/v1/customers/alert_reset_params.rbs +6 -0
  387. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +7 -0
  388. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +2 -0
  389. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +10 -0
  390. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +6 -0
  391. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +6 -0
  392. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +23 -0
  393. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +116 -8
  394. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +2 -0
  395. data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +14 -0
  396. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +5 -0
  397. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_params.rbs +8 -0
  398. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +2 -0
  399. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +82 -0
  400. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +2 -0
  401. data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +14 -0
  402. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +5 -0
  403. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_params.rbs +7 -0
  404. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +2 -0
  405. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +45 -16
  406. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +195 -40
  407. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_params.rbs +11 -0
  408. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_response.rbs +2 -0
  409. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rbs +14 -0
  410. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +5 -0
  411. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +13 -0
  412. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_params.rbs +7 -0
  413. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +2 -0
  414. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_params.rbs +7 -0
  415. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_response.rbs +10 -0
  416. data/sig/metronome_sdk/models/v1/customers/named_schedule_update_params.rbs +9 -0
  417. data/sig/metronome_sdk/models/v1/customers/plan_add_params.rbs +38 -4
  418. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +2 -0
  419. data/sig/metronome_sdk/models/v1/customers/plan_end_params.rbs +9 -0
  420. data/sig/metronome_sdk/models/v1/customers/plan_end_response.rbs +2 -0
  421. data/sig/metronome_sdk/models/v1/customers/plan_list_params.rbs +7 -0
  422. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_params.rbs +8 -0
  423. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbs +14 -0
  424. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +23 -0
  425. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +30 -7
  426. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_response.rbs +6 -0
  427. data/sig/metronome_sdk/models/v1/invoice_regenerate_params.rbs +5 -0
  428. data/sig/metronome_sdk/models/v1/invoice_regenerate_response.rbs +6 -0
  429. data/sig/metronome_sdk/models/v1/invoice_void_params.rbs +5 -0
  430. data/sig/metronome_sdk/models/v1/invoice_void_response.rbs +6 -0
  431. data/sig/metronome_sdk/models/v1/plan_detail.rbs +38 -0
  432. data/sig/metronome_sdk/models/v1/plan_get_details_params.rbs +5 -0
  433. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +2 -0
  434. data/sig/metronome_sdk/models/v1/plan_list_charges_params.rbs +7 -0
  435. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +28 -0
  436. data/sig/metronome_sdk/models/v1/plan_list_customers_params.rbs +8 -0
  437. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +14 -0
  438. data/sig/metronome_sdk/models/v1/plan_list_params.rbs +6 -0
  439. data/sig/metronome_sdk/models/v1/plan_list_response.rbs +7 -0
  440. data/sig/metronome_sdk/models/v1/pricing_unit_list_params.rbs +6 -0
  441. data/sig/metronome_sdk/models/v1/pricing_unit_list_response.rbs +2 -0
  442. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +12 -4
  443. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +9 -4
  444. data/sig/metronome_sdk/models/v1/service_list_params.rbs +2 -0
  445. data/sig/metronome_sdk/models/v1/service_list_response.rbs +10 -0
  446. data/sig/metronome_sdk/models/v1/usage_ingest_params.rbs +13 -0
  447. data/sig/metronome_sdk/models/v1/usage_list_params.rbs +17 -0
  448. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +15 -0
  449. data/sig/metronome_sdk/models/v1/usage_list_with_groups_params.rbs +15 -0
  450. data/sig/metronome_sdk/models/v1/usage_list_with_groups_response.rbs +8 -0
  451. data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
  452. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
  453. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +106 -1
  454. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +2 -0
  455. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +81 -1
  456. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +2 -0
  457. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +2233 -303
  458. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +2 -0
  459. data/sig/metronome_sdk/models/v2/contract_get_edit_history_params.rbs +6 -0
  460. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +2475 -453
  461. data/sig/metronome_sdk/models/v2/contract_list_params.rbs +10 -0
  462. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +1400 -43
  463. data/sig/metronome_sdk/models/v2/contract_retrieve_params.rbs +9 -0
  464. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +1400 -43
  465. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -0
  466. data/sig/metronome_sdk/resources/v1/contracts.rbs +10 -0
  467. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
  468. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  469. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -1
  470. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
  471. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
  472. data/sig/metronome_sdk/resources/v1/customers.rbs +8 -0
  473. data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
  474. data/sig/metronome_sdk/resources/v2/contracts.rbs +8 -1
  475. metadata +20 -2
@@ -13,6 +13,10 @@ module MetronomeSDK
13
13
  data: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data]
14
14
  ) -> void
15
15
 
16
+ def to_hash: -> {
17
+ data: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data]
18
+ }
19
+
16
20
  type data =
17
21
  {
18
22
  id: String,
@@ -20,11 +24,14 @@ module MetronomeSDK
20
24
  add_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit],
21
25
  add_discounts: ::Array[MetronomeSDK::Discount],
22
26
  add_overrides: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride],
27
+ add_prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration,
23
28
  add_pro_services: ::Array[MetronomeSDK::ProService],
24
29
  add_recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit],
25
30
  add_recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit],
26
31
  add_reseller_royalties: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddResellerRoyalty],
27
32
  add_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge],
33
+ add_spend_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration,
34
+ add_subscriptions: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription],
28
35
  add_usage_filters: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddUsageFilter],
29
36
  archive_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::ArchiveCommit],
30
37
  archive_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::ArchiveCredit],
@@ -33,10 +40,16 @@ module MetronomeSDK
33
40
  timestamp: Time,
34
41
  update_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit],
35
42
  update_contract_end_date: Time,
43
+ update_contract_name: String?,
36
44
  update_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit],
37
45
  update_discounts: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount],
46
+ update_prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration,
47
+ update_recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit],
48
+ update_recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit],
38
49
  update_refund_invoices: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRefundInvoice],
39
- update_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge]
50
+ update_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge],
51
+ update_spend_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration,
52
+ update_subscriptions: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription]
40
53
  }
41
54
 
42
55
  class Data < MetronomeSDK::Internal::Type::BaseModel
@@ -66,6 +79,12 @@ module MetronomeSDK
66
79
  ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride]
67
80
  ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride]
68
81
 
82
+ attr_reader add_prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration?
83
+
84
+ def add_prepaid_balance_threshold_configuration=: (
85
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration
86
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration
87
+
69
88
  attr_reader add_pro_services: ::Array[MetronomeSDK::ProService]?
70
89
 
71
90
  def add_pro_services=: (
@@ -96,6 +115,18 @@ module MetronomeSDK
96
115
  ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge]
97
116
  ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge]
98
117
 
118
+ attr_reader add_spend_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration?
119
+
120
+ def add_spend_threshold_configuration=: (
121
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration
122
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration
123
+
124
+ attr_reader add_subscriptions: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription]?
125
+
126
+ def add_subscriptions=: (
127
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription]
128
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription]
129
+
99
130
  attr_reader add_usage_filters: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddUsageFilter]?
100
131
 
101
132
  def add_usage_filters=: (
@@ -140,6 +171,8 @@ module MetronomeSDK
140
171
 
141
172
  def update_contract_end_date=: (Time) -> Time
142
173
 
174
+ attr_accessor update_contract_name: String?
175
+
143
176
  attr_reader update_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit]?
144
177
 
145
178
  def update_credits=: (
@@ -152,6 +185,24 @@ module MetronomeSDK
152
185
  ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount]
153
186
  ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount]
154
187
 
188
+ attr_reader update_prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration?
189
+
190
+ def update_prepaid_balance_threshold_configuration=: (
191
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration
192
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration
193
+
194
+ attr_reader update_recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit]?
195
+
196
+ def update_recurring_commits=: (
197
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit]
198
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit]
199
+
200
+ attr_reader update_recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit]?
201
+
202
+ def update_recurring_credits=: (
203
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit]
204
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit]
205
+
155
206
  attr_reader update_refund_invoices: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRefundInvoice]?
156
207
 
157
208
  def update_refund_invoices=: (
@@ -164,17 +215,32 @@ module MetronomeSDK
164
215
  ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge]
165
216
  ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge]
166
217
 
218
+ attr_reader update_spend_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration?
219
+
220
+ def update_spend_threshold_configuration=: (
221
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration
222
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration
223
+
224
+ attr_reader update_subscriptions: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription]?
225
+
226
+ def update_subscriptions=: (
227
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription]
228
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription]
229
+
167
230
  def initialize: (
168
231
  id: String,
169
232
  ?add_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit],
170
233
  ?add_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit],
171
234
  ?add_discounts: ::Array[MetronomeSDK::Discount],
172
235
  ?add_overrides: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride],
236
+ ?add_prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration,
173
237
  ?add_pro_services: ::Array[MetronomeSDK::ProService],
174
238
  ?add_recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit],
175
239
  ?add_recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit],
176
240
  ?add_reseller_royalties: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddResellerRoyalty],
177
241
  ?add_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge],
242
+ ?add_spend_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration,
243
+ ?add_subscriptions: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription],
178
244
  ?add_usage_filters: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddUsageFilter],
179
245
  ?archive_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::ArchiveCommit],
180
246
  ?archive_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::ArchiveCredit],
@@ -183,12 +249,52 @@ module MetronomeSDK
183
249
  ?timestamp: Time,
184
250
  ?update_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit],
185
251
  ?update_contract_end_date: Time,
252
+ ?update_contract_name: String?,
186
253
  ?update_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit],
187
254
  ?update_discounts: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount],
255
+ ?update_prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration,
256
+ ?update_recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit],
257
+ ?update_recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit],
188
258
  ?update_refund_invoices: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRefundInvoice],
189
- ?update_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge]
259
+ ?update_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge],
260
+ ?update_spend_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration,
261
+ ?update_subscriptions: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription]
190
262
  ) -> void
191
263
 
264
+ def to_hash: -> {
265
+ id: String,
266
+ add_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit],
267
+ add_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit],
268
+ add_discounts: ::Array[MetronomeSDK::Discount],
269
+ add_overrides: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride],
270
+ add_prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration,
271
+ add_pro_services: ::Array[MetronomeSDK::ProService],
272
+ add_recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit],
273
+ add_recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit],
274
+ add_reseller_royalties: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddResellerRoyalty],
275
+ add_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge],
276
+ add_spend_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration,
277
+ add_subscriptions: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription],
278
+ add_usage_filters: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddUsageFilter],
279
+ archive_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::ArchiveCommit],
280
+ archive_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::ArchiveCredit],
281
+ archive_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::ArchiveScheduledCharge],
282
+ remove_overrides: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::RemoveOverride],
283
+ timestamp: Time,
284
+ update_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit],
285
+ update_contract_end_date: Time,
286
+ update_contract_name: String?,
287
+ update_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit],
288
+ update_discounts: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount],
289
+ update_prepaid_balance_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration,
290
+ update_recurring_commits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit],
291
+ update_recurring_credits: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit],
292
+ update_refund_invoices: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRefundInvoice],
293
+ update_scheduled_charges: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge],
294
+ update_spend_threshold_configuration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration,
295
+ update_subscriptions: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription]
296
+ }
297
+
192
298
  type add_commit =
193
299
  {
194
300
  id: String,
@@ -204,7 +310,8 @@ module MetronomeSDK
204
310
  priority: Float,
205
311
  rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::rate_type,
206
312
  rollover_fraction: Float,
207
- salesforce_opportunity_id: String
313
+ salesforce_opportunity_id: String,
314
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Specifier]
208
315
  }
209
316
 
210
317
  class AddCommit < MetronomeSDK::Internal::Type::BaseModel
@@ -264,6 +371,12 @@ module MetronomeSDK
264
371
 
265
372
  def salesforce_opportunity_id=: (String) -> String
266
373
 
374
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Specifier]?
375
+
376
+ def specifiers=: (
377
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Specifier]
378
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Specifier]
379
+
267
380
  def initialize: (
268
381
  id: String,
269
382
  product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Product,
@@ -278,9 +391,28 @@ module MetronomeSDK
278
391
  ?priority: Float,
279
392
  ?rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::rate_type,
280
393
  ?rollover_fraction: Float,
281
- ?salesforce_opportunity_id: String
394
+ ?salesforce_opportunity_id: String,
395
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Specifier]
282
396
  ) -> void
283
397
 
398
+ def to_hash: -> {
399
+ id: String,
400
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Product,
401
+ type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::type_,
402
+ access_schedule: MetronomeSDK::ScheduleDuration,
403
+ applicable_product_ids: ::Array[String],
404
+ applicable_product_tags: ::Array[String],
405
+ description: String,
406
+ invoice_schedule: MetronomeSDK::SchedulePointInTime,
407
+ name: String,
408
+ netsuite_sales_order_id: String,
409
+ priority: Float,
410
+ rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::rate_type,
411
+ rollover_fraction: Float,
412
+ salesforce_opportunity_id: String,
413
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::Specifier]
414
+ }
415
+
284
416
  type product = { id: String, name: String }
285
417
 
286
418
  class Product < MetronomeSDK::Internal::Type::BaseModel
@@ -289,6 +421,8 @@ module MetronomeSDK
289
421
  attr_accessor name: String
290
422
 
291
423
  def initialize: (id: String, name: String) -> void
424
+
425
+ def to_hash: -> { id: String, name: String }
292
426
  end
293
427
 
294
428
  type type_ = :PREPAID | :POSTPAID
@@ -312,6 +446,50 @@ module MetronomeSDK
312
446
 
313
447
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCommit::rate_type]
314
448
  end
449
+
450
+ type specifier =
451
+ {
452
+ presentation_group_values: ::Hash[Symbol, String],
453
+ pricing_group_values: ::Hash[Symbol, String],
454
+ product_id: String,
455
+ product_tags: ::Array[String]
456
+ }
457
+
458
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
459
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
460
+
461
+ def presentation_group_values=: (
462
+ ::Hash[Symbol, String]
463
+ ) -> ::Hash[Symbol, String]
464
+
465
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
466
+
467
+ def pricing_group_values=: (
468
+ ::Hash[Symbol, String]
469
+ ) -> ::Hash[Symbol, String]
470
+
471
+ attr_reader product_id: String?
472
+
473
+ def product_id=: (String) -> String
474
+
475
+ attr_reader product_tags: ::Array[String]?
476
+
477
+ def product_tags=: (::Array[String]) -> ::Array[String]
478
+
479
+ def initialize: (
480
+ ?presentation_group_values: ::Hash[Symbol, String],
481
+ ?pricing_group_values: ::Hash[Symbol, String],
482
+ ?product_id: String,
483
+ ?product_tags: ::Array[String]
484
+ ) -> void
485
+
486
+ def to_hash: -> {
487
+ presentation_group_values: ::Hash[Symbol, String],
488
+ pricing_group_values: ::Hash[Symbol, String],
489
+ product_id: String,
490
+ product_tags: ::Array[String]
491
+ }
492
+ end
315
493
  end
316
494
 
317
495
  type add_credit =
@@ -326,7 +504,8 @@ module MetronomeSDK
326
504
  name: String,
327
505
  netsuite_sales_order_id: String,
328
506
  priority: Float,
329
- salesforce_opportunity_id: String
507
+ salesforce_opportunity_id: String,
508
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Specifier]
330
509
  }
331
510
 
332
511
  class AddCredit < MetronomeSDK::Internal::Type::BaseModel
@@ -370,6 +549,12 @@ module MetronomeSDK
370
549
 
371
550
  def salesforce_opportunity_id=: (String) -> String
372
551
 
552
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Specifier]?
553
+
554
+ def specifiers=: (
555
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Specifier]
556
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Specifier]
557
+
373
558
  def initialize: (
374
559
  id: String,
375
560
  product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Product,
@@ -381,9 +566,25 @@ module MetronomeSDK
381
566
  ?name: String,
382
567
  ?netsuite_sales_order_id: String,
383
568
  ?priority: Float,
384
- ?salesforce_opportunity_id: String
569
+ ?salesforce_opportunity_id: String,
570
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Specifier]
385
571
  ) -> void
386
572
 
573
+ def to_hash: -> {
574
+ id: String,
575
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Product,
576
+ type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::type_,
577
+ access_schedule: MetronomeSDK::ScheduleDuration,
578
+ applicable_product_ids: ::Array[String],
579
+ applicable_product_tags: ::Array[String],
580
+ description: String,
581
+ name: String,
582
+ netsuite_sales_order_id: String,
583
+ priority: Float,
584
+ salesforce_opportunity_id: String,
585
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::Specifier]
586
+ }
587
+
387
588
  type product = { id: String, name: String }
388
589
 
389
590
  class Product < MetronomeSDK::Internal::Type::BaseModel
@@ -392,6 +593,8 @@ module MetronomeSDK
392
593
  attr_accessor name: String
393
594
 
394
595
  def initialize: (id: String, name: String) -> void
596
+
597
+ def to_hash: -> { id: String, name: String }
395
598
  end
396
599
 
397
600
  type type_ = :CREDIT
@@ -403,6 +606,50 @@ module MetronomeSDK
403
606
 
404
607
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddCredit::type_]
405
608
  end
609
+
610
+ type specifier =
611
+ {
612
+ presentation_group_values: ::Hash[Symbol, String],
613
+ pricing_group_values: ::Hash[Symbol, String],
614
+ product_id: String,
615
+ product_tags: ::Array[String]
616
+ }
617
+
618
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
619
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
620
+
621
+ def presentation_group_values=: (
622
+ ::Hash[Symbol, String]
623
+ ) -> ::Hash[Symbol, String]
624
+
625
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
626
+
627
+ def pricing_group_values=: (
628
+ ::Hash[Symbol, String]
629
+ ) -> ::Hash[Symbol, String]
630
+
631
+ attr_reader product_id: String?
632
+
633
+ def product_id=: (String) -> String
634
+
635
+ attr_reader product_tags: ::Array[String]?
636
+
637
+ def product_tags=: (::Array[String]) -> ::Array[String]
638
+
639
+ def initialize: (
640
+ ?presentation_group_values: ::Hash[Symbol, String],
641
+ ?pricing_group_values: ::Hash[Symbol, String],
642
+ ?product_id: String,
643
+ ?product_tags: ::Array[String]
644
+ ) -> void
645
+
646
+ def to_hash: -> {
647
+ presentation_group_values: ::Hash[Symbol, String],
648
+ pricing_group_values: ::Hash[Symbol, String],
649
+ product_id: String,
650
+ product_tags: ::Array[String]
651
+ }
652
+ end
406
653
  end
407
654
 
408
655
  type add_override =
@@ -505,8 +752,26 @@ module MetronomeSDK
505
752
  ?type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::type_
506
753
  ) -> void
507
754
 
755
+ def to_hash: -> {
756
+ id: String,
757
+ starting_at: Time,
758
+ applicable_product_tags: ::Array[String],
759
+ ending_before: Time,
760
+ entitled: bool,
761
+ is_commit_specific: bool,
762
+ multiplier: Float,
763
+ override_specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideSpecifier],
764
+ override_tiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideTier],
765
+ overwrite_rate: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate,
766
+ priority: Float,
767
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::Product,
768
+ target: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::target,
769
+ type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::type_
770
+ }
771
+
508
772
  type override_specifier =
509
773
  {
774
+ billing_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideSpecifier::billing_frequency,
510
775
  commit_ids: ::Array[String],
511
776
  presentation_group_values: ::Hash[Symbol, String?],
512
777
  pricing_group_values: ::Hash[Symbol, String],
@@ -517,6 +782,12 @@ module MetronomeSDK
517
782
  }
518
783
 
519
784
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
785
+ attr_reader billing_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideSpecifier::billing_frequency?
786
+
787
+ def billing_frequency=: (
788
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideSpecifier::billing_frequency
789
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideSpecifier::billing_frequency
790
+
520
791
  attr_reader commit_ids: ::Array[String]?
521
792
 
522
793
  def commit_ids=: (::Array[String]) -> ::Array[String]
@@ -550,6 +821,7 @@ module MetronomeSDK
550
821
  def recurring_credit_ids=: (::Array[String]) -> ::Array[String]
551
822
 
552
823
  def initialize: (
824
+ ?billing_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideSpecifier::billing_frequency,
553
825
  ?commit_ids: ::Array[String],
554
826
  ?presentation_group_values: ::Hash[Symbol, String?],
555
827
  ?pricing_group_values: ::Hash[Symbol, String],
@@ -558,6 +830,30 @@ module MetronomeSDK
558
830
  ?recurring_commit_ids: ::Array[String],
559
831
  ?recurring_credit_ids: ::Array[String]
560
832
  ) -> void
833
+
834
+ def to_hash: -> {
835
+ billing_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideSpecifier::billing_frequency,
836
+ commit_ids: ::Array[String],
837
+ presentation_group_values: ::Hash[Symbol, String?],
838
+ pricing_group_values: ::Hash[Symbol, String],
839
+ product_id: String,
840
+ product_tags: ::Array[String],
841
+ recurring_commit_ids: ::Array[String],
842
+ recurring_credit_ids: ::Array[String]
843
+ }
844
+
845
+ type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
846
+
847
+ module BillingFrequency
848
+ extend MetronomeSDK::Internal::Type::Enum
849
+
850
+ MONTHLY: :MONTHLY
851
+ QUARTERLY: :QUARTERLY
852
+ ANNUAL: :ANNUAL
853
+ WEEKLY: :WEEKLY
854
+
855
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverrideSpecifier::billing_frequency]
856
+ end
561
857
  end
562
858
 
563
859
  type override_tier = { multiplier: Float, size: Float }
@@ -570,6 +866,8 @@ module MetronomeSDK
570
866
  def size=: (Float) -> Float
571
867
 
572
868
  def initialize: (multiplier: Float, ?size: Float) -> void
869
+
870
+ def to_hash: -> { multiplier: Float, size: Float }
573
871
  end
574
872
 
575
873
  type overwrite_rate =
@@ -624,6 +922,16 @@ module MetronomeSDK
624
922
  ?tiers: ::Array[MetronomeSDK::Tier]
625
923
  ) -> void
626
924
 
925
+ def to_hash: -> {
926
+ rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::rate_type,
927
+ credit_type: MetronomeSDK::CreditTypeData,
928
+ custom_rate: ::Hash[Symbol, top],
929
+ is_prorated: bool,
930
+ price: Float,
931
+ quantity: Float,
932
+ tiers: ::Array[MetronomeSDK::Tier]
933
+ }
934
+
627
935
  type rate_type =
628
936
  :FLAT | :PERCENTAGE | :SUBSCRIPTION | :TIERED | :CUSTOM
629
937
 
@@ -648,6 +956,8 @@ module MetronomeSDK
648
956
  attr_accessor name: String
649
957
 
650
958
  def initialize: (id: String, name: String) -> void
959
+
960
+ def to_hash: -> { id: String, name: String }
651
961
  end
652
962
 
653
963
  type target = :COMMIT_RATE | :LIST_RATE
@@ -674,95 +984,365 @@ module MetronomeSDK
674
984
  end
675
985
  end
676
986
 
677
- type add_recurring_commit =
987
+ type add_prepaid_balance_threshold_configuration =
678
988
  {
679
- id: String,
680
- access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::AccessAmount,
681
- commit_duration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::CommitDuration,
682
- priority: Float,
683
- product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Product,
684
- rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::rate_type,
685
- starting_at: Time,
686
- applicable_product_ids: ::Array[String],
687
- applicable_product_tags: ::Array[String],
688
- contract: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract,
689
- description: String,
690
- ending_before: Time,
691
- invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount,
692
- name: String,
693
- netsuite_sales_order_id: String,
694
- proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration,
695
- recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency,
696
- rollover_fraction: Float
989
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit,
990
+ is_enabled: bool,
991
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig,
992
+ recharge_to_amount: Float,
993
+ threshold_amount: Float,
994
+ custom_credit_type_id: String
697
995
  }
698
996
 
699
- class AddRecurringCommit < MetronomeSDK::Internal::Type::BaseModel
700
- attr_accessor id: String
997
+ class AddPrepaidBalanceThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
998
+ attr_accessor commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit
701
999
 
702
- attr_accessor access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::AccessAmount
1000
+ attr_accessor is_enabled: bool
703
1001
 
704
- attr_accessor commit_duration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::CommitDuration
1002
+ attr_accessor payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig
705
1003
 
706
- attr_accessor priority: Float
1004
+ attr_accessor recharge_to_amount: Float
707
1005
 
708
- attr_accessor product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Product
1006
+ attr_accessor threshold_amount: Float
709
1007
 
710
- attr_accessor rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::rate_type
1008
+ attr_reader custom_credit_type_id: String?
711
1009
 
712
- attr_accessor starting_at: Time
1010
+ def custom_credit_type_id=: (String) -> String
713
1011
 
714
- attr_reader applicable_product_ids: ::Array[String]?
1012
+ def initialize: (
1013
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit,
1014
+ is_enabled: bool,
1015
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig,
1016
+ recharge_to_amount: Float,
1017
+ threshold_amount: Float,
1018
+ ?custom_credit_type_id: String
1019
+ ) -> void
715
1020
 
716
- def applicable_product_ids=: (::Array[String]) -> ::Array[String]
1021
+ def to_hash: -> {
1022
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit,
1023
+ is_enabled: bool,
1024
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig,
1025
+ recharge_to_amount: Float,
1026
+ threshold_amount: Float,
1027
+ custom_credit_type_id: String
1028
+ }
717
1029
 
718
- attr_reader applicable_product_tags: ::Array[String]?
1030
+ type commit =
1031
+ {
1032
+ product_id: String,
1033
+ applicable_product_ids: ::Array[String],
1034
+ applicable_product_tags: ::Array[String],
1035
+ description: String,
1036
+ name: String,
1037
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit::Specifier]
1038
+ }
719
1039
 
720
- def applicable_product_tags=: (::Array[String]) -> ::Array[String]
1040
+ class Commit < MetronomeSDK::Internal::Type::BaseModel
1041
+ attr_accessor product_id: String
721
1042
 
722
- attr_reader contract: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract?
1043
+ attr_reader applicable_product_ids: ::Array[String]?
723
1044
 
724
- def contract=: (
725
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract
726
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract
1045
+ def applicable_product_ids=: (::Array[String]) -> ::Array[String]
727
1046
 
728
- attr_reader description: String?
1047
+ attr_reader applicable_product_tags: ::Array[String]?
729
1048
 
730
- def description=: (String) -> String
1049
+ def applicable_product_tags=: (::Array[String]) -> ::Array[String]
731
1050
 
732
- attr_reader ending_before: Time?
1051
+ attr_reader description: String?
733
1052
 
734
- def ending_before=: (Time) -> Time
1053
+ def description=: (String) -> String
735
1054
 
736
- attr_reader invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount?
1055
+ attr_reader name: String?
737
1056
 
738
- def invoice_amount=: (
739
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount
740
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount
1057
+ def name=: (String) -> String
741
1058
 
742
- attr_reader name: String?
1059
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit::Specifier]?
743
1060
 
744
- def name=: (String) -> String
1061
+ def specifiers=: (
1062
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit::Specifier]
1063
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit::Specifier]
745
1064
 
746
- attr_reader netsuite_sales_order_id: String?
1065
+ def initialize: (
1066
+ product_id: String,
1067
+ ?applicable_product_ids: ::Array[String],
1068
+ ?applicable_product_tags: ::Array[String],
1069
+ ?description: String,
1070
+ ?name: String,
1071
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit::Specifier]
1072
+ ) -> void
747
1073
 
748
- def netsuite_sales_order_id=: (String) -> String
1074
+ def to_hash: -> {
1075
+ product_id: String,
1076
+ applicable_product_ids: ::Array[String],
1077
+ applicable_product_tags: ::Array[String],
1078
+ description: String,
1079
+ name: String,
1080
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::Commit::Specifier]
1081
+ }
749
1082
 
750
- attr_reader proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration?
1083
+ type specifier =
1084
+ {
1085
+ presentation_group_values: ::Hash[Symbol, String],
1086
+ pricing_group_values: ::Hash[Symbol, String],
1087
+ product_id: String,
1088
+ product_tags: ::Array[String]
1089
+ }
751
1090
 
752
- def proration=: (
753
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration
754
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration
1091
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
1092
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
755
1093
 
756
- attr_reader recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency?
1094
+ def presentation_group_values=: (
1095
+ ::Hash[Symbol, String]
1096
+ ) -> ::Hash[Symbol, String]
757
1097
 
758
- def recurrence_frequency=: (
759
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency
760
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency
1098
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
761
1099
 
762
- attr_reader rollover_fraction: Float?
1100
+ def pricing_group_values=: (
1101
+ ::Hash[Symbol, String]
1102
+ ) -> ::Hash[Symbol, String]
1103
+
1104
+ attr_reader product_id: String?
1105
+
1106
+ def product_id=: (String) -> String
1107
+
1108
+ attr_reader product_tags: ::Array[String]?
1109
+
1110
+ def product_tags=: (::Array[String]) -> ::Array[String]
1111
+
1112
+ def initialize: (
1113
+ ?presentation_group_values: ::Hash[Symbol, String],
1114
+ ?pricing_group_values: ::Hash[Symbol, String],
1115
+ ?product_id: String,
1116
+ ?product_tags: ::Array[String]
1117
+ ) -> void
1118
+
1119
+ def to_hash: -> {
1120
+ presentation_group_values: ::Hash[Symbol, String],
1121
+ pricing_group_values: ::Hash[Symbol, String],
1122
+ product_id: String,
1123
+ product_tags: ::Array[String]
1124
+ }
1125
+ end
1126
+ end
1127
+
1128
+ type payment_gate_config =
1129
+ {
1130
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
1131
+ precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
1132
+ stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
1133
+ tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
1134
+ }
1135
+
1136
+ class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
1137
+ attr_accessor payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type
1138
+
1139
+ attr_reader precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig?
1140
+
1141
+ def precalculated_tax_config=: (
1142
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
1143
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
1144
+
1145
+ attr_reader stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig?
1146
+
1147
+ def stripe_config=: (
1148
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig
1149
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig
1150
+
1151
+ attr_reader tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type?
1152
+
1153
+ def tax_type=: (
1154
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
1155
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
1156
+
1157
+ def initialize: (
1158
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
1159
+ ?precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
1160
+ ?stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
1161
+ ?tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
1162
+ ) -> void
1163
+
1164
+ def to_hash: -> {
1165
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
1166
+ precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
1167
+ stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
1168
+ tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
1169
+ }
1170
+
1171
+ type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
1172
+
1173
+ module PaymentGateType
1174
+ extend MetronomeSDK::Internal::Type::Enum
1175
+
1176
+ NONE: :NONE
1177
+ STRIPE: :STRIPE
1178
+ EXTERNAL: :EXTERNAL
1179
+
1180
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type]
1181
+ end
1182
+
1183
+ type precalculated_tax_config =
1184
+ { tax_amount: Float, tax_name: String }
1185
+
1186
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
1187
+ attr_accessor tax_amount: Float
1188
+
1189
+ attr_reader tax_name: String?
1190
+
1191
+ def tax_name=: (String) -> String
1192
+
1193
+ def initialize: (tax_amount: Float, ?tax_name: String) -> void
1194
+
1195
+ def to_hash: -> { tax_amount: Float, tax_name: String }
1196
+ end
1197
+
1198
+ type stripe_config =
1199
+ {
1200
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
1201
+ invoice_metadata: ::Hash[Symbol, String]
1202
+ }
1203
+
1204
+ class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
1205
+ attr_accessor payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
1206
+
1207
+ attr_reader invoice_metadata: ::Hash[Symbol, String]?
1208
+
1209
+ def invoice_metadata=: (
1210
+ ::Hash[Symbol, String]
1211
+ ) -> ::Hash[Symbol, String]
1212
+
1213
+ def initialize: (
1214
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
1215
+ ?invoice_metadata: ::Hash[Symbol, String]
1216
+ ) -> void
1217
+
1218
+ def to_hash: -> {
1219
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
1220
+ invoice_metadata: ::Hash[Symbol, String]
1221
+ }
1222
+
1223
+ type payment_type = :INVOICE | :PAYMENT_INTENT
1224
+
1225
+ module PaymentType
1226
+ extend MetronomeSDK::Internal::Type::Enum
1227
+
1228
+ INVOICE: :INVOICE
1229
+ PAYMENT_INTENT: :PAYMENT_INTENT
1230
+
1231
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type]
1232
+ end
1233
+ end
1234
+
1235
+ type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
1236
+
1237
+ module TaxType
1238
+ extend MetronomeSDK::Internal::Type::Enum
1239
+
1240
+ NONE: :NONE
1241
+ STRIPE: :STRIPE
1242
+ ANROK: :ANROK
1243
+ PRECALCULATED: :PRECALCULATED
1244
+
1245
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddPrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type]
1246
+ end
1247
+ end
1248
+ end
1249
+
1250
+ type add_recurring_commit =
1251
+ {
1252
+ id: String,
1253
+ access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::AccessAmount,
1254
+ commit_duration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::CommitDuration,
1255
+ priority: Float,
1256
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Product,
1257
+ rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::rate_type,
1258
+ starting_at: Time,
1259
+ applicable_product_ids: ::Array[String],
1260
+ applicable_product_tags: ::Array[String],
1261
+ contract: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract,
1262
+ description: String,
1263
+ ending_before: Time,
1264
+ invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount,
1265
+ name: String,
1266
+ netsuite_sales_order_id: String,
1267
+ proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration,
1268
+ recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency,
1269
+ rollover_fraction: Float,
1270
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Specifier]
1271
+ }
1272
+
1273
+ class AddRecurringCommit < MetronomeSDK::Internal::Type::BaseModel
1274
+ attr_accessor id: String
1275
+
1276
+ attr_accessor access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::AccessAmount
1277
+
1278
+ attr_accessor commit_duration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::CommitDuration
1279
+
1280
+ attr_accessor priority: Float
1281
+
1282
+ attr_accessor product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Product
1283
+
1284
+ attr_accessor rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::rate_type
1285
+
1286
+ attr_accessor starting_at: Time
1287
+
1288
+ attr_reader applicable_product_ids: ::Array[String]?
1289
+
1290
+ def applicable_product_ids=: (::Array[String]) -> ::Array[String]
1291
+
1292
+ attr_reader applicable_product_tags: ::Array[String]?
1293
+
1294
+ def applicable_product_tags=: (::Array[String]) -> ::Array[String]
1295
+
1296
+ attr_reader contract: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract?
1297
+
1298
+ def contract=: (
1299
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract
1300
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract
1301
+
1302
+ attr_reader description: String?
1303
+
1304
+ def description=: (String) -> String
1305
+
1306
+ attr_reader ending_before: Time?
1307
+
1308
+ def ending_before=: (Time) -> Time
1309
+
1310
+ attr_reader invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount?
1311
+
1312
+ def invoice_amount=: (
1313
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount
1314
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount
1315
+
1316
+ attr_reader name: String?
1317
+
1318
+ def name=: (String) -> String
1319
+
1320
+ attr_reader netsuite_sales_order_id: String?
1321
+
1322
+ def netsuite_sales_order_id=: (String) -> String
1323
+
1324
+ attr_reader proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration?
1325
+
1326
+ def proration=: (
1327
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration
1328
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration
1329
+
1330
+ attr_reader recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency?
1331
+
1332
+ def recurrence_frequency=: (
1333
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency
1334
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency
1335
+
1336
+ attr_reader rollover_fraction: Float?
763
1337
 
764
1338
  def rollover_fraction=: (Float) -> Float
765
1339
 
1340
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Specifier]?
1341
+
1342
+ def specifiers=: (
1343
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Specifier]
1344
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Specifier]
1345
+
766
1346
  def initialize: (
767
1347
  id: String,
768
1348
  access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::AccessAmount,
@@ -781,24 +1361,55 @@ module MetronomeSDK
781
1361
  ?netsuite_sales_order_id: String,
782
1362
  ?proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration,
783
1363
  ?recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency,
784
- ?rollover_fraction: Float
1364
+ ?rollover_fraction: Float,
1365
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Specifier]
785
1366
  ) -> void
786
1367
 
1368
+ def to_hash: -> {
1369
+ id: String,
1370
+ access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::AccessAmount,
1371
+ commit_duration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::CommitDuration,
1372
+ priority: Float,
1373
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Product,
1374
+ rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::rate_type,
1375
+ starting_at: Time,
1376
+ applicable_product_ids: ::Array[String],
1377
+ applicable_product_tags: ::Array[String],
1378
+ contract: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Contract,
1379
+ description: String,
1380
+ ending_before: Time,
1381
+ invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::InvoiceAmount,
1382
+ name: String,
1383
+ netsuite_sales_order_id: String,
1384
+ proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::proration,
1385
+ recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency,
1386
+ rollover_fraction: Float,
1387
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::Specifier]
1388
+ }
1389
+
787
1390
  type access_amount =
788
- { credit_type_id: String, quantity: Float, unit_price: Float }
1391
+ { credit_type_id: String, unit_price: Float, quantity: Float }
789
1392
 
790
1393
  class AccessAmount < MetronomeSDK::Internal::Type::BaseModel
791
1394
  attr_accessor credit_type_id: String
792
1395
 
793
- attr_accessor quantity: Float
794
-
795
1396
  attr_accessor unit_price: Float
796
1397
 
1398
+ attr_reader quantity: Float?
1399
+
1400
+ def quantity=: (Float) -> Float
1401
+
797
1402
  def initialize: (
798
1403
  credit_type_id: String,
799
- quantity: Float,
800
- unit_price: Float
1404
+ unit_price: Float,
1405
+ ?quantity: Float
801
1406
  ) -> void
1407
+
1408
+ def to_hash: -> {
1409
+ credit_type_id: String,
1410
+ unit_price: Float,
1411
+ quantity: Float
1412
+ }
802
1413
  end
803
1414
 
804
1415
  type commit_duration =
@@ -821,6 +1432,11 @@ module MetronomeSDK
821
1432
  ?unit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::CommitDuration::unit
822
1433
  ) -> void
823
1434
 
1435
+ def to_hash: -> {
1436
+ value: Float,
1437
+ unit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::CommitDuration::unit
1438
+ }
1439
+
824
1440
  type unit = :PERIODS
825
1441
 
826
1442
  module Unit
@@ -840,6 +1456,8 @@ module MetronomeSDK
840
1456
  attr_accessor name: String
841
1457
 
842
1458
  def initialize: (id: String, name: String) -> void
1459
+
1460
+ def to_hash: -> { id: String, name: String }
843
1461
  end
844
1462
 
845
1463
  type rate_type = :COMMIT_RATE | :LIST_RATE
@@ -859,6 +1477,8 @@ module MetronomeSDK
859
1477
  attr_accessor id: String
860
1478
 
861
1479
  def initialize: (id: String) -> void
1480
+
1481
+ def to_hash: -> { id: String }
862
1482
  end
863
1483
 
864
1484
  type invoice_amount =
@@ -876,6 +1496,12 @@ module MetronomeSDK
876
1496
  quantity: Float,
877
1497
  unit_price: Float
878
1498
  ) -> void
1499
+
1500
+ def to_hash: -> {
1501
+ credit_type_id: String,
1502
+ quantity: Float,
1503
+ unit_price: Float
1504
+ }
879
1505
  end
880
1506
 
881
1507
  type proration = :NONE | :FIRST | :LAST | :FIRST_AND_LAST
@@ -904,6 +1530,50 @@ module MetronomeSDK
904
1530
 
905
1531
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCommit::recurrence_frequency]
906
1532
  end
1533
+
1534
+ type specifier =
1535
+ {
1536
+ presentation_group_values: ::Hash[Symbol, String],
1537
+ pricing_group_values: ::Hash[Symbol, String],
1538
+ product_id: String,
1539
+ product_tags: ::Array[String]
1540
+ }
1541
+
1542
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
1543
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
1544
+
1545
+ def presentation_group_values=: (
1546
+ ::Hash[Symbol, String]
1547
+ ) -> ::Hash[Symbol, String]
1548
+
1549
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
1550
+
1551
+ def pricing_group_values=: (
1552
+ ::Hash[Symbol, String]
1553
+ ) -> ::Hash[Symbol, String]
1554
+
1555
+ attr_reader product_id: String?
1556
+
1557
+ def product_id=: (String) -> String
1558
+
1559
+ attr_reader product_tags: ::Array[String]?
1560
+
1561
+ def product_tags=: (::Array[String]) -> ::Array[String]
1562
+
1563
+ def initialize: (
1564
+ ?presentation_group_values: ::Hash[Symbol, String],
1565
+ ?pricing_group_values: ::Hash[Symbol, String],
1566
+ ?product_id: String,
1567
+ ?product_tags: ::Array[String]
1568
+ ) -> void
1569
+
1570
+ def to_hash: -> {
1571
+ presentation_group_values: ::Hash[Symbol, String],
1572
+ pricing_group_values: ::Hash[Symbol, String],
1573
+ product_id: String,
1574
+ product_tags: ::Array[String]
1575
+ }
1576
+ end
907
1577
  end
908
1578
 
909
1579
  type add_recurring_credit =
@@ -924,7 +1594,8 @@ module MetronomeSDK
924
1594
  netsuite_sales_order_id: String,
925
1595
  proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::proration,
926
1596
  recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::recurrence_frequency,
927
- rollover_fraction: Float
1597
+ rollover_fraction: Float,
1598
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Specifier]
928
1599
  }
929
1600
 
930
1601
  class AddRecurringCredit < MetronomeSDK::Internal::Type::BaseModel
@@ -988,6 +1659,12 @@ module MetronomeSDK
988
1659
 
989
1660
  def rollover_fraction=: (Float) -> Float
990
1661
 
1662
+ attr_reader specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Specifier]?
1663
+
1664
+ def specifiers=: (
1665
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Specifier]
1666
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Specifier]
1667
+
991
1668
  def initialize: (
992
1669
  id: String,
993
1670
  access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::AccessAmount,
@@ -1005,24 +1682,54 @@ module MetronomeSDK
1005
1682
  ?netsuite_sales_order_id: String,
1006
1683
  ?proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::proration,
1007
1684
  ?recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::recurrence_frequency,
1008
- ?rollover_fraction: Float
1685
+ ?rollover_fraction: Float,
1686
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Specifier]
1009
1687
  ) -> void
1010
1688
 
1689
+ def to_hash: -> {
1690
+ id: String,
1691
+ access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::AccessAmount,
1692
+ commit_duration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::CommitDuration,
1693
+ priority: Float,
1694
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Product,
1695
+ rate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::rate_type,
1696
+ starting_at: Time,
1697
+ applicable_product_ids: ::Array[String],
1698
+ applicable_product_tags: ::Array[String],
1699
+ contract: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Contract,
1700
+ description: String,
1701
+ ending_before: Time,
1702
+ name: String,
1703
+ netsuite_sales_order_id: String,
1704
+ proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::proration,
1705
+ recurrence_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::recurrence_frequency,
1706
+ rollover_fraction: Float,
1707
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::Specifier]
1708
+ }
1709
+
1011
1710
  type access_amount =
1012
- { credit_type_id: String, quantity: Float, unit_price: Float }
1711
+ { credit_type_id: String, unit_price: Float, quantity: Float }
1013
1712
 
1014
1713
  class AccessAmount < MetronomeSDK::Internal::Type::BaseModel
1015
1714
  attr_accessor credit_type_id: String
1016
1715
 
1017
- attr_accessor quantity: Float
1018
-
1019
1716
  attr_accessor unit_price: Float
1020
1717
 
1718
+ attr_reader quantity: Float?
1719
+
1720
+ def quantity=: (Float) -> Float
1721
+
1021
1722
  def initialize: (
1022
1723
  credit_type_id: String,
1023
- quantity: Float,
1024
- unit_price: Float
1724
+ unit_price: Float,
1725
+ ?quantity: Float
1025
1726
  ) -> void
1727
+
1728
+ def to_hash: -> {
1729
+ credit_type_id: String,
1730
+ unit_price: Float,
1731
+ quantity: Float
1732
+ }
1026
1733
  end
1027
1734
 
1028
1735
  type commit_duration =
@@ -1045,6 +1752,11 @@ module MetronomeSDK
1045
1752
  ?unit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::CommitDuration::unit
1046
1753
  ) -> void
1047
1754
 
1755
+ def to_hash: -> {
1756
+ value: Float,
1757
+ unit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::CommitDuration::unit
1758
+ }
1759
+
1048
1760
  type unit = :PERIODS
1049
1761
 
1050
1762
  module Unit
@@ -1064,6 +1776,8 @@ module MetronomeSDK
1064
1776
  attr_accessor name: String
1065
1777
 
1066
1778
  def initialize: (id: String, name: String) -> void
1779
+
1780
+ def to_hash: -> { id: String, name: String }
1067
1781
  end
1068
1782
 
1069
1783
  type rate_type = :COMMIT_RATE | :LIST_RATE
@@ -1083,6 +1797,8 @@ module MetronomeSDK
1083
1797
  attr_accessor id: String
1084
1798
 
1085
1799
  def initialize: (id: String) -> void
1800
+
1801
+ def to_hash: -> { id: String }
1086
1802
  end
1087
1803
 
1088
1804
  type proration = :NONE | :FIRST | :LAST | :FIRST_AND_LAST
@@ -1111,6 +1827,50 @@ module MetronomeSDK
1111
1827
 
1112
1828
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddRecurringCredit::recurrence_frequency]
1113
1829
  end
1830
+
1831
+ type specifier =
1832
+ {
1833
+ presentation_group_values: ::Hash[Symbol, String],
1834
+ pricing_group_values: ::Hash[Symbol, String],
1835
+ product_id: String,
1836
+ product_tags: ::Array[String]
1837
+ }
1838
+
1839
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
1840
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
1841
+
1842
+ def presentation_group_values=: (
1843
+ ::Hash[Symbol, String]
1844
+ ) -> ::Hash[Symbol, String]
1845
+
1846
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
1847
+
1848
+ def pricing_group_values=: (
1849
+ ::Hash[Symbol, String]
1850
+ ) -> ::Hash[Symbol, String]
1851
+
1852
+ attr_reader product_id: String?
1853
+
1854
+ def product_id=: (String) -> String
1855
+
1856
+ attr_reader product_tags: ::Array[String]?
1857
+
1858
+ def product_tags=: (::Array[String]) -> ::Array[String]
1859
+
1860
+ def initialize: (
1861
+ ?presentation_group_values: ::Hash[Symbol, String],
1862
+ ?pricing_group_values: ::Hash[Symbol, String],
1863
+ ?product_id: String,
1864
+ ?product_tags: ::Array[String]
1865
+ ) -> void
1866
+
1867
+ def to_hash: -> {
1868
+ presentation_group_values: ::Hash[Symbol, String],
1869
+ pricing_group_values: ::Hash[Symbol, String],
1870
+ product_id: String,
1871
+ product_tags: ::Array[String]
1872
+ }
1873
+ end
1114
1874
  end
1115
1875
 
1116
1876
  type add_reseller_royalty =
@@ -1195,6 +1955,22 @@ module MetronomeSDK
1195
1955
  ?starting_at: Time
1196
1956
  ) -> void
1197
1957
 
1958
+ def to_hash: -> {
1959
+ reseller_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddResellerRoyalty::reseller_type,
1960
+ applicable_product_ids: ::Array[String],
1961
+ applicable_product_tags: ::Array[String],
1962
+ aws_account_number: String,
1963
+ aws_offer_id: String,
1964
+ aws_payer_reference_id: String,
1965
+ ending_before: Time?,
1966
+ fraction: Float,
1967
+ gcp_account_id: String,
1968
+ gcp_offer_id: String,
1969
+ netsuite_reseller_id: String,
1970
+ reseller_contract_value: Float,
1971
+ starting_at: Time
1972
+ }
1973
+
1198
1974
  type reseller_type =
1199
1975
  :AWS | :AWS_PRO_SERVICE | :GCP | :GCP_PRO_SERVICE
1200
1976
 
@@ -1242,6 +2018,14 @@ module MetronomeSDK
1242
2018
  ?netsuite_sales_order_id: String
1243
2019
  ) -> void
1244
2020
 
2021
+ def to_hash: -> {
2022
+ id: String,
2023
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddScheduledCharge::Product,
2024
+ schedule: MetronomeSDK::SchedulePointInTime,
2025
+ name: String,
2026
+ netsuite_sales_order_id: String
2027
+ }
2028
+
1245
2029
  type product = { id: String, name: String }
1246
2030
 
1247
2031
  class Product < MetronomeSDK::Internal::Type::BaseModel
@@ -1250,255 +2034,1079 @@ module MetronomeSDK
1250
2034
  attr_accessor name: String
1251
2035
 
1252
2036
  def initialize: (id: String, name: String) -> void
2037
+
2038
+ def to_hash: -> { id: String, name: String }
1253
2039
  end
1254
2040
  end
1255
2041
 
1256
- type add_usage_filter =
2042
+ type add_spend_threshold_configuration =
1257
2043
  {
1258
- group_key: String,
1259
- group_values: ::Array[String],
1260
- starting_at: Time,
1261
- ending_before: Time
2044
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::Commit,
2045
+ is_enabled: bool,
2046
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig,
2047
+ threshold_amount: Float
1262
2048
  }
1263
2049
 
1264
- class AddUsageFilter < MetronomeSDK::Internal::Type::BaseModel
1265
- attr_accessor group_key: String
1266
-
1267
- attr_accessor group_values: ::Array[String]
2050
+ class AddSpendThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
2051
+ attr_accessor commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::Commit
1268
2052
 
1269
- attr_accessor starting_at: Time
2053
+ attr_accessor is_enabled: bool
1270
2054
 
1271
- attr_reader ending_before: Time?
2055
+ attr_accessor payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig
1272
2056
 
1273
- def ending_before=: (Time) -> Time
2057
+ attr_accessor threshold_amount: Float
1274
2058
 
1275
2059
  def initialize: (
1276
- group_key: String,
1277
- group_values: ::Array[String],
1278
- starting_at: Time,
1279
- ?ending_before: Time
2060
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::Commit,
2061
+ is_enabled: bool,
2062
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig,
2063
+ threshold_amount: Float
1280
2064
  ) -> void
1281
- end
1282
-
1283
- type archive_commit = { id: String }
1284
2065
 
1285
- class ArchiveCommit < MetronomeSDK::Internal::Type::BaseModel
1286
- attr_accessor id: String
2066
+ def to_hash: -> {
2067
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::Commit,
2068
+ is_enabled: bool,
2069
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig,
2070
+ threshold_amount: Float
2071
+ }
1287
2072
 
1288
- def initialize: (id: String) -> void
1289
- end
2073
+ type commit =
2074
+ { product_id: String, description: String, name: String }
1290
2075
 
1291
- type archive_credit = { id: String }
2076
+ class Commit < MetronomeSDK::Internal::Type::BaseModel
2077
+ attr_accessor product_id: String
1292
2078
 
1293
- class ArchiveCredit < MetronomeSDK::Internal::Type::BaseModel
1294
- attr_accessor id: String
2079
+ attr_reader description: String?
1295
2080
 
1296
- def initialize: (id: String) -> void
1297
- end
2081
+ def description=: (String) -> String
1298
2082
 
1299
- type archive_scheduled_charge = { id: String }
2083
+ attr_reader name: String?
1300
2084
 
1301
- class ArchiveScheduledCharge < MetronomeSDK::Internal::Type::BaseModel
1302
- attr_accessor id: String
2085
+ def name=: (String) -> String
1303
2086
 
1304
- def initialize: (id: String) -> void
1305
- end
2087
+ def initialize: (
2088
+ product_id: String,
2089
+ ?description: String,
2090
+ ?name: String
2091
+ ) -> void
1306
2092
 
1307
- type remove_override = { id: String }
2093
+ def to_hash: -> {
2094
+ product_id: String,
2095
+ description: String,
2096
+ name: String
2097
+ }
2098
+ end
1308
2099
 
1309
- class RemoveOverride < MetronomeSDK::Internal::Type::BaseModel
1310
- attr_accessor id: String
2100
+ type payment_gate_config =
2101
+ {
2102
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
2103
+ precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
2104
+ stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
2105
+ tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::tax_type
2106
+ }
1311
2107
 
1312
- def initialize: (id: String) -> void
1313
- end
2108
+ class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
2109
+ attr_accessor payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type
1314
2110
 
1315
- type update_commit =
1316
- {
1317
- id: String,
1318
- access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule,
1319
- applicable_product_ids: ::Array[String]?,
1320
- applicable_product_tags: ::Array[String]?,
1321
- invoice_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule,
1322
- name: String,
1323
- netsuite_sales_order_id: String?,
1324
- product_id: String,
1325
- rollover_fraction: Float?
1326
- }
2111
+ attr_reader precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig?
1327
2112
 
1328
- class UpdateCommit < MetronomeSDK::Internal::Type::BaseModel
1329
- attr_accessor id: String
2113
+ def precalculated_tax_config=: (
2114
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
2115
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
1330
2116
 
1331
- attr_reader access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule?
2117
+ attr_reader stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig?
1332
2118
 
1333
- def access_schedule=: (
1334
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule
1335
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule
2119
+ def stripe_config=: (
2120
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig
2121
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig
1336
2122
 
1337
- attr_accessor applicable_product_ids: ::Array[String]?
2123
+ attr_reader tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::tax_type?
1338
2124
 
1339
- attr_accessor applicable_product_tags: ::Array[String]?
2125
+ def tax_type=: (
2126
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::tax_type
2127
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::tax_type
1340
2128
 
1341
- attr_reader invoice_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule?
2129
+ def initialize: (
2130
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
2131
+ ?precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
2132
+ ?stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
2133
+ ?tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::tax_type
2134
+ ) -> void
1342
2135
 
1343
- def invoice_schedule=: (
1344
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule
1345
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule
2136
+ def to_hash: -> {
2137
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
2138
+ precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
2139
+ stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
2140
+ tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::tax_type
2141
+ }
1346
2142
 
1347
- attr_reader name: String?
2143
+ type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
1348
2144
 
1349
- def name=: (String) -> String
2145
+ module PaymentGateType
2146
+ extend MetronomeSDK::Internal::Type::Enum
1350
2147
 
1351
- attr_accessor netsuite_sales_order_id: String?
2148
+ NONE: :NONE
2149
+ STRIPE: :STRIPE
2150
+ EXTERNAL: :EXTERNAL
1352
2151
 
1353
- attr_reader product_id: String?
2152
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type]
2153
+ end
1354
2154
 
1355
- def product_id=: (String) -> String
2155
+ type precalculated_tax_config =
2156
+ { tax_amount: Float, tax_name: String }
1356
2157
 
1357
- attr_accessor rollover_fraction: Float?
2158
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
2159
+ attr_accessor tax_amount: Float
1358
2160
 
1359
- def initialize: (
1360
- id: String,
1361
- ?access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule,
1362
- ?applicable_product_ids: ::Array[String]?,
1363
- ?applicable_product_tags: ::Array[String]?,
1364
- ?invoice_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule,
1365
- ?name: String,
1366
- ?netsuite_sales_order_id: String?,
1367
- ?product_id: String,
1368
- ?rollover_fraction: Float?
1369
- ) -> void
2161
+ attr_reader tax_name: String?
1370
2162
 
1371
- type access_schedule =
1372
- {
1373
- add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem],
1374
- remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem],
1375
- update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
1376
- }
2163
+ def tax_name=: (String) -> String
1377
2164
 
1378
- class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
1379
- attr_reader add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem]?
2165
+ def initialize: (tax_amount: Float, ?tax_name: String) -> void
1380
2166
 
1381
- def add_schedule_items=: (
1382
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem]
1383
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem]
2167
+ def to_hash: -> { tax_amount: Float, tax_name: String }
2168
+ end
1384
2169
 
1385
- attr_reader remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem]?
2170
+ type stripe_config =
2171
+ {
2172
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
2173
+ invoice_metadata: ::Hash[Symbol, String]
2174
+ }
1386
2175
 
1387
- def remove_schedule_items=: (
1388
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem]
1389
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem]
2176
+ class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
2177
+ attr_accessor payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
1390
2178
 
1391
- attr_reader update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]?
2179
+ attr_reader invoice_metadata: ::Hash[Symbol, String]?
1392
2180
 
1393
- def update_schedule_items=: (
1394
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
1395
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
2181
+ def invoice_metadata=: (
2182
+ ::Hash[Symbol, String]
2183
+ ) -> ::Hash[Symbol, String]
1396
2184
 
1397
- def initialize: (
1398
- ?add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem],
1399
- ?remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem],
1400
- ?update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
1401
- ) -> void
2185
+ def initialize: (
2186
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
2187
+ ?invoice_metadata: ::Hash[Symbol, String]
2188
+ ) -> void
1402
2189
 
1403
- type add_schedule_item =
1404
- { amount: Float, ending_before: Time, starting_at: Time }
2190
+ def to_hash: -> {
2191
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
2192
+ invoice_metadata: ::Hash[Symbol, String]
2193
+ }
1405
2194
 
1406
- class AddScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1407
- attr_accessor amount: Float
2195
+ type payment_type = :INVOICE | :PAYMENT_INTENT
1408
2196
 
1409
- attr_accessor ending_before: Time
2197
+ module PaymentType
2198
+ extend MetronomeSDK::Internal::Type::Enum
1410
2199
 
1411
- attr_accessor starting_at: Time
2200
+ INVOICE: :INVOICE
2201
+ PAYMENT_INTENT: :PAYMENT_INTENT
1412
2202
 
1413
- def initialize: (
1414
- amount: Float,
1415
- ending_before: Time,
1416
- starting_at: Time
1417
- ) -> void
2203
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type]
2204
+ end
1418
2205
  end
1419
2206
 
1420
- type remove_schedule_item = { id: String }
2207
+ type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
1421
2208
 
1422
- class RemoveScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1423
- attr_accessor id: String
2209
+ module TaxType
2210
+ extend MetronomeSDK::Internal::Type::Enum
1424
2211
 
1425
- def initialize: (id: String) -> void
2212
+ NONE: :NONE
2213
+ STRIPE: :STRIPE
2214
+ ANROK: :ANROK
2215
+ PRECALCULATED: :PRECALCULATED
2216
+
2217
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSpendThresholdConfiguration::PaymentGateConfig::tax_type]
1426
2218
  end
2219
+ end
2220
+ end
1427
2221
 
1428
- type update_schedule_item =
1429
- {
1430
- id: String,
1431
- amount: Float,
1432
- ending_before: Time,
1433
- starting_at: Time
1434
- }
2222
+ type add_subscription =
2223
+ {
2224
+ collection_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::collection_schedule,
2225
+ proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration,
2226
+ quantity_schedule: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::QuantitySchedule],
2227
+ starting_at: Time,
2228
+ subscription_rate: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate,
2229
+ id: String,
2230
+ custom_fields: ::Hash[Symbol, String],
2231
+ description: String,
2232
+ ending_before: Time,
2233
+ fiat_credit_type_id: String,
2234
+ name: String
2235
+ }
1435
2236
 
1436
- class UpdateScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1437
- attr_accessor id: String
2237
+ class AddSubscription < MetronomeSDK::Internal::Type::BaseModel
2238
+ attr_accessor collection_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::collection_schedule
1438
2239
 
1439
- attr_reader amount: Float?
2240
+ attr_accessor proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration
1440
2241
 
1441
- def amount=: (Float) -> Float
2242
+ attr_accessor quantity_schedule: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::QuantitySchedule]
1442
2243
 
1443
- attr_reader ending_before: Time?
2244
+ attr_accessor starting_at: Time
1444
2245
 
1445
- def ending_before=: (Time) -> Time
2246
+ attr_accessor subscription_rate: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate
1446
2247
 
1447
- attr_reader starting_at: Time?
2248
+ attr_reader id: String?
1448
2249
 
1449
- def starting_at=: (Time) -> Time
2250
+ def id=: (String) -> String
1450
2251
 
1451
- def initialize: (
1452
- id: String,
1453
- ?amount: Float,
1454
- ?ending_before: Time,
1455
- ?starting_at: Time
1456
- ) -> void
1457
- end
1458
- end
2252
+ attr_reader custom_fields: ::Hash[Symbol, String]?
1459
2253
 
1460
- type invoice_schedule =
1461
- {
1462
- add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem],
1463
- remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem],
1464
- update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
1465
- }
2254
+ def custom_fields=: (
2255
+ ::Hash[Symbol, String]
2256
+ ) -> ::Hash[Symbol, String]
2257
+
2258
+ attr_reader description: String?
2259
+
2260
+ def description=: (String) -> String
2261
+
2262
+ attr_reader ending_before: Time?
2263
+
2264
+ def ending_before=: (Time) -> Time
2265
+
2266
+ attr_reader fiat_credit_type_id: String?
2267
+
2268
+ def fiat_credit_type_id=: (String) -> String
2269
+
2270
+ attr_reader name: String?
2271
+
2272
+ def name=: (String) -> String
2273
+
2274
+ def initialize: (
2275
+ collection_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::collection_schedule,
2276
+ proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration,
2277
+ quantity_schedule: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::QuantitySchedule],
2278
+ starting_at: Time,
2279
+ subscription_rate: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate,
2280
+ ?id: String,
2281
+ ?custom_fields: ::Hash[Symbol, String],
2282
+ ?description: String,
2283
+ ?ending_before: Time,
2284
+ ?fiat_credit_type_id: String,
2285
+ ?name: String
2286
+ ) -> void
2287
+
2288
+ def to_hash: -> {
2289
+ collection_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::collection_schedule,
2290
+ proration: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration,
2291
+ quantity_schedule: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::QuantitySchedule],
2292
+ starting_at: Time,
2293
+ subscription_rate: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate,
2294
+ id: String,
2295
+ custom_fields: ::Hash[Symbol, String],
2296
+ description: String,
2297
+ ending_before: Time,
2298
+ fiat_credit_type_id: String,
2299
+ name: String
2300
+ }
2301
+
2302
+ type collection_schedule = :ADVANCE | :ARREARS
2303
+
2304
+ module CollectionSchedule
2305
+ extend MetronomeSDK::Internal::Type::Enum
2306
+
2307
+ ADVANCE: :ADVANCE
2308
+ ARREARS: :ARREARS
2309
+
2310
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::collection_schedule]
2311
+ end
2312
+
2313
+ type proration =
2314
+ {
2315
+ invoice_behavior: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration::invoice_behavior,
2316
+ is_prorated: bool
2317
+ }
2318
+
2319
+ class Proration < MetronomeSDK::Internal::Type::BaseModel
2320
+ attr_accessor invoice_behavior: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration::invoice_behavior
2321
+
2322
+ attr_accessor is_prorated: bool
2323
+
2324
+ def initialize: (
2325
+ invoice_behavior: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration::invoice_behavior,
2326
+ is_prorated: bool
2327
+ ) -> void
2328
+
2329
+ def to_hash: -> {
2330
+ invoice_behavior: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration::invoice_behavior,
2331
+ is_prorated: bool
2332
+ }
2333
+
2334
+ type invoice_behavior =
2335
+ :BILL_IMMEDIATELY | :BILL_ON_NEXT_COLLECTION_DATE
2336
+
2337
+ module InvoiceBehavior
2338
+ extend MetronomeSDK::Internal::Type::Enum
2339
+
2340
+ BILL_IMMEDIATELY: :BILL_IMMEDIATELY
2341
+ BILL_ON_NEXT_COLLECTION_DATE: :BILL_ON_NEXT_COLLECTION_DATE
2342
+
2343
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::Proration::invoice_behavior]
2344
+ end
2345
+ end
2346
+
2347
+ type quantity_schedule =
2348
+ { quantity: Float, starting_at: Time, ending_before: Time }
2349
+
2350
+ class QuantitySchedule < MetronomeSDK::Internal::Type::BaseModel
2351
+ attr_accessor quantity: Float
2352
+
2353
+ attr_accessor starting_at: Time
2354
+
2355
+ attr_reader ending_before: Time?
2356
+
2357
+ def ending_before=: (Time) -> Time
2358
+
2359
+ def initialize: (
2360
+ quantity: Float,
2361
+ starting_at: Time,
2362
+ ?ending_before: Time
2363
+ ) -> void
2364
+
2365
+ def to_hash: -> {
2366
+ quantity: Float,
2367
+ starting_at: Time,
2368
+ ending_before: Time
2369
+ }
2370
+ end
2371
+
2372
+ type subscription_rate =
2373
+ {
2374
+ billing_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::billing_frequency,
2375
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::Product
2376
+ }
2377
+
2378
+ class SubscriptionRate < MetronomeSDK::Internal::Type::BaseModel
2379
+ attr_accessor billing_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::billing_frequency
2380
+
2381
+ attr_accessor product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::Product
2382
+
2383
+ def initialize: (
2384
+ billing_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::billing_frequency,
2385
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::Product
2386
+ ) -> void
2387
+
2388
+ def to_hash: -> {
2389
+ billing_frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::billing_frequency,
2390
+ product: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::Product
2391
+ }
2392
+
2393
+ type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
2394
+
2395
+ module BillingFrequency
2396
+ extend MetronomeSDK::Internal::Type::Enum
2397
+
2398
+ MONTHLY: :MONTHLY
2399
+ QUARTERLY: :QUARTERLY
2400
+ ANNUAL: :ANNUAL
2401
+ WEEKLY: :WEEKLY
2402
+
2403
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddSubscription::SubscriptionRate::billing_frequency]
2404
+ end
2405
+
2406
+ type product = { id: String, name: String }
2407
+
2408
+ class Product < MetronomeSDK::Internal::Type::BaseModel
2409
+ attr_accessor id: String
2410
+
2411
+ attr_accessor name: String
2412
+
2413
+ def initialize: (id: String, name: String) -> void
2414
+
2415
+ def to_hash: -> { id: String, name: String }
2416
+ end
2417
+ end
2418
+ end
2419
+
2420
+ type add_usage_filter =
2421
+ {
2422
+ group_key: String,
2423
+ group_values: ::Array[String],
2424
+ starting_at: Time,
2425
+ ending_before: Time
2426
+ }
2427
+
2428
+ class AddUsageFilter < MetronomeSDK::Internal::Type::BaseModel
2429
+ attr_accessor group_key: String
2430
+
2431
+ attr_accessor group_values: ::Array[String]
2432
+
2433
+ attr_accessor starting_at: Time
2434
+
2435
+ attr_reader ending_before: Time?
2436
+
2437
+ def ending_before=: (Time) -> Time
2438
+
2439
+ def initialize: (
2440
+ group_key: String,
2441
+ group_values: ::Array[String],
2442
+ starting_at: Time,
2443
+ ?ending_before: Time
2444
+ ) -> void
2445
+
2446
+ def to_hash: -> {
2447
+ group_key: String,
2448
+ group_values: ::Array[String],
2449
+ starting_at: Time,
2450
+ ending_before: Time
2451
+ }
2452
+ end
2453
+
2454
+ type archive_commit = { id: String }
2455
+
2456
+ class ArchiveCommit < MetronomeSDK::Internal::Type::BaseModel
2457
+ attr_accessor id: String
2458
+
2459
+ def initialize: (id: String) -> void
2460
+
2461
+ def to_hash: -> { id: String }
2462
+ end
2463
+
2464
+ type archive_credit = { id: String }
2465
+
2466
+ class ArchiveCredit < MetronomeSDK::Internal::Type::BaseModel
2467
+ attr_accessor id: String
2468
+
2469
+ def initialize: (id: String) -> void
2470
+
2471
+ def to_hash: -> { id: String }
2472
+ end
2473
+
2474
+ type archive_scheduled_charge = { id: String }
2475
+
2476
+ class ArchiveScheduledCharge < MetronomeSDK::Internal::Type::BaseModel
2477
+ attr_accessor id: String
2478
+
2479
+ def initialize: (id: String) -> void
2480
+
2481
+ def to_hash: -> { id: String }
2482
+ end
2483
+
2484
+ type remove_override = { id: String }
2485
+
2486
+ class RemoveOverride < MetronomeSDK::Internal::Type::BaseModel
2487
+ attr_accessor id: String
2488
+
2489
+ def initialize: (id: String) -> void
2490
+
2491
+ def to_hash: -> { id: String }
2492
+ end
2493
+
2494
+ type update_commit =
2495
+ {
2496
+ id: String,
2497
+ access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule,
2498
+ applicable_product_ids: ::Array[String]?,
2499
+ applicable_product_tags: ::Array[String]?,
2500
+ invoice_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule,
2501
+ name: String,
2502
+ netsuite_sales_order_id: String?,
2503
+ product_id: String,
2504
+ rollover_fraction: Float?,
2505
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier]?
2506
+ }
2507
+
2508
+ class UpdateCommit < MetronomeSDK::Internal::Type::BaseModel
2509
+ attr_accessor id: String
2510
+
2511
+ attr_reader access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule?
2512
+
2513
+ def access_schedule=: (
2514
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule
2515
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule
2516
+
2517
+ attr_accessor applicable_product_ids: ::Array[String]?
2518
+
2519
+ attr_accessor applicable_product_tags: ::Array[String]?
2520
+
2521
+ attr_reader invoice_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule?
2522
+
2523
+ def invoice_schedule=: (
2524
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule
2525
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule
2526
+
2527
+ attr_reader name: String?
2528
+
2529
+ def name=: (String) -> String
2530
+
2531
+ attr_accessor netsuite_sales_order_id: String?
2532
+
2533
+ attr_reader product_id: String?
2534
+
2535
+ def product_id=: (String) -> String
2536
+
2537
+ attr_accessor rollover_fraction: Float?
2538
+
2539
+ attr_accessor specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier]?
2540
+
2541
+ def initialize: (
2542
+ id: String,
2543
+ ?access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule,
2544
+ ?applicable_product_ids: ::Array[String]?,
2545
+ ?applicable_product_tags: ::Array[String]?,
2546
+ ?invoice_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule,
2547
+ ?name: String,
2548
+ ?netsuite_sales_order_id: String?,
2549
+ ?product_id: String,
2550
+ ?rollover_fraction: Float?,
2551
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier]?
2552
+ ) -> void
2553
+
2554
+ def to_hash: -> {
2555
+ id: String,
2556
+ access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule,
2557
+ applicable_product_ids: ::Array[String]?,
2558
+ applicable_product_tags: ::Array[String]?,
2559
+ invoice_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule,
2560
+ name: String,
2561
+ netsuite_sales_order_id: String?,
2562
+ product_id: String,
2563
+ rollover_fraction: Float?,
2564
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::Specifier]?
2565
+ }
2566
+
2567
+ type access_schedule =
2568
+ {
2569
+ add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem],
2570
+ remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem],
2571
+ update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
2572
+ }
2573
+
2574
+ class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
2575
+ attr_reader add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem]?
2576
+
2577
+ def add_schedule_items=: (
2578
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem]
2579
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem]
2580
+
2581
+ attr_reader remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem]?
2582
+
2583
+ def remove_schedule_items=: (
2584
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem]
2585
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem]
2586
+
2587
+ attr_reader update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]?
2588
+
2589
+ def update_schedule_items=: (
2590
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
2591
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
2592
+
2593
+ def initialize: (
2594
+ ?add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem],
2595
+ ?remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem],
2596
+ ?update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
2597
+ ) -> void
2598
+
2599
+ def to_hash: -> {
2600
+ add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::AddScheduleItem],
2601
+ remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::RemoveScheduleItem],
2602
+ update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::AccessSchedule::UpdateScheduleItem]
2603
+ }
2604
+
2605
+ type add_schedule_item =
2606
+ { amount: Float, ending_before: Time, starting_at: Time }
2607
+
2608
+ class AddScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2609
+ attr_accessor amount: Float
2610
+
2611
+ attr_accessor ending_before: Time
2612
+
2613
+ attr_accessor starting_at: Time
2614
+
2615
+ def initialize: (
2616
+ amount: Float,
2617
+ ending_before: Time,
2618
+ starting_at: Time
2619
+ ) -> void
2620
+
2621
+ def to_hash: -> {
2622
+ amount: Float,
2623
+ ending_before: Time,
2624
+ starting_at: Time
2625
+ }
2626
+ end
2627
+
2628
+ type remove_schedule_item = { id: String }
2629
+
2630
+ class RemoveScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2631
+ attr_accessor id: String
2632
+
2633
+ def initialize: (id: String) -> void
2634
+
2635
+ def to_hash: -> { id: String }
2636
+ end
2637
+
2638
+ type update_schedule_item =
2639
+ {
2640
+ id: String,
2641
+ amount: Float,
2642
+ ending_before: Time,
2643
+ starting_at: Time
2644
+ }
2645
+
2646
+ class UpdateScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2647
+ attr_accessor id: String
2648
+
2649
+ attr_reader amount: Float?
2650
+
2651
+ def amount=: (Float) -> Float
2652
+
2653
+ attr_reader ending_before: Time?
2654
+
2655
+ def ending_before=: (Time) -> Time
2656
+
2657
+ attr_reader starting_at: Time?
2658
+
2659
+ def starting_at=: (Time) -> Time
2660
+
2661
+ def initialize: (
2662
+ id: String,
2663
+ ?amount: Float,
2664
+ ?ending_before: Time,
2665
+ ?starting_at: Time
2666
+ ) -> void
2667
+
2668
+ def to_hash: -> {
2669
+ id: String,
2670
+ amount: Float,
2671
+ ending_before: Time,
2672
+ starting_at: Time
2673
+ }
2674
+ end
2675
+ end
2676
+
2677
+ type invoice_schedule =
2678
+ {
2679
+ add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem],
2680
+ remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem],
2681
+ update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
2682
+ }
2683
+
2684
+ class InvoiceSchedule < MetronomeSDK::Internal::Type::BaseModel
2685
+ attr_reader add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem]?
2686
+
2687
+ def add_schedule_items=: (
2688
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem]
2689
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem]
2690
+
2691
+ attr_reader remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem]?
2692
+
2693
+ def remove_schedule_items=: (
2694
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem]
2695
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem]
2696
+
2697
+ attr_reader update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]?
2698
+
2699
+ def update_schedule_items=: (
2700
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
2701
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
2702
+
2703
+ def initialize: (
2704
+ ?add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem],
2705
+ ?remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem],
2706
+ ?update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
2707
+ ) -> void
2708
+
2709
+ def to_hash: -> {
2710
+ add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem],
2711
+ remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem],
2712
+ update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
2713
+ }
2714
+
2715
+ type add_schedule_item =
2716
+ {
2717
+ timestamp: Time,
2718
+ amount: Float,
2719
+ quantity: Float,
2720
+ unit_price: Float
2721
+ }
2722
+
2723
+ class AddScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2724
+ attr_accessor timestamp: Time
2725
+
2726
+ attr_reader amount: Float?
2727
+
2728
+ def amount=: (Float) -> Float
2729
+
2730
+ attr_reader quantity: Float?
2731
+
2732
+ def quantity=: (Float) -> Float
2733
+
2734
+ attr_reader unit_price: Float?
2735
+
2736
+ def unit_price=: (Float) -> Float
2737
+
2738
+ def initialize: (
2739
+ timestamp: Time,
2740
+ ?amount: Float,
2741
+ ?quantity: Float,
2742
+ ?unit_price: Float
2743
+ ) -> void
2744
+
2745
+ def to_hash: -> {
2746
+ timestamp: Time,
2747
+ amount: Float,
2748
+ quantity: Float,
2749
+ unit_price: Float
2750
+ }
2751
+ end
2752
+
2753
+ type remove_schedule_item = { id: String }
2754
+
2755
+ class RemoveScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2756
+ attr_accessor id: String
2757
+
2758
+ def initialize: (id: String) -> void
2759
+
2760
+ def to_hash: -> { id: String }
2761
+ end
2762
+
2763
+ type update_schedule_item =
2764
+ {
2765
+ id: String,
2766
+ amount: Float,
2767
+ quantity: Float,
2768
+ timestamp: Time,
2769
+ unit_price: Float
2770
+ }
2771
+
2772
+ class UpdateScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2773
+ attr_accessor id: String
2774
+
2775
+ attr_reader amount: Float?
2776
+
2777
+ def amount=: (Float) -> Float
2778
+
2779
+ attr_reader quantity: Float?
2780
+
2781
+ def quantity=: (Float) -> Float
2782
+
2783
+ attr_reader timestamp: Time?
2784
+
2785
+ def timestamp=: (Time) -> Time
2786
+
2787
+ attr_reader unit_price: Float?
2788
+
2789
+ def unit_price=: (Float) -> Float
2790
+
2791
+ def initialize: (
2792
+ id: String,
2793
+ ?amount: Float,
2794
+ ?quantity: Float,
2795
+ ?timestamp: Time,
2796
+ ?unit_price: Float
2797
+ ) -> void
2798
+
2799
+ def to_hash: -> {
2800
+ id: String,
2801
+ amount: Float,
2802
+ quantity: Float,
2803
+ timestamp: Time,
2804
+ unit_price: Float
2805
+ }
2806
+ end
2807
+ end
2808
+
2809
+ type specifier =
2810
+ {
2811
+ presentation_group_values: ::Hash[Symbol, String],
2812
+ pricing_group_values: ::Hash[Symbol, String],
2813
+ product_id: String,
2814
+ product_tags: ::Array[String]
2815
+ }
2816
+
2817
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
2818
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
2819
+
2820
+ def presentation_group_values=: (
2821
+ ::Hash[Symbol, String]
2822
+ ) -> ::Hash[Symbol, String]
2823
+
2824
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
2825
+
2826
+ def pricing_group_values=: (
2827
+ ::Hash[Symbol, String]
2828
+ ) -> ::Hash[Symbol, String]
2829
+
2830
+ attr_reader product_id: String?
2831
+
2832
+ def product_id=: (String) -> String
2833
+
2834
+ attr_reader product_tags: ::Array[String]?
1466
2835
 
1467
- class InvoiceSchedule < MetronomeSDK::Internal::Type::BaseModel
1468
- attr_reader add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem]?
2836
+ def product_tags=: (::Array[String]) -> ::Array[String]
2837
+
2838
+ def initialize: (
2839
+ ?presentation_group_values: ::Hash[Symbol, String],
2840
+ ?pricing_group_values: ::Hash[Symbol, String],
2841
+ ?product_id: String,
2842
+ ?product_tags: ::Array[String]
2843
+ ) -> void
2844
+
2845
+ def to_hash: -> {
2846
+ presentation_group_values: ::Hash[Symbol, String],
2847
+ pricing_group_values: ::Hash[Symbol, String],
2848
+ product_id: String,
2849
+ product_tags: ::Array[String]
2850
+ }
2851
+ end
2852
+ end
2853
+
2854
+ type update_credit =
2855
+ {
2856
+ id: String,
2857
+ access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule,
2858
+ name: String,
2859
+ netsuite_sales_order_id: String?,
2860
+ rollover_fraction: Float?
2861
+ }
2862
+
2863
+ class UpdateCredit < MetronomeSDK::Internal::Type::BaseModel
2864
+ attr_accessor id: String
2865
+
2866
+ attr_reader access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule?
2867
+
2868
+ def access_schedule=: (
2869
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule
2870
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule
2871
+
2872
+ attr_reader name: String?
2873
+
2874
+ def name=: (String) -> String
2875
+
2876
+ attr_accessor netsuite_sales_order_id: String?
2877
+
2878
+ attr_accessor rollover_fraction: Float?
2879
+
2880
+ def initialize: (
2881
+ id: String,
2882
+ ?access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule,
2883
+ ?name: String,
2884
+ ?netsuite_sales_order_id: String?,
2885
+ ?rollover_fraction: Float?
2886
+ ) -> void
2887
+
2888
+ def to_hash: -> {
2889
+ id: String,
2890
+ access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule,
2891
+ name: String,
2892
+ netsuite_sales_order_id: String?,
2893
+ rollover_fraction: Float?
2894
+ }
2895
+
2896
+ type access_schedule =
2897
+ {
2898
+ add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem],
2899
+ remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem],
2900
+ update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
2901
+ }
2902
+
2903
+ class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
2904
+ attr_reader add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem]?
1469
2905
 
1470
2906
  def add_schedule_items=: (
1471
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem]
1472
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem]
2907
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem]
2908
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem]
1473
2909
 
1474
- attr_reader remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem]?
2910
+ attr_reader remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem]?
1475
2911
 
1476
2912
  def remove_schedule_items=: (
1477
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem]
1478
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem]
2913
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem]
2914
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem]
1479
2915
 
1480
- attr_reader update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]?
2916
+ attr_reader update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]?
1481
2917
 
1482
2918
  def update_schedule_items=: (
1483
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
1484
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
2919
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
2920
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
1485
2921
 
1486
2922
  def initialize: (
1487
- ?add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::AddScheduleItem],
1488
- ?remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::RemoveScheduleItem],
1489
- ?update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCommit::InvoiceSchedule::UpdateScheduleItem]
2923
+ ?add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem],
2924
+ ?remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem],
2925
+ ?update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
1490
2926
  ) -> void
1491
2927
 
2928
+ def to_hash: -> {
2929
+ add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem],
2930
+ remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem],
2931
+ update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
2932
+ }
2933
+
1492
2934
  type add_schedule_item =
2935
+ { amount: Float, ending_before: Time, starting_at: Time }
2936
+
2937
+ class AddScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2938
+ attr_accessor amount: Float
2939
+
2940
+ attr_accessor ending_before: Time
2941
+
2942
+ attr_accessor starting_at: Time
2943
+
2944
+ def initialize: (
2945
+ amount: Float,
2946
+ ending_before: Time,
2947
+ starting_at: Time
2948
+ ) -> void
2949
+
2950
+ def to_hash: -> {
2951
+ amount: Float,
2952
+ ending_before: Time,
2953
+ starting_at: Time
2954
+ }
2955
+ end
2956
+
2957
+ type remove_schedule_item = { id: String }
2958
+
2959
+ class RemoveScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2960
+ attr_accessor id: String
2961
+
2962
+ def initialize: (id: String) -> void
2963
+
2964
+ def to_hash: -> { id: String }
2965
+ end
2966
+
2967
+ type update_schedule_item =
1493
2968
  {
1494
- timestamp: Time,
2969
+ id: String,
2970
+ amount: Float,
2971
+ ending_before: Time,
2972
+ starting_at: Time
2973
+ }
2974
+
2975
+ class UpdateScheduleItem < MetronomeSDK::Internal::Type::BaseModel
2976
+ attr_accessor id: String
2977
+
2978
+ attr_reader amount: Float?
2979
+
2980
+ def amount=: (Float) -> Float
2981
+
2982
+ attr_reader ending_before: Time?
2983
+
2984
+ def ending_before=: (Time) -> Time
2985
+
2986
+ attr_reader starting_at: Time?
2987
+
2988
+ def starting_at=: (Time) -> Time
2989
+
2990
+ def initialize: (
2991
+ id: String,
2992
+ ?amount: Float,
2993
+ ?ending_before: Time,
2994
+ ?starting_at: Time
2995
+ ) -> void
2996
+
2997
+ def to_hash: -> {
2998
+ id: String,
2999
+ amount: Float,
3000
+ ending_before: Time,
3001
+ starting_at: Time
3002
+ }
3003
+ end
3004
+ end
3005
+ end
3006
+
3007
+ type update_discount =
3008
+ {
3009
+ id: String,
3010
+ custom_fields: ::Hash[Symbol, String],
3011
+ name: String,
3012
+ netsuite_sales_order_id: String,
3013
+ schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
3014
+ }
3015
+
3016
+ class UpdateDiscount < MetronomeSDK::Internal::Type::BaseModel
3017
+ attr_accessor id: String
3018
+
3019
+ attr_reader custom_fields: ::Hash[Symbol, String]?
3020
+
3021
+ def custom_fields=: (
3022
+ ::Hash[Symbol, String]
3023
+ ) -> ::Hash[Symbol, String]
3024
+
3025
+ attr_reader name: String?
3026
+
3027
+ def name=: (String) -> String
3028
+
3029
+ attr_reader netsuite_sales_order_id: String?
3030
+
3031
+ def netsuite_sales_order_id=: (String) -> String
3032
+
3033
+ attr_reader schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule?
3034
+
3035
+ def schedule=: (
3036
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
3037
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
3038
+
3039
+ def initialize: (
3040
+ id: String,
3041
+ ?custom_fields: ::Hash[Symbol, String],
3042
+ ?name: String,
3043
+ ?netsuite_sales_order_id: String,
3044
+ ?schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
3045
+ ) -> void
3046
+
3047
+ def to_hash: -> {
3048
+ id: String,
3049
+ custom_fields: ::Hash[Symbol, String],
3050
+ name: String,
3051
+ netsuite_sales_order_id: String,
3052
+ schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
3053
+ }
3054
+
3055
+ type schedule =
3056
+ {
3057
+ credit_type_id: String,
3058
+ recurring_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule,
3059
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
3060
+ }
3061
+
3062
+ class Schedule < MetronomeSDK::Internal::Type::BaseModel
3063
+ attr_reader credit_type_id: String?
3064
+
3065
+ def credit_type_id=: (String) -> String
3066
+
3067
+ attr_reader recurring_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule?
3068
+
3069
+ def recurring_schedule=: (
3070
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule
3071
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule
3072
+
3073
+ attr_reader schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]?
3074
+
3075
+ def schedule_items=: (
3076
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
3077
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
3078
+
3079
+ def initialize: (
3080
+ ?credit_type_id: String,
3081
+ ?recurring_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule,
3082
+ ?schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
3083
+ ) -> void
3084
+
3085
+ def to_hash: -> {
3086
+ credit_type_id: String,
3087
+ recurring_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule,
3088
+ schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
3089
+ }
3090
+
3091
+ type recurring_schedule =
3092
+ {
3093
+ amount_distribution: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution,
3094
+ ending_before: Time,
3095
+ frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency,
3096
+ starting_at: Time,
1495
3097
  amount: Float,
1496
3098
  quantity: Float,
1497
3099
  unit_price: Float
1498
3100
  }
1499
3101
 
1500
- class AddScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1501
- attr_accessor timestamp: Time
3102
+ class RecurringSchedule < MetronomeSDK::Internal::Type::BaseModel
3103
+ attr_accessor amount_distribution: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution
3104
+
3105
+ attr_accessor ending_before: Time
3106
+
3107
+ attr_accessor frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency
3108
+
3109
+ attr_accessor starting_at: Time
1502
3110
 
1503
3111
  attr_reader amount: Float?
1504
3112
 
@@ -1513,32 +3121,63 @@ module MetronomeSDK
1513
3121
  def unit_price=: (Float) -> Float
1514
3122
 
1515
3123
  def initialize: (
1516
- timestamp: Time,
3124
+ amount_distribution: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution,
3125
+ ending_before: Time,
3126
+ frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency,
3127
+ starting_at: Time,
1517
3128
  ?amount: Float,
1518
3129
  ?quantity: Float,
1519
3130
  ?unit_price: Float
1520
3131
  ) -> void
1521
- end
1522
3132
 
1523
- type remove_schedule_item = { id: String }
3133
+ def to_hash: -> {
3134
+ amount_distribution: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution,
3135
+ ending_before: Time,
3136
+ frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency,
3137
+ starting_at: Time,
3138
+ amount: Float,
3139
+ quantity: Float,
3140
+ unit_price: Float
3141
+ }
1524
3142
 
1525
- class RemoveScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1526
- attr_accessor id: String
3143
+ type amount_distribution = :DIVIDED | :DIVIDED_ROUNDED | :EACH
1527
3144
 
1528
- def initialize: (id: String) -> void
3145
+ module AmountDistribution
3146
+ extend MetronomeSDK::Internal::Type::Enum
3147
+
3148
+ DIVIDED: :DIVIDED
3149
+ DIVIDED_ROUNDED: :DIVIDED_ROUNDED
3150
+ EACH: :EACH
3151
+
3152
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution]
3153
+ end
3154
+
3155
+ type frequency =
3156
+ :MONTHLY | :QUARTERLY | :SEMI_ANNUAL | :ANNUAL | :WEEKLY
3157
+
3158
+ module Frequency
3159
+ extend MetronomeSDK::Internal::Type::Enum
3160
+
3161
+ MONTHLY: :MONTHLY
3162
+ QUARTERLY: :QUARTERLY
3163
+ SEMI_ANNUAL: :SEMI_ANNUAL
3164
+ ANNUAL: :ANNUAL
3165
+ WEEKLY: :WEEKLY
3166
+
3167
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency]
3168
+ end
1529
3169
  end
1530
3170
 
1531
- type update_schedule_item =
3171
+ type schedule_item =
1532
3172
  {
1533
- id: String,
3173
+ timestamp: Time,
1534
3174
  amount: Float,
1535
3175
  quantity: Float,
1536
- timestamp: Time,
1537
3176
  unit_price: Float
1538
3177
  }
1539
3178
 
1540
- class UpdateScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1541
- attr_accessor id: String
3179
+ class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
3180
+ attr_accessor timestamp: Time
1542
3181
 
1543
3182
  attr_reader amount: Float?
1544
3183
 
@@ -1548,319 +3187,416 @@ module MetronomeSDK
1548
3187
 
1549
3188
  def quantity=: (Float) -> Float
1550
3189
 
1551
- attr_reader timestamp: Time?
1552
-
1553
- def timestamp=: (Time) -> Time
1554
-
1555
3190
  attr_reader unit_price: Float?
1556
3191
 
1557
3192
  def unit_price=: (Float) -> Float
1558
3193
 
1559
3194
  def initialize: (
1560
- id: String,
3195
+ timestamp: Time,
1561
3196
  ?amount: Float,
1562
3197
  ?quantity: Float,
1563
- ?timestamp: Time,
1564
3198
  ?unit_price: Float
1565
3199
  ) -> void
3200
+
3201
+ def to_hash: -> {
3202
+ timestamp: Time,
3203
+ amount: Float,
3204
+ quantity: Float,
3205
+ unit_price: Float
3206
+ }
1566
3207
  end
1567
3208
  end
1568
3209
  end
1569
3210
 
1570
- type update_credit =
3211
+ type update_prepaid_balance_threshold_configuration =
1571
3212
  {
1572
- id: String,
1573
- access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule,
1574
- name: String,
1575
- netsuite_sales_order_id: String?,
1576
- rollover_fraction: Float?
3213
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit,
3214
+ custom_credit_type_id: String?,
3215
+ is_enabled: bool,
3216
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig,
3217
+ recharge_to_amount: Float,
3218
+ threshold_amount: Float
1577
3219
  }
1578
3220
 
1579
- class UpdateCredit < MetronomeSDK::Internal::Type::BaseModel
1580
- attr_accessor id: String
3221
+ class UpdatePrepaidBalanceThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
3222
+ attr_reader commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit?
1581
3223
 
1582
- attr_reader access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule?
3224
+ def commit=: (
3225
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit
3226
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit
1583
3227
 
1584
- def access_schedule=: (
1585
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule
1586
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule
3228
+ attr_accessor custom_credit_type_id: String?
1587
3229
 
1588
- attr_reader name: String?
3230
+ attr_reader is_enabled: bool?
1589
3231
 
1590
- def name=: (String) -> String
3232
+ def is_enabled=: (bool) -> bool
1591
3233
 
1592
- attr_accessor netsuite_sales_order_id: String?
3234
+ attr_reader payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig?
1593
3235
 
1594
- attr_accessor rollover_fraction: Float?
3236
+ def payment_gate_config=: (
3237
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig
3238
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig
3239
+
3240
+ attr_reader recharge_to_amount: Float?
3241
+
3242
+ def recharge_to_amount=: (Float) -> Float
3243
+
3244
+ attr_reader threshold_amount: Float?
3245
+
3246
+ def threshold_amount=: (Float) -> Float
1595
3247
 
1596
3248
  def initialize: (
1597
- id: String,
1598
- ?access_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule,
1599
- ?name: String,
1600
- ?netsuite_sales_order_id: String?,
1601
- ?rollover_fraction: Float?
3249
+ ?commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit,
3250
+ ?custom_credit_type_id: String?,
3251
+ ?is_enabled: bool,
3252
+ ?payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig,
3253
+ ?recharge_to_amount: Float,
3254
+ ?threshold_amount: Float
1602
3255
  ) -> void
1603
3256
 
1604
- type access_schedule =
3257
+ def to_hash: -> {
3258
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit,
3259
+ custom_credit_type_id: String?,
3260
+ is_enabled: bool,
3261
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig,
3262
+ recharge_to_amount: Float,
3263
+ threshold_amount: Float
3264
+ }
3265
+
3266
+ type commit =
1605
3267
  {
1606
- add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem],
1607
- remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem],
1608
- update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
3268
+ applicable_product_ids: ::Array[String]?,
3269
+ applicable_product_tags: ::Array[String]?,
3270
+ description: String,
3271
+ name: String,
3272
+ product_id: String,
3273
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit::Specifier]?
1609
3274
  }
1610
3275
 
1611
- class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
1612
- attr_reader add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem]?
3276
+ class Commit < MetronomeSDK::Internal::Type::BaseModel
3277
+ attr_accessor applicable_product_ids: ::Array[String]?
1613
3278
 
1614
- def add_schedule_items=: (
1615
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem]
1616
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem]
3279
+ attr_accessor applicable_product_tags: ::Array[String]?
1617
3280
 
1618
- attr_reader remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem]?
3281
+ attr_reader description: String?
1619
3282
 
1620
- def remove_schedule_items=: (
1621
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem]
1622
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem]
3283
+ def description=: (String) -> String
1623
3284
 
1624
- attr_reader update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]?
3285
+ attr_reader name: String?
1625
3286
 
1626
- def update_schedule_items=: (
1627
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
1628
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
3287
+ def name=: (String) -> String
3288
+
3289
+ attr_reader product_id: String?
3290
+
3291
+ def product_id=: (String) -> String
3292
+
3293
+ attr_accessor specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit::Specifier]?
1629
3294
 
1630
3295
  def initialize: (
1631
- ?add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::AddScheduleItem],
1632
- ?remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::RemoveScheduleItem],
1633
- ?update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateCredit::AccessSchedule::UpdateScheduleItem]
3296
+ ?applicable_product_ids: ::Array[String]?,
3297
+ ?applicable_product_tags: ::Array[String]?,
3298
+ ?description: String,
3299
+ ?name: String,
3300
+ ?product_id: String,
3301
+ ?specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit::Specifier]?
1634
3302
  ) -> void
1635
3303
 
1636
- type add_schedule_item =
1637
- { amount: Float, ending_before: Time, starting_at: Time }
3304
+ def to_hash: -> {
3305
+ applicable_product_ids: ::Array[String]?,
3306
+ applicable_product_tags: ::Array[String]?,
3307
+ description: String,
3308
+ name: String,
3309
+ product_id: String,
3310
+ specifiers: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::Commit::Specifier]?
3311
+ }
1638
3312
 
1639
- class AddScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1640
- attr_accessor amount: Float
3313
+ type specifier =
3314
+ {
3315
+ presentation_group_values: ::Hash[Symbol, String],
3316
+ pricing_group_values: ::Hash[Symbol, String],
3317
+ product_id: String,
3318
+ product_tags: ::Array[String]
3319
+ }
1641
3320
 
1642
- attr_accessor ending_before: Time
3321
+ class Specifier < MetronomeSDK::Internal::Type::BaseModel
3322
+ attr_reader presentation_group_values: ::Hash[Symbol, String]?
1643
3323
 
1644
- attr_accessor starting_at: Time
3324
+ def presentation_group_values=: (
3325
+ ::Hash[Symbol, String]
3326
+ ) -> ::Hash[Symbol, String]
3327
+
3328
+ attr_reader pricing_group_values: ::Hash[Symbol, String]?
3329
+
3330
+ def pricing_group_values=: (
3331
+ ::Hash[Symbol, String]
3332
+ ) -> ::Hash[Symbol, String]
3333
+
3334
+ attr_reader product_id: String?
3335
+
3336
+ def product_id=: (String) -> String
3337
+
3338
+ attr_reader product_tags: ::Array[String]?
3339
+
3340
+ def product_tags=: (::Array[String]) -> ::Array[String]
1645
3341
 
1646
3342
  def initialize: (
1647
- amount: Float,
1648
- ending_before: Time,
1649
- starting_at: Time
3343
+ ?presentation_group_values: ::Hash[Symbol, String],
3344
+ ?pricing_group_values: ::Hash[Symbol, String],
3345
+ ?product_id: String,
3346
+ ?product_tags: ::Array[String]
1650
3347
  ) -> void
3348
+
3349
+ def to_hash: -> {
3350
+ presentation_group_values: ::Hash[Symbol, String],
3351
+ pricing_group_values: ::Hash[Symbol, String],
3352
+ product_id: String,
3353
+ product_tags: ::Array[String]
3354
+ }
1651
3355
  end
3356
+ end
1652
3357
 
1653
- type remove_schedule_item = { id: String }
3358
+ type payment_gate_config =
3359
+ {
3360
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3361
+ precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3362
+ stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
3363
+ tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
3364
+ }
1654
3365
 
1655
- class RemoveScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1656
- attr_accessor id: String
3366
+ class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
3367
+ attr_accessor payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type
1657
3368
 
1658
- def initialize: (id: String) -> void
3369
+ attr_reader precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig?
3370
+
3371
+ def precalculated_tax_config=: (
3372
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
3373
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
3374
+
3375
+ attr_reader stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig?
3376
+
3377
+ def stripe_config=: (
3378
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig
3379
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig
3380
+
3381
+ attr_reader tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type?
3382
+
3383
+ def tax_type=: (
3384
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
3385
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
3386
+
3387
+ def initialize: (
3388
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3389
+ ?precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3390
+ ?stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
3391
+ ?tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
3392
+ ) -> void
3393
+
3394
+ def to_hash: -> {
3395
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3396
+ precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3397
+ stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
3398
+ tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type
3399
+ }
3400
+
3401
+ type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
3402
+
3403
+ module PaymentGateType
3404
+ extend MetronomeSDK::Internal::Type::Enum
3405
+
3406
+ NONE: :NONE
3407
+ STRIPE: :STRIPE
3408
+ EXTERNAL: :EXTERNAL
3409
+
3410
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::payment_gate_type]
1659
3411
  end
1660
3412
 
1661
- type update_schedule_item =
1662
- {
1663
- id: String,
1664
- amount: Float,
1665
- ending_before: Time,
1666
- starting_at: Time
1667
- }
3413
+ type precalculated_tax_config =
3414
+ { tax_amount: Float, tax_name: String }
1668
3415
 
1669
- class UpdateScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1670
- attr_accessor id: String
3416
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
3417
+ attr_accessor tax_amount: Float
1671
3418
 
1672
- attr_reader amount: Float?
3419
+ attr_reader tax_name: String?
1673
3420
 
1674
- def amount=: (Float) -> Float
3421
+ def tax_name=: (String) -> String
1675
3422
 
1676
- attr_reader ending_before: Time?
3423
+ def initialize: (tax_amount: Float, ?tax_name: String) -> void
1677
3424
 
1678
- def ending_before=: (Time) -> Time
3425
+ def to_hash: -> { tax_amount: Float, tax_name: String }
3426
+ end
1679
3427
 
1680
- attr_reader starting_at: Time?
3428
+ type stripe_config =
3429
+ {
3430
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3431
+ invoice_metadata: ::Hash[Symbol, String]
3432
+ }
1681
3433
 
1682
- def starting_at=: (Time) -> Time
3434
+ class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
3435
+ attr_accessor payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
3436
+
3437
+ attr_reader invoice_metadata: ::Hash[Symbol, String]?
3438
+
3439
+ def invoice_metadata=: (
3440
+ ::Hash[Symbol, String]
3441
+ ) -> ::Hash[Symbol, String]
1683
3442
 
1684
3443
  def initialize: (
1685
- id: String,
1686
- ?amount: Float,
1687
- ?ending_before: Time,
1688
- ?starting_at: Time
3444
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3445
+ ?invoice_metadata: ::Hash[Symbol, String]
1689
3446
  ) -> void
3447
+
3448
+ def to_hash: -> {
3449
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3450
+ invoice_metadata: ::Hash[Symbol, String]
3451
+ }
3452
+
3453
+ type payment_type = :INVOICE | :PAYMENT_INTENT
3454
+
3455
+ module PaymentType
3456
+ extend MetronomeSDK::Internal::Type::Enum
3457
+
3458
+ INVOICE: :INVOICE
3459
+ PAYMENT_INTENT: :PAYMENT_INTENT
3460
+
3461
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type]
3462
+ end
3463
+ end
3464
+
3465
+ type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
3466
+
3467
+ module TaxType
3468
+ extend MetronomeSDK::Internal::Type::Enum
3469
+
3470
+ NONE: :NONE
3471
+ STRIPE: :STRIPE
3472
+ ANROK: :ANROK
3473
+ PRECALCULATED: :PRECALCULATED
3474
+
3475
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdatePrepaidBalanceThresholdConfiguration::PaymentGateConfig::tax_type]
1690
3476
  end
1691
3477
  end
1692
3478
  end
1693
3479
 
1694
- type update_discount =
3480
+ type update_recurring_commit =
1695
3481
  {
1696
3482
  id: String,
1697
- custom_fields: ::Hash[Symbol, String],
1698
- name: String,
1699
- netsuite_sales_order_id: String,
1700
- schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
3483
+ access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::AccessAmount,
3484
+ ending_before: Time,
3485
+ invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::InvoiceAmount
1701
3486
  }
1702
3487
 
1703
- class UpdateDiscount < MetronomeSDK::Internal::Type::BaseModel
3488
+ class UpdateRecurringCommit < MetronomeSDK::Internal::Type::BaseModel
1704
3489
  attr_accessor id: String
1705
3490
 
1706
- attr_reader custom_fields: ::Hash[Symbol, String]?
1707
-
1708
- def custom_fields=: (
1709
- ::Hash[Symbol, String]
1710
- ) -> ::Hash[Symbol, String]
1711
-
1712
- attr_reader name: String?
3491
+ attr_reader access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::AccessAmount?
1713
3492
 
1714
- def name=: (String) -> String
3493
+ def access_amount=: (
3494
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::AccessAmount
3495
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::AccessAmount
1715
3496
 
1716
- attr_reader netsuite_sales_order_id: String?
3497
+ attr_reader ending_before: Time?
1717
3498
 
1718
- def netsuite_sales_order_id=: (String) -> String
3499
+ def ending_before=: (Time) -> Time
1719
3500
 
1720
- attr_reader schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule?
3501
+ attr_reader invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::InvoiceAmount?
1721
3502
 
1722
- def schedule=: (
1723
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
1724
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
3503
+ def invoice_amount=: (
3504
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::InvoiceAmount
3505
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::InvoiceAmount
1725
3506
 
1726
3507
  def initialize: (
1727
3508
  id: String,
1728
- ?custom_fields: ::Hash[Symbol, String],
1729
- ?name: String,
1730
- ?netsuite_sales_order_id: String,
1731
- ?schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule
3509
+ ?access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::AccessAmount,
3510
+ ?ending_before: Time,
3511
+ ?invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::InvoiceAmount
1732
3512
  ) -> void
1733
3513
 
1734
- type schedule =
1735
- {
1736
- credit_type_id: String,
1737
- recurring_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule,
1738
- schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
1739
- }
1740
-
1741
- class Schedule < MetronomeSDK::Internal::Type::BaseModel
1742
- attr_reader credit_type_id: String?
1743
-
1744
- def credit_type_id=: (String) -> String
1745
-
1746
- attr_reader recurring_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule?
1747
-
1748
- def recurring_schedule=: (
1749
- MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule
1750
- ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule
1751
-
1752
- attr_reader schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]?
1753
-
1754
- def schedule_items=: (
1755
- ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
1756
- ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
1757
-
1758
- def initialize: (
1759
- ?credit_type_id: String,
1760
- ?recurring_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule,
1761
- ?schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::ScheduleItem]
1762
- ) -> void
3514
+ def to_hash: -> {
3515
+ id: String,
3516
+ access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::AccessAmount,
3517
+ ending_before: Time,
3518
+ invoice_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCommit::InvoiceAmount
3519
+ }
1763
3520
 
1764
- type recurring_schedule =
1765
- {
1766
- amount_distribution: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution,
1767
- ending_before: Time,
1768
- frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency,
1769
- starting_at: Time,
1770
- amount: Float,
1771
- quantity: Float,
1772
- unit_price: Float
1773
- }
3521
+ type access_amount = { quantity: Float, unit_price: Float }
1774
3522
 
1775
- class RecurringSchedule < MetronomeSDK::Internal::Type::BaseModel
1776
- attr_accessor amount_distribution: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution
3523
+ class AccessAmount < MetronomeSDK::Internal::Type::BaseModel
3524
+ attr_reader quantity: Float?
1777
3525
 
1778
- attr_accessor ending_before: Time
3526
+ def quantity=: (Float) -> Float
1779
3527
 
1780
- attr_accessor frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency
3528
+ attr_reader unit_price: Float?
1781
3529
 
1782
- attr_accessor starting_at: Time
3530
+ def unit_price=: (Float) -> Float
1783
3531
 
1784
- attr_reader amount: Float?
3532
+ def initialize: (?quantity: Float, ?unit_price: Float) -> void
1785
3533
 
1786
- def amount=: (Float) -> Float
3534
+ def to_hash: -> { quantity: Float, unit_price: Float }
3535
+ end
1787
3536
 
1788
- attr_reader quantity: Float?
3537
+ type invoice_amount = { quantity: Float, unit_price: Float }
1789
3538
 
1790
- def quantity=: (Float) -> Float
3539
+ class InvoiceAmount < MetronomeSDK::Internal::Type::BaseModel
3540
+ attr_reader quantity: Float?
1791
3541
 
1792
- attr_reader unit_price: Float?
3542
+ def quantity=: (Float) -> Float
1793
3543
 
1794
- def unit_price=: (Float) -> Float
3544
+ attr_reader unit_price: Float?
1795
3545
 
1796
- def initialize: (
1797
- amount_distribution: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution,
1798
- ending_before: Time,
1799
- frequency: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency,
1800
- starting_at: Time,
1801
- ?amount: Float,
1802
- ?quantity: Float,
1803
- ?unit_price: Float
1804
- ) -> void
3546
+ def unit_price=: (Float) -> Float
1805
3547
 
1806
- type amount_distribution = :DIVIDED | :DIVIDED_ROUNDED | :EACH
3548
+ def initialize: (?quantity: Float, ?unit_price: Float) -> void
1807
3549
 
1808
- module AmountDistribution
1809
- extend MetronomeSDK::Internal::Type::Enum
3550
+ def to_hash: -> { quantity: Float, unit_price: Float }
3551
+ end
3552
+ end
1810
3553
 
1811
- DIVIDED: :DIVIDED
1812
- DIVIDED_ROUNDED: :DIVIDED_ROUNDED
1813
- EACH: :EACH
3554
+ type update_recurring_credit =
3555
+ {
3556
+ id: String,
3557
+ access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit::AccessAmount,
3558
+ ending_before: Time
3559
+ }
1814
3560
 
1815
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::amount_distribution]
1816
- end
3561
+ class UpdateRecurringCredit < MetronomeSDK::Internal::Type::BaseModel
3562
+ attr_accessor id: String
1817
3563
 
1818
- type frequency =
1819
- :MONTHLY | :QUARTERLY | :SEMI_ANNUAL | :ANNUAL | :WEEKLY
3564
+ attr_reader access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit::AccessAmount?
1820
3565
 
1821
- module Frequency
1822
- extend MetronomeSDK::Internal::Type::Enum
3566
+ def access_amount=: (
3567
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit::AccessAmount
3568
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit::AccessAmount
1823
3569
 
1824
- MONTHLY: :MONTHLY
1825
- QUARTERLY: :QUARTERLY
1826
- SEMI_ANNUAL: :SEMI_ANNUAL
1827
- ANNUAL: :ANNUAL
1828
- WEEKLY: :WEEKLY
3570
+ attr_reader ending_before: Time?
1829
3571
 
1830
- def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateDiscount::Schedule::RecurringSchedule::frequency]
1831
- end
1832
- end
3572
+ def ending_before=: (Time) -> Time
1833
3573
 
1834
- type schedule_item =
1835
- {
1836
- timestamp: Time,
1837
- amount: Float,
1838
- quantity: Float,
1839
- unit_price: Float
1840
- }
3574
+ def initialize: (
3575
+ id: String,
3576
+ ?access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit::AccessAmount,
3577
+ ?ending_before: Time
3578
+ ) -> void
1841
3579
 
1842
- class ScheduleItem < MetronomeSDK::Internal::Type::BaseModel
1843
- attr_accessor timestamp: Time
3580
+ def to_hash: -> {
3581
+ id: String,
3582
+ access_amount: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateRecurringCredit::AccessAmount,
3583
+ ending_before: Time
3584
+ }
1844
3585
 
1845
- attr_reader amount: Float?
3586
+ type access_amount = { quantity: Float, unit_price: Float }
1846
3587
 
1847
- def amount=: (Float) -> Float
3588
+ class AccessAmount < MetronomeSDK::Internal::Type::BaseModel
3589
+ attr_reader quantity: Float?
1848
3590
 
1849
- attr_reader quantity: Float?
3591
+ def quantity=: (Float) -> Float
1850
3592
 
1851
- def quantity=: (Float) -> Float
3593
+ attr_reader unit_price: Float?
1852
3594
 
1853
- attr_reader unit_price: Float?
3595
+ def unit_price=: (Float) -> Float
1854
3596
 
1855
- def unit_price=: (Float) -> Float
3597
+ def initialize: (?quantity: Float, ?unit_price: Float) -> void
1856
3598
 
1857
- def initialize: (
1858
- timestamp: Time,
1859
- ?amount: Float,
1860
- ?quantity: Float,
1861
- ?unit_price: Float
1862
- ) -> void
1863
- end
3599
+ def to_hash: -> { quantity: Float, unit_price: Float }
1864
3600
  end
1865
3601
  end
1866
3602
 
@@ -1872,6 +3608,8 @@ module MetronomeSDK
1872
3608
  attr_accessor invoice_id: String
1873
3609
 
1874
3610
  def initialize: (date: Time, invoice_id: String) -> void
3611
+
3612
+ def to_hash: -> { date: Time, invoice_id: String }
1875
3613
  end
1876
3614
 
1877
3615
  type update_scheduled_charge =
@@ -1904,6 +3642,13 @@ module MetronomeSDK
1904
3642
  ?netsuite_sales_order_id: String?
1905
3643
  ) -> void
1906
3644
 
3645
+ def to_hash: -> {
3646
+ id: String,
3647
+ invoice_schedule: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge::InvoiceSchedule,
3648
+ name: String,
3649
+ netsuite_sales_order_id: String?
3650
+ }
3651
+
1907
3652
  type invoice_schedule =
1908
3653
  {
1909
3654
  add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge::InvoiceSchedule::AddScheduleItem],
@@ -1936,6 +3681,12 @@ module MetronomeSDK
1936
3681
  ?update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge::InvoiceSchedule::UpdateScheduleItem]
1937
3682
  ) -> void
1938
3683
 
3684
+ def to_hash: -> {
3685
+ add_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge::InvoiceSchedule::AddScheduleItem],
3686
+ remove_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge::InvoiceSchedule::RemoveScheduleItem],
3687
+ update_schedule_items: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateScheduledCharge::InvoiceSchedule::UpdateScheduleItem]
3688
+ }
3689
+
1939
3690
  type add_schedule_item =
1940
3691
  {
1941
3692
  timestamp: Time,
@@ -1965,6 +3716,13 @@ module MetronomeSDK
1965
3716
  ?quantity: Float,
1966
3717
  ?unit_price: Float
1967
3718
  ) -> void
3719
+
3720
+ def to_hash: -> {
3721
+ timestamp: Time,
3722
+ amount: Float,
3723
+ quantity: Float,
3724
+ unit_price: Float
3725
+ }
1968
3726
  end
1969
3727
 
1970
3728
  type remove_schedule_item = { id: String }
@@ -1973,6 +3731,8 @@ module MetronomeSDK
1973
3731
  attr_accessor id: String
1974
3732
 
1975
3733
  def initialize: (id: String) -> void
3734
+
3735
+ def to_hash: -> { id: String }
1976
3736
  end
1977
3737
 
1978
3738
  type update_schedule_item =
@@ -2010,9 +3770,271 @@ module MetronomeSDK
2010
3770
  ?timestamp: Time,
2011
3771
  ?unit_price: Float
2012
3772
  ) -> void
3773
+
3774
+ def to_hash: -> {
3775
+ id: String,
3776
+ amount: Float,
3777
+ quantity: Float,
3778
+ timestamp: Time,
3779
+ unit_price: Float
3780
+ }
3781
+ end
3782
+ end
3783
+ end
3784
+
3785
+ type update_spend_threshold_configuration =
3786
+ {
3787
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::Commit,
3788
+ is_enabled: bool,
3789
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig,
3790
+ threshold_amount: Float
3791
+ }
3792
+
3793
+ class UpdateSpendThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
3794
+ attr_reader commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::Commit?
3795
+
3796
+ def commit=: (
3797
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::Commit
3798
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::Commit
3799
+
3800
+ attr_reader is_enabled: bool?
3801
+
3802
+ def is_enabled=: (bool) -> bool
3803
+
3804
+ attr_reader payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig?
3805
+
3806
+ def payment_gate_config=: (
3807
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig
3808
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig
3809
+
3810
+ attr_reader threshold_amount: Float?
3811
+
3812
+ def threshold_amount=: (Float) -> Float
3813
+
3814
+ def initialize: (
3815
+ ?commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::Commit,
3816
+ ?is_enabled: bool,
3817
+ ?payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig,
3818
+ ?threshold_amount: Float
3819
+ ) -> void
3820
+
3821
+ def to_hash: -> {
3822
+ commit: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::Commit,
3823
+ is_enabled: bool,
3824
+ payment_gate_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig,
3825
+ threshold_amount: Float
3826
+ }
3827
+
3828
+ type commit =
3829
+ { description: String, name: String, product_id: String }
3830
+
3831
+ class Commit < MetronomeSDK::Internal::Type::BaseModel
3832
+ attr_reader description: String?
3833
+
3834
+ def description=: (String) -> String
3835
+
3836
+ attr_reader name: String?
3837
+
3838
+ def name=: (String) -> String
3839
+
3840
+ attr_reader product_id: String?
3841
+
3842
+ def product_id=: (String) -> String
3843
+
3844
+ def initialize: (
3845
+ ?description: String,
3846
+ ?name: String,
3847
+ ?product_id: String
3848
+ ) -> void
3849
+
3850
+ def to_hash: -> {
3851
+ description: String,
3852
+ name: String,
3853
+ product_id: String
3854
+ }
3855
+ end
3856
+
3857
+ type payment_gate_config =
3858
+ {
3859
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3860
+ precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3861
+ stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
3862
+ tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::tax_type
3863
+ }
3864
+
3865
+ class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
3866
+ attr_accessor payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type
3867
+
3868
+ attr_reader precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig?
3869
+
3870
+ def precalculated_tax_config=: (
3871
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
3872
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
3873
+
3874
+ attr_reader stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig?
3875
+
3876
+ def stripe_config=: (
3877
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig
3878
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig
3879
+
3880
+ attr_reader tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::tax_type?
3881
+
3882
+ def tax_type=: (
3883
+ MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::tax_type
3884
+ ) -> MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::tax_type
3885
+
3886
+ def initialize: (
3887
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3888
+ ?precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3889
+ ?stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
3890
+ ?tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::tax_type
3891
+ ) -> void
3892
+
3893
+ def to_hash: -> {
3894
+ payment_gate_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type,
3895
+ precalculated_tax_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
3896
+ stripe_config: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
3897
+ tax_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::tax_type
3898
+ }
3899
+
3900
+ type payment_gate_type = :NONE | :STRIPE | :EXTERNAL
3901
+
3902
+ module PaymentGateType
3903
+ extend MetronomeSDK::Internal::Type::Enum
3904
+
3905
+ NONE: :NONE
3906
+ STRIPE: :STRIPE
3907
+ EXTERNAL: :EXTERNAL
3908
+
3909
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::payment_gate_type]
3910
+ end
3911
+
3912
+ type precalculated_tax_config =
3913
+ { tax_amount: Float, tax_name: String }
3914
+
3915
+ class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
3916
+ attr_accessor tax_amount: Float
3917
+
3918
+ attr_reader tax_name: String?
3919
+
3920
+ def tax_name=: (String) -> String
3921
+
3922
+ def initialize: (tax_amount: Float, ?tax_name: String) -> void
3923
+
3924
+ def to_hash: -> { tax_amount: Float, tax_name: String }
3925
+ end
3926
+
3927
+ type stripe_config =
3928
+ {
3929
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3930
+ invoice_metadata: ::Hash[Symbol, String]
3931
+ }
3932
+
3933
+ class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
3934
+ attr_accessor payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type
3935
+
3936
+ attr_reader invoice_metadata: ::Hash[Symbol, String]?
3937
+
3938
+ def invoice_metadata=: (
3939
+ ::Hash[Symbol, String]
3940
+ ) -> ::Hash[Symbol, String]
3941
+
3942
+ def initialize: (
3943
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3944
+ ?invoice_metadata: ::Hash[Symbol, String]
3945
+ ) -> void
3946
+
3947
+ def to_hash: -> {
3948
+ payment_type: MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type,
3949
+ invoice_metadata: ::Hash[Symbol, String]
3950
+ }
3951
+
3952
+ type payment_type = :INVOICE | :PAYMENT_INTENT
3953
+
3954
+ module PaymentType
3955
+ extend MetronomeSDK::Internal::Type::Enum
3956
+
3957
+ INVOICE: :INVOICE
3958
+ PAYMENT_INTENT: :PAYMENT_INTENT
3959
+
3960
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::StripeConfig::payment_type]
3961
+ end
3962
+ end
3963
+
3964
+ type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
3965
+
3966
+ module TaxType
3967
+ extend MetronomeSDK::Internal::Type::Enum
3968
+
3969
+ NONE: :NONE
3970
+ STRIPE: :STRIPE
3971
+ ANROK: :ANROK
3972
+ PRECALCULATED: :PRECALCULATED
3973
+
3974
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSpendThresholdConfiguration::PaymentGateConfig::tax_type]
2013
3975
  end
2014
3976
  end
2015
3977
  end
3978
+
3979
+ type update_subscription =
3980
+ {
3981
+ id: String,
3982
+ ending_before: Time,
3983
+ quantity_updates: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription::QuantityUpdate]
3984
+ }
3985
+
3986
+ class UpdateSubscription < MetronomeSDK::Internal::Type::BaseModel
3987
+ attr_accessor id: String
3988
+
3989
+ attr_reader ending_before: Time?
3990
+
3991
+ def ending_before=: (Time) -> Time
3992
+
3993
+ attr_reader quantity_updates: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription::QuantityUpdate]?
3994
+
3995
+ def quantity_updates=: (
3996
+ ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription::QuantityUpdate]
3997
+ ) -> ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription::QuantityUpdate]
3998
+
3999
+ def initialize: (
4000
+ id: String,
4001
+ ?ending_before: Time,
4002
+ ?quantity_updates: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription::QuantityUpdate]
4003
+ ) -> void
4004
+
4005
+ def to_hash: -> {
4006
+ id: String,
4007
+ ending_before: Time,
4008
+ quantity_updates: ::Array[MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::UpdateSubscription::QuantityUpdate]
4009
+ }
4010
+
4011
+ type quantity_update =
4012
+ { starting_at: Time, quantity: Float, quantity_delta: Float }
4013
+
4014
+ class QuantityUpdate < MetronomeSDK::Internal::Type::BaseModel
4015
+ attr_accessor starting_at: Time
4016
+
4017
+ attr_reader quantity: Float?
4018
+
4019
+ def quantity=: (Float) -> Float
4020
+
4021
+ attr_reader quantity_delta: Float?
4022
+
4023
+ def quantity_delta=: (Float) -> Float
4024
+
4025
+ def initialize: (
4026
+ starting_at: Time,
4027
+ ?quantity: Float,
4028
+ ?quantity_delta: Float
4029
+ ) -> void
4030
+
4031
+ def to_hash: -> {
4032
+ starting_at: Time,
4033
+ quantity: Float,
4034
+ quantity_delta: Float
4035
+ }
4036
+ end
4037
+ end
2016
4038
  end
2017
4039
  end
2018
4040
  end