orb-billing 1.14.0 → 1.15.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 (347) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/lib/orb/client.rb +14 -0
  4. data/lib/orb/internal/transport/base_client.rb +5 -0
  5. data/lib/orb/internal/type/union.rb +13 -27
  6. data/lib/orb/models/accounting_provider_config.rb +14 -3
  7. data/lib/orb/models/adjustment_interval.rb +185 -3
  8. data/lib/orb/models/alert.rb +105 -1
  9. data/lib/orb/models/alert_create_for_subscription_params.rb +120 -7
  10. data/lib/orb/models/alert_update_params.rb +113 -1
  11. data/lib/orb/models/beta/external_plan_id_create_plan_version_params.rb +2419 -17109
  12. data/lib/orb/models/beta_create_plan_version_params.rb +2361 -16947
  13. data/lib/orb/models/changed_subscription_resources.rb +200 -10
  14. data/lib/orb/models/conversion_rate_config.rb +18 -0
  15. data/lib/orb/models/credit_block_list_invoices_response.rb +155 -1
  16. data/lib/orb/models/credit_block_retrieve_response.rb +150 -1
  17. data/lib/orb/models/customer.rb +111 -4
  18. data/lib/orb/models/customer_create_params.rb +6 -1
  19. data/lib/orb/models/customer_tax_id.rb +15 -1
  20. data/lib/orb/models/customer_update_by_external_id_params.rb +16 -2
  21. data/lib/orb/models/customer_update_params.rb +16 -2
  22. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +155 -1
  23. data/lib/orb/models/customers/credit_list_response.rb +152 -1
  24. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +4 -4
  25. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +4 -4
  26. data/lib/orb/models/dimensional_price_group.rb +1 -1
  27. data/lib/orb/models/discount.rb +145 -1
  28. data/lib/orb/models/event_ingest_params.rb +5 -2
  29. data/lib/orb/models/invoice.rb +198 -10
  30. data/lib/orb/models/invoice_create_params.rb +6 -5
  31. data/lib/orb/models/invoice_fetch_upcoming_response.rb +200 -10
  32. data/lib/orb/models/invoice_issue_summary_response.rb +9 -3
  33. data/lib/orb/models/invoice_level_discount.rb +145 -1
  34. data/lib/orb/models/invoice_line_item_create_response.rb +189 -5
  35. data/lib/orb/models/invoice_list_summary_response.rb +9 -3
  36. data/lib/orb/models/licenses/external_license_get_usage_params.rb +3 -3
  37. data/lib/orb/models/licenses/usage_get_all_usage_params.rb +3 -3
  38. data/lib/orb/models/licenses/usage_get_usage_params.rb +3 -3
  39. data/lib/orb/models/mutated_subscription.rb +169 -4
  40. data/lib/orb/models/new_allocation_price.rb +11 -1
  41. data/lib/orb/models/new_floating_bulk_price.rb +1 -3
  42. data/lib/orb/models/new_floating_bulk_with_proration_price.rb +1 -3
  43. data/lib/orb/models/new_floating_cumulative_grouped_bulk_price.rb +1 -3
  44. data/lib/orb/models/new_floating_grouped_allocation_price.rb +1 -3
  45. data/lib/orb/models/new_floating_grouped_tiered_package_price.rb +1 -3
  46. data/lib/orb/models/new_floating_grouped_tiered_price.rb +1 -3
  47. data/lib/orb/models/new_floating_grouped_with_metered_minimum_price.rb +1 -3
  48. data/lib/orb/models/new_floating_grouped_with_prorated_minimum_price.rb +1 -3
  49. data/lib/orb/models/new_floating_matrix_price.rb +1 -3
  50. data/lib/orb/models/new_floating_matrix_with_allocation_price.rb +1 -3
  51. data/lib/orb/models/new_floating_matrix_with_display_name_price.rb +1 -3
  52. data/lib/orb/models/new_floating_max_group_tiered_package_price.rb +1 -3
  53. data/lib/orb/models/new_floating_minimum_composite_price.rb +1 -3
  54. data/lib/orb/models/new_floating_package_price.rb +1 -3
  55. data/lib/orb/models/new_floating_package_with_allocation_price.rb +1 -3
  56. data/lib/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  57. data/lib/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rb +1 -3
  58. data/lib/orb/models/new_floating_threshold_total_amount_price.rb +1 -3
  59. data/lib/orb/models/new_floating_tiered_package_price.rb +1 -3
  60. data/lib/orb/models/new_floating_tiered_package_with_minimum_price.rb +1 -3
  61. data/lib/orb/models/new_floating_tiered_price.rb +1 -3
  62. data/lib/orb/models/new_floating_tiered_with_minimum_price.rb +1 -3
  63. data/lib/orb/models/new_floating_tiered_with_proration_price.rb +1 -3
  64. data/lib/orb/models/new_floating_unit_price.rb +1 -3
  65. data/lib/orb/models/new_floating_unit_with_percent_price.rb +1 -3
  66. data/lib/orb/models/new_floating_unit_with_proration_price.rb +1 -3
  67. data/lib/orb/models/new_plan_bulk_price.rb +1 -1
  68. data/lib/orb/models/new_plan_bulk_with_proration_price.rb +1 -3
  69. data/lib/orb/models/new_plan_cumulative_grouped_bulk_price.rb +1 -3
  70. data/lib/orb/models/new_plan_grouped_allocation_price.rb +1 -3
  71. data/lib/orb/models/new_plan_grouped_tiered_package_price.rb +1 -3
  72. data/lib/orb/models/new_plan_grouped_tiered_price.rb +1 -3
  73. data/lib/orb/models/new_plan_grouped_with_metered_minimum_price.rb +1 -3
  74. data/lib/orb/models/new_plan_grouped_with_prorated_minimum_price.rb +1 -3
  75. data/lib/orb/models/new_plan_matrix_price.rb +1 -5
  76. data/lib/orb/models/new_plan_matrix_with_allocation_price.rb +1 -3
  77. data/lib/orb/models/new_plan_matrix_with_display_name_price.rb +1 -3
  78. data/lib/orb/models/new_plan_max_group_tiered_package_price.rb +1 -3
  79. data/lib/orb/models/new_plan_minimum_composite_price.rb +1 -3
  80. data/lib/orb/models/new_plan_package_price.rb +1 -5
  81. data/lib/orb/models/new_plan_package_with_allocation_price.rb +1 -3
  82. data/lib/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  83. data/lib/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rb +1 -3
  84. data/lib/orb/models/new_plan_threshold_total_amount_price.rb +1 -3
  85. data/lib/orb/models/new_plan_tiered_package_price.rb +1 -3
  86. data/lib/orb/models/new_plan_tiered_package_with_minimum_price.rb +1 -3
  87. data/lib/orb/models/new_plan_tiered_price.rb +1 -5
  88. data/lib/orb/models/new_plan_tiered_with_minimum_price.rb +1 -3
  89. data/lib/orb/models/new_plan_unit_price.rb +1 -1
  90. data/lib/orb/models/new_plan_unit_with_percent_price.rb +1 -3
  91. data/lib/orb/models/new_plan_unit_with_proration_price.rb +1 -3
  92. data/lib/orb/models/new_subscription_bulk_price.rb +1 -3
  93. data/lib/orb/models/new_subscription_bulk_with_proration_price.rb +1 -3
  94. data/lib/orb/models/new_subscription_cumulative_grouped_bulk_price.rb +1 -3
  95. data/lib/orb/models/new_subscription_grouped_allocation_price.rb +1 -3
  96. data/lib/orb/models/new_subscription_grouped_tiered_package_price.rb +1 -3
  97. data/lib/orb/models/new_subscription_grouped_tiered_price.rb +1 -3
  98. data/lib/orb/models/new_subscription_grouped_with_metered_minimum_price.rb +1 -3
  99. data/lib/orb/models/new_subscription_grouped_with_prorated_minimum_price.rb +1 -3
  100. data/lib/orb/models/new_subscription_matrix_price.rb +1 -3
  101. data/lib/orb/models/new_subscription_matrix_with_allocation_price.rb +1 -3
  102. data/lib/orb/models/new_subscription_matrix_with_display_name_price.rb +1 -3
  103. data/lib/orb/models/new_subscription_max_group_tiered_package_price.rb +1 -3
  104. data/lib/orb/models/new_subscription_minimum_composite_price.rb +1 -3
  105. data/lib/orb/models/new_subscription_package_price.rb +1 -3
  106. data/lib/orb/models/new_subscription_package_with_allocation_price.rb +1 -3
  107. data/lib/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  108. data/lib/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rb +1 -3
  109. data/lib/orb/models/new_subscription_threshold_total_amount_price.rb +1 -3
  110. data/lib/orb/models/new_subscription_tiered_package_price.rb +1 -3
  111. data/lib/orb/models/new_subscription_tiered_package_with_minimum_price.rb +1 -3
  112. data/lib/orb/models/new_subscription_tiered_price.rb +1 -3
  113. data/lib/orb/models/new_subscription_tiered_with_minimum_price.rb +1 -3
  114. data/lib/orb/models/new_subscription_unit_price.rb +1 -3
  115. data/lib/orb/models/new_subscription_unit_with_percent_price.rb +1 -3
  116. data/lib/orb/models/new_subscription_unit_with_proration_price.rb +1 -3
  117. data/lib/orb/models/per_price_cost.rb +2 -2
  118. data/lib/orb/models/plan.rb +189 -9
  119. data/lib/orb/models/plan_create_params.rb +1047 -8228
  120. data/lib/orb/models/plan_update_params.rb +9 -1
  121. data/lib/orb/models/plan_version.rb +186 -5
  122. data/lib/orb/models/plans/external_plan_id_update_params.rb +9 -1
  123. data/lib/orb/models/plans/migration_cancel_response.rb +22 -4
  124. data/lib/orb/models/plans/migration_list_response.rb +22 -4
  125. data/lib/orb/models/plans/migration_retrieve_response.rb +22 -4
  126. data/lib/orb/models/price.rb +2614 -1268
  127. data/lib/orb/models/price_create_params.rb +866 -49
  128. data/lib/orb/models/price_evaluate_multiple_params.rb +889 -54
  129. data/lib/orb/models/price_evaluate_preview_events_params.rb +881 -46
  130. data/lib/orb/models/price_interval.rb +2 -2
  131. data/lib/orb/models/subscription.rb +168 -4
  132. data/lib/orb/models/subscription_create_params.rb +2818 -674
  133. data/lib/orb/models/subscription_price_intervals_params.rb +1098 -57
  134. data/lib/orb/models/subscription_schedule_plan_change_params.rb +2834 -687
  135. data/lib/orb/models/subscription_update_params.rb +12 -1
  136. data/lib/orb/models.rb +2 -0
  137. data/lib/orb/resources/alerts.rb +14 -3
  138. data/lib/orb/resources/customers/credits/ledger.rb +28 -14
  139. data/lib/orb/resources/customers.rb +6 -2
  140. data/lib/orb/resources/events.rb +7 -34
  141. data/lib/orb/resources/invoices.rb +6 -2
  142. data/lib/orb/resources/licenses/external_licenses.rb +1 -1
  143. data/lib/orb/resources/licenses/usage.rb +2 -2
  144. data/lib/orb/resources/metrics.rb +5 -5
  145. data/lib/orb/resources/plans/external_plan_id.rb +5 -3
  146. data/lib/orb/resources/plans.rb +9 -5
  147. data/lib/orb/resources/prices/external_price_id.rb +2 -2
  148. data/lib/orb/resources/prices.rb +5 -5
  149. data/lib/orb/resources/subscriptions.rb +20 -3
  150. data/lib/orb/version.rb +1 -1
  151. data/lib/orb.rb +1 -0
  152. data/rbi/orb/models/accounting_provider_config.rbi +38 -5
  153. data/rbi/orb/models/adjustment_interval.rbi +336 -0
  154. data/rbi/orb/models/alert.rbi +172 -3
  155. data/rbi/orb/models/alert_create_for_subscription_params.rbi +268 -9
  156. data/rbi/orb/models/alert_update_params.rbi +208 -0
  157. data/rbi/orb/models/beta/external_plan_id_create_plan_version_params.rbi +3833 -28395
  158. data/rbi/orb/models/beta_create_plan_version_params.rbi +3833 -28363
  159. data/rbi/orb/models/changed_subscription_resources.rbi +360 -5
  160. data/rbi/orb/models/conversion_rate_config.rbi +18 -0
  161. data/rbi/orb/models/credit_block_list_invoices_response.rbi +346 -3
  162. data/rbi/orb/models/credit_block_retrieve_response.rbi +344 -3
  163. data/rbi/orb/models/customer.rbi +190 -10
  164. data/rbi/orb/models/customer_create_params.rbi +12 -2
  165. data/rbi/orb/models/customer_tax_id.rbi +15 -1
  166. data/rbi/orb/models/customer_update_by_external_id_params.rbi +22 -2
  167. data/rbi/orb/models/customer_update_params.rbi +22 -2
  168. data/rbi/orb/models/customers/credit_list_by_external_id_response.rbi +346 -3
  169. data/rbi/orb/models/customers/credit_list_response.rbi +347 -3
  170. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +6 -6
  171. data/rbi/orb/models/customers/credits/ledger_create_entry_params.rbi +6 -6
  172. data/rbi/orb/models/dimensional_price_group.rbi +1 -1
  173. data/rbi/orb/models/discount.rbi +269 -1
  174. data/rbi/orb/models/event_ingest_params.rbi +4 -2
  175. data/rbi/orb/models/invoice.rbi +360 -5
  176. data/rbi/orb/models/invoice_create_params.rbi +12 -7
  177. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +360 -5
  178. data/rbi/orb/models/invoice_issue_summary_response.rbi +19 -4
  179. data/rbi/orb/models/invoice_level_discount.rbi +298 -1
  180. data/rbi/orb/models/invoice_line_item_create_response.rbi +339 -0
  181. data/rbi/orb/models/invoice_list_summary_response.rbi +19 -4
  182. data/rbi/orb/models/licenses/external_license_get_usage_params.rbi +3 -3
  183. data/rbi/orb/models/licenses/usage_get_all_usage_params.rbi +3 -3
  184. data/rbi/orb/models/licenses/usage_get_usage_params.rbi +3 -3
  185. data/rbi/orb/models/mutated_subscription.rbi +324 -2
  186. data/rbi/orb/models/new_allocation_price.rbi +12 -0
  187. data/rbi/orb/models/per_price_cost.rbi +3 -0
  188. data/rbi/orb/models/plan.rbi +339 -2
  189. data/rbi/orb/models/plan_create_params.rbi +1877 -14138
  190. data/rbi/orb/models/plan_update_params.rbi +8 -0
  191. data/rbi/orb/models/plan_version.rbi +339 -0
  192. data/rbi/orb/models/plans/external_plan_id_update_params.rbi +8 -0
  193. data/rbi/orb/models/plans/migration_cancel_response.rbi +22 -1
  194. data/rbi/orb/models/plans/migration_list_response.rbi +22 -1
  195. data/rbi/orb/models/plans/migration_retrieve_response.rbi +22 -1
  196. data/rbi/orb/models/price.rbi +4552 -2285
  197. data/rbi/orb/models/price_create_params.rbi +1540 -114
  198. data/rbi/orb/models/price_evaluate_multiple_params.rbi +1540 -114
  199. data/rbi/orb/models/price_evaluate_preview_events_params.rbi +1540 -114
  200. data/rbi/orb/models/price_interval.rbi +3 -0
  201. data/rbi/orb/models/subscription.rbi +324 -2
  202. data/rbi/orb/models/subscription_create_params.rbi +4998 -1186
  203. data/rbi/orb/models/subscription_price_intervals_params.rbi +2127 -264
  204. data/rbi/orb/models/subscription_schedule_plan_change_params.rbi +4997 -1185
  205. data/rbi/orb/models/subscription_update_params.rbi +14 -0
  206. data/rbi/orb/models.rbi +2 -0
  207. data/rbi/orb/resources/alerts.rbi +39 -4
  208. data/rbi/orb/resources/customers/credits/ledger.rbi +28 -14
  209. data/rbi/orb/resources/customers.rbi +23 -0
  210. data/rbi/orb/resources/events.rbi +8 -35
  211. data/rbi/orb/resources/invoices.rbi +9 -3
  212. data/rbi/orb/resources/licenses/external_licenses.rbi +1 -1
  213. data/rbi/orb/resources/licenses/usage.rbi +2 -2
  214. data/rbi/orb/resources/metrics.rbi +5 -5
  215. data/rbi/orb/resources/plans/external_plan_id.rbi +5 -2
  216. data/rbi/orb/resources/plans.rbi +9 -3
  217. data/rbi/orb/resources/prices.rbi +3 -0
  218. data/rbi/orb/resources/subscriptions.rbi +29 -0
  219. data/sig/orb/models/accounting_provider_config.rbs +21 -4
  220. data/sig/orb/models/adjustment_interval.rbs +134 -0
  221. data/sig/orb/models/alert.rbs +85 -3
  222. data/sig/orb/models/alert_create_for_subscription_params.rbs +86 -4
  223. data/sig/orb/models/alert_update_params.rbs +86 -1
  224. data/sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs +1803 -11601
  225. data/sig/orb/models/beta_create_plan_version_params.rbs +1747 -11541
  226. data/sig/orb/models/changed_subscription_resources.rbs +140 -1
  227. data/sig/orb/models/conversion_rate_config.rbs +12 -0
  228. data/sig/orb/models/credit_block_list_invoices_response.rbs +124 -3
  229. data/sig/orb/models/credit_block_retrieve_response.rbs +124 -3
  230. data/sig/orb/models/customer.rbs +70 -4
  231. data/sig/orb/models/customer_create_params.rbs +2 -2
  232. data/sig/orb/models/customer_tax_id.rbs +20 -2
  233. data/sig/orb/models/customer_update_by_external_id_params.rbs +7 -2
  234. data/sig/orb/models/customer_update_params.rbs +7 -2
  235. data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +124 -3
  236. data/sig/orb/models/customers/credit_list_response.rbs +124 -3
  237. data/sig/orb/models/discount.rbs +114 -0
  238. data/sig/orb/models/invoice.rbs +140 -1
  239. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +140 -1
  240. data/sig/orb/models/invoice_issue_summary_response.rbs +2 -1
  241. data/sig/orb/models/invoice_level_discount.rbs +117 -1
  242. data/sig/orb/models/invoice_line_item_create_response.rbs +134 -0
  243. data/sig/orb/models/invoice_list_summary_response.rbs +2 -1
  244. data/sig/orb/models/licenses/external_license_get_usage_params.rbs +4 -4
  245. data/sig/orb/models/licenses/usage_get_all_usage_params.rbs +4 -4
  246. data/sig/orb/models/licenses/usage_get_usage_params.rbs +4 -4
  247. data/sig/orb/models/mutated_subscription.rbs +124 -0
  248. data/sig/orb/models/new_allocation_price.rbs +5 -0
  249. data/sig/orb/models/new_floating_bulk_price.rbs +4 -4
  250. data/sig/orb/models/new_floating_bulk_with_proration_price.rbs +4 -4
  251. data/sig/orb/models/new_floating_cumulative_grouped_bulk_price.rbs +4 -4
  252. data/sig/orb/models/new_floating_grouped_allocation_price.rbs +4 -4
  253. data/sig/orb/models/new_floating_grouped_tiered_package_price.rbs +4 -4
  254. data/sig/orb/models/new_floating_grouped_tiered_price.rbs +4 -4
  255. data/sig/orb/models/new_floating_grouped_with_metered_minimum_price.rbs +4 -4
  256. data/sig/orb/models/new_floating_grouped_with_prorated_minimum_price.rbs +4 -4
  257. data/sig/orb/models/new_floating_matrix_price.rbs +4 -4
  258. data/sig/orb/models/new_floating_matrix_with_allocation_price.rbs +4 -4
  259. data/sig/orb/models/new_floating_matrix_with_display_name_price.rbs +4 -4
  260. data/sig/orb/models/new_floating_max_group_tiered_package_price.rbs +4 -4
  261. data/sig/orb/models/new_floating_minimum_composite_price.rbs +4 -4
  262. data/sig/orb/models/new_floating_package_price.rbs +4 -4
  263. data/sig/orb/models/new_floating_package_with_allocation_price.rbs +4 -4
  264. data/sig/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  265. data/sig/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  266. data/sig/orb/models/new_floating_threshold_total_amount_price.rbs +4 -4
  267. data/sig/orb/models/new_floating_tiered_package_price.rbs +4 -4
  268. data/sig/orb/models/new_floating_tiered_package_with_minimum_price.rbs +4 -4
  269. data/sig/orb/models/new_floating_tiered_price.rbs +4 -4
  270. data/sig/orb/models/new_floating_tiered_with_minimum_price.rbs +4 -4
  271. data/sig/orb/models/new_floating_tiered_with_proration_price.rbs +4 -4
  272. data/sig/orb/models/new_floating_unit_price.rbs +4 -4
  273. data/sig/orb/models/new_floating_unit_with_percent_price.rbs +4 -4
  274. data/sig/orb/models/new_floating_unit_with_proration_price.rbs +4 -4
  275. data/sig/orb/models/new_plan_bulk_price.rbs +4 -4
  276. data/sig/orb/models/new_plan_bulk_with_proration_price.rbs +4 -4
  277. data/sig/orb/models/new_plan_cumulative_grouped_bulk_price.rbs +4 -4
  278. data/sig/orb/models/new_plan_grouped_allocation_price.rbs +4 -4
  279. data/sig/orb/models/new_plan_grouped_tiered_package_price.rbs +4 -4
  280. data/sig/orb/models/new_plan_grouped_tiered_price.rbs +4 -4
  281. data/sig/orb/models/new_plan_grouped_with_metered_minimum_price.rbs +4 -4
  282. data/sig/orb/models/new_plan_grouped_with_prorated_minimum_price.rbs +4 -4
  283. data/sig/orb/models/new_plan_matrix_price.rbs +4 -4
  284. data/sig/orb/models/new_plan_matrix_with_allocation_price.rbs +4 -4
  285. data/sig/orb/models/new_plan_matrix_with_display_name_price.rbs +4 -4
  286. data/sig/orb/models/new_plan_max_group_tiered_package_price.rbs +4 -4
  287. data/sig/orb/models/new_plan_minimum_composite_price.rbs +4 -4
  288. data/sig/orb/models/new_plan_package_price.rbs +4 -4
  289. data/sig/orb/models/new_plan_package_with_allocation_price.rbs +4 -4
  290. data/sig/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  291. data/sig/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  292. data/sig/orb/models/new_plan_threshold_total_amount_price.rbs +4 -4
  293. data/sig/orb/models/new_plan_tiered_package_price.rbs +4 -4
  294. data/sig/orb/models/new_plan_tiered_package_with_minimum_price.rbs +4 -4
  295. data/sig/orb/models/new_plan_tiered_price.rbs +4 -4
  296. data/sig/orb/models/new_plan_tiered_with_minimum_price.rbs +4 -4
  297. data/sig/orb/models/new_plan_unit_price.rbs +4 -4
  298. data/sig/orb/models/new_plan_unit_with_percent_price.rbs +4 -4
  299. data/sig/orb/models/new_plan_unit_with_proration_price.rbs +4 -4
  300. data/sig/orb/models/new_subscription_bulk_price.rbs +4 -4
  301. data/sig/orb/models/new_subscription_bulk_with_proration_price.rbs +4 -4
  302. data/sig/orb/models/new_subscription_cumulative_grouped_bulk_price.rbs +4 -4
  303. data/sig/orb/models/new_subscription_grouped_allocation_price.rbs +4 -4
  304. data/sig/orb/models/new_subscription_grouped_tiered_package_price.rbs +4 -4
  305. data/sig/orb/models/new_subscription_grouped_tiered_price.rbs +4 -4
  306. data/sig/orb/models/new_subscription_grouped_with_metered_minimum_price.rbs +4 -4
  307. data/sig/orb/models/new_subscription_grouped_with_prorated_minimum_price.rbs +4 -4
  308. data/sig/orb/models/new_subscription_matrix_price.rbs +4 -4
  309. data/sig/orb/models/new_subscription_matrix_with_allocation_price.rbs +4 -4
  310. data/sig/orb/models/new_subscription_matrix_with_display_name_price.rbs +4 -4
  311. data/sig/orb/models/new_subscription_max_group_tiered_package_price.rbs +4 -4
  312. data/sig/orb/models/new_subscription_minimum_composite_price.rbs +4 -4
  313. data/sig/orb/models/new_subscription_package_price.rbs +4 -4
  314. data/sig/orb/models/new_subscription_package_with_allocation_price.rbs +4 -4
  315. data/sig/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  316. data/sig/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  317. data/sig/orb/models/new_subscription_threshold_total_amount_price.rbs +4 -4
  318. data/sig/orb/models/new_subscription_tiered_package_price.rbs +4 -4
  319. data/sig/orb/models/new_subscription_tiered_package_with_minimum_price.rbs +4 -4
  320. data/sig/orb/models/new_subscription_tiered_price.rbs +4 -4
  321. data/sig/orb/models/new_subscription_tiered_with_minimum_price.rbs +4 -4
  322. data/sig/orb/models/new_subscription_unit_price.rbs +4 -4
  323. data/sig/orb/models/new_subscription_unit_with_percent_price.rbs +4 -4
  324. data/sig/orb/models/new_subscription_unit_with_proration_price.rbs +4 -4
  325. data/sig/orb/models/plan.rbs +134 -0
  326. data/sig/orb/models/plan_create_params.rbs +836 -5728
  327. data/sig/orb/models/plan_update_params.rbs +5 -0
  328. data/sig/orb/models/plan_version.rbs +134 -0
  329. data/sig/orb/models/plans/external_plan_id_update_params.rbs +5 -0
  330. data/sig/orb/models/price.rbs +2200 -1150
  331. data/sig/orb/models/price_create_params.rbs +611 -23
  332. data/sig/orb/models/price_evaluate_multiple_params.rbs +626 -23
  333. data/sig/orb/models/price_evaluate_preview_events_params.rbs +626 -23
  334. data/sig/orb/models/subscription.rbs +124 -0
  335. data/sig/orb/models/subscription_create_params.rbs +2009 -430
  336. data/sig/orb/models/subscription_price_intervals_params.rbs +795 -23
  337. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +2009 -430
  338. data/sig/orb/models/subscription_update_params.rbs +5 -0
  339. data/sig/orb/models.rbs +2 -0
  340. data/sig/orb/resources/alerts.rbs +5 -1
  341. data/sig/orb/resources/customers.rbs +2 -0
  342. data/sig/orb/resources/licenses/external_licenses.rbs +1 -1
  343. data/sig/orb/resources/licenses/usage.rbs +2 -2
  344. data/sig/orb/resources/plans/external_plan_id.rbs +1 -0
  345. data/sig/orb/resources/plans.rbs +2 -0
  346. data/sig/orb/resources/subscriptions.rbs +3 -0
  347. metadata +6 -7
@@ -5,10 +5,124 @@ module Orb
5
5
  | Orb::TrialDiscount
6
6
  | Orb::UsageDiscount
7
7
  | Orb::AmountDiscount
8
+ | Orb::Discount::TieredPercentage
8
9
 
9
10
  module Discount
10
11
  extend Orb::Internal::Type::Union
11
12
 
13
+ type tiered_percentage =
14
+ {
15
+ discount_type: :tiered_percentage,
16
+ tiers: ::Array[Orb::Discount::TieredPercentage::Tier],
17
+ applies_to_price_ids: ::Array[String]?,
18
+ filters: ::Array[Orb::Discount::TieredPercentage::Filter]?,
19
+ reason: String?
20
+ }
21
+
22
+ class TieredPercentage < Orb::Internal::Type::BaseModel
23
+ attr_accessor discount_type: :tiered_percentage
24
+
25
+ attr_accessor tiers: ::Array[Orb::Discount::TieredPercentage::Tier]
26
+
27
+ attr_accessor applies_to_price_ids: ::Array[String]?
28
+
29
+ attr_accessor filters: ::Array[Orb::Discount::TieredPercentage::Filter]?
30
+
31
+ attr_accessor reason: String?
32
+
33
+ def initialize: (
34
+ tiers: ::Array[Orb::Discount::TieredPercentage::Tier],
35
+ ?applies_to_price_ids: ::Array[String]?,
36
+ ?filters: ::Array[Orb::Discount::TieredPercentage::Filter]?,
37
+ ?reason: String?,
38
+ ?discount_type: :tiered_percentage
39
+ ) -> void
40
+
41
+ def to_hash: -> {
42
+ discount_type: :tiered_percentage,
43
+ tiers: ::Array[Orb::Discount::TieredPercentage::Tier],
44
+ applies_to_price_ids: ::Array[String]?,
45
+ filters: ::Array[Orb::Discount::TieredPercentage::Filter]?,
46
+ reason: String?
47
+ }
48
+
49
+ type tier =
50
+ { lower_bound: Float, percentage: Float, upper_bound: Float? }
51
+
52
+ class Tier < Orb::Internal::Type::BaseModel
53
+ attr_accessor lower_bound: Float
54
+
55
+ attr_accessor percentage: Float
56
+
57
+ attr_accessor upper_bound: Float?
58
+
59
+ def initialize: (
60
+ lower_bound: Float,
61
+ percentage: Float,
62
+ ?upper_bound: Float?
63
+ ) -> void
64
+
65
+ def to_hash: -> {
66
+ lower_bound: Float,
67
+ percentage: Float,
68
+ upper_bound: Float?
69
+ }
70
+ end
71
+
72
+ type filter =
73
+ {
74
+ field: Orb::Models::Discount::TieredPercentage::Filter::field,
75
+ operator: Orb::Models::Discount::TieredPercentage::Filter::operator,
76
+ values: ::Array[String]
77
+ }
78
+
79
+ class Filter < Orb::Internal::Type::BaseModel
80
+ attr_accessor field: Orb::Models::Discount::TieredPercentage::Filter::field
81
+
82
+ attr_accessor operator: Orb::Models::Discount::TieredPercentage::Filter::operator
83
+
84
+ attr_accessor values: ::Array[String]
85
+
86
+ def initialize: (
87
+ field: Orb::Models::Discount::TieredPercentage::Filter::field,
88
+ operator: Orb::Models::Discount::TieredPercentage::Filter::operator,
89
+ values: ::Array[String]
90
+ ) -> void
91
+
92
+ def to_hash: -> {
93
+ field: Orb::Models::Discount::TieredPercentage::Filter::field,
94
+ operator: Orb::Models::Discount::TieredPercentage::Filter::operator,
95
+ values: ::Array[String]
96
+ }
97
+
98
+ type field =
99
+ :price_id | :item_id | :price_type | :currency | :pricing_unit_id
100
+
101
+ module Field
102
+ extend Orb::Internal::Type::Enum
103
+
104
+ PRICE_ID: :price_id
105
+ ITEM_ID: :item_id
106
+ PRICE_TYPE: :price_type
107
+ CURRENCY: :currency
108
+ PRICING_UNIT_ID: :pricing_unit_id
109
+
110
+ def self?.values: -> ::Array[Orb::Models::Discount::TieredPercentage::Filter::field]
111
+ end
112
+
113
+ type operator = :includes | :excludes
114
+
115
+ module Operator
116
+ extend Orb::Internal::Type::Enum
117
+
118
+ INCLUDES: :includes
119
+ EXCLUDES: :excludes
120
+
121
+ def self?.values: -> ::Array[Orb::Models::Discount::TieredPercentage::Filter::operator]
122
+ end
123
+ end
124
+ end
125
+
12
126
  def self?.variants: -> ::Array[Orb::Models::discount]
13
127
  end
14
128
  end
@@ -509,12 +509,150 @@ module Orb
509
509
  Orb::MonetaryUsageDiscountAdjustment
510
510
  | Orb::MonetaryAmountDiscountAdjustment
511
511
  | Orb::MonetaryPercentageDiscountAdjustment
512
+ | Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount
512
513
  | Orb::MonetaryMinimumAdjustment
513
514
  | Orb::MonetaryMaximumAdjustment
514
515
 
515
516
  module Adjustment
516
517
  extend Orb::Internal::Type::Union
517
518
 
519
+ type tiered_percentage_discount =
520
+ {
521
+ id: String,
522
+ adjustment_type: :tiered_percentage_discount,
523
+ amount: String,
524
+ applies_to_price_ids: ::Array[String],
525
+ filters: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter],
526
+ is_invoice_level: bool,
527
+ reason: String?,
528
+ replaces_adjustment_id: String?,
529
+ tiers: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Tier]
530
+ }
531
+
532
+ class TieredPercentageDiscount < Orb::Internal::Type::BaseModel
533
+ attr_accessor id: String
534
+
535
+ attr_accessor adjustment_type: :tiered_percentage_discount
536
+
537
+ attr_accessor amount: String
538
+
539
+ attr_accessor applies_to_price_ids: ::Array[String]
540
+
541
+ attr_accessor filters: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter]
542
+
543
+ attr_accessor is_invoice_level: bool
544
+
545
+ attr_accessor reason: String?
546
+
547
+ attr_accessor replaces_adjustment_id: String?
548
+
549
+ attr_accessor tiers: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Tier]
550
+
551
+ def initialize: (
552
+ id: String,
553
+ amount: String,
554
+ applies_to_price_ids: ::Array[String],
555
+ filters: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter],
556
+ is_invoice_level: bool,
557
+ reason: String?,
558
+ replaces_adjustment_id: String?,
559
+ tiers: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Tier],
560
+ ?adjustment_type: :tiered_percentage_discount
561
+ ) -> void
562
+
563
+ def to_hash: -> {
564
+ id: String,
565
+ adjustment_type: :tiered_percentage_discount,
566
+ amount: String,
567
+ applies_to_price_ids: ::Array[String],
568
+ filters: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter],
569
+ is_invoice_level: bool,
570
+ reason: String?,
571
+ replaces_adjustment_id: String?,
572
+ tiers: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Tier]
573
+ }
574
+
575
+ type filter =
576
+ {
577
+ field: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
578
+ operator: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
579
+ values: ::Array[String]
580
+ }
581
+
582
+ class Filter < Orb::Internal::Type::BaseModel
583
+ attr_accessor field: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field
584
+
585
+ attr_accessor operator: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator
586
+
587
+ attr_accessor values: ::Array[String]
588
+
589
+ def initialize: (
590
+ field: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
591
+ operator: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
592
+ values: ::Array[String]
593
+ ) -> void
594
+
595
+ def to_hash: -> {
596
+ field: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
597
+ operator: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
598
+ values: ::Array[String]
599
+ }
600
+
601
+ type field =
602
+ :price_id
603
+ | :item_id
604
+ | :price_type
605
+ | :currency
606
+ | :pricing_unit_id
607
+
608
+ module Field
609
+ extend Orb::Internal::Type::Enum
610
+
611
+ PRICE_ID: :price_id
612
+ ITEM_ID: :item_id
613
+ PRICE_TYPE: :price_type
614
+ CURRENCY: :currency
615
+ PRICING_UNIT_ID: :pricing_unit_id
616
+
617
+ def self?.values: -> ::Array[Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field]
618
+ end
619
+
620
+ type operator = :includes | :excludes
621
+
622
+ module Operator
623
+ extend Orb::Internal::Type::Enum
624
+
625
+ INCLUDES: :includes
626
+ EXCLUDES: :excludes
627
+
628
+ def self?.values: -> ::Array[Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator]
629
+ end
630
+ end
631
+
632
+ type tier =
633
+ { lower_bound: Float, percentage: Float, upper_bound: Float? }
634
+
635
+ class Tier < Orb::Internal::Type::BaseModel
636
+ attr_accessor lower_bound: Float
637
+
638
+ attr_accessor percentage: Float
639
+
640
+ attr_accessor upper_bound: Float?
641
+
642
+ def initialize: (
643
+ lower_bound: Float,
644
+ percentage: Float,
645
+ ?upper_bound: Float?
646
+ ) -> void
647
+
648
+ def to_hash: -> {
649
+ lower_bound: Float,
650
+ percentage: Float,
651
+ upper_bound: Float?
652
+ }
653
+ end
654
+ end
655
+
518
656
  def self?.variants: -> ::Array[Orb::Models::Invoice::LineItem::adjustment]
519
657
  end
520
658
 
@@ -574,12 +712,13 @@ module Orb
574
712
  succeeded: bool
575
713
  }
576
714
 
577
- type payment_provider = :stripe
715
+ type payment_provider = :stripe | :adyen
578
716
 
579
717
  module PaymentProvider
580
718
  extend Orb::Internal::Type::Enum
581
719
 
582
720
  STRIPE: :stripe
721
+ ADYEN: :adyen
583
722
 
584
723
  def self?.values: -> ::Array[Orb::Models::Invoice::PaymentAttempt::payment_provider]
585
724
  end
@@ -509,12 +509,150 @@ module Orb
509
509
  Orb::MonetaryUsageDiscountAdjustment
510
510
  | Orb::MonetaryAmountDiscountAdjustment
511
511
  | Orb::MonetaryPercentageDiscountAdjustment
512
+ | Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount
512
513
  | Orb::MonetaryMinimumAdjustment
513
514
  | Orb::MonetaryMaximumAdjustment
514
515
 
515
516
  module Adjustment
516
517
  extend Orb::Internal::Type::Union
517
518
 
519
+ type tiered_percentage_discount =
520
+ {
521
+ id: String,
522
+ adjustment_type: :tiered_percentage_discount,
523
+ amount: String,
524
+ applies_to_price_ids: ::Array[String],
525
+ filters: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter],
526
+ is_invoice_level: bool,
527
+ reason: String?,
528
+ replaces_adjustment_id: String?,
529
+ tiers: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier]
530
+ }
531
+
532
+ class TieredPercentageDiscount < Orb::Internal::Type::BaseModel
533
+ attr_accessor id: String
534
+
535
+ attr_accessor adjustment_type: :tiered_percentage_discount
536
+
537
+ attr_accessor amount: String
538
+
539
+ attr_accessor applies_to_price_ids: ::Array[String]
540
+
541
+ attr_accessor filters: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter]
542
+
543
+ attr_accessor is_invoice_level: bool
544
+
545
+ attr_accessor reason: String?
546
+
547
+ attr_accessor replaces_adjustment_id: String?
548
+
549
+ attr_accessor tiers: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier]
550
+
551
+ def initialize: (
552
+ id: String,
553
+ amount: String,
554
+ applies_to_price_ids: ::Array[String],
555
+ filters: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter],
556
+ is_invoice_level: bool,
557
+ reason: String?,
558
+ replaces_adjustment_id: String?,
559
+ tiers: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier],
560
+ ?adjustment_type: :tiered_percentage_discount
561
+ ) -> void
562
+
563
+ def to_hash: -> {
564
+ id: String,
565
+ adjustment_type: :tiered_percentage_discount,
566
+ amount: String,
567
+ applies_to_price_ids: ::Array[String],
568
+ filters: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter],
569
+ is_invoice_level: bool,
570
+ reason: String?,
571
+ replaces_adjustment_id: String?,
572
+ tiers: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier]
573
+ }
574
+
575
+ type filter =
576
+ {
577
+ field: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
578
+ operator: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
579
+ values: ::Array[String]
580
+ }
581
+
582
+ class Filter < Orb::Internal::Type::BaseModel
583
+ attr_accessor field: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field
584
+
585
+ attr_accessor operator: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator
586
+
587
+ attr_accessor values: ::Array[String]
588
+
589
+ def initialize: (
590
+ field: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
591
+ operator: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
592
+ values: ::Array[String]
593
+ ) -> void
594
+
595
+ def to_hash: -> {
596
+ field: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
597
+ operator: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
598
+ values: ::Array[String]
599
+ }
600
+
601
+ type field =
602
+ :price_id
603
+ | :item_id
604
+ | :price_type
605
+ | :currency
606
+ | :pricing_unit_id
607
+
608
+ module Field
609
+ extend Orb::Internal::Type::Enum
610
+
611
+ PRICE_ID: :price_id
612
+ ITEM_ID: :item_id
613
+ PRICE_TYPE: :price_type
614
+ CURRENCY: :currency
615
+ PRICING_UNIT_ID: :pricing_unit_id
616
+
617
+ def self?.values: -> ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field]
618
+ end
619
+
620
+ type operator = :includes | :excludes
621
+
622
+ module Operator
623
+ extend Orb::Internal::Type::Enum
624
+
625
+ INCLUDES: :includes
626
+ EXCLUDES: :excludes
627
+
628
+ def self?.values: -> ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator]
629
+ end
630
+ end
631
+
632
+ type tier =
633
+ { lower_bound: Float, percentage: Float, upper_bound: Float? }
634
+
635
+ class Tier < Orb::Internal::Type::BaseModel
636
+ attr_accessor lower_bound: Float
637
+
638
+ attr_accessor percentage: Float
639
+
640
+ attr_accessor upper_bound: Float?
641
+
642
+ def initialize: (
643
+ lower_bound: Float,
644
+ percentage: Float,
645
+ ?upper_bound: Float?
646
+ ) -> void
647
+
648
+ def to_hash: -> {
649
+ lower_bound: Float,
650
+ percentage: Float,
651
+ upper_bound: Float?
652
+ }
653
+ end
654
+ end
655
+
518
656
  def self?.variants: -> ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::adjustment]
519
657
  end
520
658
 
@@ -574,12 +712,13 @@ module Orb
574
712
  succeeded: bool
575
713
  }
576
714
 
577
- type payment_provider = :stripe
715
+ type payment_provider = :stripe | :adyen
578
716
 
579
717
  module PaymentProvider
580
718
  extend Orb::Internal::Type::Enum
581
719
 
582
720
  STRIPE: :stripe
721
+ ADYEN: :adyen
583
722
 
584
723
  def self?.values: -> ::Array[Orb::Models::InvoiceFetchUpcomingResponse::PaymentAttempt::payment_provider]
585
724
  end
@@ -415,12 +415,13 @@ module Orb
415
415
  succeeded: bool
416
416
  }
417
417
 
418
- type payment_provider = :stripe
418
+ type payment_provider = :stripe | :adyen
419
419
 
420
420
  module PaymentProvider
421
421
  extend Orb::Internal::Type::Enum
422
422
 
423
423
  STRIPE: :stripe
424
+ ADYEN: :adyen
424
425
 
425
426
  def self?.values: -> ::Array[Orb::Models::InvoiceIssueSummaryResponse::PaymentAttempt::payment_provider]
426
427
  end
@@ -1,11 +1,127 @@
1
1
  module Orb
2
2
  module Models
3
3
  type invoice_level_discount =
4
- Orb::PercentageDiscount | Orb::AmountDiscount | Orb::TrialDiscount
4
+ Orb::PercentageDiscount
5
+ | Orb::AmountDiscount
6
+ | Orb::TrialDiscount
7
+ | Orb::InvoiceLevelDiscount::TieredPercentage
5
8
 
6
9
  module InvoiceLevelDiscount
7
10
  extend Orb::Internal::Type::Union
8
11
 
12
+ type tiered_percentage =
13
+ {
14
+ discount_type: :tiered_percentage,
15
+ tiers: ::Array[Orb::InvoiceLevelDiscount::TieredPercentage::Tier],
16
+ applies_to_price_ids: ::Array[String]?,
17
+ filters: ::Array[Orb::InvoiceLevelDiscount::TieredPercentage::Filter]?,
18
+ reason: String?
19
+ }
20
+
21
+ class TieredPercentage < Orb::Internal::Type::BaseModel
22
+ attr_accessor discount_type: :tiered_percentage
23
+
24
+ attr_accessor tiers: ::Array[Orb::InvoiceLevelDiscount::TieredPercentage::Tier]
25
+
26
+ attr_accessor applies_to_price_ids: ::Array[String]?
27
+
28
+ attr_accessor filters: ::Array[Orb::InvoiceLevelDiscount::TieredPercentage::Filter]?
29
+
30
+ attr_accessor reason: String?
31
+
32
+ def initialize: (
33
+ tiers: ::Array[Orb::InvoiceLevelDiscount::TieredPercentage::Tier],
34
+ ?applies_to_price_ids: ::Array[String]?,
35
+ ?filters: ::Array[Orb::InvoiceLevelDiscount::TieredPercentage::Filter]?,
36
+ ?reason: String?,
37
+ ?discount_type: :tiered_percentage
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ discount_type: :tiered_percentage,
42
+ tiers: ::Array[Orb::InvoiceLevelDiscount::TieredPercentage::Tier],
43
+ applies_to_price_ids: ::Array[String]?,
44
+ filters: ::Array[Orb::InvoiceLevelDiscount::TieredPercentage::Filter]?,
45
+ reason: String?
46
+ }
47
+
48
+ type tier =
49
+ { lower_bound: Float, percentage: Float, upper_bound: Float? }
50
+
51
+ class Tier < Orb::Internal::Type::BaseModel
52
+ attr_accessor lower_bound: Float
53
+
54
+ attr_accessor percentage: Float
55
+
56
+ attr_accessor upper_bound: Float?
57
+
58
+ def initialize: (
59
+ lower_bound: Float,
60
+ percentage: Float,
61
+ ?upper_bound: Float?
62
+ ) -> void
63
+
64
+ def to_hash: -> {
65
+ lower_bound: Float,
66
+ percentage: Float,
67
+ upper_bound: Float?
68
+ }
69
+ end
70
+
71
+ type filter =
72
+ {
73
+ field: Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::field,
74
+ operator: Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::operator,
75
+ values: ::Array[String]
76
+ }
77
+
78
+ class Filter < Orb::Internal::Type::BaseModel
79
+ attr_accessor field: Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::field
80
+
81
+ attr_accessor operator: Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::operator
82
+
83
+ attr_accessor values: ::Array[String]
84
+
85
+ def initialize: (
86
+ field: Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::field,
87
+ operator: Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::operator,
88
+ values: ::Array[String]
89
+ ) -> void
90
+
91
+ def to_hash: -> {
92
+ field: Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::field,
93
+ operator: Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::operator,
94
+ values: ::Array[String]
95
+ }
96
+
97
+ type field =
98
+ :price_id | :item_id | :price_type | :currency | :pricing_unit_id
99
+
100
+ module Field
101
+ extend Orb::Internal::Type::Enum
102
+
103
+ PRICE_ID: :price_id
104
+ ITEM_ID: :item_id
105
+ PRICE_TYPE: :price_type
106
+ CURRENCY: :currency
107
+ PRICING_UNIT_ID: :pricing_unit_id
108
+
109
+ def self?.values: -> ::Array[Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::field]
110
+ end
111
+
112
+ type operator = :includes | :excludes
113
+
114
+ module Operator
115
+ extend Orb::Internal::Type::Enum
116
+
117
+ INCLUDES: :includes
118
+ EXCLUDES: :excludes
119
+
120
+ def self?.values: -> ::Array[Orb::Models::InvoiceLevelDiscount::TieredPercentage::Filter::operator]
121
+ end
122
+ end
123
+ end
124
+
9
125
  def self?.variants: -> ::Array[Orb::Models::invoice_level_discount]
10
126
  end
11
127
  end