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

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 (417) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +56 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/errors.rb +22 -0
  5. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  6. data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
  7. data/lib/metronome_sdk/internal/type/array_of.rb +6 -1
  8. data/lib/metronome_sdk/internal/type/base_model.rb +82 -26
  9. data/lib/metronome_sdk/internal/type/boolean.rb +7 -1
  10. data/lib/metronome_sdk/internal/type/converter.rb +42 -34
  11. data/lib/metronome_sdk/internal/type/enum.rb +16 -5
  12. data/lib/metronome_sdk/internal/type/file_input.rb +6 -1
  13. data/lib/metronome_sdk/internal/type/hash_of.rb +6 -1
  14. data/lib/metronome_sdk/internal/type/union.rb +17 -9
  15. data/lib/metronome_sdk/internal/type/unknown.rb +7 -1
  16. data/lib/metronome_sdk/internal/util.rb +8 -9
  17. data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
  18. data/lib/metronome_sdk/models/commit.rb +1053 -0
  19. data/lib/metronome_sdk/models/contract_without_amendments.rb +2043 -0
  20. data/lib/metronome_sdk/models/credit.rb +677 -0
  21. data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
  22. data/lib/metronome_sdk/models/discount.rb +68 -0
  23. data/lib/metronome_sdk/models/event_type_filter.rb +33 -0
  24. data/lib/metronome_sdk/models/id.rb +15 -0
  25. data/lib/metronome_sdk/models/override.rb +381 -0
  26. data/lib/metronome_sdk/models/pro_service.rb +73 -0
  27. data/lib/metronome_sdk/models/property_filter.rb +52 -0
  28. data/lib/metronome_sdk/models/rate.rb +101 -0
  29. data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
  30. data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
  31. data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
  32. data/lib/metronome_sdk/models/tier.rb +21 -0
  33. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +3 -14
  34. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -1
  35. data/lib/metronome_sdk/models/v1/alert_create_response.rb +3 -14
  36. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +2 -8
  37. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +3 -14
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -86
  39. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +3 -14
  40. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +6 -85
  41. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +8 -85
  42. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +312 -35
  43. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +3 -14
  44. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +3 -14
  45. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +3 -1276
  46. data/lib/metronome_sdk/models/v1/contract_create_params.rb +792 -104
  47. data/lib/metronome_sdk/models/v1/contract_create_response.rb +3 -14
  48. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
  49. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +5 -1645
  50. data/lib/metronome_sdk/models/v1/contract_list_response.rb +253 -10692
  51. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +9 -295
  52. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +254 -10721
  53. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +3 -1276
  54. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +3 -14
  55. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +3 -14
  56. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -97
  57. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +3 -14
  58. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +148 -0
  59. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +12 -561
  60. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +2 -8
  61. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +14 -559
  62. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +6 -97
  63. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +3 -14
  64. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
  65. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +45 -0
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +2 -8
  67. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +3 -14
  68. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +3 -14
  69. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +6 -42
  70. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +2 -8
  71. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +6 -159
  72. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +6 -42
  73. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +3 -14
  74. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +3 -14
  75. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +3 -14
  76. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -44
  77. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +3 -16
  78. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +6 -44
  79. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +9 -61
  80. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +6 -158
  81. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +5 -77
  82. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +3 -14
  83. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +3 -14
  84. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
  85. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +11 -153
  86. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +14 -175
  87. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +3 -14
  88. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +69 -0
  89. data/lib/metronome_sdk/models/v1/customer.rb +53 -0
  90. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +2 -8
  91. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +3 -14
  92. data/lib/metronome_sdk/models/v1/customer_create_response.rb +3 -50
  93. data/lib/metronome_sdk/models/v1/{customer_list_response.rb → customer_detail.rb} +14 -15
  94. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +6 -86
  95. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
  96. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
  97. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +3 -126
  98. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +3 -50
  99. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +5 -276
  100. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +3 -279
  101. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
  102. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +8 -6
  103. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +3 -14
  104. data/lib/metronome_sdk/models/v1/customers/commit_list_params.rb +9 -1
  105. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +3 -1047
  106. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +3 -14
  107. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +3 -14
  108. data/lib/metronome_sdk/models/v1/customers/credit_list_params.rb +9 -1
  109. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +3 -593
  110. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +3 -14
  111. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +270 -0
  112. data/lib/metronome_sdk/models/v1/customers/{invoice_list_response.rb → invoice.rb} +119 -303
  113. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +2 -1271
  114. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +3 -1276
  115. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +3 -14
  116. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +3 -21
  117. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +1 -0
  118. data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
  119. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +3 -286
  120. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +3 -20
  121. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +3 -128
  122. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
  123. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
  124. data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
  125. data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
  126. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -8
  127. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +3 -14
  128. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +3 -2
  129. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +3 -14
  130. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1127 -105
  131. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3 -14
  132. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +577 -643
  133. data/lib/metronome_sdk/models/v2/contract_list_response.rb +917 -746
  134. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +917 -748
  135. data/lib/metronome_sdk/models.rb +36 -4
  136. data/lib/metronome_sdk/resources/v1/alerts.rb +1 -1
  137. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +2 -2
  138. data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -4
  139. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -1
  140. data/lib/metronome_sdk/resources/v1/contracts.rb +11 -5
  141. data/lib/metronome_sdk/resources/v1/credit_grants.rb +4 -2
  142. data/lib/metronome_sdk/resources/v1/customers/commits.rb +5 -3
  143. data/lib/metronome_sdk/resources/v1/customers/credits.rb +3 -1
  144. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -2
  145. data/lib/metronome_sdk/resources/v1/customers.rb +40 -2
  146. data/lib/metronome_sdk/resources/v1/usage.rb +25 -0
  147. data/lib/metronome_sdk/resources/v2/contracts.rb +11 -9
  148. data/lib/metronome_sdk/version.rb +1 -1
  149. data/lib/metronome_sdk.rb +31 -2
  150. data/rbi/metronome_sdk/errors.rbi +16 -0
  151. data/rbi/metronome_sdk/internal/type/boolean.rbi +2 -0
  152. data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
  153. data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
  154. data/rbi/metronome_sdk/internal/type/unknown.rbi +2 -0
  155. data/rbi/metronome_sdk/internal/util.rbi +2 -0
  156. data/rbi/metronome_sdk/models/base_usage_filter.rbi +46 -0
  157. data/rbi/metronome_sdk/models/commit.rbi +2046 -0
  158. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +4260 -0
  159. data/rbi/metronome_sdk/models/credit.rbi +1314 -0
  160. data/rbi/metronome_sdk/models/credit_type_data.rbi +26 -0
  161. data/rbi/metronome_sdk/models/discount.rbi +106 -0
  162. data/rbi/metronome_sdk/models/event_type_filter.rbi +57 -0
  163. data/rbi/metronome_sdk/models/id.rbi +23 -0
  164. data/rbi/metronome_sdk/models/override.rbi +675 -0
  165. data/rbi/metronome_sdk/models/pro_service.rbi +98 -0
  166. data/rbi/metronome_sdk/models/property_filter.rbi +88 -0
  167. data/rbi/metronome_sdk/models/rate.rbi +155 -0
  168. data/rbi/metronome_sdk/models/schedule_duration.rbi +89 -0
  169. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +121 -0
  170. data/rbi/metronome_sdk/models/scheduled_charge.rbi +119 -0
  171. data/rbi/metronome_sdk/models/tier.rbi +29 -0
  172. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +4 -37
  173. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -0
  174. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +4 -37
  175. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +6 -12
  176. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +4 -44
  177. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +8 -177
  178. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +4 -43
  179. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +8 -177
  180. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +8 -175
  181. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +712 -68
  182. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +4 -37
  183. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +4 -39
  184. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +3 -2595
  185. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1738 -210
  186. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +4 -37
  187. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
  188. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3 -3366
  189. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +375 -22523
  190. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +12 -632
  191. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +375 -22523
  192. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +3 -2595
  193. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +4 -44
  194. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +4 -44
  195. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +8 -209
  196. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +4 -44
  197. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +237 -0
  198. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +76 -1143
  199. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +3 -9
  200. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +76 -1137
  201. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +8 -209
  202. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +4 -44
  203. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +111 -0
  204. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +94 -0
  205. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +3 -9
  206. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +4 -44
  207. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +4 -44
  208. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +8 -74
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +3 -9
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +8 -344
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +8 -74
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +4 -44
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +4 -44
  214. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +4 -44
  215. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +8 -108
  216. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +4 -45
  217. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +8 -108
  218. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +12 -149
  219. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +8 -344
  220. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +8 -166
  221. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +4 -41
  222. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +4 -39
  223. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
  224. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +10 -231
  225. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +14 -281
  226. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +4 -39
  227. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +90 -0
  228. data/rbi/metronome_sdk/models/v1/customer.rbi +74 -0
  229. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +6 -12
  230. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +4 -39
  231. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +6 -84
  232. data/rbi/metronome_sdk/models/v1/{customer_list_response.rbi → customer_detail.rbi} +19 -26
  233. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +8 -177
  234. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
  235. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
  236. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +6 -255
  237. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +6 -86
  238. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +3 -623
  239. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +4 -622
  240. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
  241. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +12 -8
  242. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +4 -44
  243. data/rbi/metronome_sdk/models/v1/customers/commit_list_params.rbi +11 -0
  244. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +3 -2164
  245. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +4 -44
  246. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +4 -44
  247. data/rbi/metronome_sdk/models/v1/customers/credit_list_params.rbi +11 -0
  248. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +3 -1224
  249. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +4 -44
  250. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +572 -0
  251. data/rbi/metronome_sdk/models/v1/customers/{invoice_list_response.rbi → invoice.rbi} +182 -589
  252. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +4 -2561
  253. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +6 -2612
  254. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +4 -41
  255. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +4 -39
  256. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
  257. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +349 -0
  258. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +6 -560
  259. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +4 -37
  260. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +4 -248
  261. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +79 -0
  262. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +80 -0
  263. data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
  264. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
  265. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +23 -23
  266. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +4 -41
  267. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +11 -15
  268. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +4 -41
  269. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +2463 -206
  270. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +4 -37
  271. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1381 -1550
  272. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +2017 -1466
  273. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +2017 -1466
  274. data/rbi/metronome_sdk/models.rbi +32 -0
  275. data/rbi/metronome_sdk/resources/v1/alerts.rbi +3 -0
  276. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +2 -6
  277. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +4 -4
  278. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +1 -4
  279. data/rbi/metronome_sdk/resources/v1/contracts.rbi +13 -4
  280. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
  281. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +9 -4
  282. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +3 -0
  283. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
  284. data/rbi/metronome_sdk/resources/v1/customers.rbi +34 -3
  285. data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
  286. data/rbi/metronome_sdk/resources/v2/contracts.rbi +24 -14
  287. data/sig/metronome_sdk/errors.rbs +9 -0
  288. data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
  289. data/sig/metronome_sdk/models/base_usage_filter.rbs +28 -0
  290. data/sig/metronome_sdk/models/commit.rbs +1063 -0
  291. data/sig/metronome_sdk/models/contract_without_amendments.rbs +1828 -0
  292. data/sig/metronome_sdk/models/credit.rbs +686 -0
  293. data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
  294. data/sig/metronome_sdk/models/discount.rbs +63 -0
  295. data/sig/metronome_sdk/models/event_type_filter.rbs +26 -0
  296. data/sig/metronome_sdk/models/id.rbs +13 -0
  297. data/sig/metronome_sdk/models/override.rbs +399 -0
  298. data/sig/metronome_sdk/models/pro_service.rbs +61 -0
  299. data/sig/metronome_sdk/models/property_filter.rbs +41 -0
  300. data/sig/metronome_sdk/models/rate.rbs +94 -0
  301. data/sig/metronome_sdk/models/schedule_duration.rbs +56 -0
  302. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +75 -0
  303. data/sig/metronome_sdk/models/scheduled_charge.rbs +70 -0
  304. data/sig/metronome_sdk/models/tier.rbs +17 -0
  305. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +4 -19
  306. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +4 -19
  307. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +4 -12
  308. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +4 -19
  309. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -73
  310. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +4 -19
  311. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +12 -73
  312. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +12 -73
  313. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +291 -24
  314. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +4 -19
  315. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +4 -19
  316. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +4 -1291
  317. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +694 -84
  318. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +4 -19
  319. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
  320. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1 -1642
  321. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +188 -10437
  322. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +15 -271
  323. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +188 -10437
  324. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +4 -1291
  325. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +4 -19
  326. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +4 -21
  327. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +8 -82
  328. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +4 -21
  329. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +121 -0
  330. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +16 -466
  331. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +4 -12
  332. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +16 -466
  333. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +8 -82
  334. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +4 -21
  335. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +47 -0
  336. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +41 -0
  337. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +4 -12
  338. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +4 -21
  339. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +4 -21
  340. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +10 -34
  341. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +4 -12
  342. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +10 -144
  343. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +10 -34
  344. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +4 -21
  345. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +4 -21
  346. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +4 -21
  347. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +12 -40
  348. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +4 -21
  349. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +12 -40
  350. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +18 -58
  351. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +10 -144
  352. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +2 -66
  353. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +4 -19
  354. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +4 -19
  355. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +20 -0
  356. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +12 -118
  357. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +16 -140
  358. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +4 -19
  359. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +52 -0
  360. data/sig/metronome_sdk/models/v1/customer.rbs +44 -0
  361. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +4 -12
  362. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +4 -19
  363. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +4 -48
  364. data/sig/metronome_sdk/models/v1/{customer_list_response.rbs → customer_detail.rbs} +17 -17
  365. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +12 -73
  366. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
  367. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
  368. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +4 -112
  369. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +4 -48
  370. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +4 -243
  371. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +4 -247
  372. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +7 -0
  373. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +4 -21
  374. data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +7 -0
  375. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +4 -1057
  376. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +4 -21
  377. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +4 -21
  378. data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +7 -0
  379. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +4 -596
  380. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +4 -21
  381. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +234 -0
  382. data/sig/metronome_sdk/models/v1/customers/{invoice_list_response.rbs → invoice.rbs} +147 -305
  383. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +8 -1278
  384. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +4 -1294
  385. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +4 -19
  386. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +4 -16
  387. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +2 -1
  388. data/sig/metronome_sdk/models/v1/plan_detail.rbs +203 -0
  389. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +4 -267
  390. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +4 -16
  391. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +4 -108
  392. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +37 -0
  393. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +37 -0
  394. data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
  395. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
  396. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +4 -8
  397. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +4 -19
  398. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +4 -8
  399. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +4 -19
  400. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +989 -77
  401. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4 -19
  402. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +510 -655
  403. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +970 -809
  404. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +970 -809
  405. data/sig/metronome_sdk/models.rbs +32 -0
  406. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
  407. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
  408. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  409. data/sig/metronome_sdk/resources/v1/contracts.rbs +4 -1
  410. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
  411. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
  412. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
  413. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
  414. data/sig/metronome_sdk/resources/v1/customers.rbs +9 -1
  415. data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
  416. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -2
  417. metadata +97 -10
@@ -62,19 +62,10 @@ module MetronomeSDK
62
62
  sig { returns(T::Boolean) }
63
63
  attr_accessor :entitled
64
64
 
65
- sig do
66
- returns(
67
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate
68
- )
69
- end
65
+ sig { returns(MetronomeSDK::Rate) }
70
66
  attr_reader :list_rate
71
67
 
72
- sig do
73
- params(
74
- list_rate:
75
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::OrHash
76
- ).void
77
- end
68
+ sig { params(list_rate: MetronomeSDK::Rate::OrHash).void }
78
69
  attr_writer :list_rate
79
70
 
80
71
  sig { returns(T::Hash[Symbol, String]) }
@@ -137,21 +128,10 @@ module MetronomeSDK
137
128
  sig { params(ending_before: Time).void }
138
129
  attr_writer :ending_before
139
130
 
140
- sig do
141
- returns(
142
- T.nilable(
143
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate
144
- )
145
- )
146
- end
131
+ sig { returns(T.nilable(MetronomeSDK::Rate)) }
147
132
  attr_reader :override_rate
148
133
 
149
- sig do
150
- params(
151
- override_rate:
152
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::OrHash
153
- ).void
154
- end
134
+ sig { params(override_rate: MetronomeSDK::Rate::OrHash).void }
155
135
  attr_writer :override_rate
156
136
 
157
137
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
@@ -163,8 +143,7 @@ module MetronomeSDK
163
143
  sig do
164
144
  params(
165
145
  entitled: T::Boolean,
166
- list_rate:
167
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::OrHash,
146
+ list_rate: MetronomeSDK::Rate::OrHash,
168
147
  product_custom_fields: T::Hash[Symbol, String],
169
148
  product_id: String,
170
149
  product_name: String,
@@ -176,8 +155,7 @@ module MetronomeSDK
176
155
  commit_rate:
177
156
  MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate::OrHash,
178
157
  ending_before: Time,
179
- override_rate:
180
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::OrHash,
158
+ override_rate: MetronomeSDK::Rate::OrHash,
181
159
  pricing_group_values: T::Hash[Symbol, String]
182
160
  ).returns(T.attached_class)
183
161
  end
@@ -204,8 +182,7 @@ module MetronomeSDK
204
182
  override.returns(
205
183
  {
206
184
  entitled: T::Boolean,
207
- list_rate:
208
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate,
185
+ list_rate: MetronomeSDK::Rate,
209
186
  product_custom_fields: T::Hash[Symbol, String],
210
187
  product_id: String,
211
188
  product_name: String,
@@ -217,8 +194,7 @@ module MetronomeSDK
217
194
  commit_rate:
218
195
  MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate,
219
196
  ending_before: Time,
220
- override_rate:
221
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate,
197
+ override_rate: MetronomeSDK::Rate,
222
198
  pricing_group_values: T::Hash[Symbol, String]
223
199
  }
224
200
  )
@@ -226,279 +202,6 @@ module MetronomeSDK
226
202
  def to_hash
227
203
  end
228
204
 
229
- class ListRate < MetronomeSDK::Internal::Type::BaseModel
230
- OrHash =
231
- T.type_alias do
232
- T.any(
233
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate,
234
- MetronomeSDK::Internal::AnyHash
235
- )
236
- end
237
-
238
- sig do
239
- returns(
240
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::TaggedSymbol
241
- )
242
- end
243
- attr_accessor :rate_type
244
-
245
- sig do
246
- returns(
247
- T.nilable(
248
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::CreditType
249
- )
250
- )
251
- end
252
- attr_reader :credit_type
253
-
254
- sig do
255
- params(
256
- credit_type:
257
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::CreditType::OrHash
258
- ).void
259
- end
260
- attr_writer :credit_type
261
-
262
- # Only set for CUSTOM rate_type. This field is interpreted by custom rate
263
- # processors.
264
- sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
265
- attr_reader :custom_rate
266
-
267
- sig { params(custom_rate: T::Hash[Symbol, T.anything]).void }
268
- attr_writer :custom_rate
269
-
270
- # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
271
- # set to true.
272
- sig { returns(T.nilable(T::Boolean)) }
273
- attr_reader :is_prorated
274
-
275
- sig { params(is_prorated: T::Boolean).void }
276
- attr_writer :is_prorated
277
-
278
- # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
279
- # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
280
- sig { returns(T.nilable(Float)) }
281
- attr_reader :price
282
-
283
- sig { params(price: Float).void }
284
- attr_writer :price
285
-
286
- # if pricing groups are used, this will contain the values used to calculate the
287
- # price
288
- sig { returns(T.nilable(T::Hash[Symbol, String])) }
289
- attr_reader :pricing_group_values
290
-
291
- sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
292
- attr_writer :pricing_group_values
293
-
294
- # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
295
- sig { returns(T.nilable(Float)) }
296
- attr_reader :quantity
297
-
298
- sig { params(quantity: Float).void }
299
- attr_writer :quantity
300
-
301
- # Only set for TIERED rate_type.
302
- sig do
303
- returns(
304
- T.nilable(
305
- T::Array[
306
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::Tier
307
- ]
308
- )
309
- )
310
- end
311
- attr_reader :tiers
312
-
313
- sig do
314
- params(
315
- tiers:
316
- T::Array[
317
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::Tier::OrHash
318
- ]
319
- ).void
320
- end
321
- attr_writer :tiers
322
-
323
- # Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
324
- # using list prices rather than the standard rates for this product on the
325
- # contract.
326
- sig { returns(T.nilable(T::Boolean)) }
327
- attr_reader :use_list_prices
328
-
329
- sig { params(use_list_prices: T::Boolean).void }
330
- attr_writer :use_list_prices
331
-
332
- sig do
333
- params(
334
- rate_type:
335
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::OrSymbol,
336
- credit_type:
337
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::CreditType::OrHash,
338
- custom_rate: T::Hash[Symbol, T.anything],
339
- is_prorated: T::Boolean,
340
- price: Float,
341
- pricing_group_values: T::Hash[Symbol, String],
342
- quantity: Float,
343
- tiers:
344
- T::Array[
345
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::Tier::OrHash
346
- ],
347
- use_list_prices: T::Boolean
348
- ).returns(T.attached_class)
349
- end
350
- def self.new(
351
- rate_type:,
352
- credit_type: nil,
353
- # Only set for CUSTOM rate_type. This field is interpreted by custom rate
354
- # processors.
355
- custom_rate: nil,
356
- # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
357
- # set to true.
358
- is_prorated: nil,
359
- # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
360
- # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
361
- price: nil,
362
- # if pricing groups are used, this will contain the values used to calculate the
363
- # price
364
- pricing_group_values: nil,
365
- # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
366
- quantity: nil,
367
- # Only set for TIERED rate_type.
368
- tiers: nil,
369
- # Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
370
- # using list prices rather than the standard rates for this product on the
371
- # contract.
372
- use_list_prices: nil
373
- )
374
- end
375
-
376
- sig do
377
- override.returns(
378
- {
379
- rate_type:
380
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::TaggedSymbol,
381
- credit_type:
382
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::CreditType,
383
- custom_rate: T::Hash[Symbol, T.anything],
384
- is_prorated: T::Boolean,
385
- price: Float,
386
- pricing_group_values: T::Hash[Symbol, String],
387
- quantity: Float,
388
- tiers:
389
- T::Array[
390
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::Tier
391
- ],
392
- use_list_prices: T::Boolean
393
- }
394
- )
395
- end
396
- def to_hash
397
- end
398
-
399
- module RateType
400
- extend MetronomeSDK::Internal::Type::Enum
401
-
402
- TaggedSymbol =
403
- T.type_alias do
404
- T.all(
405
- Symbol,
406
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType
407
- )
408
- end
409
- OrSymbol = T.type_alias { T.any(Symbol, String) }
410
-
411
- FLAT =
412
- T.let(
413
- :FLAT,
414
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::TaggedSymbol
415
- )
416
- PERCENTAGE =
417
- T.let(
418
- :PERCENTAGE,
419
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::TaggedSymbol
420
- )
421
- SUBSCRIPTION =
422
- T.let(
423
- :SUBSCRIPTION,
424
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::TaggedSymbol
425
- )
426
- CUSTOM =
427
- T.let(
428
- :CUSTOM,
429
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::TaggedSymbol
430
- )
431
- TIERED =
432
- T.let(
433
- :TIERED,
434
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::TaggedSymbol
435
- )
436
-
437
- sig do
438
- override.returns(
439
- T::Array[
440
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::RateType::TaggedSymbol
441
- ]
442
- )
443
- end
444
- def self.values
445
- end
446
- end
447
-
448
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
449
- OrHash =
450
- T.type_alias do
451
- T.any(
452
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::CreditType,
453
- MetronomeSDK::Internal::AnyHash
454
- )
455
- end
456
-
457
- sig { returns(String) }
458
- attr_accessor :id
459
-
460
- sig { returns(String) }
461
- attr_accessor :name
462
-
463
- sig { params(id: String, name: String).returns(T.attached_class) }
464
- def self.new(id:, name:)
465
- end
466
-
467
- sig { override.returns({ id: String, name: String }) }
468
- def to_hash
469
- end
470
- end
471
-
472
- class Tier < MetronomeSDK::Internal::Type::BaseModel
473
- OrHash =
474
- T.type_alias do
475
- T.any(
476
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::ListRate::Tier,
477
- MetronomeSDK::Internal::AnyHash
478
- )
479
- end
480
-
481
- sig { returns(Float) }
482
- attr_accessor :price
483
-
484
- sig { returns(T.nilable(Float)) }
485
- attr_reader :size
486
-
487
- sig { params(size: Float).void }
488
- attr_writer :size
489
-
490
- sig do
491
- params(price: Float, size: Float).returns(T.attached_class)
492
- end
493
- def self.new(price:, size: nil)
494
- end
495
-
496
- sig { override.returns({ price: Float, size: Float }) }
497
- def to_hash
498
- end
499
- end
500
- end
501
-
502
205
  module BillingFrequency
503
206
  extend MetronomeSDK::Internal::Type::Enum
504
207
 
@@ -567,25 +270,10 @@ module MetronomeSDK
567
270
  attr_writer :price
568
271
 
569
272
  # Only set for TIERED rate_type.
570
- sig do
571
- returns(
572
- T.nilable(
573
- T::Array[
574
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate::Tier
575
- ]
576
- )
577
- )
578
- end
273
+ sig { returns(T.nilable(T::Array[MetronomeSDK::Tier])) }
579
274
  attr_reader :tiers
580
275
 
581
- sig do
582
- params(
583
- tiers:
584
- T::Array[
585
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate::Tier::OrHash
586
- ]
587
- ).void
588
- end
276
+ sig { params(tiers: T::Array[MetronomeSDK::Tier::OrHash]).void }
589
277
  attr_writer :tiers
590
278
 
591
279
  # A distinct rate on the rate card. You can choose to use this rate rather than
@@ -595,10 +283,7 @@ module MetronomeSDK
595
283
  rate_type:
596
284
  MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate::RateType::OrSymbol,
597
285
  price: Float,
598
- tiers:
599
- T::Array[
600
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate::Tier::OrHash
601
- ]
286
+ tiers: T::Array[MetronomeSDK::Tier::OrHash]
602
287
  ).returns(T.attached_class)
603
288
  end
604
289
  def self.new(
@@ -616,10 +301,7 @@ module MetronomeSDK
616
301
  rate_type:
617
302
  MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate::RateType::TaggedSymbol,
618
303
  price: Float,
619
- tiers:
620
- T::Array[
621
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate::Tier
622
- ]
304
+ tiers: T::Array[MetronomeSDK::Tier]
623
305
  }
624
306
  )
625
307
  end
@@ -674,308 +356,6 @@ module MetronomeSDK
674
356
  def self.values
675
357
  end
676
358
  end
677
-
678
- class Tier < MetronomeSDK::Internal::Type::BaseModel
679
- OrHash =
680
- T.type_alias do
681
- T.any(
682
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::CommitRate::Tier,
683
- MetronomeSDK::Internal::AnyHash
684
- )
685
- end
686
-
687
- sig { returns(Float) }
688
- attr_accessor :price
689
-
690
- sig { returns(T.nilable(Float)) }
691
- attr_reader :size
692
-
693
- sig { params(size: Float).void }
694
- attr_writer :size
695
-
696
- sig do
697
- params(price: Float, size: Float).returns(T.attached_class)
698
- end
699
- def self.new(price:, size: nil)
700
- end
701
-
702
- sig { override.returns({ price: Float, size: Float }) }
703
- def to_hash
704
- end
705
- end
706
- end
707
-
708
- class OverrideRate < MetronomeSDK::Internal::Type::BaseModel
709
- OrHash =
710
- T.type_alias do
711
- T.any(
712
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate,
713
- MetronomeSDK::Internal::AnyHash
714
- )
715
- end
716
-
717
- sig do
718
- returns(
719
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::TaggedSymbol
720
- )
721
- end
722
- attr_accessor :rate_type
723
-
724
- sig do
725
- returns(
726
- T.nilable(
727
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::CreditType
728
- )
729
- )
730
- end
731
- attr_reader :credit_type
732
-
733
- sig do
734
- params(
735
- credit_type:
736
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::CreditType::OrHash
737
- ).void
738
- end
739
- attr_writer :credit_type
740
-
741
- # Only set for CUSTOM rate_type. This field is interpreted by custom rate
742
- # processors.
743
- sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
744
- attr_reader :custom_rate
745
-
746
- sig { params(custom_rate: T::Hash[Symbol, T.anything]).void }
747
- attr_writer :custom_rate
748
-
749
- # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
750
- # set to true.
751
- sig { returns(T.nilable(T::Boolean)) }
752
- attr_reader :is_prorated
753
-
754
- sig { params(is_prorated: T::Boolean).void }
755
- attr_writer :is_prorated
756
-
757
- # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
758
- # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
759
- sig { returns(T.nilable(Float)) }
760
- attr_reader :price
761
-
762
- sig { params(price: Float).void }
763
- attr_writer :price
764
-
765
- # if pricing groups are used, this will contain the values used to calculate the
766
- # price
767
- sig { returns(T.nilable(T::Hash[Symbol, String])) }
768
- attr_reader :pricing_group_values
769
-
770
- sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
771
- attr_writer :pricing_group_values
772
-
773
- # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
774
- sig { returns(T.nilable(Float)) }
775
- attr_reader :quantity
776
-
777
- sig { params(quantity: Float).void }
778
- attr_writer :quantity
779
-
780
- # Only set for TIERED rate_type.
781
- sig do
782
- returns(
783
- T.nilable(
784
- T::Array[
785
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::Tier
786
- ]
787
- )
788
- )
789
- end
790
- attr_reader :tiers
791
-
792
- sig do
793
- params(
794
- tiers:
795
- T::Array[
796
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::Tier::OrHash
797
- ]
798
- ).void
799
- end
800
- attr_writer :tiers
801
-
802
- # Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
803
- # using list prices rather than the standard rates for this product on the
804
- # contract.
805
- sig { returns(T.nilable(T::Boolean)) }
806
- attr_reader :use_list_prices
807
-
808
- sig { params(use_list_prices: T::Boolean).void }
809
- attr_writer :use_list_prices
810
-
811
- sig do
812
- params(
813
- rate_type:
814
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::OrSymbol,
815
- credit_type:
816
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::CreditType::OrHash,
817
- custom_rate: T::Hash[Symbol, T.anything],
818
- is_prorated: T::Boolean,
819
- price: Float,
820
- pricing_group_values: T::Hash[Symbol, String],
821
- quantity: Float,
822
- tiers:
823
- T::Array[
824
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::Tier::OrHash
825
- ],
826
- use_list_prices: T::Boolean
827
- ).returns(T.attached_class)
828
- end
829
- def self.new(
830
- rate_type:,
831
- credit_type: nil,
832
- # Only set for CUSTOM rate_type. This field is interpreted by custom rate
833
- # processors.
834
- custom_rate: nil,
835
- # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
836
- # set to true.
837
- is_prorated: nil,
838
- # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
839
- # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
840
- price: nil,
841
- # if pricing groups are used, this will contain the values used to calculate the
842
- # price
843
- pricing_group_values: nil,
844
- # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
845
- quantity: nil,
846
- # Only set for TIERED rate_type.
847
- tiers: nil,
848
- # Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
849
- # using list prices rather than the standard rates for this product on the
850
- # contract.
851
- use_list_prices: nil
852
- )
853
- end
854
-
855
- sig do
856
- override.returns(
857
- {
858
- rate_type:
859
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::TaggedSymbol,
860
- credit_type:
861
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::CreditType,
862
- custom_rate: T::Hash[Symbol, T.anything],
863
- is_prorated: T::Boolean,
864
- price: Float,
865
- pricing_group_values: T::Hash[Symbol, String],
866
- quantity: Float,
867
- tiers:
868
- T::Array[
869
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::Tier
870
- ],
871
- use_list_prices: T::Boolean
872
- }
873
- )
874
- end
875
- def to_hash
876
- end
877
-
878
- module RateType
879
- extend MetronomeSDK::Internal::Type::Enum
880
-
881
- TaggedSymbol =
882
- T.type_alias do
883
- T.all(
884
- Symbol,
885
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType
886
- )
887
- end
888
- OrSymbol = T.type_alias { T.any(Symbol, String) }
889
-
890
- FLAT =
891
- T.let(
892
- :FLAT,
893
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::TaggedSymbol
894
- )
895
- PERCENTAGE =
896
- T.let(
897
- :PERCENTAGE,
898
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::TaggedSymbol
899
- )
900
- SUBSCRIPTION =
901
- T.let(
902
- :SUBSCRIPTION,
903
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::TaggedSymbol
904
- )
905
- CUSTOM =
906
- T.let(
907
- :CUSTOM,
908
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::TaggedSymbol
909
- )
910
- TIERED =
911
- T.let(
912
- :TIERED,
913
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::TaggedSymbol
914
- )
915
-
916
- sig do
917
- override.returns(
918
- T::Array[
919
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::RateType::TaggedSymbol
920
- ]
921
- )
922
- end
923
- def self.values
924
- end
925
- end
926
-
927
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
928
- OrHash =
929
- T.type_alias do
930
- T.any(
931
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::CreditType,
932
- MetronomeSDK::Internal::AnyHash
933
- )
934
- end
935
-
936
- sig { returns(String) }
937
- attr_accessor :id
938
-
939
- sig { returns(String) }
940
- attr_accessor :name
941
-
942
- sig { params(id: String, name: String).returns(T.attached_class) }
943
- def self.new(id:, name:)
944
- end
945
-
946
- sig { override.returns({ id: String, name: String }) }
947
- def to_hash
948
- end
949
- end
950
-
951
- class Tier < MetronomeSDK::Internal::Type::BaseModel
952
- OrHash =
953
- T.type_alias do
954
- T.any(
955
- MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::OverrideRate::Tier,
956
- MetronomeSDK::Internal::AnyHash
957
- )
958
- end
959
-
960
- sig { returns(Float) }
961
- attr_accessor :price
962
-
963
- sig { returns(T.nilable(Float)) }
964
- attr_reader :size
965
-
966
- sig { params(size: Float).void }
967
- attr_writer :size
968
-
969
- sig do
970
- params(price: Float, size: Float).returns(T.attached_class)
971
- end
972
- def self.new(price:, size: nil)
973
- end
974
-
975
- sig { override.returns({ price: Float, size: Float }) }
976
- def to_hash
977
- end
978
- end
979
359
  end
980
360
  end
981
361
  end