orb-billing 0.3.1 → 0.4.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 (592) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -0
  3. data/README.md +3 -3
  4. data/lib/orb/errors.rb +1 -1
  5. data/lib/orb/file_part.rb +2 -2
  6. data/lib/orb/internal/transport/base_client.rb +74 -5
  7. data/lib/orb/internal/transport/pooled_net_requester.rb +14 -0
  8. data/lib/orb/internal/type/array_of.rb +1 -1
  9. data/lib/orb/internal/type/base_model.rb +62 -30
  10. data/lib/orb/internal/type/converter.rb +18 -0
  11. data/lib/orb/internal/type/enum.rb +4 -3
  12. data/lib/orb/internal/type/hash_of.rb +1 -1
  13. data/lib/orb/internal/type/request_parameters.rb +4 -4
  14. data/lib/orb/internal/type/union.rb +5 -4
  15. data/lib/orb/internal/util.rb +57 -1
  16. data/lib/orb/internal.rb +6 -0
  17. data/lib/orb/models/alert.rb +29 -32
  18. data/lib/orb/models/alert_create_for_customer_params.rb +7 -8
  19. data/lib/orb/models/alert_create_for_external_customer_params.rb +7 -8
  20. data/lib/orb/models/alert_create_for_subscription_params.rb +7 -8
  21. data/lib/orb/models/alert_list_params.rb +0 -1
  22. data/lib/orb/models/alert_update_params.rb +4 -5
  23. data/lib/orb/models/amount_discount.rb +6 -7
  24. data/lib/orb/models/billable_metric.rb +9 -11
  25. data/lib/orb/models/coupon.rb +13 -12
  26. data/lib/orb/models/coupon_create_params.rb +12 -8
  27. data/lib/orb/models/coupon_list_params.rb +0 -2
  28. data/lib/orb/models/coupons/subscription_list_params.rb +0 -1
  29. data/lib/orb/models/credit_note.rb +48 -46
  30. data/lib/orb/models/credit_note_create_params.rb +6 -6
  31. data/lib/orb/models/credit_note_list_params.rb +0 -1
  32. data/lib/orb/models/customer.rb +54 -61
  33. data/lib/orb/models/customer_create_params.rb +50 -53
  34. data/lib/orb/models/customer_list_params.rb +0 -1
  35. data/lib/orb/models/customer_update_by_external_id_params.rb +50 -53
  36. data/lib/orb/models/customer_update_params.rb +50 -51
  37. data/lib/orb/models/customers/balance_transaction_create_params.rb +3 -3
  38. data/lib/orb/models/customers/balance_transaction_create_response.rb +0 -2
  39. data/lib/orb/models/customers/balance_transaction_list_params.rb +0 -1
  40. data/lib/orb/models/customers/balance_transaction_list_response.rb +0 -2
  41. data/lib/orb/models/customers/cost_list_by_external_id_params.rb +3 -4
  42. data/lib/orb/models/customers/cost_list_by_external_id_response.rb +3 -3
  43. data/lib/orb/models/customers/cost_list_params.rb +3 -4
  44. data/lib/orb/models/customers/cost_list_response.rb +3 -3
  45. data/lib/orb/models/customers/credit_list_by_external_id_params.rb +0 -2
  46. data/lib/orb/models/customers/credit_list_params.rb +0 -2
  47. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +12 -21
  48. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rb +14 -7
  49. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +11 -22
  50. data/lib/orb/models/customers/credits/ledger_create_entry_response.rb +14 -7
  51. data/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rb +6 -7
  52. data/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rb +14 -7
  53. data/lib/orb/models/customers/credits/ledger_list_params.rb +8 -9
  54. data/lib/orb/models/customers/credits/ledger_list_response.rb +14 -7
  55. data/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rb +10 -15
  56. data/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rb +0 -6
  57. data/lib/orb/models/customers/credits/top_up_create_params.rb +7 -15
  58. data/lib/orb/models/customers/credits/top_up_create_response.rb +0 -6
  59. data/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rb +0 -1
  60. data/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rb +0 -6
  61. data/lib/orb/models/customers/credits/top_up_list_params.rb +0 -1
  62. data/lib/orb/models/customers/credits/top_up_list_response.rb +0 -6
  63. data/lib/orb/models/dimensional_price_group.rb +1 -3
  64. data/lib/orb/models/dimensional_price_group_create_params.rb +0 -1
  65. data/lib/orb/models/dimensional_price_group_list_params.rb +0 -1
  66. data/lib/orb/models/dimensional_price_groups.rb +6 -6
  67. data/lib/orb/models/discount.rb +11 -5
  68. data/lib/orb/models/evaluate_price_group.rb +5 -1
  69. data/lib/orb/models/event_ingest_params.rb +4 -9
  70. data/lib/orb/models/event_ingest_response.rb +0 -3
  71. data/lib/orb/models/event_search_params.rb +0 -3
  72. data/lib/orb/models/event_search_response.rb +0 -4
  73. data/lib/orb/models/event_update_params.rb +0 -3
  74. data/lib/orb/models/events/backfill_close_response.rb +0 -4
  75. data/lib/orb/models/events/backfill_create_params.rb +0 -7
  76. data/lib/orb/models/events/backfill_create_response.rb +0 -4
  77. data/lib/orb/models/events/backfill_fetch_response.rb +0 -4
  78. data/lib/orb/models/events/backfill_list_params.rb +0 -1
  79. data/lib/orb/models/events/backfill_list_response.rb +0 -4
  80. data/lib/orb/models/events/backfill_revert_response.rb +0 -4
  81. data/lib/orb/models/events/event_volumes.rb +3 -3
  82. data/lib/orb/models/events/volume_list_params.rb +0 -3
  83. data/lib/orb/models/invoice.rb +179 -202
  84. data/lib/orb/models/invoice_create_params.rb +14 -21
  85. data/lib/orb/models/invoice_fetch_upcoming_response.rb +31 -54
  86. data/lib/orb/models/invoice_issue_params.rb +0 -1
  87. data/lib/orb/models/invoice_level_discount.rb +8 -4
  88. data/lib/orb/models/invoice_line_item_create_params.rb +0 -1
  89. data/lib/orb/models/invoice_line_item_create_response.rb +28 -26
  90. data/lib/orb/models/invoice_list_params.rb +6 -10
  91. data/lib/orb/models/invoice_update_params.rb +0 -1
  92. data/lib/orb/models/item.rb +7 -8
  93. data/lib/orb/models/item_list_params.rb +0 -1
  94. data/lib/orb/models/item_update_params.rb +7 -7
  95. data/lib/orb/models/metric_create_params.rb +0 -1
  96. data/lib/orb/models/metric_list_params.rb +0 -1
  97. data/lib/orb/models/metric_update_params.rb +0 -1
  98. data/lib/orb/models/percentage_discount.rb +6 -8
  99. data/lib/orb/models/plan.rb +90 -103
  100. data/lib/orb/models/plan_create_params.rb +759 -800
  101. data/lib/orb/models/plan_list_params.rb +3 -4
  102. data/lib/orb/models/plan_update_params.rb +0 -2
  103. data/lib/orb/models/plans/external_plan_id_update_params.rb +0 -2
  104. data/lib/orb/models/price.rb +1706 -1724
  105. data/lib/orb/models/price_create_params.rb +75 -84
  106. data/lib/orb/models/price_evaluate_params.rb +0 -2
  107. data/lib/orb/models/price_evaluate_response.rb +3 -3
  108. data/lib/orb/models/price_list_params.rb +0 -1
  109. data/lib/orb/models/price_update_params.rb +0 -1
  110. data/lib/orb/models/prices/external_price_id_update_params.rb +0 -1
  111. data/lib/orb/models/subscription.rb +108 -122
  112. data/lib/orb/models/subscription_cancel_params.rb +3 -5
  113. data/lib/orb/models/subscription_cancel_response.rb +43 -57
  114. data/lib/orb/models/subscription_change_apply_response.rb +43 -58
  115. data/lib/orb/models/subscription_change_cancel_response.rb +43 -58
  116. data/lib/orb/models/subscription_change_retrieve_response.rb +43 -58
  117. data/lib/orb/models/subscription_create_params.rb +1953 -1815
  118. data/lib/orb/models/subscription_create_response.rb +43 -57
  119. data/lib/orb/models/subscription_fetch_costs_params.rb +3 -4
  120. data/lib/orb/models/subscription_fetch_costs_response.rb +3 -3
  121. data/lib/orb/models/subscription_fetch_schedule_params.rb +0 -1
  122. data/lib/orb/models/subscription_fetch_schedule_response.rb +0 -1
  123. data/lib/orb/models/subscription_fetch_usage_params.rb +6 -8
  124. data/lib/orb/models/subscription_list_params.rb +3 -4
  125. data/lib/orb/models/subscription_price_intervals_params.rb +1194 -1017
  126. data/lib/orb/models/subscription_price_intervals_response.rb +43 -57
  127. data/lib/orb/models/subscription_schedule_plan_change_params.rb +1994 -1791
  128. data/lib/orb/models/subscription_schedule_plan_change_response.rb +43 -57
  129. data/lib/orb/models/subscription_trigger_phase_params.rb +0 -2
  130. data/lib/orb/models/subscription_trigger_phase_response.rb +43 -57
  131. data/lib/orb/models/subscription_unschedule_cancellation_response.rb +43 -57
  132. data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rb +43 -57
  133. data/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rb +43 -57
  134. data/lib/orb/models/subscription_update_fixed_fee_quantity_params.rb +3 -6
  135. data/lib/orb/models/subscription_update_fixed_fee_quantity_response.rb +43 -57
  136. data/lib/orb/models/subscription_update_params.rb +0 -5
  137. data/lib/orb/models/subscription_update_trial_params.rb +8 -6
  138. data/lib/orb/models/subscription_update_trial_response.rb +43 -57
  139. data/lib/orb/models/subscription_usage.rb +55 -39
  140. data/lib/orb/models/subscriptions.rb +6 -6
  141. data/lib/orb/models/trial_discount.rb +6 -7
  142. data/lib/orb/models/usage_discount.rb +6 -8
  143. data/lib/orb/models.rb +24 -0
  144. data/lib/orb/request_options.rb +4 -0
  145. data/lib/orb/resources/alerts.rb +30 -31
  146. data/lib/orb/resources/coupons/subscriptions.rb +3 -4
  147. data/lib/orb/resources/coupons.rb +11 -21
  148. data/lib/orb/resources/credit_notes.rb +10 -11
  149. data/lib/orb/resources/customers/balance_transactions.rb +3 -4
  150. data/lib/orb/resources/customers/costs.rb +4 -6
  151. data/lib/orb/resources/customers/credits/ledger.rb +14 -33
  152. data/lib/orb/resources/customers/credits/top_ups.rb +10 -20
  153. data/lib/orb/resources/customers/credits.rb +2 -6
  154. data/lib/orb/resources/customers.rb +40 -67
  155. data/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rb +2 -2
  156. data/lib/orb/resources/dimensional_price_groups.rb +8 -10
  157. data/lib/orb/resources/events/backfills.rb +2 -10
  158. data/lib/orb/resources/events/volume.rb +3 -6
  159. data/lib/orb/resources/events.rb +4 -12
  160. data/lib/orb/resources/invoice_line_items.rb +1 -2
  161. data/lib/orb/resources/invoices.rb +26 -43
  162. data/lib/orb/resources/items.rb +12 -13
  163. data/lib/orb/resources/metrics.rb +11 -14
  164. data/lib/orb/resources/plans/external_plan_id.rb +5 -7
  165. data/lib/orb/resources/plans.rb +14 -23
  166. data/lib/orb/resources/prices/external_price_id.rb +5 -6
  167. data/lib/orb/resources/prices.rb +25 -35
  168. data/lib/orb/resources/subscription_changes.rb +1 -1
  169. data/lib/orb/resources/subscriptions.rb +49 -107
  170. data/lib/orb/version.rb +1 -1
  171. data/lib/orb.rb +3 -0
  172. data/rbi/orb/client.rbi +5 -4
  173. data/rbi/orb/errors.rbi +59 -28
  174. data/rbi/orb/file_part.rbi +9 -6
  175. data/rbi/orb/internal/page.rbi +20 -6
  176. data/rbi/orb/internal/transport/base_client.rbi +159 -78
  177. data/rbi/orb/internal/transport/pooled_net_requester.rbi +27 -13
  178. data/rbi/orb/internal/type/array_of.rbi +42 -34
  179. data/rbi/orb/internal/type/base_model.rbi +144 -69
  180. data/rbi/orb/internal/type/base_page.rbi +12 -8
  181. data/rbi/orb/internal/type/boolean.rbi +16 -10
  182. data/rbi/orb/internal/type/converter.rbi +68 -31
  183. data/rbi/orb/internal/type/enum.rbi +28 -15
  184. data/rbi/orb/internal/type/file_input.rbi +12 -10
  185. data/rbi/orb/internal/type/hash_of.rbi +34 -24
  186. data/rbi/orb/internal/type/request_parameters.rbi +12 -4
  187. data/rbi/orb/internal/type/union.rbi +61 -25
  188. data/rbi/orb/internal/type/unknown.rbi +20 -12
  189. data/rbi/orb/internal/util.rbi +232 -90
  190. data/rbi/orb/internal.rbi +2 -0
  191. data/rbi/orb/models/alert.rbi +114 -70
  192. data/rbi/orb/models/alert_create_for_customer_params.rbi +69 -27
  193. data/rbi/orb/models/alert_create_for_external_customer_params.rbi +80 -29
  194. data/rbi/orb/models/alert_create_for_subscription_params.rbi +62 -26
  195. data/rbi/orb/models/alert_disable_params.rbi +18 -6
  196. data/rbi/orb/models/alert_enable_params.rbi +18 -6
  197. data/rbi/orb/models/alert_list_params.rbi +24 -20
  198. data/rbi/orb/models/alert_retrieve_params.rbi +11 -4
  199. data/rbi/orb/models/alert_update_params.rbi +29 -14
  200. data/rbi/orb/models/amount_discount.rbi +29 -19
  201. data/rbi/orb/models/billable_metric.rbi +34 -26
  202. data/rbi/orb/models/billing_cycle_relative_date.rbi +11 -5
  203. data/rbi/orb/models/coupon.rbi +28 -20
  204. data/rbi/orb/models/coupon_archive_params.rbi +11 -4
  205. data/rbi/orb/models/coupon_create_params.rbi +85 -38
  206. data/rbi/orb/models/coupon_fetch_params.rbi +11 -4
  207. data/rbi/orb/models/coupon_list_params.rbi +19 -15
  208. data/rbi/orb/models/coupons/subscription_list_params.rbi +19 -6
  209. data/rbi/orb/models/credit_note.rbi +329 -158
  210. data/rbi/orb/models/credit_note_create_params.rbi +64 -29
  211. data/rbi/orb/models/credit_note_fetch_params.rbi +13 -4
  212. data/rbi/orb/models/credit_note_list_params.rbi +23 -17
  213. data/rbi/orb/models/customer.rbi +461 -329
  214. data/rbi/orb/models/customer_create_params.rbi +713 -325
  215. data/rbi/orb/models/customer_delete_params.rbi +13 -4
  216. data/rbi/orb/models/customer_fetch_by_external_id_params.rbi +13 -4
  217. data/rbi/orb/models/customer_fetch_params.rbi +11 -4
  218. data/rbi/orb/models/customer_list_params.rbi +21 -17
  219. data/rbi/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbi +16 -4
  220. data/rbi/orb/models/customer_sync_payment_methods_from_gateway_params.rbi +16 -4
  221. data/rbi/orb/models/customer_update_by_external_id_params.rbi +1193 -336
  222. data/rbi/orb/models/customer_update_params.rbi +712 -324
  223. data/rbi/orb/models/customers/balance_transaction_create_params.rbi +56 -21
  224. data/rbi/orb/models/customers/balance_transaction_create_response.rbi +172 -61
  225. data/rbi/orb/models/customers/balance_transaction_list_params.rbi +26 -17
  226. data/rbi/orb/models/customers/balance_transaction_list_response.rbi +182 -59
  227. data/rbi/orb/models/customers/cost_list_by_external_id_params.rbi +62 -22
  228. data/rbi/orb/models/customers/cost_list_by_external_id_response.rbi +180 -124
  229. data/rbi/orb/models/customers/cost_list_params.rbi +48 -22
  230. data/rbi/orb/models/customers/cost_list_response.rbi +172 -123
  231. data/rbi/orb/models/customers/credit_list_by_external_id_params.rbi +24 -15
  232. data/rbi/orb/models/customers/credit_list_by_external_id_response.rbi +54 -22
  233. data/rbi/orb/models/customers/credit_list_params.rbi +21 -15
  234. data/rbi/orb/models/customers/credit_list_response.rbi +50 -21
  235. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +118 -68
  236. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbi +755 -434
  237. data/rbi/orb/models/customers/credits/ledger_create_entry_params.rbi +129 -59
  238. data/rbi/orb/models/customers/credits/ledger_create_entry_response.rbi +812 -425
  239. data/rbi/orb/models/customers/credits/ledger_list_by_external_id_params.rbi +108 -44
  240. data/rbi/orb/models/customers/credits/ledger_list_by_external_id_response.rbi +793 -432
  241. data/rbi/orb/models/customers/credits/ledger_list_params.rbi +129 -40
  242. data/rbi/orb/models/customers/credits/ledger_list_response.rbi +847 -389
  243. data/rbi/orb/models/customers/credits/top_up_create_by_external_id_params.rbi +86 -53
  244. data/rbi/orb/models/customers/credits/top_up_create_by_external_id_response.rbi +77 -48
  245. data/rbi/orb/models/customers/credits/top_up_create_params.rbi +96 -45
  246. data/rbi/orb/models/customers/credits/top_up_create_response.rbi +95 -43
  247. data/rbi/orb/models/customers/credits/top_up_delete_by_external_id_params.rbi +22 -6
  248. data/rbi/orb/models/customers/credits/top_up_delete_params.rbi +21 -5
  249. data/rbi/orb/models/customers/credits/top_up_list_by_external_id_params.rbi +15 -5
  250. data/rbi/orb/models/customers/credits/top_up_list_by_external_id_response.rbi +82 -49
  251. data/rbi/orb/models/customers/credits/top_up_list_params.rbi +15 -5
  252. data/rbi/orb/models/customers/credits/top_up_list_response.rbi +96 -43
  253. data/rbi/orb/models/dimensional_price_group.rbi +21 -15
  254. data/rbi/orb/models/dimensional_price_group_create_params.rbi +22 -16
  255. data/rbi/orb/models/dimensional_price_group_list_params.rbi +19 -6
  256. data/rbi/orb/models/dimensional_price_group_retrieve_params.rbi +16 -4
  257. data/rbi/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbi +15 -8
  258. data/rbi/orb/models/dimensional_price_groups.rbi +21 -13
  259. data/rbi/orb/models/discount.rbi +11 -5
  260. data/rbi/orb/models/evaluate_price_group.rbi +29 -12
  261. data/rbi/orb/models/event_deprecate_params.rbi +13 -4
  262. data/rbi/orb/models/event_deprecate_response.rbi +11 -3
  263. data/rbi/orb/models/event_ingest_params.rbi +41 -31
  264. data/rbi/orb/models/event_ingest_response.rbi +78 -23
  265. data/rbi/orb/models/event_search_params.rbi +18 -14
  266. data/rbi/orb/models/event_search_response.rbi +42 -21
  267. data/rbi/orb/models/event_update_params.rbi +20 -16
  268. data/rbi/orb/models/event_update_response.rbi +11 -3
  269. data/rbi/orb/models/events/backfill_close_params.rbi +13 -9
  270. data/rbi/orb/models/events/backfill_close_response.rbi +70 -29
  271. data/rbi/orb/models/events/backfill_create_params.rbi +24 -18
  272. data/rbi/orb/models/events/backfill_create_response.rbi +69 -29
  273. data/rbi/orb/models/events/backfill_fetch_params.rbi +13 -9
  274. data/rbi/orb/models/events/backfill_fetch_response.rbi +70 -29
  275. data/rbi/orb/models/events/backfill_list_params.rbi +19 -6
  276. data/rbi/orb/models/events/backfill_list_response.rbi +68 -28
  277. data/rbi/orb/models/events/backfill_revert_params.rbi +13 -9
  278. data/rbi/orb/models/events/backfill_revert_response.rbi +69 -29
  279. data/rbi/orb/models/events/event_volumes.rbi +38 -10
  280. data/rbi/orb/models/events/volume_list_params.rbi +21 -15
  281. data/rbi/orb/models/invoice.rbi +1411 -805
  282. data/rbi/orb/models/invoice_create_params.rbi +107 -69
  283. data/rbi/orb/models/invoice_fetch_params.rbi +11 -4
  284. data/rbi/orb/models/invoice_fetch_upcoming_params.rbi +18 -5
  285. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +2187 -876
  286. data/rbi/orb/models/invoice_issue_params.rbi +17 -5
  287. data/rbi/orb/models/invoice_level_discount.rbi +11 -4
  288. data/rbi/orb/models/invoice_line_item_create_params.rbi +23 -17
  289. data/rbi/orb/models/invoice_line_item_create_response.rbi +675 -376
  290. data/rbi/orb/models/invoice_list_params.rbi +68 -47
  291. data/rbi/orb/models/invoice_mark_paid_params.rbi +20 -14
  292. data/rbi/orb/models/invoice_pay_params.rbi +11 -4
  293. data/rbi/orb/models/invoice_update_params.rbi +16 -10
  294. data/rbi/orb/models/invoice_void_params.rbi +11 -4
  295. data/rbi/orb/models/item.rbi +90 -39
  296. data/rbi/orb/models/item_create_params.rbi +15 -5
  297. data/rbi/orb/models/item_fetch_params.rbi +11 -4
  298. data/rbi/orb/models/item_list_params.rbi +17 -6
  299. data/rbi/orb/models/item_update_params.rbi +86 -39
  300. data/rbi/orb/models/metric_create_params.rbi +20 -16
  301. data/rbi/orb/models/metric_fetch_params.rbi +11 -4
  302. data/rbi/orb/models/metric_list_params.rbi +21 -17
  303. data/rbi/orb/models/metric_update_params.rbi +16 -10
  304. data/rbi/orb/models/pagination_metadata.rbi +17 -4
  305. data/rbi/orb/models/percentage_discount.rbi +33 -19
  306. data/rbi/orb/models/plan.rbi +532 -365
  307. data/rbi/orb/models/plan_create_params.rbi +5295 -2870
  308. data/rbi/orb/models/plan_fetch_params.rbi +11 -4
  309. data/rbi/orb/models/plan_list_params.rbi +35 -27
  310. data/rbi/orb/models/plan_update_params.rbi +17 -13
  311. data/rbi/orb/models/plans/external_plan_id_fetch_params.rbi +13 -9
  312. data/rbi/orb/models/plans/external_plan_id_update_params.rbi +22 -13
  313. data/rbi/orb/models/price.rbi +11332 -5033
  314. data/rbi/orb/models/price_create_params.rbi +583 -245
  315. data/rbi/orb/models/price_evaluate_params.rbi +21 -17
  316. data/rbi/orb/models/price_evaluate_response.rbi +14 -6
  317. data/rbi/orb/models/price_fetch_params.rbi +11 -4
  318. data/rbi/orb/models/price_list_params.rbi +17 -6
  319. data/rbi/orb/models/price_update_params.rbi +16 -10
  320. data/rbi/orb/models/prices/external_price_id_fetch_params.rbi +15 -8
  321. data/rbi/orb/models/prices/external_price_id_update_params.rbi +21 -10
  322. data/rbi/orb/models/subscription.rbi +668 -420
  323. data/rbi/orb/models/subscription_cancel_params.rbi +47 -22
  324. data/rbi/orb/models/subscription_cancel_response.rbi +817 -438
  325. data/rbi/orb/models/subscription_change_apply_params.rbi +19 -13
  326. data/rbi/orb/models/subscription_change_apply_response.rbi +906 -505
  327. data/rbi/orb/models/subscription_change_cancel_params.rbi +13 -4
  328. data/rbi/orb/models/subscription_change_cancel_response.rbi +906 -516
  329. data/rbi/orb/models/subscription_change_retrieve_params.rbi +13 -4
  330. data/rbi/orb/models/subscription_change_retrieve_response.rbi +903 -524
  331. data/rbi/orb/models/subscription_create_params.rbi +10096 -6746
  332. data/rbi/orb/models/subscription_create_response.rbi +817 -438
  333. data/rbi/orb/models/subscription_fetch_costs_params.rbi +50 -22
  334. data/rbi/orb/models/subscription_fetch_costs_response.rbi +172 -123
  335. data/rbi/orb/models/subscription_fetch_params.rbi +13 -4
  336. data/rbi/orb/models/subscription_fetch_schedule_params.rbi +23 -17
  337. data/rbi/orb/models/subscription_fetch_schedule_response.rbi +45 -19
  338. data/rbi/orb/models/subscription_fetch_usage_params.rbi +84 -34
  339. data/rbi/orb/models/subscription_list_params.rbi +42 -28
  340. data/rbi/orb/models/subscription_price_intervals_params.rbi +5798 -3823
  341. data/rbi/orb/models/subscription_price_intervals_response.rbi +840 -453
  342. data/rbi/orb/models/subscription_schedule_plan_change_params.rbi +9676 -6922
  343. data/rbi/orb/models/subscription_schedule_plan_change_response.rbi +838 -467
  344. data/rbi/orb/models/subscription_trigger_phase_params.rbi +19 -13
  345. data/rbi/orb/models/subscription_trigger_phase_response.rbi +832 -448
  346. data/rbi/orb/models/subscription_unschedule_cancellation_params.rbi +16 -4
  347. data/rbi/orb/models/subscription_unschedule_cancellation_response.rbi +839 -467
  348. data/rbi/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbi +22 -5
  349. data/rbi/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbi +815 -504
  350. data/rbi/orb/models/subscription_unschedule_pending_plan_changes_params.rbi +16 -4
  351. data/rbi/orb/models/subscription_unschedule_pending_plan_changes_response.rbi +828 -497
  352. data/rbi/orb/models/subscription_update_fixed_fee_quantity_params.rbi +63 -26
  353. data/rbi/orb/models/subscription_update_fixed_fee_quantity_response.rbi +839 -467
  354. data/rbi/orb/models/subscription_update_params.rbi +22 -16
  355. data/rbi/orb/models/subscription_update_trial_params.rbi +60 -19
  356. data/rbi/orb/models/subscription_update_trial_response.rbi +832 -447
  357. data/rbi/orb/models/subscription_usage.rbi +325 -121
  358. data/rbi/orb/models/subscriptions.rbi +19 -11
  359. data/rbi/orb/models/top_level_ping_params.rbi +11 -4
  360. data/rbi/orb/models/top_level_ping_response.rbi +10 -3
  361. data/rbi/orb/models/trial_discount.rbi +30 -20
  362. data/rbi/orb/models/usage_discount.rbi +29 -19
  363. data/rbi/orb/models.rbi +22 -11
  364. data/rbi/orb/request_options.rbi +12 -6
  365. data/rbi/orb/resources/alerts.rbi +61 -40
  366. data/rbi/orb/resources/coupons/subscriptions.rbi +7 -5
  367. data/rbi/orb/resources/coupons.rbi +33 -18
  368. data/rbi/orb/resources/credit_notes.rbi +22 -13
  369. data/rbi/orb/resources/customers/balance_transactions.rbi +17 -9
  370. data/rbi/orb/resources/customers/costs.rbi +18 -11
  371. data/rbi/orb/resources/customers/credits/ledger.rbi +98 -74
  372. data/rbi/orb/resources/customers/credits/top_ups.rbi +61 -25
  373. data/rbi/orb/resources/customers/credits.rbi +16 -7
  374. data/rbi/orb/resources/customers.rbi +137 -72
  375. data/rbi/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbi +8 -4
  376. data/rbi/orb/resources/dimensional_price_groups.rbi +26 -12
  377. data/rbi/orb/resources/events/backfills.rbi +35 -17
  378. data/rbi/orb/resources/events/volume.rbi +7 -5
  379. data/rbi/orb/resources/events.rbi +26 -16
  380. data/rbi/orb/resources/invoice_line_items.rbi +7 -5
  381. data/rbi/orb/resources/invoices.rbi +72 -41
  382. data/rbi/orb/resources/items.rbi +40 -13
  383. data/rbi/orb/resources/metrics.rbi +25 -15
  384. data/rbi/orb/resources/plans/external_plan_id.rbi +15 -7
  385. data/rbi/orb/resources/plans.rbi +57 -47
  386. data/rbi/orb/resources/prices/external_price_id.rbi +73 -68
  387. data/rbi/orb/resources/prices.rbi +176 -156
  388. data/rbi/orb/resources/subscription_changes.rbi +19 -11
  389. data/rbi/orb/resources/subscriptions.rbi +200 -114
  390. data/rbi/orb/resources/top_level.rbi +9 -3
  391. data/sig/orb/internal/page.rbs +0 -2
  392. data/sig/orb/internal/transport/base_client.rbs +16 -1
  393. data/sig/orb/internal/transport/pooled_net_requester.rbs +2 -0
  394. data/sig/orb/internal/type/base_model.rbs +11 -5
  395. data/sig/orb/internal/type/base_page.rbs +1 -1
  396. data/sig/orb/internal/type/converter.rbs +2 -0
  397. data/sig/orb/internal/type/enum.rbs +1 -0
  398. data/sig/orb/internal/type/request_parameters.rbs +3 -1
  399. data/sig/orb/internal/type/union.rbs +1 -0
  400. data/sig/orb/internal/util.rbs +13 -0
  401. data/sig/orb/internal.rbs +2 -0
  402. data/sig/orb/models/alert.rbs +19 -31
  403. data/sig/orb/models/alert_create_for_customer_params.rbs +3 -7
  404. data/sig/orb/models/alert_create_for_external_customer_params.rbs +3 -7
  405. data/sig/orb/models/alert_create_for_subscription_params.rbs +3 -7
  406. data/sig/orb/models/alert_disable_params.rbs +0 -2
  407. data/sig/orb/models/alert_enable_params.rbs +0 -2
  408. data/sig/orb/models/alert_list_params.rbs +0 -2
  409. data/sig/orb/models/alert_retrieve_params.rbs +0 -2
  410. data/sig/orb/models/alert_update_params.rbs +3 -7
  411. data/sig/orb/models/amount_discount.rbs +4 -6
  412. data/sig/orb/models/billable_metric.rbs +7 -9
  413. data/sig/orb/models/coupon.rbs +5 -8
  414. data/sig/orb/models/coupon_archive_params.rbs +0 -2
  415. data/sig/orb/models/coupon_create_params.rbs +3 -9
  416. data/sig/orb/models/coupon_fetch_params.rbs +0 -2
  417. data/sig/orb/models/coupon_list_params.rbs +0 -2
  418. data/sig/orb/models/coupons/subscription_list_params.rbs +0 -2
  419. data/sig/orb/models/credit_note.rbs +48 -66
  420. data/sig/orb/models/credit_note_create_params.rbs +3 -7
  421. data/sig/orb/models/credit_note_fetch_params.rbs +0 -2
  422. data/sig/orb/models/credit_note_list_params.rbs +0 -2
  423. data/sig/orb/models/customer.rbs +43 -63
  424. data/sig/orb/models/customer_create_params.rbs +32 -52
  425. data/sig/orb/models/customer_delete_params.rbs +0 -2
  426. data/sig/orb/models/customer_fetch_by_external_id_params.rbs +0 -2
  427. data/sig/orb/models/customer_fetch_params.rbs +0 -2
  428. data/sig/orb/models/customer_list_params.rbs +0 -2
  429. data/sig/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbs +0 -2
  430. data/sig/orb/models/customer_sync_payment_methods_from_gateway_params.rbs +0 -2
  431. data/sig/orb/models/customer_update_by_external_id_params.rbs +32 -52
  432. data/sig/orb/models/customer_update_params.rbs +32 -52
  433. data/sig/orb/models/customers/balance_transaction_create_params.rbs +0 -2
  434. data/sig/orb/models/customers/balance_transaction_create_response.rbs +0 -6
  435. data/sig/orb/models/customers/balance_transaction_list_params.rbs +0 -2
  436. data/sig/orb/models/customers/balance_transaction_list_response.rbs +0 -6
  437. data/sig/orb/models/customers/cost_list_by_external_id_params.rbs +0 -2
  438. data/sig/orb/models/customers/cost_list_by_external_id_response.rbs +0 -6
  439. data/sig/orb/models/customers/cost_list_params.rbs +0 -2
  440. data/sig/orb/models/customers/cost_list_response.rbs +0 -6
  441. data/sig/orb/models/customers/credit_list_by_external_id_params.rbs +0 -2
  442. data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +0 -2
  443. data/sig/orb/models/customers/credit_list_params.rbs +0 -2
  444. data/sig/orb/models/customers/credit_list_response.rbs +0 -2
  445. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbs +3 -7
  446. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbs +1 -43
  447. data/sig/orb/models/customers/credits/ledger_create_entry_params.rbs +3 -7
  448. data/sig/orb/models/customers/credits/ledger_create_entry_response.rbs +1 -43
  449. data/sig/orb/models/customers/credits/ledger_list_by_external_id_params.rbs +0 -2
  450. data/sig/orb/models/customers/credits/ledger_list_by_external_id_response.rbs +1 -43
  451. data/sig/orb/models/customers/credits/ledger_list_params.rbs +0 -2
  452. data/sig/orb/models/customers/credits/ledger_list_response.rbs +1 -43
  453. data/sig/orb/models/customers/credits/top_up_create_by_external_id_params.rbs +3 -7
  454. data/sig/orb/models/customers/credits/top_up_create_by_external_id_response.rbs +0 -4
  455. data/sig/orb/models/customers/credits/top_up_create_params.rbs +3 -7
  456. data/sig/orb/models/customers/credits/top_up_create_response.rbs +0 -4
  457. data/sig/orb/models/customers/credits/top_up_delete_by_external_id_params.rbs +0 -2
  458. data/sig/orb/models/customers/credits/top_up_delete_params.rbs +0 -2
  459. data/sig/orb/models/customers/credits/top_up_list_by_external_id_params.rbs +0 -2
  460. data/sig/orb/models/customers/credits/top_up_list_by_external_id_response.rbs +0 -4
  461. data/sig/orb/models/customers/credits/top_up_list_params.rbs +0 -2
  462. data/sig/orb/models/customers/credits/top_up_list_response.rbs +0 -4
  463. data/sig/orb/models/dimensional_price_group.rbs +0 -2
  464. data/sig/orb/models/dimensional_price_group_create_params.rbs +0 -2
  465. data/sig/orb/models/dimensional_price_group_list_params.rbs +0 -2
  466. data/sig/orb/models/dimensional_price_group_retrieve_params.rbs +0 -2
  467. data/sig/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbs +0 -2
  468. data/sig/orb/models/dimensional_price_groups.rbs +6 -8
  469. data/sig/orb/models/discount.rbs +5 -5
  470. data/sig/orb/models/evaluate_price_group.rbs +4 -6
  471. data/sig/orb/models/event_deprecate_params.rbs +0 -2
  472. data/sig/orb/models/event_deprecate_response.rbs +0 -2
  473. data/sig/orb/models/event_ingest_params.rbs +3 -7
  474. data/sig/orb/models/event_ingest_response.rbs +0 -6
  475. data/sig/orb/models/event_search_params.rbs +0 -2
  476. data/sig/orb/models/event_search_response.rbs +0 -4
  477. data/sig/orb/models/event_update_params.rbs +0 -2
  478. data/sig/orb/models/event_update_response.rbs +0 -2
  479. data/sig/orb/models/events/backfill_close_params.rbs +0 -2
  480. data/sig/orb/models/events/backfill_close_response.rbs +0 -2
  481. data/sig/orb/models/events/backfill_create_params.rbs +0 -2
  482. data/sig/orb/models/events/backfill_create_response.rbs +0 -2
  483. data/sig/orb/models/events/backfill_fetch_params.rbs +0 -2
  484. data/sig/orb/models/events/backfill_fetch_response.rbs +0 -2
  485. data/sig/orb/models/events/backfill_list_params.rbs +0 -2
  486. data/sig/orb/models/events/backfill_list_response.rbs +0 -2
  487. data/sig/orb/models/events/backfill_revert_params.rbs +0 -2
  488. data/sig/orb/models/events/backfill_revert_response.rbs +0 -2
  489. data/sig/orb/models/events/event_volumes.rbs +3 -10
  490. data/sig/orb/models/events/volume_list_params.rbs +0 -2
  491. data/sig/orb/models/invoice.rbs +110 -172
  492. data/sig/orb/models/invoice_create_params.rbs +10 -16
  493. data/sig/orb/models/invoice_fetch_params.rbs +0 -2
  494. data/sig/orb/models/invoice_fetch_upcoming_params.rbs +0 -2
  495. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +2 -64
  496. data/sig/orb/models/invoice_issue_params.rbs +0 -2
  497. data/sig/orb/models/invoice_level_discount.rbs +2 -4
  498. data/sig/orb/models/invoice_line_item_create_params.rbs +0 -2
  499. data/sig/orb/models/invoice_line_item_create_response.rbs +2 -36
  500. data/sig/orb/models/invoice_list_params.rbs +4 -6
  501. data/sig/orb/models/invoice_mark_paid_params.rbs +0 -2
  502. data/sig/orb/models/invoice_pay_params.rbs +0 -2
  503. data/sig/orb/models/invoice_update_params.rbs +0 -2
  504. data/sig/orb/models/invoice_void_params.rbs +0 -2
  505. data/sig/orb/models/item.rbs +7 -11
  506. data/sig/orb/models/item_create_params.rbs +0 -2
  507. data/sig/orb/models/item_fetch_params.rbs +0 -2
  508. data/sig/orb/models/item_list_params.rbs +0 -2
  509. data/sig/orb/models/item_update_params.rbs +7 -11
  510. data/sig/orb/models/metric_create_params.rbs +0 -2
  511. data/sig/orb/models/metric_fetch_params.rbs +0 -2
  512. data/sig/orb/models/metric_list_params.rbs +0 -2
  513. data/sig/orb/models/metric_update_params.rbs +0 -2
  514. data/sig/orb/models/pagination_metadata.rbs +0 -2
  515. data/sig/orb/models/percentage_discount.rbs +4 -6
  516. data/sig/orb/models/plan.rbs +45 -73
  517. data/sig/orb/models/plan_create_params.rbs +518 -696
  518. data/sig/orb/models/plan_fetch_params.rbs +0 -2
  519. data/sig/orb/models/plan_list_params.rbs +0 -2
  520. data/sig/orb/models/plan_update_params.rbs +0 -2
  521. data/sig/orb/models/plans/external_plan_id_fetch_params.rbs +0 -2
  522. data/sig/orb/models/plans/external_plan_id_update_params.rbs +0 -2
  523. data/sig/orb/models/price.rbs +1194 -1730
  524. data/sig/orb/models/price_create_params.rbs +59 -97
  525. data/sig/orb/models/price_evaluate_params.rbs +0 -2
  526. data/sig/orb/models/price_evaluate_response.rbs +3 -6
  527. data/sig/orb/models/price_fetch_params.rbs +0 -2
  528. data/sig/orb/models/price_list_params.rbs +0 -2
  529. data/sig/orb/models/price_update_params.rbs +0 -2
  530. data/sig/orb/models/prices/external_price_id_fetch_params.rbs +0 -2
  531. data/sig/orb/models/prices/external_price_id_update_params.rbs +0 -2
  532. data/sig/orb/models/subscription.rbs +56 -94
  533. data/sig/orb/models/subscription_cancel_params.rbs +0 -2
  534. data/sig/orb/models/subscription_cancel_response.rbs +20 -60
  535. data/sig/orb/models/subscription_change_apply_params.rbs +0 -2
  536. data/sig/orb/models/subscription_change_apply_response.rbs +20 -62
  537. data/sig/orb/models/subscription_change_cancel_params.rbs +0 -2
  538. data/sig/orb/models/subscription_change_cancel_response.rbs +20 -62
  539. data/sig/orb/models/subscription_change_retrieve_params.rbs +0 -2
  540. data/sig/orb/models/subscription_change_retrieve_response.rbs +20 -62
  541. data/sig/orb/models/subscription_create_params.rbs +1103 -1499
  542. data/sig/orb/models/subscription_create_response.rbs +20 -60
  543. data/sig/orb/models/subscription_fetch_costs_params.rbs +0 -2
  544. data/sig/orb/models/subscription_fetch_costs_response.rbs +0 -6
  545. data/sig/orb/models/subscription_fetch_params.rbs +0 -2
  546. data/sig/orb/models/subscription_fetch_schedule_params.rbs +0 -2
  547. data/sig/orb/models/subscription_fetch_schedule_response.rbs +0 -4
  548. data/sig/orb/models/subscription_fetch_usage_params.rbs +0 -2
  549. data/sig/orb/models/subscription_list_params.rbs +0 -2
  550. data/sig/orb/models/subscription_price_intervals_params.rbs +666 -896
  551. data/sig/orb/models/subscription_price_intervals_response.rbs +20 -60
  552. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +1103 -1499
  553. data/sig/orb/models/subscription_schedule_plan_change_response.rbs +20 -60
  554. data/sig/orb/models/subscription_trigger_phase_params.rbs +0 -2
  555. data/sig/orb/models/subscription_trigger_phase_response.rbs +20 -60
  556. data/sig/orb/models/subscription_unschedule_cancellation_params.rbs +0 -2
  557. data/sig/orb/models/subscription_unschedule_cancellation_response.rbs +20 -60
  558. data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbs +0 -2
  559. data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbs +20 -60
  560. data/sig/orb/models/subscription_unschedule_pending_plan_changes_params.rbs +0 -2
  561. data/sig/orb/models/subscription_unschedule_pending_plan_changes_response.rbs +20 -60
  562. data/sig/orb/models/subscription_update_fixed_fee_quantity_params.rbs +0 -2
  563. data/sig/orb/models/subscription_update_fixed_fee_quantity_response.rbs +20 -60
  564. data/sig/orb/models/subscription_update_params.rbs +0 -2
  565. data/sig/orb/models/subscription_update_trial_params.rbs +1 -3
  566. data/sig/orb/models/subscription_update_trial_response.rbs +20 -60
  567. data/sig/orb/models/subscription_usage.rbs +35 -53
  568. data/sig/orb/models/subscriptions.rbs +6 -8
  569. data/sig/orb/models/top_level_ping_params.rbs +0 -2
  570. data/sig/orb/models/top_level_ping_response.rbs +0 -2
  571. data/sig/orb/models/trial_discount.rbs +4 -6
  572. data/sig/orb/models/usage_discount.rbs +4 -6
  573. data/sig/orb/request_options.rbs +1 -1
  574. data/sig/orb/resources/alerts.rbs +12 -12
  575. data/sig/orb/resources/coupons/subscriptions.rbs +1 -1
  576. data/sig/orb/resources/coupons.rbs +4 -4
  577. data/sig/orb/resources/credit_notes.rbs +4 -4
  578. data/sig/orb/resources/customers/credits/ledger.rbs +2 -2
  579. data/sig/orb/resources/customers/credits/top_ups.rbs +2 -2
  580. data/sig/orb/resources/customers.rbs +24 -24
  581. data/sig/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbs +1 -1
  582. data/sig/orb/resources/dimensional_price_groups.rbs +3 -3
  583. data/sig/orb/resources/events/volume.rbs +1 -1
  584. data/sig/orb/resources/events.rbs +1 -1
  585. data/sig/orb/resources/invoices.rbs +10 -10
  586. data/sig/orb/resources/items.rbs +5 -5
  587. data/sig/orb/resources/metrics.rbs +4 -4
  588. data/sig/orb/resources/plans/external_plan_id.rbs +2 -2
  589. data/sig/orb/resources/plans.rbs +5 -5
  590. data/sig/orb/resources/prices.rbs +11 -11
  591. data/sig/orb/resources/subscriptions.rbs +21 -21
  592. metadata +2 -2
@@ -3,6 +3,8 @@
3
3
  module Orb
4
4
  module Models
5
5
  class Subscription < Orb::Internal::Type::BaseModel
6
+ OrHash = T.type_alias { T.any(Orb::Subscription, Orb::Internal::AnyHash) }
7
+
6
8
  sig { returns(String) }
7
9
  attr_accessor :id
8
10
 
@@ -13,7 +15,7 @@ module Orb
13
15
 
14
16
  # The adjustment intervals for this subscription sorted by the start_date of the
15
17
  # adjustment interval.
16
- sig { returns(T::Array[Orb::Models::Subscription::AdjustmentInterval]) }
18
+ sig { returns(T::Array[Orb::Subscription::AdjustmentInterval]) }
17
19
  attr_accessor :adjustment_intervals
18
20
 
19
21
  # Determines whether issued invoices for this subscription will automatically be
@@ -22,14 +24,14 @@ module Orb
22
24
  sig { returns(T.nilable(T::Boolean)) }
23
25
  attr_accessor :auto_collection
24
26
 
25
- sig { returns(Orb::Models::Subscription::BillingCycleAnchorConfiguration) }
27
+ sig { returns(Orb::Subscription::BillingCycleAnchorConfiguration) }
26
28
  attr_reader :billing_cycle_anchor_configuration
27
29
 
28
30
  sig do
29
31
  params(
30
- billing_cycle_anchor_configuration: T.any(Orb::Models::Subscription::BillingCycleAnchorConfiguration, Orb::Internal::AnyHash)
31
- )
32
- .void
32
+ billing_cycle_anchor_configuration:
33
+ Orb::Subscription::BillingCycleAnchorConfiguration::OrHash
34
+ ).void
33
35
  end
34
36
  attr_writer :billing_cycle_anchor_configuration
35
37
 
@@ -73,10 +75,10 @@ module Orb
73
75
  # [IANA timezone database](https://www.iana.org/time-zones)), which defaults to
74
76
  # your account's timezone. See [Timezone localization](/essentials/timezones) for
75
77
  # information on what this timezone parameter influences within Orb.
76
- sig { returns(Orb::Models::Customer) }
78
+ sig { returns(Orb::Customer) }
77
79
  attr_reader :customer
78
80
 
79
- sig { params(customer: T.any(Orb::Models::Customer, Orb::Internal::AnyHash)).void }
81
+ sig { params(customer: Orb::Customer::OrHash).void }
80
82
  attr_writer :customer
81
83
 
82
84
  # Determines the default memo on this subscriptions' invoices. Note that if this
@@ -89,9 +91,9 @@ module Orb
89
91
  returns(
90
92
  T::Array[
91
93
  T.any(
92
- Orb::Models::Subscription::DiscountInterval::Amount,
93
- Orb::Models::Subscription::DiscountInterval::Percentage,
94
- Orb::Models::Subscription::DiscountInterval::Usage
94
+ Orb::Subscription::DiscountInterval::Amount,
95
+ Orb::Subscription::DiscountInterval::Percentage,
96
+ Orb::Subscription::DiscountInterval::Usage
95
97
  )
96
98
  ]
97
99
  )
@@ -102,14 +104,14 @@ module Orb
102
104
  sig { returns(T.nilable(Time)) }
103
105
  attr_accessor :end_date
104
106
 
105
- sig { returns(T::Array[Orb::Models::Subscription::FixedFeeQuantitySchedule]) }
107
+ sig { returns(T::Array[Orb::Subscription::FixedFeeQuantitySchedule]) }
106
108
  attr_accessor :fixed_fee_quantity_schedule
107
109
 
108
110
  sig { returns(T.nilable(String)) }
109
111
  attr_accessor :invoicing_threshold
110
112
 
111
113
  # The maximum intervals for this subscription sorted by the start_date.
112
- sig { returns(T::Array[Orb::Models::Subscription::MaximumInterval]) }
114
+ sig { returns(T::Array[Orb::Subscription::MaximumInterval]) }
113
115
  attr_accessor :maximum_intervals
114
116
 
115
117
  # User specified key-value pairs for the resource. If not present, this defaults
@@ -120,7 +122,7 @@ module Orb
120
122
  attr_accessor :metadata
121
123
 
122
124
  # The minimum intervals for this subscription sorted by the start_date.
123
- sig { returns(T::Array[Orb::Models::Subscription::MinimumInterval]) }
125
+ sig { returns(T::Array[Orb::Subscription::MinimumInterval]) }
124
126
  attr_accessor :minimum_intervals
125
127
 
126
128
  # Determines the difference between the invoice issue date for subscription
@@ -131,14 +133,14 @@ module Orb
131
133
  attr_accessor :net_terms
132
134
 
133
135
  # A pending subscription change if one exists on this subscription.
134
- sig { returns(T.nilable(Orb::Models::Subscription::PendingSubscriptionChange)) }
136
+ sig { returns(T.nilable(Orb::Subscription::PendingSubscriptionChange)) }
135
137
  attr_reader :pending_subscription_change
136
138
 
137
139
  sig do
138
140
  params(
139
- pending_subscription_change: T.nilable(T.any(Orb::Models::Subscription::PendingSubscriptionChange, Orb::Internal::AnyHash))
140
- )
141
- .void
141
+ pending_subscription_change:
142
+ T.nilable(Orb::Subscription::PendingSubscriptionChange::OrHash)
143
+ ).void
142
144
  end
143
145
  attr_writer :pending_subscription_change
144
146
 
@@ -146,24 +148,23 @@ module Orb
146
148
  # subscribed to by a customer. Plans define the billing behavior of the
147
149
  # subscription. You can see more about how to configure prices in the
148
150
  # [Price resource](/reference/price).
149
- sig { returns(Orb::Models::Plan) }
151
+ sig { returns(Orb::Plan) }
150
152
  attr_reader :plan
151
153
 
152
- sig { params(plan: T.any(Orb::Models::Plan, Orb::Internal::AnyHash)).void }
154
+ sig { params(plan: Orb::Plan::OrHash).void }
153
155
  attr_writer :plan
154
156
 
155
157
  # The price intervals for this subscription.
156
- sig { returns(T::Array[Orb::Models::Subscription::PriceInterval]) }
158
+ sig { returns(T::Array[Orb::Subscription::PriceInterval]) }
157
159
  attr_accessor :price_intervals
158
160
 
159
- sig { returns(T.nilable(Orb::Models::Subscription::RedeemedCoupon)) }
161
+ sig { returns(T.nilable(Orb::Subscription::RedeemedCoupon)) }
160
162
  attr_reader :redeemed_coupon
161
163
 
162
164
  sig do
163
165
  params(
164
- redeemed_coupon: T.nilable(T.any(Orb::Models::Subscription::RedeemedCoupon, Orb::Internal::AnyHash))
165
- )
166
- .void
166
+ redeemed_coupon: T.nilable(Orb::Subscription::RedeemedCoupon::OrHash)
167
+ ).void
167
168
  end
168
169
  attr_writer :redeemed_coupon
169
170
 
@@ -171,13 +172,13 @@ module Orb
171
172
  sig { returns(Time) }
172
173
  attr_accessor :start_date
173
174
 
174
- sig { returns(Orb::Models::Subscription::Status::TaggedSymbol) }
175
+ sig { returns(Orb::Subscription::Status::TaggedSymbol) }
175
176
  attr_accessor :status
176
177
 
177
- sig { returns(Orb::Models::Subscription::TrialInfo) }
178
+ sig { returns(Orb::Subscription::TrialInfo) }
178
179
  attr_reader :trial_info
179
180
 
180
- sig { params(trial_info: T.any(Orb::Models::Subscription::TrialInfo, Orb::Internal::AnyHash)).void }
181
+ sig { params(trial_info: Orb::Subscription::TrialInfo::OrHash).void }
181
182
  attr_writer :trial_info
182
183
 
183
184
  # A [subscription](/core-concepts#subscription) represents the purchase of a plan
@@ -203,39 +204,44 @@ module Orb
203
204
  params(
204
205
  id: String,
205
206
  active_plan_phase_order: T.nilable(Integer),
206
- adjustment_intervals: T::Array[T.any(Orb::Models::Subscription::AdjustmentInterval, Orb::Internal::AnyHash)],
207
+ adjustment_intervals:
208
+ T::Array[Orb::Subscription::AdjustmentInterval::OrHash],
207
209
  auto_collection: T.nilable(T::Boolean),
208
- billing_cycle_anchor_configuration: T.any(Orb::Models::Subscription::BillingCycleAnchorConfiguration, Orb::Internal::AnyHash),
210
+ billing_cycle_anchor_configuration:
211
+ Orb::Subscription::BillingCycleAnchorConfiguration::OrHash,
209
212
  billing_cycle_day: Integer,
210
213
  created_at: Time,
211
214
  current_billing_period_end_date: T.nilable(Time),
212
215
  current_billing_period_start_date: T.nilable(Time),
213
- customer: T.any(Orb::Models::Customer, Orb::Internal::AnyHash),
216
+ customer: Orb::Customer::OrHash,
214
217
  default_invoice_memo: T.nilable(String),
215
- discount_intervals: T::Array[
216
- T.any(
217
- Orb::Models::Subscription::DiscountInterval::Amount,
218
- Orb::Internal::AnyHash,
219
- Orb::Models::Subscription::DiscountInterval::Percentage,
220
- Orb::Models::Subscription::DiscountInterval::Usage
221
- )
222
- ],
218
+ discount_intervals:
219
+ T::Array[
220
+ T.any(
221
+ Orb::Subscription::DiscountInterval::Amount::OrHash,
222
+ Orb::Subscription::DiscountInterval::Percentage::OrHash,
223
+ Orb::Subscription::DiscountInterval::Usage::OrHash
224
+ )
225
+ ],
223
226
  end_date: T.nilable(Time),
224
- fixed_fee_quantity_schedule: T::Array[T.any(Orb::Models::Subscription::FixedFeeQuantitySchedule, Orb::Internal::AnyHash)],
227
+ fixed_fee_quantity_schedule:
228
+ T::Array[Orb::Subscription::FixedFeeQuantitySchedule::OrHash],
225
229
  invoicing_threshold: T.nilable(String),
226
- maximum_intervals: T::Array[T.any(Orb::Models::Subscription::MaximumInterval, Orb::Internal::AnyHash)],
230
+ maximum_intervals:
231
+ T::Array[Orb::Subscription::MaximumInterval::OrHash],
227
232
  metadata: T::Hash[Symbol, String],
228
- minimum_intervals: T::Array[T.any(Orb::Models::Subscription::MinimumInterval, Orb::Internal::AnyHash)],
233
+ minimum_intervals:
234
+ T::Array[Orb::Subscription::MinimumInterval::OrHash],
229
235
  net_terms: Integer,
230
- pending_subscription_change: T.nilable(T.any(Orb::Models::Subscription::PendingSubscriptionChange, Orb::Internal::AnyHash)),
231
- plan: T.any(Orb::Models::Plan, Orb::Internal::AnyHash),
232
- price_intervals: T::Array[T.any(Orb::Models::Subscription::PriceInterval, Orb::Internal::AnyHash)],
233
- redeemed_coupon: T.nilable(T.any(Orb::Models::Subscription::RedeemedCoupon, Orb::Internal::AnyHash)),
236
+ pending_subscription_change:
237
+ T.nilable(Orb::Subscription::PendingSubscriptionChange::OrHash),
238
+ plan: Orb::Plan::OrHash,
239
+ price_intervals: T::Array[Orb::Subscription::PriceInterval::OrHash],
240
+ redeemed_coupon: T.nilable(Orb::Subscription::RedeemedCoupon::OrHash),
234
241
  start_date: Time,
235
- status: Orb::Models::Subscription::Status::OrSymbol,
236
- trial_info: T.any(Orb::Models::Subscription::TrialInfo, Orb::Internal::AnyHash)
237
- )
238
- .returns(T.attached_class)
242
+ status: Orb::Subscription::Status::OrSymbol,
243
+ trial_info: Orb::Subscription::TrialInfo::OrHash
244
+ ).returns(T.attached_class)
239
245
  end
240
246
  def self.new(
241
247
  id:,
@@ -320,60 +326,72 @@ module Orb
320
326
  start_date:,
321
327
  status:,
322
328
  trial_info:
323
- ); end
329
+ )
330
+ end
331
+
324
332
  sig do
325
- override
326
- .returns(
327
- {
328
- id: String,
329
- active_plan_phase_order: T.nilable(Integer),
330
- adjustment_intervals: T::Array[Orb::Models::Subscription::AdjustmentInterval],
331
- auto_collection: T.nilable(T::Boolean),
332
- billing_cycle_anchor_configuration: Orb::Models::Subscription::BillingCycleAnchorConfiguration,
333
- billing_cycle_day: Integer,
334
- created_at: Time,
335
- current_billing_period_end_date: T.nilable(Time),
336
- current_billing_period_start_date: T.nilable(Time),
337
- customer: Orb::Models::Customer,
338
- default_invoice_memo: T.nilable(String),
339
- discount_intervals: T::Array[
333
+ override.returns(
334
+ {
335
+ id: String,
336
+ active_plan_phase_order: T.nilable(Integer),
337
+ adjustment_intervals:
338
+ T::Array[Orb::Subscription::AdjustmentInterval],
339
+ auto_collection: T.nilable(T::Boolean),
340
+ billing_cycle_anchor_configuration:
341
+ Orb::Subscription::BillingCycleAnchorConfiguration,
342
+ billing_cycle_day: Integer,
343
+ created_at: Time,
344
+ current_billing_period_end_date: T.nilable(Time),
345
+ current_billing_period_start_date: T.nilable(Time),
346
+ customer: Orb::Customer,
347
+ default_invoice_memo: T.nilable(String),
348
+ discount_intervals:
349
+ T::Array[
340
350
  T.any(
341
- Orb::Models::Subscription::DiscountInterval::Amount,
342
- Orb::Models::Subscription::DiscountInterval::Percentage,
343
- Orb::Models::Subscription::DiscountInterval::Usage
351
+ Orb::Subscription::DiscountInterval::Amount,
352
+ Orb::Subscription::DiscountInterval::Percentage,
353
+ Orb::Subscription::DiscountInterval::Usage
344
354
  )
345
355
  ],
346
- end_date: T.nilable(Time),
347
- fixed_fee_quantity_schedule: T::Array[Orb::Models::Subscription::FixedFeeQuantitySchedule],
348
- invoicing_threshold: T.nilable(String),
349
- maximum_intervals: T::Array[Orb::Models::Subscription::MaximumInterval],
350
- metadata: T::Hash[Symbol, String],
351
- minimum_intervals: T::Array[Orb::Models::Subscription::MinimumInterval],
352
- net_terms: Integer,
353
- pending_subscription_change: T.nilable(Orb::Models::Subscription::PendingSubscriptionChange),
354
- plan: Orb::Models::Plan,
355
- price_intervals: T::Array[Orb::Models::Subscription::PriceInterval],
356
- redeemed_coupon: T.nilable(Orb::Models::Subscription::RedeemedCoupon),
357
- start_date: Time,
358
- status: Orb::Models::Subscription::Status::TaggedSymbol,
359
- trial_info: Orb::Models::Subscription::TrialInfo
360
- }
361
- )
356
+ end_date: T.nilable(Time),
357
+ fixed_fee_quantity_schedule:
358
+ T::Array[Orb::Subscription::FixedFeeQuantitySchedule],
359
+ invoicing_threshold: T.nilable(String),
360
+ maximum_intervals: T::Array[Orb::Subscription::MaximumInterval],
361
+ metadata: T::Hash[Symbol, String],
362
+ minimum_intervals: T::Array[Orb::Subscription::MinimumInterval],
363
+ net_terms: Integer,
364
+ pending_subscription_change:
365
+ T.nilable(Orb::Subscription::PendingSubscriptionChange),
366
+ plan: Orb::Plan,
367
+ price_intervals: T::Array[Orb::Subscription::PriceInterval],
368
+ redeemed_coupon: T.nilable(Orb::Subscription::RedeemedCoupon),
369
+ start_date: Time,
370
+ status: Orb::Subscription::Status::TaggedSymbol,
371
+ trial_info: Orb::Subscription::TrialInfo
372
+ }
373
+ )
374
+ end
375
+ def to_hash
362
376
  end
363
- def to_hash; end
364
377
 
365
378
  class AdjustmentInterval < Orb::Internal::Type::BaseModel
379
+ OrHash =
380
+ T.type_alias do
381
+ T.any(Orb::Subscription::AdjustmentInterval, Orb::Internal::AnyHash)
382
+ end
383
+
366
384
  sig { returns(String) }
367
385
  attr_accessor :id
368
386
 
369
387
  sig do
370
388
  returns(
371
389
  T.any(
372
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::UsageDiscount,
373
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::AmountDiscount,
374
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount,
375
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::Minimum,
376
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::Maximum
390
+ Orb::Subscription::AdjustmentInterval::Adjustment::UsageDiscount,
391
+ Orb::Subscription::AdjustmentInterval::Adjustment::AmountDiscount,
392
+ Orb::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount,
393
+ Orb::Subscription::AdjustmentInterval::Adjustment::Minimum,
394
+ Orb::Subscription::AdjustmentInterval::Adjustment::Maximum
377
395
  )
378
396
  )
379
397
  end
@@ -394,19 +412,18 @@ module Orb
394
412
  sig do
395
413
  params(
396
414
  id: String,
397
- adjustment: T.any(
398
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::UsageDiscount,
399
- Orb::Internal::AnyHash,
400
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::AmountDiscount,
401
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount,
402
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::Minimum,
403
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::Maximum
404
- ),
415
+ adjustment:
416
+ T.any(
417
+ Orb::Subscription::AdjustmentInterval::Adjustment::UsageDiscount::OrHash,
418
+ Orb::Subscription::AdjustmentInterval::Adjustment::AmountDiscount::OrHash,
419
+ Orb::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount::OrHash,
420
+ Orb::Subscription::AdjustmentInterval::Adjustment::Minimum::OrHash,
421
+ Orb::Subscription::AdjustmentInterval::Adjustment::Maximum::OrHash
422
+ ),
405
423
  applies_to_price_interval_ids: T::Array[String],
406
424
  end_date: T.nilable(Time),
407
425
  start_date: Time
408
- )
409
- .returns(T.attached_class)
426
+ ).returns(T.attached_class)
410
427
  end
411
428
  def self.new(
412
429
  id:,
@@ -417,31 +434,53 @@ module Orb
417
434
  end_date:,
418
435
  # The start date of the adjustment interval.
419
436
  start_date:
420
- ); end
437
+ )
438
+ end
439
+
421
440
  sig do
422
- override
423
- .returns(
424
- {
425
- id: String,
426
- adjustment: T.any(
427
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::UsageDiscount,
428
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::AmountDiscount,
429
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount,
430
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::Minimum,
431
- Orb::Models::Subscription::AdjustmentInterval::Adjustment::Maximum
441
+ override.returns(
442
+ {
443
+ id: String,
444
+ adjustment:
445
+ T.any(
446
+ Orb::Subscription::AdjustmentInterval::Adjustment::UsageDiscount,
447
+ Orb::Subscription::AdjustmentInterval::Adjustment::AmountDiscount,
448
+ Orb::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount,
449
+ Orb::Subscription::AdjustmentInterval::Adjustment::Minimum,
450
+ Orb::Subscription::AdjustmentInterval::Adjustment::Maximum
432
451
  ),
433
- applies_to_price_interval_ids: T::Array[String],
434
- end_date: T.nilable(Time),
435
- start_date: Time
436
- }
437
- )
452
+ applies_to_price_interval_ids: T::Array[String],
453
+ end_date: T.nilable(Time),
454
+ start_date: Time
455
+ }
456
+ )
457
+ end
458
+ def to_hash
438
459
  end
439
- def to_hash; end
440
460
 
441
461
  module Adjustment
442
462
  extend Orb::Internal::Type::Union
443
463
 
464
+ Variants =
465
+ T.type_alias do
466
+ T.any(
467
+ Orb::Subscription::AdjustmentInterval::Adjustment::UsageDiscount,
468
+ Orb::Subscription::AdjustmentInterval::Adjustment::AmountDiscount,
469
+ Orb::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount,
470
+ Orb::Subscription::AdjustmentInterval::Adjustment::Minimum,
471
+ Orb::Subscription::AdjustmentInterval::Adjustment::Maximum
472
+ )
473
+ end
474
+
444
475
  class UsageDiscount < Orb::Internal::Type::BaseModel
476
+ OrHash =
477
+ T.type_alias do
478
+ T.any(
479
+ Orb::Subscription::AdjustmentInterval::Adjustment::UsageDiscount,
480
+ Orb::Internal::AnyHash
481
+ )
482
+ end
483
+
445
484
  sig { returns(String) }
446
485
  attr_accessor :id
447
486
 
@@ -479,8 +518,7 @@ module Orb
479
518
  reason: T.nilable(String),
480
519
  usage_discount: Float,
481
520
  adjustment_type: Symbol
482
- )
483
- .returns(T.attached_class)
521
+ ).returns(T.attached_class)
484
522
  end
485
523
  def self.new(
486
524
  id:,
@@ -497,25 +535,35 @@ module Orb
497
535
  # to in a given billing period.
498
536
  usage_discount:,
499
537
  adjustment_type: :usage_discount
500
- ); end
538
+ )
539
+ end
540
+
501
541
  sig do
502
- override
503
- .returns(
504
- {
505
- id: String,
506
- adjustment_type: Symbol,
507
- applies_to_price_ids: T::Array[String],
508
- is_invoice_level: T::Boolean,
509
- plan_phase_order: T.nilable(Integer),
510
- reason: T.nilable(String),
511
- usage_discount: Float
512
- }
513
- )
542
+ override.returns(
543
+ {
544
+ id: String,
545
+ adjustment_type: Symbol,
546
+ applies_to_price_ids: T::Array[String],
547
+ is_invoice_level: T::Boolean,
548
+ plan_phase_order: T.nilable(Integer),
549
+ reason: T.nilable(String),
550
+ usage_discount: Float
551
+ }
552
+ )
553
+ end
554
+ def to_hash
514
555
  end
515
- def to_hash; end
516
556
  end
517
557
 
518
558
  class AmountDiscount < Orb::Internal::Type::BaseModel
559
+ OrHash =
560
+ T.type_alias do
561
+ T.any(
562
+ Orb::Subscription::AdjustmentInterval::Adjustment::AmountDiscount,
563
+ Orb::Internal::AnyHash
564
+ )
565
+ end
566
+
519
567
  sig { returns(String) }
520
568
  attr_accessor :id
521
569
 
@@ -553,8 +601,7 @@ module Orb
553
601
  plan_phase_order: T.nilable(Integer),
554
602
  reason: T.nilable(String),
555
603
  adjustment_type: Symbol
556
- )
557
- .returns(T.attached_class)
604
+ ).returns(T.attached_class)
558
605
  end
559
606
  def self.new(
560
607
  id:,
@@ -571,25 +618,35 @@ module Orb
571
618
  # The reason for the adjustment.
572
619
  reason:,
573
620
  adjustment_type: :amount_discount
574
- ); end
621
+ )
622
+ end
623
+
575
624
  sig do
576
- override
577
- .returns(
578
- {
579
- id: String,
580
- adjustment_type: Symbol,
581
- amount_discount: String,
582
- applies_to_price_ids: T::Array[String],
583
- is_invoice_level: T::Boolean,
584
- plan_phase_order: T.nilable(Integer),
585
- reason: T.nilable(String)
586
- }
587
- )
625
+ override.returns(
626
+ {
627
+ id: String,
628
+ adjustment_type: Symbol,
629
+ amount_discount: String,
630
+ applies_to_price_ids: T::Array[String],
631
+ is_invoice_level: T::Boolean,
632
+ plan_phase_order: T.nilable(Integer),
633
+ reason: T.nilable(String)
634
+ }
635
+ )
636
+ end
637
+ def to_hash
588
638
  end
589
- def to_hash; end
590
639
  end
591
640
 
592
641
  class PercentageDiscount < Orb::Internal::Type::BaseModel
642
+ OrHash =
643
+ T.type_alias do
644
+ T.any(
645
+ Orb::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount,
646
+ Orb::Internal::AnyHash
647
+ )
648
+ end
649
+
593
650
  sig { returns(String) }
594
651
  attr_accessor :id
595
652
 
@@ -627,8 +684,7 @@ module Orb
627
684
  plan_phase_order: T.nilable(Integer),
628
685
  reason: T.nilable(String),
629
686
  adjustment_type: Symbol
630
- )
631
- .returns(T.attached_class)
687
+ ).returns(T.attached_class)
632
688
  end
633
689
  def self.new(
634
690
  id:,
@@ -645,25 +701,35 @@ module Orb
645
701
  # The reason for the adjustment.
646
702
  reason:,
647
703
  adjustment_type: :percentage_discount
648
- ); end
704
+ )
705
+ end
706
+
649
707
  sig do
650
- override
651
- .returns(
652
- {
653
- id: String,
654
- adjustment_type: Symbol,
655
- applies_to_price_ids: T::Array[String],
656
- is_invoice_level: T::Boolean,
657
- percentage_discount: Float,
658
- plan_phase_order: T.nilable(Integer),
659
- reason: T.nilable(String)
660
- }
661
- )
708
+ override.returns(
709
+ {
710
+ id: String,
711
+ adjustment_type: Symbol,
712
+ applies_to_price_ids: T::Array[String],
713
+ is_invoice_level: T::Boolean,
714
+ percentage_discount: Float,
715
+ plan_phase_order: T.nilable(Integer),
716
+ reason: T.nilable(String)
717
+ }
718
+ )
719
+ end
720
+ def to_hash
662
721
  end
663
- def to_hash; end
664
722
  end
665
723
 
666
724
  class Minimum < Orb::Internal::Type::BaseModel
725
+ OrHash =
726
+ T.type_alias do
727
+ T.any(
728
+ Orb::Subscription::AdjustmentInterval::Adjustment::Minimum,
729
+ Orb::Internal::AnyHash
730
+ )
731
+ end
732
+
667
733
  sig { returns(String) }
668
734
  attr_accessor :id
669
735
 
@@ -706,8 +772,7 @@ module Orb
706
772
  plan_phase_order: T.nilable(Integer),
707
773
  reason: T.nilable(String),
708
774
  adjustment_type: Symbol
709
- )
710
- .returns(T.attached_class)
775
+ ).returns(T.attached_class)
711
776
  end
712
777
  def self.new(
713
778
  id:,
@@ -726,26 +791,36 @@ module Orb
726
791
  # The reason for the adjustment.
727
792
  reason:,
728
793
  adjustment_type: :minimum
729
- ); end
794
+ )
795
+ end
796
+
730
797
  sig do
731
- override
732
- .returns(
733
- {
734
- id: String,
735
- adjustment_type: Symbol,
736
- applies_to_price_ids: T::Array[String],
737
- is_invoice_level: T::Boolean,
738
- item_id: String,
739
- minimum_amount: String,
740
- plan_phase_order: T.nilable(Integer),
741
- reason: T.nilable(String)
742
- }
743
- )
798
+ override.returns(
799
+ {
800
+ id: String,
801
+ adjustment_type: Symbol,
802
+ applies_to_price_ids: T::Array[String],
803
+ is_invoice_level: T::Boolean,
804
+ item_id: String,
805
+ minimum_amount: String,
806
+ plan_phase_order: T.nilable(Integer),
807
+ reason: T.nilable(String)
808
+ }
809
+ )
810
+ end
811
+ def to_hash
744
812
  end
745
- def to_hash; end
746
813
  end
747
814
 
748
815
  class Maximum < Orb::Internal::Type::BaseModel
816
+ OrHash =
817
+ T.type_alias do
818
+ T.any(
819
+ Orb::Subscription::AdjustmentInterval::Adjustment::Maximum,
820
+ Orb::Internal::AnyHash
821
+ )
822
+ end
823
+
749
824
  sig { returns(String) }
750
825
  attr_accessor :id
751
826
 
@@ -783,8 +858,7 @@ module Orb
783
858
  plan_phase_order: T.nilable(Integer),
784
859
  reason: T.nilable(String),
785
860
  adjustment_type: Symbol
786
- )
787
- .returns(T.attached_class)
861
+ ).returns(T.attached_class)
788
862
  end
789
863
  def self.new(
790
864
  id:,
@@ -801,35 +875,47 @@ module Orb
801
875
  # The reason for the adjustment.
802
876
  reason:,
803
877
  adjustment_type: :maximum
804
- ); end
878
+ )
879
+ end
880
+
805
881
  sig do
806
- override
807
- .returns(
808
- {
809
- id: String,
810
- adjustment_type: Symbol,
811
- applies_to_price_ids: T::Array[String],
812
- is_invoice_level: T::Boolean,
813
- maximum_amount: String,
814
- plan_phase_order: T.nilable(Integer),
815
- reason: T.nilable(String)
816
- }
817
- )
882
+ override.returns(
883
+ {
884
+ id: String,
885
+ adjustment_type: Symbol,
886
+ applies_to_price_ids: T::Array[String],
887
+ is_invoice_level: T::Boolean,
888
+ maximum_amount: String,
889
+ plan_phase_order: T.nilable(Integer),
890
+ reason: T.nilable(String)
891
+ }
892
+ )
893
+ end
894
+ def to_hash
818
895
  end
819
- def to_hash; end
820
896
  end
821
897
 
822
898
  sig do
823
- override
824
- .returns(
825
- [Orb::Models::Subscription::AdjustmentInterval::Adjustment::UsageDiscount, Orb::Models::Subscription::AdjustmentInterval::Adjustment::AmountDiscount, Orb::Models::Subscription::AdjustmentInterval::Adjustment::PercentageDiscount, Orb::Models::Subscription::AdjustmentInterval::Adjustment::Minimum, Orb::Models::Subscription::AdjustmentInterval::Adjustment::Maximum]
826
- )
899
+ override.returns(
900
+ T::Array[
901
+ Orb::Subscription::AdjustmentInterval::Adjustment::Variants
902
+ ]
903
+ )
904
+ end
905
+ def self.variants
827
906
  end
828
- def self.variants; end
829
907
  end
830
908
  end
831
909
 
832
910
  class BillingCycleAnchorConfiguration < Orb::Internal::Type::BaseModel
911
+ OrHash =
912
+ T.type_alias do
913
+ T.any(
914
+ Orb::Subscription::BillingCycleAnchorConfiguration,
915
+ Orb::Internal::AnyHash
916
+ )
917
+ end
918
+
833
919
  # The day of the month on which the billing cycle is anchored. If the maximum
834
920
  # number of days in a month is greater than this value, the last day of the month
835
921
  # is the billing cycle day (e.g. billing_cycle_day=31 for April means the billing
@@ -849,7 +935,11 @@ module Orb
849
935
  attr_accessor :year
850
936
 
851
937
  sig do
852
- params(day: Integer, month: T.nilable(Integer), year: T.nilable(Integer)).returns(T.attached_class)
938
+ params(
939
+ day: Integer,
940
+ month: T.nilable(Integer),
941
+ year: T.nilable(Integer)
942
+ ).returns(T.attached_class)
853
943
  end
854
944
  def self.new(
855
945
  # The day of the month on which the billing cycle is anchored. If the maximum
@@ -864,15 +954,43 @@ module Orb
864
954
  # The year on which the billing cycle is anchored (e.g. a 2 year billing cycle
865
955
  # anchored on 2021 would have cycles starting on 2021, 2023, 2025, etc.).
866
956
  year: nil
867
- ); end
868
- sig { override.returns({day: Integer, month: T.nilable(Integer), year: T.nilable(Integer)}) }
869
- def to_hash; end
957
+ )
958
+ end
959
+
960
+ sig do
961
+ override.returns(
962
+ {
963
+ day: Integer,
964
+ month: T.nilable(Integer),
965
+ year: T.nilable(Integer)
966
+ }
967
+ )
968
+ end
969
+ def to_hash
970
+ end
870
971
  end
871
972
 
872
973
  module DiscountInterval
873
974
  extend Orb::Internal::Type::Union
874
975
 
976
+ Variants =
977
+ T.type_alias do
978
+ T.any(
979
+ Orb::Subscription::DiscountInterval::Amount,
980
+ Orb::Subscription::DiscountInterval::Percentage,
981
+ Orb::Subscription::DiscountInterval::Usage
982
+ )
983
+ end
984
+
875
985
  class Amount < Orb::Internal::Type::BaseModel
986
+ OrHash =
987
+ T.type_alias do
988
+ T.any(
989
+ Orb::Subscription::DiscountInterval::Amount,
990
+ Orb::Internal::AnyHash
991
+ )
992
+ end
993
+
876
994
  # Only available if discount_type is `amount`.
877
995
  sig { returns(String) }
878
996
  attr_accessor :amount_discount
@@ -904,8 +1022,7 @@ module Orb
904
1022
  end_date: T.nilable(Time),
905
1023
  start_date: Time,
906
1024
  discount_type: Symbol
907
- )
908
- .returns(T.attached_class)
1025
+ ).returns(T.attached_class)
909
1026
  end
910
1027
  def self.new(
911
1028
  # Only available if discount_type is `amount`.
@@ -919,24 +1036,34 @@ module Orb
919
1036
  # The start date of the discount interval.
920
1037
  start_date:,
921
1038
  discount_type: :amount
922
- ); end
1039
+ )
1040
+ end
1041
+
923
1042
  sig do
924
- override
925
- .returns(
926
- {
927
- amount_discount: String,
928
- applies_to_price_ids: T::Array[String],
929
- applies_to_price_interval_ids: T::Array[String],
930
- discount_type: Symbol,
931
- end_date: T.nilable(Time),
932
- start_date: Time
933
- }
934
- )
1043
+ override.returns(
1044
+ {
1045
+ amount_discount: String,
1046
+ applies_to_price_ids: T::Array[String],
1047
+ applies_to_price_interval_ids: T::Array[String],
1048
+ discount_type: Symbol,
1049
+ end_date: T.nilable(Time),
1050
+ start_date: Time
1051
+ }
1052
+ )
1053
+ end
1054
+ def to_hash
935
1055
  end
936
- def to_hash; end
937
1056
  end
938
1057
 
939
1058
  class Percentage < Orb::Internal::Type::BaseModel
1059
+ OrHash =
1060
+ T.type_alias do
1061
+ T.any(
1062
+ Orb::Subscription::DiscountInterval::Percentage,
1063
+ Orb::Internal::AnyHash
1064
+ )
1065
+ end
1066
+
940
1067
  # The price ids that this discount interval applies to.
941
1068
  sig { returns(T::Array[String]) }
942
1069
  attr_accessor :applies_to_price_ids
@@ -969,8 +1096,7 @@ module Orb
969
1096
  percentage_discount: Float,
970
1097
  start_date: Time,
971
1098
  discount_type: Symbol
972
- )
973
- .returns(T.attached_class)
1099
+ ).returns(T.attached_class)
974
1100
  end
975
1101
  def self.new(
976
1102
  # The price ids that this discount interval applies to.
@@ -985,24 +1111,34 @@ module Orb
985
1111
  # The start date of the discount interval.
986
1112
  start_date:,
987
1113
  discount_type: :percentage
988
- ); end
1114
+ )
1115
+ end
1116
+
989
1117
  sig do
990
- override
991
- .returns(
992
- {
993
- applies_to_price_ids: T::Array[String],
994
- applies_to_price_interval_ids: T::Array[String],
995
- discount_type: Symbol,
996
- end_date: T.nilable(Time),
997
- percentage_discount: Float,
998
- start_date: Time
999
- }
1000
- )
1118
+ override.returns(
1119
+ {
1120
+ applies_to_price_ids: T::Array[String],
1121
+ applies_to_price_interval_ids: T::Array[String],
1122
+ discount_type: Symbol,
1123
+ end_date: T.nilable(Time),
1124
+ percentage_discount: Float,
1125
+ start_date: Time
1126
+ }
1127
+ )
1128
+ end
1129
+ def to_hash
1001
1130
  end
1002
- def to_hash; end
1003
1131
  end
1004
1132
 
1005
1133
  class Usage < Orb::Internal::Type::BaseModel
1134
+ OrHash =
1135
+ T.type_alias do
1136
+ T.any(
1137
+ Orb::Subscription::DiscountInterval::Usage,
1138
+ Orb::Internal::AnyHash
1139
+ )
1140
+ end
1141
+
1006
1142
  # The price ids that this discount interval applies to.
1007
1143
  sig { returns(T::Array[String]) }
1008
1144
  attr_accessor :applies_to_price_ids
@@ -1035,8 +1171,7 @@ module Orb
1035
1171
  start_date: Time,
1036
1172
  usage_discount: Float,
1037
1173
  discount_type: Symbol
1038
- )
1039
- .returns(T.attached_class)
1174
+ ).returns(T.attached_class)
1040
1175
  end
1041
1176
  def self.new(
1042
1177
  # The price ids that this discount interval applies to.
@@ -1051,33 +1186,43 @@ module Orb
1051
1186
  # discount is for
1052
1187
  usage_discount:,
1053
1188
  discount_type: :usage
1054
- ); end
1189
+ )
1190
+ end
1191
+
1055
1192
  sig do
1056
- override
1057
- .returns(
1058
- {
1059
- applies_to_price_ids: T::Array[String],
1060
- applies_to_price_interval_ids: T::Array[String],
1061
- discount_type: Symbol,
1062
- end_date: T.nilable(Time),
1063
- start_date: Time,
1064
- usage_discount: Float
1065
- }
1066
- )
1193
+ override.returns(
1194
+ {
1195
+ applies_to_price_ids: T::Array[String],
1196
+ applies_to_price_interval_ids: T::Array[String],
1197
+ discount_type: Symbol,
1198
+ end_date: T.nilable(Time),
1199
+ start_date: Time,
1200
+ usage_discount: Float
1201
+ }
1202
+ )
1203
+ end
1204
+ def to_hash
1067
1205
  end
1068
- def to_hash; end
1069
1206
  end
1070
1207
 
1071
1208
  sig do
1072
- override
1073
- .returns(
1074
- [Orb::Models::Subscription::DiscountInterval::Amount, Orb::Models::Subscription::DiscountInterval::Percentage, Orb::Models::Subscription::DiscountInterval::Usage]
1075
- )
1209
+ override.returns(
1210
+ T::Array[Orb::Subscription::DiscountInterval::Variants]
1211
+ )
1212
+ end
1213
+ def self.variants
1076
1214
  end
1077
- def self.variants; end
1078
1215
  end
1079
1216
 
1080
1217
  class FixedFeeQuantitySchedule < Orb::Internal::Type::BaseModel
1218
+ OrHash =
1219
+ T.type_alias do
1220
+ T.any(
1221
+ Orb::Subscription::FixedFeeQuantitySchedule,
1222
+ Orb::Internal::AnyHash
1223
+ )
1224
+ end
1225
+
1081
1226
  sig { returns(T.nilable(Time)) }
1082
1227
  attr_accessor :end_date
1083
1228
 
@@ -1091,18 +1236,36 @@ module Orb
1091
1236
  attr_accessor :start_date
1092
1237
 
1093
1238
  sig do
1094
- params(end_date: T.nilable(Time), price_id: String, quantity: Float, start_date: Time)
1095
- .returns(T.attached_class)
1239
+ params(
1240
+ end_date: T.nilable(Time),
1241
+ price_id: String,
1242
+ quantity: Float,
1243
+ start_date: Time
1244
+ ).returns(T.attached_class)
1245
+ end
1246
+ def self.new(end_date:, price_id:, quantity:, start_date:)
1096
1247
  end
1097
- def self.new(end_date:, price_id:, quantity:, start_date:); end
1098
1248
 
1099
1249
  sig do
1100
- override.returns({end_date: T.nilable(Time), price_id: String, quantity: Float, start_date: Time})
1250
+ override.returns(
1251
+ {
1252
+ end_date: T.nilable(Time),
1253
+ price_id: String,
1254
+ quantity: Float,
1255
+ start_date: Time
1256
+ }
1257
+ )
1258
+ end
1259
+ def to_hash
1101
1260
  end
1102
- def to_hash; end
1103
1261
  end
1104
1262
 
1105
1263
  class MaximumInterval < Orb::Internal::Type::BaseModel
1264
+ OrHash =
1265
+ T.type_alias do
1266
+ T.any(Orb::Subscription::MaximumInterval, Orb::Internal::AnyHash)
1267
+ end
1268
+
1106
1269
  # The price ids that this maximum interval applies to.
1107
1270
  sig { returns(T::Array[String]) }
1108
1271
  attr_accessor :applies_to_price_ids
@@ -1131,8 +1294,7 @@ module Orb
1131
1294
  end_date: T.nilable(Time),
1132
1295
  maximum_amount: String,
1133
1296
  start_date: Time
1134
- )
1135
- .returns(T.attached_class)
1297
+ ).returns(T.attached_class)
1136
1298
  end
1137
1299
  def self.new(
1138
1300
  # The price ids that this maximum interval applies to.
@@ -1146,23 +1308,30 @@ module Orb
1146
1308
  maximum_amount:,
1147
1309
  # The start date of the maximum interval.
1148
1310
  start_date:
1149
- ); end
1311
+ )
1312
+ end
1313
+
1150
1314
  sig do
1151
- override
1152
- .returns(
1153
- {
1154
- applies_to_price_ids: T::Array[String],
1155
- applies_to_price_interval_ids: T::Array[String],
1156
- end_date: T.nilable(Time),
1157
- maximum_amount: String,
1158
- start_date: Time
1159
- }
1160
- )
1315
+ override.returns(
1316
+ {
1317
+ applies_to_price_ids: T::Array[String],
1318
+ applies_to_price_interval_ids: T::Array[String],
1319
+ end_date: T.nilable(Time),
1320
+ maximum_amount: String,
1321
+ start_date: Time
1322
+ }
1323
+ )
1324
+ end
1325
+ def to_hash
1161
1326
  end
1162
- def to_hash; end
1163
1327
  end
1164
1328
 
1165
1329
  class MinimumInterval < Orb::Internal::Type::BaseModel
1330
+ OrHash =
1331
+ T.type_alias do
1332
+ T.any(Orb::Subscription::MinimumInterval, Orb::Internal::AnyHash)
1333
+ end
1334
+
1166
1335
  # The price ids that this minimum interval applies to.
1167
1336
  sig { returns(T::Array[String]) }
1168
1337
  attr_accessor :applies_to_price_ids
@@ -1191,8 +1360,7 @@ module Orb
1191
1360
  end_date: T.nilable(Time),
1192
1361
  minimum_amount: String,
1193
1362
  start_date: Time
1194
- )
1195
- .returns(T.attached_class)
1363
+ ).returns(T.attached_class)
1196
1364
  end
1197
1365
  def self.new(
1198
1366
  # The price ids that this minimum interval applies to.
@@ -1206,35 +1374,52 @@ module Orb
1206
1374
  minimum_amount:,
1207
1375
  # The start date of the minimum interval.
1208
1376
  start_date:
1209
- ); end
1377
+ )
1378
+ end
1379
+
1210
1380
  sig do
1211
- override
1212
- .returns(
1213
- {
1214
- applies_to_price_ids: T::Array[String],
1215
- applies_to_price_interval_ids: T::Array[String],
1216
- end_date: T.nilable(Time),
1217
- minimum_amount: String,
1218
- start_date: Time
1219
- }
1220
- )
1381
+ override.returns(
1382
+ {
1383
+ applies_to_price_ids: T::Array[String],
1384
+ applies_to_price_interval_ids: T::Array[String],
1385
+ end_date: T.nilable(Time),
1386
+ minimum_amount: String,
1387
+ start_date: Time
1388
+ }
1389
+ )
1390
+ end
1391
+ def to_hash
1221
1392
  end
1222
- def to_hash; end
1223
1393
  end
1224
1394
 
1225
1395
  class PendingSubscriptionChange < Orb::Internal::Type::BaseModel
1396
+ OrHash =
1397
+ T.type_alias do
1398
+ T.any(
1399
+ Orb::Subscription::PendingSubscriptionChange,
1400
+ Orb::Internal::AnyHash
1401
+ )
1402
+ end
1403
+
1226
1404
  sig { returns(String) }
1227
1405
  attr_accessor :id
1228
1406
 
1229
1407
  # A pending subscription change if one exists on this subscription.
1230
1408
  sig { params(id: String).returns(T.attached_class) }
1231
- def self.new(id:); end
1409
+ def self.new(id:)
1410
+ end
1232
1411
 
1233
- sig { override.returns({id: String}) }
1234
- def to_hash; end
1412
+ sig { override.returns({ id: String }) }
1413
+ def to_hash
1414
+ end
1235
1415
  end
1236
1416
 
1237
1417
  class PriceInterval < Orb::Internal::Type::BaseModel
1418
+ OrHash =
1419
+ T.type_alias do
1420
+ T.any(Orb::Subscription::PriceInterval, Orb::Internal::AnyHash)
1421
+ end
1422
+
1238
1423
  sig { returns(String) }
1239
1424
  attr_accessor :id
1240
1425
 
@@ -1265,7 +1450,15 @@ module Orb
1265
1450
 
1266
1451
  # The fixed fee quantity transitions for this price interval. This is only
1267
1452
  # relevant for fixed fees.
1268
- sig { returns(T.nilable(T::Array[Orb::Models::Subscription::PriceInterval::FixedFeeQuantityTransition])) }
1453
+ sig do
1454
+ returns(
1455
+ T.nilable(
1456
+ T::Array[
1457
+ Orb::Subscription::PriceInterval::FixedFeeQuantityTransition
1458
+ ]
1459
+ )
1460
+ )
1461
+ end
1269
1462
  attr_accessor :fixed_fee_quantity_transitions
1270
1463
 
1271
1464
  # The Price resource represents a price that can be billed on a subscription,
@@ -1281,34 +1474,34 @@ module Orb
1281
1474
  sig do
1282
1475
  returns(
1283
1476
  T.any(
1284
- Orb::Models::Price::Unit,
1285
- Orb::Models::Price::Package,
1286
- Orb::Models::Price::Matrix,
1287
- Orb::Models::Price::Tiered,
1288
- Orb::Models::Price::TieredBps,
1289
- Orb::Models::Price::Bps,
1290
- Orb::Models::Price::BulkBps,
1291
- Orb::Models::Price::Bulk,
1292
- Orb::Models::Price::ThresholdTotalAmount,
1293
- Orb::Models::Price::TieredPackage,
1294
- Orb::Models::Price::GroupedTiered,
1295
- Orb::Models::Price::TieredWithMinimum,
1296
- Orb::Models::Price::TieredPackageWithMinimum,
1297
- Orb::Models::Price::PackageWithAllocation,
1298
- Orb::Models::Price::UnitWithPercent,
1299
- Orb::Models::Price::MatrixWithAllocation,
1300
- Orb::Models::Price::TieredWithProration,
1301
- Orb::Models::Price::UnitWithProration,
1302
- Orb::Models::Price::GroupedAllocation,
1303
- Orb::Models::Price::GroupedWithProratedMinimum,
1304
- Orb::Models::Price::GroupedWithMeteredMinimum,
1305
- Orb::Models::Price::MatrixWithDisplayName,
1306
- Orb::Models::Price::BulkWithProration,
1307
- Orb::Models::Price::GroupedTieredPackage,
1308
- Orb::Models::Price::MaxGroupTieredPackage,
1309
- Orb::Models::Price::ScalableMatrixWithUnitPricing,
1310
- Orb::Models::Price::ScalableMatrixWithTieredPricing,
1311
- Orb::Models::Price::CumulativeGroupedBulk
1477
+ Orb::Price::Unit,
1478
+ Orb::Price::Package,
1479
+ Orb::Price::Matrix,
1480
+ Orb::Price::Tiered,
1481
+ Orb::Price::TieredBps,
1482
+ Orb::Price::Bps,
1483
+ Orb::Price::BulkBps,
1484
+ Orb::Price::Bulk,
1485
+ Orb::Price::ThresholdTotalAmount,
1486
+ Orb::Price::TieredPackage,
1487
+ Orb::Price::GroupedTiered,
1488
+ Orb::Price::TieredWithMinimum,
1489
+ Orb::Price::TieredPackageWithMinimum,
1490
+ Orb::Price::PackageWithAllocation,
1491
+ Orb::Price::UnitWithPercent,
1492
+ Orb::Price::MatrixWithAllocation,
1493
+ Orb::Price::TieredWithProration,
1494
+ Orb::Price::UnitWithProration,
1495
+ Orb::Price::GroupedAllocation,
1496
+ Orb::Price::GroupedWithProratedMinimum,
1497
+ Orb::Price::GroupedWithMeteredMinimum,
1498
+ Orb::Price::MatrixWithDisplayName,
1499
+ Orb::Price::BulkWithProration,
1500
+ Orb::Price::GroupedTieredPackage,
1501
+ Orb::Price::MaxGroupTieredPackage,
1502
+ Orb::Price::ScalableMatrixWithUnitPricing,
1503
+ Orb::Price::ScalableMatrixWithTieredPricing,
1504
+ Orb::Price::CumulativeGroupedBulk
1312
1505
  )
1313
1506
  )
1314
1507
  end
@@ -1335,44 +1528,46 @@ module Orb
1335
1528
  current_billing_period_start_date: T.nilable(Time),
1336
1529
  end_date: T.nilable(Time),
1337
1530
  filter: T.nilable(String),
1338
- fixed_fee_quantity_transitions: T.nilable(
1339
- T::Array[T.any(Orb::Models::Subscription::PriceInterval::FixedFeeQuantityTransition, Orb::Internal::AnyHash)]
1340
- ),
1341
- price: T.any(
1342
- Orb::Models::Price::Unit,
1343
- Orb::Internal::AnyHash,
1344
- Orb::Models::Price::Package,
1345
- Orb::Models::Price::Matrix,
1346
- Orb::Models::Price::Tiered,
1347
- Orb::Models::Price::TieredBps,
1348
- Orb::Models::Price::Bps,
1349
- Orb::Models::Price::BulkBps,
1350
- Orb::Models::Price::Bulk,
1351
- Orb::Models::Price::ThresholdTotalAmount,
1352
- Orb::Models::Price::TieredPackage,
1353
- Orb::Models::Price::GroupedTiered,
1354
- Orb::Models::Price::TieredWithMinimum,
1355
- Orb::Models::Price::TieredPackageWithMinimum,
1356
- Orb::Models::Price::PackageWithAllocation,
1357
- Orb::Models::Price::UnitWithPercent,
1358
- Orb::Models::Price::MatrixWithAllocation,
1359
- Orb::Models::Price::TieredWithProration,
1360
- Orb::Models::Price::UnitWithProration,
1361
- Orb::Models::Price::GroupedAllocation,
1362
- Orb::Models::Price::GroupedWithProratedMinimum,
1363
- Orb::Models::Price::GroupedWithMeteredMinimum,
1364
- Orb::Models::Price::MatrixWithDisplayName,
1365
- Orb::Models::Price::BulkWithProration,
1366
- Orb::Models::Price::GroupedTieredPackage,
1367
- Orb::Models::Price::MaxGroupTieredPackage,
1368
- Orb::Models::Price::ScalableMatrixWithUnitPricing,
1369
- Orb::Models::Price::ScalableMatrixWithTieredPricing,
1370
- Orb::Models::Price::CumulativeGroupedBulk
1371
- ),
1531
+ fixed_fee_quantity_transitions:
1532
+ T.nilable(
1533
+ T::Array[
1534
+ Orb::Subscription::PriceInterval::FixedFeeQuantityTransition::OrHash
1535
+ ]
1536
+ ),
1537
+ price:
1538
+ T.any(
1539
+ Orb::Price::Unit::OrHash,
1540
+ Orb::Price::Package::OrHash,
1541
+ Orb::Price::Matrix::OrHash,
1542
+ Orb::Price::Tiered::OrHash,
1543
+ Orb::Price::TieredBps::OrHash,
1544
+ Orb::Price::Bps::OrHash,
1545
+ Orb::Price::BulkBps::OrHash,
1546
+ Orb::Price::Bulk::OrHash,
1547
+ Orb::Price::ThresholdTotalAmount::OrHash,
1548
+ Orb::Price::TieredPackage::OrHash,
1549
+ Orb::Price::GroupedTiered::OrHash,
1550
+ Orb::Price::TieredWithMinimum::OrHash,
1551
+ Orb::Price::TieredPackageWithMinimum::OrHash,
1552
+ Orb::Price::PackageWithAllocation::OrHash,
1553
+ Orb::Price::UnitWithPercent::OrHash,
1554
+ Orb::Price::MatrixWithAllocation::OrHash,
1555
+ Orb::Price::TieredWithProration::OrHash,
1556
+ Orb::Price::UnitWithProration::OrHash,
1557
+ Orb::Price::GroupedAllocation::OrHash,
1558
+ Orb::Price::GroupedWithProratedMinimum::OrHash,
1559
+ Orb::Price::GroupedWithMeteredMinimum::OrHash,
1560
+ Orb::Price::MatrixWithDisplayName::OrHash,
1561
+ Orb::Price::BulkWithProration::OrHash,
1562
+ Orb::Price::GroupedTieredPackage::OrHash,
1563
+ Orb::Price::MaxGroupTieredPackage::OrHash,
1564
+ Orb::Price::ScalableMatrixWithUnitPricing::OrHash,
1565
+ Orb::Price::ScalableMatrixWithTieredPricing::OrHash,
1566
+ Orb::Price::CumulativeGroupedBulk::OrHash
1567
+ ),
1372
1568
  start_date: Time,
1373
1569
  usage_customer_ids: T.nilable(T::Array[String])
1374
- )
1375
- .returns(T.attached_class)
1570
+ ).returns(T.attached_class)
1376
1571
  end
1377
1572
  def self.new(
1378
1573
  id:,
@@ -1411,56 +1606,72 @@ module Orb
1411
1606
  # A list of customer IDs whose usage events will be aggregated and billed under
1412
1607
  # this price interval.
1413
1608
  usage_customer_ids:
1414
- ); end
1609
+ )
1610
+ end
1611
+
1415
1612
  sig do
1416
- override
1417
- .returns(
1418
- {
1419
- id: String,
1420
- billing_cycle_day: Integer,
1421
- current_billing_period_end_date: T.nilable(Time),
1422
- current_billing_period_start_date: T.nilable(Time),
1423
- end_date: T.nilable(Time),
1424
- filter: T.nilable(String),
1425
- fixed_fee_quantity_transitions: T.nilable(T::Array[Orb::Models::Subscription::PriceInterval::FixedFeeQuantityTransition]),
1426
- price: T.any(
1427
- Orb::Models::Price::Unit,
1428
- Orb::Models::Price::Package,
1429
- Orb::Models::Price::Matrix,
1430
- Orb::Models::Price::Tiered,
1431
- Orb::Models::Price::TieredBps,
1432
- Orb::Models::Price::Bps,
1433
- Orb::Models::Price::BulkBps,
1434
- Orb::Models::Price::Bulk,
1435
- Orb::Models::Price::ThresholdTotalAmount,
1436
- Orb::Models::Price::TieredPackage,
1437
- Orb::Models::Price::GroupedTiered,
1438
- Orb::Models::Price::TieredWithMinimum,
1439
- Orb::Models::Price::TieredPackageWithMinimum,
1440
- Orb::Models::Price::PackageWithAllocation,
1441
- Orb::Models::Price::UnitWithPercent,
1442
- Orb::Models::Price::MatrixWithAllocation,
1443
- Orb::Models::Price::TieredWithProration,
1444
- Orb::Models::Price::UnitWithProration,
1445
- Orb::Models::Price::GroupedAllocation,
1446
- Orb::Models::Price::GroupedWithProratedMinimum,
1447
- Orb::Models::Price::GroupedWithMeteredMinimum,
1448
- Orb::Models::Price::MatrixWithDisplayName,
1449
- Orb::Models::Price::BulkWithProration,
1450
- Orb::Models::Price::GroupedTieredPackage,
1451
- Orb::Models::Price::MaxGroupTieredPackage,
1452
- Orb::Models::Price::ScalableMatrixWithUnitPricing,
1453
- Orb::Models::Price::ScalableMatrixWithTieredPricing,
1454
- Orb::Models::Price::CumulativeGroupedBulk
1613
+ override.returns(
1614
+ {
1615
+ id: String,
1616
+ billing_cycle_day: Integer,
1617
+ current_billing_period_end_date: T.nilable(Time),
1618
+ current_billing_period_start_date: T.nilable(Time),
1619
+ end_date: T.nilable(Time),
1620
+ filter: T.nilable(String),
1621
+ fixed_fee_quantity_transitions:
1622
+ T.nilable(
1623
+ T::Array[
1624
+ Orb::Subscription::PriceInterval::FixedFeeQuantityTransition
1625
+ ]
1455
1626
  ),
1456
- start_date: Time,
1457
- usage_customer_ids: T.nilable(T::Array[String])
1458
- }
1459
- )
1627
+ price:
1628
+ T.any(
1629
+ Orb::Price::Unit,
1630
+ Orb::Price::Package,
1631
+ Orb::Price::Matrix,
1632
+ Orb::Price::Tiered,
1633
+ Orb::Price::TieredBps,
1634
+ Orb::Price::Bps,
1635
+ Orb::Price::BulkBps,
1636
+ Orb::Price::Bulk,
1637
+ Orb::Price::ThresholdTotalAmount,
1638
+ Orb::Price::TieredPackage,
1639
+ Orb::Price::GroupedTiered,
1640
+ Orb::Price::TieredWithMinimum,
1641
+ Orb::Price::TieredPackageWithMinimum,
1642
+ Orb::Price::PackageWithAllocation,
1643
+ Orb::Price::UnitWithPercent,
1644
+ Orb::Price::MatrixWithAllocation,
1645
+ Orb::Price::TieredWithProration,
1646
+ Orb::Price::UnitWithProration,
1647
+ Orb::Price::GroupedAllocation,
1648
+ Orb::Price::GroupedWithProratedMinimum,
1649
+ Orb::Price::GroupedWithMeteredMinimum,
1650
+ Orb::Price::MatrixWithDisplayName,
1651
+ Orb::Price::BulkWithProration,
1652
+ Orb::Price::GroupedTieredPackage,
1653
+ Orb::Price::MaxGroupTieredPackage,
1654
+ Orb::Price::ScalableMatrixWithUnitPricing,
1655
+ Orb::Price::ScalableMatrixWithTieredPricing,
1656
+ Orb::Price::CumulativeGroupedBulk
1657
+ ),
1658
+ start_date: Time,
1659
+ usage_customer_ids: T.nilable(T::Array[String])
1660
+ }
1661
+ )
1662
+ end
1663
+ def to_hash
1460
1664
  end
1461
- def to_hash; end
1462
1665
 
1463
1666
  class FixedFeeQuantityTransition < Orb::Internal::Type::BaseModel
1667
+ OrHash =
1668
+ T.type_alias do
1669
+ T.any(
1670
+ Orb::Subscription::PriceInterval::FixedFeeQuantityTransition,
1671
+ Orb::Internal::AnyHash
1672
+ )
1673
+ end
1674
+
1464
1675
  sig { returns(Time) }
1465
1676
  attr_accessor :effective_date
1466
1677
 
@@ -1470,15 +1681,32 @@ module Orb
1470
1681
  sig { returns(Integer) }
1471
1682
  attr_accessor :quantity
1472
1683
 
1473
- sig { params(effective_date: Time, price_id: String, quantity: Integer).returns(T.attached_class) }
1474
- def self.new(effective_date:, price_id:, quantity:); end
1684
+ sig do
1685
+ params(
1686
+ effective_date: Time,
1687
+ price_id: String,
1688
+ quantity: Integer
1689
+ ).returns(T.attached_class)
1690
+ end
1691
+ def self.new(effective_date:, price_id:, quantity:)
1692
+ end
1475
1693
 
1476
- sig { override.returns({effective_date: Time, price_id: String, quantity: Integer}) }
1477
- def to_hash; end
1694
+ sig do
1695
+ override.returns(
1696
+ { effective_date: Time, price_id: String, quantity: Integer }
1697
+ )
1698
+ end
1699
+ def to_hash
1700
+ end
1478
1701
  end
1479
1702
  end
1480
1703
 
1481
1704
  class RedeemedCoupon < Orb::Internal::Type::BaseModel
1705
+ OrHash =
1706
+ T.type_alias do
1707
+ T.any(Orb::Subscription::RedeemedCoupon, Orb::Internal::AnyHash)
1708
+ end
1709
+
1482
1710
  sig { returns(String) }
1483
1711
  attr_accessor :coupon_id
1484
1712
 
@@ -1489,37 +1717,57 @@ module Orb
1489
1717
  attr_accessor :start_date
1490
1718
 
1491
1719
  sig do
1492
- params(coupon_id: String, end_date: T.nilable(Time), start_date: Time).returns(T.attached_class)
1720
+ params(
1721
+ coupon_id: String,
1722
+ end_date: T.nilable(Time),
1723
+ start_date: Time
1724
+ ).returns(T.attached_class)
1725
+ end
1726
+ def self.new(coupon_id:, end_date:, start_date:)
1493
1727
  end
1494
- def self.new(coupon_id:, end_date:, start_date:); end
1495
1728
 
1496
- sig { override.returns({coupon_id: String, end_date: T.nilable(Time), start_date: Time}) }
1497
- def to_hash; end
1729
+ sig do
1730
+ override.returns(
1731
+ { coupon_id: String, end_date: T.nilable(Time), start_date: Time }
1732
+ )
1733
+ end
1734
+ def to_hash
1735
+ end
1498
1736
  end
1499
1737
 
1500
1738
  module Status
1501
1739
  extend Orb::Internal::Type::Enum
1502
1740
 
1503
- TaggedSymbol = T.type_alias { T.all(Symbol, Orb::Models::Subscription::Status) }
1741
+ TaggedSymbol = T.type_alias { T.all(Symbol, Orb::Subscription::Status) }
1504
1742
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1505
1743
 
1506
- ACTIVE = T.let(:active, Orb::Models::Subscription::Status::TaggedSymbol)
1507
- ENDED = T.let(:ended, Orb::Models::Subscription::Status::TaggedSymbol)
1508
- UPCOMING = T.let(:upcoming, Orb::Models::Subscription::Status::TaggedSymbol)
1744
+ ACTIVE = T.let(:active, Orb::Subscription::Status::TaggedSymbol)
1745
+ ENDED = T.let(:ended, Orb::Subscription::Status::TaggedSymbol)
1746
+ UPCOMING = T.let(:upcoming, Orb::Subscription::Status::TaggedSymbol)
1509
1747
 
1510
- sig { override.returns(T::Array[Orb::Models::Subscription::Status::TaggedSymbol]) }
1511
- def self.values; end
1748
+ sig do
1749
+ override.returns(T::Array[Orb::Subscription::Status::TaggedSymbol])
1750
+ end
1751
+ def self.values
1752
+ end
1512
1753
  end
1513
1754
 
1514
1755
  class TrialInfo < Orb::Internal::Type::BaseModel
1756
+ OrHash =
1757
+ T.type_alias do
1758
+ T.any(Orb::Subscription::TrialInfo, Orb::Internal::AnyHash)
1759
+ end
1760
+
1515
1761
  sig { returns(T.nilable(Time)) }
1516
1762
  attr_accessor :end_date
1517
1763
 
1518
1764
  sig { params(end_date: T.nilable(Time)).returns(T.attached_class) }
1519
- def self.new(end_date:); end
1765
+ def self.new(end_date:)
1766
+ end
1520
1767
 
1521
- sig { override.returns({end_date: T.nilable(Time)}) }
1522
- def to_hash; end
1768
+ sig { override.returns({ end_date: T.nilable(Time) }) }
1769
+ def to_hash
1770
+ end
1523
1771
  end
1524
1772
  end
1525
1773
  end