metronome-sdk 1.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +91 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/errors.rb +25 -11
  5. data/lib/metronome_sdk/file_part.rb +10 -7
  6. data/lib/metronome_sdk/internal/body_cursor_page.rb +1 -1
  7. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  8. data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +1 -1
  9. data/lib/metronome_sdk/internal/transport/base_client.rb +11 -7
  10. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +34 -31
  11. data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
  12. data/lib/metronome_sdk/internal/type/enum.rb +25 -0
  13. data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
  14. data/lib/metronome_sdk/internal/util.rb +8 -7
  15. data/lib/metronome_sdk/models/contract.rb +1 -0
  16. data/lib/metronome_sdk/models/contract_v2.rb +275 -6
  17. data/lib/metronome_sdk/models/contract_without_amendments.rb +2 -2
  18. data/lib/metronome_sdk/models/hierarchy_configuration.rb +123 -2
  19. data/lib/metronome_sdk/models/payment_gate_config.rb +1 -0
  20. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +1 -0
  21. data/lib/metronome_sdk/models/subscription.rb +95 -1
  22. data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
  23. data/lib/metronome_sdk/models/v1/alert_create_params.rb +38 -36
  24. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +1 -0
  25. data/lib/metronome_sdk/models/v1/contract_create_params.rb +157 -9
  26. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
  27. data/lib/metronome_sdk/models/v1/customer_create_params.rb +11 -1
  28. data/lib/metronome_sdk/models/v1/customer_detail.rb +9 -1
  29. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +19 -25
  30. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
  31. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +1 -0
  32. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +1 -0
  33. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +3 -3
  34. data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
  35. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +12 -12
  36. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -1
  37. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +1 -0
  38. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +1 -0
  39. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +6 -1
  40. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +1 -1
  41. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +41 -38
  42. data/lib/metronome_sdk/models/v1/customers/invoice.rb +256 -16
  43. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
  44. data/lib/metronome_sdk/models/v1/payment.rb +157 -0
  45. data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
  46. data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
  47. data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
  48. data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
  49. data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
  50. data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
  51. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rb +65 -0
  52. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rb +12 -0
  53. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_params.rb +73 -0
  54. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_response.rb +31 -0
  55. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_params.rb +26 -0
  56. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_response.rb +105 -0
  57. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +9 -1
  58. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +9 -1
  59. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +219 -9
  60. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +195 -8
  61. data/lib/metronome_sdk/resources/v1/alerts.rb +57 -53
  62. data/lib/metronome_sdk/resources/v1/contracts.rb +8 -5
  63. data/lib/metronome_sdk/resources/v1/credit_grants.rb +10 -5
  64. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +70 -51
  65. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +7 -4
  66. data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -1
  67. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +57 -1
  68. data/lib/metronome_sdk/resources/v1/customers/plans.rb +8 -4
  69. data/lib/metronome_sdk/resources/v1/customers.rb +13 -8
  70. data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
  71. data/lib/metronome_sdk/resources/v1/plans.rb +8 -4
  72. data/lib/metronome_sdk/resources/v1/settings/billing_providers.rb +75 -0
  73. data/lib/metronome_sdk/resources/v1/settings.rb +55 -0
  74. data/lib/metronome_sdk/resources/v1/usage.rb +4 -2
  75. data/lib/metronome_sdk/resources/v1.rb +8 -0
  76. data/lib/metronome_sdk/resources/v2/contracts.rb +9 -3
  77. data/lib/metronome_sdk/version.rb +1 -1
  78. data/lib/metronome_sdk.rb +17 -0
  79. data/rbi/metronome_sdk/errors.rbi +29 -2
  80. data/rbi/metronome_sdk/file_part.rbi +1 -1
  81. data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
  82. data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
  83. data/rbi/metronome_sdk/internal/util.rbi +1 -1
  84. data/rbi/metronome_sdk/models/contract.rbi +5 -0
  85. data/rbi/metronome_sdk/models/contract_v2.rbi +635 -10
  86. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +2 -2
  87. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +286 -6
  88. data/rbi/metronome_sdk/models/payment_gate_config.rbi +5 -0
  89. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +5 -0
  90. data/rbi/metronome_sdk/models/subscription.rbi +190 -0
  91. data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
  92. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +51 -47
  93. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +5 -0
  94. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +326 -10
  95. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
  96. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +11 -0
  97. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +8 -0
  98. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +24 -32
  99. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
  100. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +5 -0
  101. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +5 -0
  102. data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
  103. data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
  104. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +14 -14
  105. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +11 -0
  106. data/rbi/metronome_sdk/models/v1/customers/billing_config_delete_params.rbi +5 -0
  107. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbi +5 -0
  108. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +6 -0
  109. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +2 -2
  110. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +53 -44
  111. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +462 -38
  112. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
  113. data/rbi/metronome_sdk/models/v1/payment.rbi +324 -0
  114. data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
  115. data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
  116. data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
  117. data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
  118. data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
  119. data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
  120. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbi +115 -0
  121. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbi +25 -0
  122. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_params.rbi +157 -0
  123. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_response.rbi +75 -0
  124. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_params.rbi +50 -0
  125. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_response.rbi +245 -0
  126. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +18 -0
  127. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +18 -0
  128. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +536 -12
  129. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +462 -14
  130. data/rbi/metronome_sdk/resources/v1/alerts.rbi +68 -64
  131. data/rbi/metronome_sdk/resources/v1/contracts.rbi +8 -4
  132. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +10 -5
  133. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +73 -54
  134. data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +8 -4
  135. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +3 -2
  136. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +38 -1
  137. data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +8 -4
  138. data/rbi/metronome_sdk/resources/v1/customers.rbi +17 -11
  139. data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
  140. data/rbi/metronome_sdk/resources/v1/plans.rbi +8 -4
  141. data/rbi/metronome_sdk/resources/v1/settings/billing_providers.rbi +63 -0
  142. data/rbi/metronome_sdk/resources/v1/settings.rbi +47 -0
  143. data/rbi/metronome_sdk/resources/v1/usage.rbi +4 -2
  144. data/rbi/metronome_sdk/resources/v1.rbi +6 -0
  145. data/rbi/metronome_sdk/resources/v2/contracts.rbi +14 -0
  146. data/sig/metronome_sdk/errors.rbs +7 -0
  147. data/sig/metronome_sdk/file_part.rbs +1 -1
  148. data/sig/metronome_sdk/models/contract.rbs +2 -0
  149. data/sig/metronome_sdk/models/contract_v2.rbs +241 -12
  150. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +87 -6
  151. data/sig/metronome_sdk/models/payment_gate_config.rbs +2 -1
  152. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +2 -1
  153. data/sig/metronome_sdk/models/subscription.rbs +80 -0
  154. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +2 -1
  155. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +91 -5
  156. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
  157. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +2 -0
  158. data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
  159. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
  160. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
  161. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +2 -0
  162. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +2 -0
  163. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +2 -0
  164. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +2 -0
  165. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +2 -0
  166. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +2 -0
  167. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +244 -19
  168. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
  169. data/sig/metronome_sdk/models/v1/payment.rbs +198 -0
  170. data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
  171. data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
  172. data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
  173. data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
  174. data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
  175. data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
  176. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbs +54 -0
  177. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbs +13 -0
  178. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_params.rbs +64 -0
  179. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_response.rbs +34 -0
  180. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_params.rbs +28 -0
  181. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_response.rbs +102 -0
  182. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +9 -0
  183. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +9 -0
  184. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +184 -7
  185. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +221 -18
  186. data/sig/metronome_sdk/resources/v1/contracts.rbs +1 -0
  187. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
  188. data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
  189. data/sig/metronome_sdk/resources/v1/settings/billing_providers.rbs +23 -0
  190. data/sig/metronome_sdk/resources/v1/settings.rbs +19 -0
  191. data/sig/metronome_sdk/resources/v1.rbs +4 -0
  192. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -0
  193. metadata +53 -2
@@ -20,7 +20,7 @@ module MetronomeSDK
20
20
  discounts: ::Array[MetronomeSDK::Discount],
21
21
  ending_before: Time,
22
22
  has_more: MetronomeSDK::ContractV2::HasMore,
23
- hierarchy_configuration: MetronomeSDK::Models::hierarchy_configuration,
23
+ hierarchy_configuration: MetronomeSDK::Models::ContractV2::hierarchy_configuration,
24
24
  multiplier_override_prioritization: MetronomeSDK::Models::ContractV2::multiplier_override_prioritization,
25
25
  name: String,
26
26
  net_payment_terms_days: Float,
@@ -99,11 +99,11 @@ module MetronomeSDK
99
99
  MetronomeSDK::ContractV2::HasMore
100
100
  ) -> MetronomeSDK::ContractV2::HasMore
101
101
 
102
- attr_reader hierarchy_configuration: MetronomeSDK::Models::hierarchy_configuration?
102
+ attr_reader hierarchy_configuration: MetronomeSDK::Models::ContractV2::hierarchy_configuration?
103
103
 
104
104
  def hierarchy_configuration=: (
105
- MetronomeSDK::Models::hierarchy_configuration
106
- ) -> MetronomeSDK::Models::hierarchy_configuration
105
+ MetronomeSDK::Models::ContractV2::hierarchy_configuration
106
+ ) -> MetronomeSDK::Models::ContractV2::hierarchy_configuration
107
107
 
108
108
  attr_reader multiplier_override_prioritization: MetronomeSDK::Models::ContractV2::multiplier_override_prioritization?
109
109
 
@@ -210,7 +210,7 @@ module MetronomeSDK
210
210
  ?discounts: ::Array[MetronomeSDK::Discount],
211
211
  ?ending_before: Time,
212
212
  ?has_more: MetronomeSDK::ContractV2::HasMore,
213
- ?hierarchy_configuration: MetronomeSDK::Models::hierarchy_configuration,
213
+ ?hierarchy_configuration: MetronomeSDK::Models::ContractV2::hierarchy_configuration,
214
214
  ?multiplier_override_prioritization: MetronomeSDK::Models::ContractV2::multiplier_override_prioritization,
215
215
  ?name: String,
216
216
  ?net_payment_terms_days: Float,
@@ -249,7 +249,7 @@ module MetronomeSDK
249
249
  discounts: ::Array[MetronomeSDK::Discount],
250
250
  ending_before: Time,
251
251
  has_more: MetronomeSDK::ContractV2::HasMore,
252
- hierarchy_configuration: MetronomeSDK::Models::hierarchy_configuration,
252
+ hierarchy_configuration: MetronomeSDK::Models::ContractV2::hierarchy_configuration,
253
253
  multiplier_override_prioritization: MetronomeSDK::Models::ContractV2::multiplier_override_prioritization,
254
254
  name: String,
255
255
  net_payment_terms_days: Float,
@@ -1208,7 +1208,7 @@ module MetronomeSDK
1208
1208
  multiplier: Float,
1209
1209
  override_specifiers: ::Array[MetronomeSDK::ContractV2::Override::OverrideSpecifier],
1210
1210
  override_tiers: ::Array[MetronomeSDK::OverrideTier],
1211
- overwrite_rate: MetronomeSDK::OverwriteRate,
1211
+ overwrite_rate: MetronomeSDK::ContractV2::Override::OverwriteRate,
1212
1212
  priority: Float,
1213
1213
  product: MetronomeSDK::ContractV2::Override::Product,
1214
1214
  target: MetronomeSDK::Models::ContractV2::Override::target,
@@ -1252,11 +1252,11 @@ module MetronomeSDK
1252
1252
  ::Array[MetronomeSDK::OverrideTier]
1253
1253
  ) -> ::Array[MetronomeSDK::OverrideTier]
1254
1254
 
1255
- attr_reader overwrite_rate: MetronomeSDK::OverwriteRate?
1255
+ attr_reader overwrite_rate: MetronomeSDK::ContractV2::Override::OverwriteRate?
1256
1256
 
1257
1257
  def overwrite_rate=: (
1258
- MetronomeSDK::OverwriteRate
1259
- ) -> MetronomeSDK::OverwriteRate
1258
+ MetronomeSDK::ContractV2::Override::OverwriteRate
1259
+ ) -> MetronomeSDK::ContractV2::Override::OverwriteRate
1260
1260
 
1261
1261
  attr_reader priority: Float?
1262
1262
 
@@ -1290,7 +1290,7 @@ module MetronomeSDK
1290
1290
  ?multiplier: Float,
1291
1291
  ?override_specifiers: ::Array[MetronomeSDK::ContractV2::Override::OverrideSpecifier],
1292
1292
  ?override_tiers: ::Array[MetronomeSDK::OverrideTier],
1293
- ?overwrite_rate: MetronomeSDK::OverwriteRate,
1293
+ ?overwrite_rate: MetronomeSDK::ContractV2::Override::OverwriteRate,
1294
1294
  ?priority: Float,
1295
1295
  ?product: MetronomeSDK::ContractV2::Override::Product,
1296
1296
  ?target: MetronomeSDK::Models::ContractV2::Override::target,
@@ -1307,7 +1307,7 @@ module MetronomeSDK
1307
1307
  multiplier: Float,
1308
1308
  override_specifiers: ::Array[MetronomeSDK::ContractV2::Override::OverrideSpecifier],
1309
1309
  override_tiers: ::Array[MetronomeSDK::OverrideTier],
1310
- overwrite_rate: MetronomeSDK::OverwriteRate,
1310
+ overwrite_rate: MetronomeSDK::ContractV2::Override::OverwriteRate,
1311
1311
  priority: Float,
1312
1312
  product: MetronomeSDK::ContractV2::Override::Product,
1313
1313
  target: MetronomeSDK::Models::ContractV2::Override::target,
@@ -1401,6 +1401,84 @@ module MetronomeSDK
1401
1401
  end
1402
1402
  end
1403
1403
 
1404
+ type overwrite_rate =
1405
+ {
1406
+ rate_type: MetronomeSDK::Models::ContractV2::Override::OverwriteRate::rate_type,
1407
+ credit_type: MetronomeSDK::CreditTypeData,
1408
+ custom_rate: ::Hash[Symbol, top],
1409
+ is_prorated: bool,
1410
+ price: Float,
1411
+ quantity: Float,
1412
+ tiers: ::Array[MetronomeSDK::Tier]
1413
+ }
1414
+
1415
+ class OverwriteRate < MetronomeSDK::Internal::Type::BaseModel
1416
+ attr_accessor rate_type: MetronomeSDK::Models::ContractV2::Override::OverwriteRate::rate_type
1417
+
1418
+ attr_reader credit_type: MetronomeSDK::CreditTypeData?
1419
+
1420
+ def credit_type=: (
1421
+ MetronomeSDK::CreditTypeData
1422
+ ) -> MetronomeSDK::CreditTypeData
1423
+
1424
+ attr_reader custom_rate: ::Hash[Symbol, top]?
1425
+
1426
+ def custom_rate=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
1427
+
1428
+ attr_reader is_prorated: bool?
1429
+
1430
+ def is_prorated=: (bool) -> bool
1431
+
1432
+ attr_reader price: Float?
1433
+
1434
+ def price=: (Float) -> Float
1435
+
1436
+ attr_reader quantity: Float?
1437
+
1438
+ def quantity=: (Float) -> Float
1439
+
1440
+ attr_reader tiers: ::Array[MetronomeSDK::Tier]?
1441
+
1442
+ def tiers=: (
1443
+ ::Array[MetronomeSDK::Tier]
1444
+ ) -> ::Array[MetronomeSDK::Tier]
1445
+
1446
+ def initialize: (
1447
+ rate_type: MetronomeSDK::Models::ContractV2::Override::OverwriteRate::rate_type,
1448
+ ?credit_type: MetronomeSDK::CreditTypeData,
1449
+ ?custom_rate: ::Hash[Symbol, top],
1450
+ ?is_prorated: bool,
1451
+ ?price: Float,
1452
+ ?quantity: Float,
1453
+ ?tiers: ::Array[MetronomeSDK::Tier]
1454
+ ) -> void
1455
+
1456
+ def to_hash: -> {
1457
+ rate_type: MetronomeSDK::Models::ContractV2::Override::OverwriteRate::rate_type,
1458
+ credit_type: MetronomeSDK::CreditTypeData,
1459
+ custom_rate: ::Hash[Symbol, top],
1460
+ is_prorated: bool,
1461
+ price: Float,
1462
+ quantity: Float,
1463
+ tiers: ::Array[MetronomeSDK::Tier]
1464
+ }
1465
+
1466
+ type rate_type =
1467
+ :FLAT | :PERCENTAGE | :SUBSCRIPTION | :TIERED | :CUSTOM
1468
+
1469
+ module RateType
1470
+ extend MetronomeSDK::Internal::Type::Enum
1471
+
1472
+ FLAT: :FLAT
1473
+ PERCENTAGE: :PERCENTAGE
1474
+ SUBSCRIPTION: :SUBSCRIPTION
1475
+ TIERED: :TIERED
1476
+ CUSTOM: :CUSTOM
1477
+
1478
+ def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::Override::OverwriteRate::rate_type]
1479
+ end
1480
+ end
1481
+
1404
1482
  type product = { id: String, name: String }
1405
1483
 
1406
1484
  class Product < MetronomeSDK::Internal::Type::BaseModel
@@ -2098,6 +2176,7 @@ module MetronomeSDK
2098
2176
  | :quickbooks_online
2099
2177
  | :workday
2100
2178
  | :gcp_marketplace
2179
+ | :metronome
2101
2180
 
2102
2181
  module BillingProvider
2103
2182
  extend MetronomeSDK::Internal::Type::Enum
@@ -2110,6 +2189,7 @@ module MetronomeSDK
2110
2189
  QUICKBOOKS_ONLINE: :quickbooks_online
2111
2190
  WORKDAY: :workday
2112
2191
  GCP_MARKETPLACE: :gcp_marketplace
2192
+ METRONOME: :metronome
2113
2193
 
2114
2194
  def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::billing_provider]
2115
2195
  end
@@ -2141,6 +2221,155 @@ module MetronomeSDK
2141
2221
  def to_hash: -> { commits: bool, credits: bool }
2142
2222
  end
2143
2223
 
2224
+ type hierarchy_configuration =
2225
+ MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration
2226
+ | MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2
2227
+
2228
+ module HierarchyConfiguration
2229
+ extend MetronomeSDK::Internal::Type::Union
2230
+
2231
+ type parent_hierarchy_configuration =
2232
+ {
2233
+ children: ::Array[MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::Child],
2234
+ parent_behavior: MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
2235
+ }
2236
+
2237
+ class ParentHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
2238
+ attr_accessor children: ::Array[MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::Child]
2239
+
2240
+ attr_reader parent_behavior: MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior?
2241
+
2242
+ def parent_behavior=: (
2243
+ MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
2244
+ ) -> MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
2245
+
2246
+ def initialize: (
2247
+ children: ::Array[MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::Child],
2248
+ ?parent_behavior: MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
2249
+ ) -> void
2250
+
2251
+ def to_hash: -> {
2252
+ children: ::Array[MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::Child],
2253
+ parent_behavior: MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
2254
+ }
2255
+
2256
+ type child = { contract_id: String, customer_id: String }
2257
+
2258
+ class Child < MetronomeSDK::Internal::Type::BaseModel
2259
+ attr_accessor contract_id: String
2260
+
2261
+ attr_accessor customer_id: String
2262
+
2263
+ def initialize: (contract_id: String, customer_id: String) -> void
2264
+
2265
+ def to_hash: -> { contract_id: String, customer_id: String }
2266
+ end
2267
+
2268
+ type parent_behavior =
2269
+ {
2270
+ invoice_consolidation_type: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
2271
+ }
2272
+
2273
+ class ParentBehavior < MetronomeSDK::Internal::Type::BaseModel
2274
+ attr_reader invoice_consolidation_type: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type?
2275
+
2276
+ def invoice_consolidation_type=: (
2277
+ MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
2278
+ ) -> MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
2279
+
2280
+ def initialize: (
2281
+ ?invoice_consolidation_type: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
2282
+ ) -> void
2283
+
2284
+ def to_hash: -> {
2285
+ invoice_consolidation_type: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
2286
+ }
2287
+
2288
+ type invoice_consolidation_type = :CONCATENATE | :NONE
2289
+
2290
+ module InvoiceConsolidationType
2291
+ extend MetronomeSDK::Internal::Type::Enum
2292
+
2293
+ CONCATENATE: :CONCATENATE
2294
+ NONE: :NONE
2295
+
2296
+ def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type]
2297
+ end
2298
+ end
2299
+ end
2300
+
2301
+ type child_hierarchy_configuration_v2 =
2302
+ {
2303
+ parent: MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Parent,
2304
+ payer: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::payer,
2305
+ usage_statement_behavior: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::usage_statement_behavior
2306
+ }
2307
+
2308
+ class ChildHierarchyConfigurationV2 < MetronomeSDK::Internal::Type::BaseModel
2309
+ attr_accessor parent: MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Parent
2310
+
2311
+ attr_reader payer: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::payer?
2312
+
2313
+ def payer=: (
2314
+ MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::payer
2315
+ ) -> MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::payer
2316
+
2317
+ attr_reader usage_statement_behavior: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::usage_statement_behavior?
2318
+
2319
+ def usage_statement_behavior=: (
2320
+ MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::usage_statement_behavior
2321
+ ) -> MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::usage_statement_behavior
2322
+
2323
+ def initialize: (
2324
+ parent: MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Parent,
2325
+ ?payer: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::payer,
2326
+ ?usage_statement_behavior: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::usage_statement_behavior
2327
+ ) -> void
2328
+
2329
+ def to_hash: -> {
2330
+ parent: MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Parent,
2331
+ payer: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::payer,
2332
+ usage_statement_behavior: MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::usage_statement_behavior
2333
+ }
2334
+
2335
+ type parent = { contract_id: String, customer_id: String }
2336
+
2337
+ class Parent < MetronomeSDK::Internal::Type::BaseModel
2338
+ attr_accessor contract_id: String
2339
+
2340
+ attr_accessor customer_id: String
2341
+
2342
+ def initialize: (contract_id: String, customer_id: String) -> void
2343
+
2344
+ def to_hash: -> { contract_id: String, customer_id: String }
2345
+ end
2346
+
2347
+ type payer = :SELF | :PARENT
2348
+
2349
+ module Payer
2350
+ extend MetronomeSDK::Internal::Type::Enum
2351
+
2352
+ SELF: :SELF
2353
+ PARENT: :PARENT
2354
+
2355
+ def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::payer]
2356
+ end
2357
+
2358
+ type usage_statement_behavior = :CONSOLIDATE | :SEPARATE
2359
+
2360
+ module UsageStatementBehavior
2361
+ extend MetronomeSDK::Internal::Type::Enum
2362
+
2363
+ CONSOLIDATE: :CONSOLIDATE
2364
+ SEPARATE: :SEPARATE
2365
+
2366
+ def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::usage_statement_behavior]
2367
+ end
2368
+ end
2369
+
2370
+ def self?.variants: -> ::Array[MetronomeSDK::Models::ContractV2::hierarchy_configuration]
2371
+ end
2372
+
2144
2373
  type multiplier_override_prioritization = :LOWEST_MULTIPLIER | :EXPLICIT
2145
2374
 
2146
2375
  module MultiplierOverridePrioritization
@@ -9,18 +9,27 @@ module MetronomeSDK
9
9
 
10
10
  type parent_hierarchy_configuration =
11
11
  {
12
- children: ::Array[MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child]
12
+ children: ::Array[MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child],
13
+ parent_behavior: MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
13
14
  }
14
15
 
15
16
  class ParentHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
16
17
  attr_accessor children: ::Array[MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child]
17
18
 
19
+ attr_reader parent_behavior: MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior?
20
+
21
+ def parent_behavior=: (
22
+ MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
23
+ ) -> MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
24
+
18
25
  def initialize: (
19
- children: ::Array[MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child]
26
+ children: ::Array[MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child],
27
+ ?parent_behavior: MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
20
28
  ) -> void
21
29
 
22
30
  def to_hash: -> {
23
- children: ::Array[MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child]
31
+ children: ::Array[MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child],
32
+ parent_behavior: MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
24
33
  }
25
34
 
26
35
  type child = { contract_id: String, customer_id: String }
@@ -34,22 +43,72 @@ module MetronomeSDK
34
43
 
35
44
  def to_hash: -> { contract_id: String, customer_id: String }
36
45
  end
46
+
47
+ type parent_behavior =
48
+ {
49
+ invoice_consolidation_type: MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
50
+ }
51
+
52
+ class ParentBehavior < MetronomeSDK::Internal::Type::BaseModel
53
+ attr_reader invoice_consolidation_type: MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type?
54
+
55
+ def invoice_consolidation_type=: (
56
+ MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
57
+ ) -> MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
58
+
59
+ def initialize: (
60
+ ?invoice_consolidation_type: MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
61
+ ) -> void
62
+
63
+ def to_hash: -> {
64
+ invoice_consolidation_type: MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type
65
+ }
66
+
67
+ type invoice_consolidation_type = :CONCATENATE | :NONE
68
+
69
+ module InvoiceConsolidationType
70
+ extend MetronomeSDK::Internal::Type::Enum
71
+
72
+ CONCATENATE: :CONCATENATE
73
+ NONE: :NONE
74
+
75
+ def self?.values: -> ::Array[MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::invoice_consolidation_type]
76
+ end
77
+ end
37
78
  end
38
79
 
39
80
  type child_hierarchy_configuration =
40
81
  {
41
- parent: MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
82
+ parent: MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent,
83
+ payer: MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::payer,
84
+ usage_statement_behavior: MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::usage_statement_behavior
42
85
  }
43
86
 
44
87
  class ChildHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
45
88
  attr_accessor parent: MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
46
89
 
90
+ attr_reader payer: MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::payer?
91
+
92
+ def payer=: (
93
+ MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::payer
94
+ ) -> MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::payer
95
+
96
+ attr_reader usage_statement_behavior: MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::usage_statement_behavior?
97
+
98
+ def usage_statement_behavior=: (
99
+ MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::usage_statement_behavior
100
+ ) -> MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::usage_statement_behavior
101
+
47
102
  def initialize: (
48
- parent: MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
103
+ parent: MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent,
104
+ ?payer: MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::payer,
105
+ ?usage_statement_behavior: MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::usage_statement_behavior
49
106
  ) -> void
50
107
 
51
108
  def to_hash: -> {
52
- parent: MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
109
+ parent: MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent,
110
+ payer: MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::payer,
111
+ usage_statement_behavior: MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::usage_statement_behavior
53
112
  }
54
113
 
55
114
  type parent = { contract_id: String, customer_id: String }
@@ -63,6 +122,28 @@ module MetronomeSDK
63
122
 
64
123
  def to_hash: -> { contract_id: String, customer_id: String }
65
124
  end
125
+
126
+ type payer = :SELF | :PARENT
127
+
128
+ module Payer
129
+ extend MetronomeSDK::Internal::Type::Enum
130
+
131
+ SELF: :SELF
132
+ PARENT: :PARENT
133
+
134
+ def self?.values: -> ::Array[MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::payer]
135
+ end
136
+
137
+ type usage_statement_behavior = :CONSOLIDATE | :SEPARATE
138
+
139
+ module UsageStatementBehavior
140
+ extend MetronomeSDK::Internal::Type::Enum
141
+
142
+ CONSOLIDATE: :CONSOLIDATE
143
+ SEPARATE: :SEPARATE
144
+
145
+ def self?.values: -> ::Array[MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::usage_statement_behavior]
146
+ end
66
147
  end
67
148
 
68
149
  def self?.variants: -> ::Array[MetronomeSDK::Models::hierarchy_configuration]
@@ -106,7 +106,7 @@ module MetronomeSDK
106
106
  end
107
107
  end
108
108
 
109
- type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
109
+ type tax_type = :NONE | :STRIPE | :ANROK | :AVALARA | :PRECALCULATED
110
110
 
111
111
  module TaxType
112
112
  extend MetronomeSDK::Internal::Type::Enum
@@ -114,6 +114,7 @@ module MetronomeSDK
114
114
  NONE: :NONE
115
115
  STRIPE: :STRIPE
116
116
  ANROK: :ANROK
117
+ AVALARA: :AVALARA
117
118
  PRECALCULATED: :PRECALCULATED
118
119
 
119
120
  def self?.values: -> ::Array[MetronomeSDK::Models::PaymentGateConfig::tax_type]
@@ -106,7 +106,7 @@ module MetronomeSDK
106
106
  end
107
107
  end
108
108
 
109
- type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
109
+ type tax_type = :NONE | :STRIPE | :ANROK | :AVALARA | :PRECALCULATED
110
110
 
111
111
  module TaxType
112
112
  extend MetronomeSDK::Internal::Type::Enum
@@ -114,6 +114,7 @@ module MetronomeSDK
114
114
  NONE: :NONE
115
115
  STRIPE: :STRIPE
116
116
  ANROK: :ANROK
117
+ AVALARA: :AVALARA
117
118
  PRECALCULATED: :PRECALCULATED
118
119
 
119
120
  def self?.values: -> ::Array[MetronomeSDK::Models::PaymentGateConfigV2::tax_type]
@@ -2,6 +2,7 @@ module MetronomeSDK
2
2
  module Models
3
3
  type subscription =
4
4
  {
5
+ billing_periods: MetronomeSDK::Subscription::BillingPeriods,
5
6
  collection_schedule: MetronomeSDK::Models::Subscription::collection_schedule,
6
7
  proration: MetronomeSDK::Subscription::Proration,
7
8
  quantity_management_mode: MetronomeSDK::Models::Subscription::quantity_management_mode,
@@ -17,6 +18,8 @@ module MetronomeSDK
17
18
  }
18
19
 
19
20
  class Subscription < MetronomeSDK::Internal::Type::BaseModel
21
+ attr_accessor billing_periods: MetronomeSDK::Subscription::BillingPeriods
22
+
20
23
  attr_accessor collection_schedule: MetronomeSDK::Models::Subscription::collection_schedule
21
24
 
22
25
  attr_accessor proration: MetronomeSDK::Subscription::Proration
@@ -54,6 +57,7 @@ module MetronomeSDK
54
57
  def name=: (String) -> String
55
58
 
56
59
  def initialize: (
60
+ billing_periods: MetronomeSDK::Subscription::BillingPeriods,
57
61
  collection_schedule: MetronomeSDK::Models::Subscription::collection_schedule,
58
62
  proration: MetronomeSDK::Subscription::Proration,
59
63
  quantity_management_mode: MetronomeSDK::Models::Subscription::quantity_management_mode,
@@ -69,6 +73,7 @@ module MetronomeSDK
69
73
  ) -> void
70
74
 
71
75
  def to_hash: -> {
76
+ billing_periods: MetronomeSDK::Subscription::BillingPeriods,
72
77
  collection_schedule: MetronomeSDK::Models::Subscription::collection_schedule,
73
78
  proration: MetronomeSDK::Subscription::Proration,
74
79
  quantity_management_mode: MetronomeSDK::Models::Subscription::quantity_management_mode,
@@ -83,6 +88,81 @@ module MetronomeSDK
83
88
  name: String
84
89
  }
85
90
 
91
+ type billing_periods =
92
+ {
93
+ current: MetronomeSDK::Subscription::BillingPeriods::Current,
94
+ next_: MetronomeSDK::Subscription::BillingPeriods::Next,
95
+ previous: MetronomeSDK::Subscription::BillingPeriods::Previous
96
+ }
97
+
98
+ class BillingPeriods < MetronomeSDK::Internal::Type::BaseModel
99
+ attr_reader current: MetronomeSDK::Subscription::BillingPeriods::Current?
100
+
101
+ def current=: (
102
+ MetronomeSDK::Subscription::BillingPeriods::Current
103
+ ) -> MetronomeSDK::Subscription::BillingPeriods::Current
104
+
105
+ attr_reader next_: MetronomeSDK::Subscription::BillingPeriods::Next?
106
+
107
+ def next_=: (
108
+ MetronomeSDK::Subscription::BillingPeriods::Next
109
+ ) -> MetronomeSDK::Subscription::BillingPeriods::Next
110
+
111
+ attr_reader previous: MetronomeSDK::Subscription::BillingPeriods::Previous?
112
+
113
+ def previous=: (
114
+ MetronomeSDK::Subscription::BillingPeriods::Previous
115
+ ) -> MetronomeSDK::Subscription::BillingPeriods::Previous
116
+
117
+ def initialize: (
118
+ ?current: MetronomeSDK::Subscription::BillingPeriods::Current,
119
+ ?next_: MetronomeSDK::Subscription::BillingPeriods::Next,
120
+ ?previous: MetronomeSDK::Subscription::BillingPeriods::Previous
121
+ ) -> void
122
+
123
+ def to_hash: -> {
124
+ current: MetronomeSDK::Subscription::BillingPeriods::Current,
125
+ next_: MetronomeSDK::Subscription::BillingPeriods::Next,
126
+ previous: MetronomeSDK::Subscription::BillingPeriods::Previous
127
+ }
128
+
129
+ type current = { ending_before: Time, starting_at: Time }
130
+
131
+ class Current < MetronomeSDK::Internal::Type::BaseModel
132
+ attr_accessor ending_before: Time
133
+
134
+ attr_accessor starting_at: Time
135
+
136
+ def initialize: (ending_before: Time, starting_at: Time) -> void
137
+
138
+ def to_hash: -> { ending_before: Time, starting_at: Time }
139
+ end
140
+
141
+ type next_ = { ending_before: Time, starting_at: Time }
142
+
143
+ class Next < MetronomeSDK::Internal::Type::BaseModel
144
+ attr_accessor ending_before: Time
145
+
146
+ attr_accessor starting_at: Time
147
+
148
+ def initialize: (ending_before: Time, starting_at: Time) -> void
149
+
150
+ def to_hash: -> { ending_before: Time, starting_at: Time }
151
+ end
152
+
153
+ type previous = { ending_before: Time, starting_at: Time }
154
+
155
+ class Previous < MetronomeSDK::Internal::Type::BaseModel
156
+ attr_accessor ending_before: Time
157
+
158
+ attr_accessor starting_at: Time
159
+
160
+ def initialize: (ending_before: Time, starting_at: Time) -> void
161
+
162
+ def to_hash: -> { ending_before: Time, starting_at: Time }
163
+ end
164
+ end
165
+
86
166
  type collection_schedule = :ADVANCE | :ARREARS
87
167
 
88
168
  module CollectionSchedule
@@ -601,7 +601,7 @@ module MetronomeSDK
601
601
  end
602
602
  end
603
603
 
604
- type tax_type = :NONE | :STRIPE | :ANROK | :PRECALCULATED
604
+ type tax_type = :NONE | :STRIPE | :ANROK | :AVALARA | :PRECALCULATED
605
605
 
606
606
  module TaxType
607
607
  extend MetronomeSDK::Internal::Type::Enum
@@ -609,6 +609,7 @@ module MetronomeSDK
609
609
  NONE: :NONE
610
610
  STRIPE: :STRIPE
611
611
  ANROK: :ANROK
612
+ AVALARA: :AVALARA
612
613
  PRECALCULATED: :PRECALCULATED
613
614
 
614
615
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractAmendParams::Commit::PaymentGateConfig::tax_type]