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
@@ -79,20 +79,11 @@ module MetronomeSDK
79
79
  sig { params(description: String).void }
80
80
  attr_writer :description
81
81
 
82
- sig do
83
- returns(
84
- T.nilable(
85
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::FiatCreditType
86
- )
87
- )
88
- end
82
+ sig { returns(T.nilable(MetronomeSDK::CreditTypeData)) }
89
83
  attr_reader :fiat_credit_type
90
84
 
91
85
  sig do
92
- params(
93
- fiat_credit_type:
94
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::FiatCreditType::OrHash
95
- ).void
86
+ params(fiat_credit_type: MetronomeSDK::CreditTypeData::OrHash).void
96
87
  end
97
88
  attr_writer :fiat_credit_type
98
89
 
@@ -112,8 +103,7 @@ module MetronomeSDK
112
103
  ],
113
104
  custom_fields: T::Hash[Symbol, String],
114
105
  description: String,
115
- fiat_credit_type:
116
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::FiatCreditType::OrHash
106
+ fiat_credit_type: MetronomeSDK::CreditTypeData::OrHash
117
107
  ).returns(T.attached_class)
118
108
  end
119
109
  def self.new(
@@ -146,8 +136,7 @@ module MetronomeSDK
146
136
  ],
147
137
  custom_fields: T::Hash[Symbol, String],
148
138
  description: String,
149
- fiat_credit_type:
150
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::FiatCreditType
139
+ fiat_credit_type: MetronomeSDK::CreditTypeData
151
140
  }
152
141
  )
153
142
  end
@@ -206,17 +195,12 @@ module MetronomeSDK
206
195
  )
207
196
  end
208
197
 
209
- sig do
210
- returns(
211
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::CreditTypeConversion::CustomCreditType
212
- )
213
- end
198
+ sig { returns(MetronomeSDK::CreditTypeData) }
214
199
  attr_reader :custom_credit_type
215
200
 
216
201
  sig do
217
202
  params(
218
- custom_credit_type:
219
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::CreditTypeConversion::CustomCreditType::OrHash
203
+ custom_credit_type: MetronomeSDK::CreditTypeData::OrHash
220
204
  ).void
221
205
  end
222
206
  attr_writer :custom_credit_type
@@ -226,8 +210,7 @@ module MetronomeSDK
226
210
 
227
211
  sig do
228
212
  params(
229
- custom_credit_type:
230
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::CreditTypeConversion::CustomCreditType::OrHash,
213
+ custom_credit_type: MetronomeSDK::CreditTypeData::OrHash,
231
214
  fiat_per_custom_credit: String
232
215
  ).returns(T.attached_class)
233
216
  end
@@ -237,62 +220,13 @@ module MetronomeSDK
237
220
  sig do
238
221
  override.returns(
239
222
  {
240
- custom_credit_type:
241
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::CreditTypeConversion::CustomCreditType,
223
+ custom_credit_type: MetronomeSDK::CreditTypeData,
242
224
  fiat_per_custom_credit: String
243
225
  }
244
226
  )
245
227
  end
246
228
  def to_hash
247
229
  end
248
-
249
- class CustomCreditType < MetronomeSDK::Internal::Type::BaseModel
250
- OrHash =
251
- T.type_alias do
252
- T.any(
253
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::CreditTypeConversion::CustomCreditType,
254
- MetronomeSDK::Internal::AnyHash
255
- )
256
- end
257
-
258
- sig { returns(String) }
259
- attr_accessor :id
260
-
261
- sig { returns(String) }
262
- attr_accessor :name
263
-
264
- sig { params(id: String, name: String).returns(T.attached_class) }
265
- def self.new(id:, name:)
266
- end
267
-
268
- sig { override.returns({ id: String, name: String }) }
269
- def to_hash
270
- end
271
- end
272
- end
273
-
274
- class FiatCreditType < MetronomeSDK::Internal::Type::BaseModel
275
- OrHash =
276
- T.type_alias do
277
- T.any(
278
- MetronomeSDK::Models::V1::Contracts::RateCardListResponse::FiatCreditType,
279
- MetronomeSDK::Internal::AnyHash
280
- )
281
- end
282
-
283
- sig { returns(String) }
284
- attr_accessor :id
285
-
286
- sig { returns(String) }
287
- attr_accessor :name
288
-
289
- sig { params(id: String, name: String).returns(T.attached_class) }
290
- def self.new(id:, name:)
291
- end
292
-
293
- sig { override.returns({ id: String, name: String }) }
294
- def to_hash
295
- end
296
230
  end
297
231
  end
298
232
  end
@@ -4,7 +4,7 @@ module MetronomeSDK
4
4
  module Models
5
5
  module V1
6
6
  module Contracts
7
- class RateCardRetrieveParams < MetronomeSDK::Internal::Type::BaseModel
7
+ class RateCardRetrieveParams < MetronomeSDK::Models::ID
8
8
  extend MetronomeSDK::Internal::Type::RequestParameters::Converter
9
9
  include MetronomeSDK::Internal::Type::RequestParameters
10
10
 
@@ -16,22 +16,16 @@ module MetronomeSDK
16
16
  )
17
17
  end
18
18
 
19
- sig { returns(String) }
20
- attr_accessor :id
21
-
22
19
  sig do
23
20
  params(
24
- id: String,
25
21
  request_options: MetronomeSDK::RequestOptions::OrHash
26
22
  ).returns(T.attached_class)
27
23
  end
28
- def self.new(id:, request_options: {})
24
+ def self.new(request_options: {})
29
25
  end
30
26
 
31
27
  sig do
32
- override.returns(
33
- { id: String, request_options: MetronomeSDK::RequestOptions }
34
- )
28
+ override.returns({ request_options: MetronomeSDK::RequestOptions })
35
29
  end
36
30
  def to_hash
37
31
  end
@@ -75,19 +75,10 @@ module MetronomeSDK
75
75
  sig { returns(T::Array[String]) }
76
76
  attr_accessor :product_tags
77
77
 
78
- sig do
79
- returns(
80
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate
81
- )
82
- end
78
+ sig { returns(MetronomeSDK::Rate) }
83
79
  attr_reader :rate
84
80
 
85
- sig do
86
- params(
87
- rate:
88
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::OrHash
89
- ).void
90
- end
81
+ sig { params(rate: MetronomeSDK::Rate::OrHash).void }
91
82
  attr_writer :rate
92
83
 
93
84
  sig { returns(Time) }
@@ -148,8 +139,7 @@ module MetronomeSDK
148
139
  product_id: String,
149
140
  product_name: String,
150
141
  product_tags: T::Array[String],
151
- rate:
152
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::OrHash,
142
+ rate: MetronomeSDK::Rate::OrHash,
153
143
  starting_at: Time,
154
144
  billing_frequency:
155
145
  MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::BillingFrequency::OrSymbol,
@@ -184,8 +174,7 @@ module MetronomeSDK
184
174
  product_id: String,
185
175
  product_name: String,
186
176
  product_tags: T::Array[String],
187
- rate:
188
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate,
177
+ rate: MetronomeSDK::Rate,
189
178
  starting_at: Time,
190
179
  billing_frequency:
191
180
  MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::BillingFrequency::TaggedSymbol,
@@ -199,281 +188,6 @@ module MetronomeSDK
199
188
  def to_hash
200
189
  end
201
190
 
202
- class Rate < MetronomeSDK::Internal::Type::BaseModel
203
- OrHash =
204
- T.type_alias do
205
- T.any(
206
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate,
207
- MetronomeSDK::Internal::AnyHash
208
- )
209
- end
210
-
211
- sig do
212
- returns(
213
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::TaggedSymbol
214
- )
215
- end
216
- attr_accessor :rate_type
217
-
218
- sig do
219
- returns(
220
- T.nilable(
221
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::CreditType
222
- )
223
- )
224
- end
225
- attr_reader :credit_type
226
-
227
- sig do
228
- params(
229
- credit_type:
230
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::CreditType::OrHash
231
- ).void
232
- end
233
- attr_writer :credit_type
234
-
235
- # Only set for CUSTOM rate_type. This field is interpreted by custom rate
236
- # processors.
237
- sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
238
- attr_reader :custom_rate
239
-
240
- sig { params(custom_rate: T::Hash[Symbol, T.anything]).void }
241
- attr_writer :custom_rate
242
-
243
- # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
244
- # set to true.
245
- sig { returns(T.nilable(T::Boolean)) }
246
- attr_reader :is_prorated
247
-
248
- sig { params(is_prorated: T::Boolean).void }
249
- attr_writer :is_prorated
250
-
251
- # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
252
- # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
253
- sig { returns(T.nilable(Float)) }
254
- attr_reader :price
255
-
256
- sig { params(price: Float).void }
257
- attr_writer :price
258
-
259
- # if pricing groups are used, this will contain the values used to calculate the
260
- # price
261
- sig { returns(T.nilable(T::Hash[Symbol, String])) }
262
- attr_reader :pricing_group_values
263
-
264
- sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
265
- attr_writer :pricing_group_values
266
-
267
- # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
268
- sig { returns(T.nilable(Float)) }
269
- attr_reader :quantity
270
-
271
- sig { params(quantity: Float).void }
272
- attr_writer :quantity
273
-
274
- # Only set for TIERED rate_type.
275
- sig do
276
- returns(
277
- T.nilable(
278
- T::Array[
279
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::Tier
280
- ]
281
- )
282
- )
283
- end
284
- attr_reader :tiers
285
-
286
- sig do
287
- params(
288
- tiers:
289
- T::Array[
290
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::Tier::OrHash
291
- ]
292
- ).void
293
- end
294
- attr_writer :tiers
295
-
296
- # Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
297
- # using list prices rather than the standard rates for this product on the
298
- # contract.
299
- sig { returns(T.nilable(T::Boolean)) }
300
- attr_reader :use_list_prices
301
-
302
- sig { params(use_list_prices: T::Boolean).void }
303
- attr_writer :use_list_prices
304
-
305
- sig do
306
- params(
307
- rate_type:
308
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::OrSymbol,
309
- credit_type:
310
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::CreditType::OrHash,
311
- custom_rate: T::Hash[Symbol, T.anything],
312
- is_prorated: T::Boolean,
313
- price: Float,
314
- pricing_group_values: T::Hash[Symbol, String],
315
- quantity: Float,
316
- tiers:
317
- T::Array[
318
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::Tier::OrHash
319
- ],
320
- use_list_prices: T::Boolean
321
- ).returns(T.attached_class)
322
- end
323
- def self.new(
324
- rate_type:,
325
- credit_type: nil,
326
- # Only set for CUSTOM rate_type. This field is interpreted by custom rate
327
- # processors.
328
- custom_rate: nil,
329
- # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
330
- # set to true.
331
- is_prorated: nil,
332
- # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
333
- # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
334
- price: nil,
335
- # if pricing groups are used, this will contain the values used to calculate the
336
- # price
337
- pricing_group_values: nil,
338
- # Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
339
- quantity: nil,
340
- # Only set for TIERED rate_type.
341
- tiers: nil,
342
- # Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
343
- # using list prices rather than the standard rates for this product on the
344
- # contract.
345
- use_list_prices: nil
346
- )
347
- end
348
-
349
- sig do
350
- override.returns(
351
- {
352
- rate_type:
353
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::TaggedSymbol,
354
- credit_type:
355
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::CreditType,
356
- custom_rate: T::Hash[Symbol, T.anything],
357
- is_prorated: T::Boolean,
358
- price: Float,
359
- pricing_group_values: T::Hash[Symbol, String],
360
- quantity: Float,
361
- tiers:
362
- T::Array[
363
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::Tier
364
- ],
365
- use_list_prices: T::Boolean
366
- }
367
- )
368
- end
369
- def to_hash
370
- end
371
-
372
- module RateType
373
- extend MetronomeSDK::Internal::Type::Enum
374
-
375
- TaggedSymbol =
376
- T.type_alias do
377
- T.all(
378
- Symbol,
379
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType
380
- )
381
- end
382
- OrSymbol = T.type_alias { T.any(Symbol, String) }
383
-
384
- FLAT =
385
- T.let(
386
- :FLAT,
387
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::TaggedSymbol
388
- )
389
- PERCENTAGE =
390
- T.let(
391
- :PERCENTAGE,
392
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::TaggedSymbol
393
- )
394
- SUBSCRIPTION =
395
- T.let(
396
- :SUBSCRIPTION,
397
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::TaggedSymbol
398
- )
399
- CUSTOM =
400
- T.let(
401
- :CUSTOM,
402
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::TaggedSymbol
403
- )
404
- TIERED =
405
- T.let(
406
- :TIERED,
407
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::TaggedSymbol
408
- )
409
-
410
- sig do
411
- override.returns(
412
- T::Array[
413
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::RateType::TaggedSymbol
414
- ]
415
- )
416
- end
417
- def self.values
418
- end
419
- end
420
-
421
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
422
- OrHash =
423
- T.type_alias do
424
- T.any(
425
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::CreditType,
426
- MetronomeSDK::Internal::AnyHash
427
- )
428
- end
429
-
430
- sig { returns(String) }
431
- attr_accessor :id
432
-
433
- sig { returns(String) }
434
- attr_accessor :name
435
-
436
- sig do
437
- params(id: String, name: String).returns(T.attached_class)
438
- end
439
- def self.new(id:, name:)
440
- end
441
-
442
- sig { override.returns({ id: String, name: String }) }
443
- def to_hash
444
- end
445
- end
446
-
447
- class Tier < MetronomeSDK::Internal::Type::BaseModel
448
- OrHash =
449
- T.type_alias do
450
- T.any(
451
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::Rate::Tier,
452
- MetronomeSDK::Internal::AnyHash
453
- )
454
- end
455
-
456
- sig { returns(Float) }
457
- attr_accessor :price
458
-
459
- sig { returns(T.nilable(Float)) }
460
- attr_reader :size
461
-
462
- sig { params(size: Float).void }
463
- attr_writer :size
464
-
465
- sig do
466
- params(price: Float, size: Float).returns(T.attached_class)
467
- end
468
- def self.new(price:, size: nil)
469
- end
470
-
471
- sig { override.returns({ price: Float, size: Float }) }
472
- def to_hash
473
- end
474
- end
475
- end
476
-
477
191
  module BillingFrequency
478
192
  extend MetronomeSDK::Internal::Type::Enum
479
193
 
@@ -542,25 +256,10 @@ module MetronomeSDK
542
256
  attr_writer :price
543
257
 
544
258
  # Only set for TIERED rate_type.
545
- sig do
546
- returns(
547
- T.nilable(
548
- T::Array[
549
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::Tier
550
- ]
551
- )
552
- )
553
- end
259
+ sig { returns(T.nilable(T::Array[MetronomeSDK::Tier])) }
554
260
  attr_reader :tiers
555
261
 
556
- sig do
557
- params(
558
- tiers:
559
- T::Array[
560
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::Tier::OrHash
561
- ]
562
- ).void
563
- end
262
+ sig { params(tiers: T::Array[MetronomeSDK::Tier::OrHash]).void }
564
263
  attr_writer :tiers
565
264
 
566
265
  # A distinct rate on the rate card. You can choose to use this rate rather than
@@ -570,10 +269,7 @@ module MetronomeSDK
570
269
  rate_type:
571
270
  MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::RateType::OrSymbol,
572
271
  price: Float,
573
- tiers:
574
- T::Array[
575
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::Tier::OrHash
576
- ]
272
+ tiers: T::Array[MetronomeSDK::Tier::OrHash]
577
273
  ).returns(T.attached_class)
578
274
  end
579
275
  def self.new(
@@ -591,10 +287,7 @@ module MetronomeSDK
591
287
  rate_type:
592
288
  MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::RateType::TaggedSymbol,
593
289
  price: Float,
594
- tiers:
595
- T::Array[
596
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::Tier
597
- ]
290
+ tiers: T::Array[MetronomeSDK::Tier]
598
291
  }
599
292
  )
600
293
  end
@@ -649,35 +342,6 @@ module MetronomeSDK
649
342
  def self.values
650
343
  end
651
344
  end
652
-
653
- class Tier < MetronomeSDK::Internal::Type::BaseModel
654
- OrHash =
655
- T.type_alias do
656
- T.any(
657
- MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::CommitRate::Tier,
658
- MetronomeSDK::Internal::AnyHash
659
- )
660
- end
661
-
662
- sig { returns(Float) }
663
- attr_accessor :price
664
-
665
- sig { returns(T.nilable(Float)) }
666
- attr_reader :size
667
-
668
- sig { params(size: Float).void }
669
- attr_writer :size
670
-
671
- sig do
672
- params(price: Float, size: Float).returns(T.attached_class)
673
- end
674
- def self.new(price:, size: nil)
675
- end
676
-
677
- sig { override.returns({ price: Float, size: Float }) }
678
- def to_hash
679
- end
680
- end
681
345
  end
682
346
  end
683
347
  end