metronome-sdk 3.2.0 → 3.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 (56) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/client.rb +7 -0
  5. data/lib/metronome_sdk/models/commit_rate.rb +1 -22
  6. data/lib/metronome_sdk/models/contract_v2.rb +1 -22
  7. data/lib/metronome_sdk/models/overwrite_rate.rb +1 -22
  8. data/lib/metronome_sdk/models/rate.rb +1 -22
  9. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +10 -24
  10. data/lib/metronome_sdk/models/v1/contract_create_params.rb +10 -24
  11. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +1 -23
  12. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +1 -21
  13. data/lib/metronome_sdk/models/v1/customer_archive_billing_configurations_params.rb +32 -0
  14. data/lib/metronome_sdk/models/v1/customer_archive_billing_configurations_response.rb +38 -0
  15. data/lib/metronome_sdk/models/v1/package_create_params.rb +1 -23
  16. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +18 -25
  17. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +1 -23
  18. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -3
  19. data/lib/metronome_sdk/resources/v1/customers.rb +53 -0
  20. data/lib/metronome_sdk/resources/v1/usage.rb +21 -0
  21. data/lib/metronome_sdk/version.rb +1 -1
  22. data/lib/metronome_sdk.rb +2 -0
  23. data/rbi/metronome_sdk/client.rbi +6 -0
  24. data/rbi/metronome_sdk/models/commit_rate.rbi +0 -37
  25. data/rbi/metronome_sdk/models/contract_v2.rbi +0 -46
  26. data/rbi/metronome_sdk/models/overwrite_rate.rbi +0 -37
  27. data/rbi/metronome_sdk/models/rate.rbi +0 -35
  28. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +11 -46
  29. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +11 -46
  30. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +0 -46
  31. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +0 -46
  32. data/rbi/metronome_sdk/models/v1/customer_archive_billing_configurations_params.rbi +56 -0
  33. data/rbi/metronome_sdk/models/v1/customer_archive_billing_configurations_response.rbi +95 -0
  34. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +0 -46
  35. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +20 -49
  36. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +0 -46
  37. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +0 -4
  38. data/rbi/metronome_sdk/resources/v1/customers.rbi +48 -0
  39. data/rbi/metronome_sdk/resources/v1/usage.rbi +21 -0
  40. data/sig/metronome_sdk/client.rbs +3 -0
  41. data/sig/metronome_sdk/models/commit_rate.rbs +0 -19
  42. data/sig/metronome_sdk/models/contract_v2.rbs +0 -19
  43. data/sig/metronome_sdk/models/overwrite_rate.rbs +0 -19
  44. data/sig/metronome_sdk/models/rate.rbs +0 -19
  45. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +7 -19
  46. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +7 -19
  47. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +0 -19
  48. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +0 -19
  49. data/sig/metronome_sdk/models/v1/customer_archive_billing_configurations_params.rbs +33 -0
  50. data/sig/metronome_sdk/models/v1/customer_archive_billing_configurations_response.rbs +44 -0
  51. data/sig/metronome_sdk/models/v1/package_create_params.rbs +0 -19
  52. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +15 -22
  53. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +0 -19
  54. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +0 -1
  55. data/sig/metronome_sdk/resources/v1/customers.rbs +6 -0
  56. metadata +8 -2
@@ -1631,6 +1631,13 @@ module MetronomeSDK
1631
1631
  end
1632
1632
  attr_writer :rate_type
1633
1633
 
1634
+ # Fraction of unused segments that will be rolled over. Must be between 0 and 1.
1635
+ sig { returns(T.nilable(Float)) }
1636
+ attr_reader :rollover_fraction
1637
+
1638
+ sig { params(rollover_fraction: Float).void }
1639
+ attr_writer :rollover_fraction
1640
+
1634
1641
  # List of filters that determine what kind of customer usage draws down a commit
1635
1642
  # or credit. A customer's usage needs to meet the condition of at least one of the
1636
1643
  # specifiers to contribute to a commit's or credit's drawdown. This field cannot
@@ -1663,6 +1670,7 @@ module MetronomeSDK
1663
1670
  priority: Float,
1664
1671
  rate_type:
1665
1672
  MetronomeSDK::V1::ContractAmendParams::Credit::RateType::OrSymbol,
1673
+ rollover_fraction: Float,
1666
1674
  specifiers: T::Array[MetronomeSDK::CommitSpecifierInput::OrHash]
1667
1675
  ).returns(T.attached_class)
1668
1676
  end
@@ -1690,6 +1698,8 @@ module MetronomeSDK
1690
1698
  # first.
1691
1699
  priority: nil,
1692
1700
  rate_type: nil,
1701
+ # Fraction of unused segments that will be rolled over. Must be between 0 and 1.
1702
+ rollover_fraction: nil,
1693
1703
  # List of filters that determine what kind of customer usage draws down a commit
1694
1704
  # or credit. A customer's usage needs to meet the condition of at least one of the
1695
1705
  # specifiers to contribute to a commit's or credit's drawdown. This field cannot
@@ -1715,6 +1725,7 @@ module MetronomeSDK
1715
1725
  priority: Float,
1716
1726
  rate_type:
1717
1727
  MetronomeSDK::V1::ContractAmendParams::Credit::RateType::OrSymbol,
1728
+ rollover_fraction: Float,
1718
1729
  specifiers: T::Array[MetronomeSDK::CommitSpecifierInput]
1719
1730
  }
1720
1731
  )
@@ -2834,24 +2845,6 @@ module MetronomeSDK
2834
2845
  sig { params(is_prorated: T::Boolean).void }
2835
2846
  attr_writer :is_prorated
2836
2847
 
2837
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
2838
- sig do
2839
- returns(
2840
- T.nilable(
2841
- MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::MinimumConfig
2842
- )
2843
- )
2844
- end
2845
- attr_reader :minimum_config
2846
-
2847
- sig do
2848
- params(
2849
- minimum_config:
2850
- MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::MinimumConfig::OrHash
2851
- ).void
2852
- end
2853
- attr_writer :minimum_config
2854
-
2855
2848
  # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
2856
2849
  # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
2857
2850
  sig { returns(T.nilable(Float)) }
@@ -2882,8 +2875,6 @@ module MetronomeSDK
2882
2875
  credit_type_id: String,
2883
2876
  custom_rate: T::Hash[Symbol, T.anything],
2884
2877
  is_prorated: T::Boolean,
2885
- minimum_config:
2886
- MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::MinimumConfig::OrHash,
2887
2878
  price: Float,
2888
2879
  quantity: Float,
2889
2880
  tiers: T::Array[MetronomeSDK::Tier::OrHash]
@@ -2898,8 +2889,6 @@ module MetronomeSDK
2898
2889
  # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
2899
2890
  # set to true.
2900
2891
  is_prorated: nil,
2901
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
2902
- minimum_config: nil,
2903
2892
  # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
2904
2893
  # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
2905
2894
  price: nil,
@@ -2918,8 +2907,6 @@ module MetronomeSDK
2918
2907
  credit_type_id: String,
2919
2908
  custom_rate: T::Hash[Symbol, T.anything],
2920
2909
  is_prorated: T::Boolean,
2921
- minimum_config:
2922
- MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::MinimumConfig,
2923
2910
  price: Float,
2924
2911
  quantity: Float,
2925
2912
  tiers: T::Array[MetronomeSDK::Tier]
@@ -2982,28 +2969,6 @@ module MetronomeSDK
2982
2969
  def self.values
2983
2970
  end
2984
2971
  end
2985
-
2986
- class MinimumConfig < MetronomeSDK::Internal::Type::BaseModel
2987
- OrHash =
2988
- T.type_alias do
2989
- T.any(
2990
- MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate::MinimumConfig,
2991
- MetronomeSDK::Internal::AnyHash
2992
- )
2993
- end
2994
-
2995
- sig { returns(Float) }
2996
- attr_accessor :minimum
2997
-
2998
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
2999
- sig { params(minimum: Float).returns(T.attached_class) }
3000
- def self.new(minimum:)
3001
- end
3002
-
3003
- sig { override.returns({ minimum: Float }) }
3004
- def to_hash
3005
- end
3006
- end
3007
2972
  end
3008
2973
 
3009
2974
  # Indicates whether the override applies to commit rates or list rates. Can only
@@ -2216,6 +2216,13 @@ module MetronomeSDK
2216
2216
  end
2217
2217
  attr_writer :rate_type
2218
2218
 
2219
+ # Fraction of unused segments that will be rolled over. Must be between 0 and 1.
2220
+ sig { returns(T.nilable(Float)) }
2221
+ attr_reader :rollover_fraction
2222
+
2223
+ sig { params(rollover_fraction: Float).void }
2224
+ attr_writer :rollover_fraction
2225
+
2219
2226
  # List of filters that determine what kind of customer usage draws down a commit
2220
2227
  # or credit. A customer's usage needs to meet the condition of at least one of the
2221
2228
  # specifiers to contribute to a commit's or credit's drawdown. This field cannot
@@ -2248,6 +2255,7 @@ module MetronomeSDK
2248
2255
  priority: Float,
2249
2256
  rate_type:
2250
2257
  MetronomeSDK::V1::ContractCreateParams::Credit::RateType::OrSymbol,
2258
+ rollover_fraction: Float,
2251
2259
  specifiers: T::Array[MetronomeSDK::CommitSpecifierInput::OrHash]
2252
2260
  ).returns(T.attached_class)
2253
2261
  end
@@ -2275,6 +2283,8 @@ module MetronomeSDK
2275
2283
  # first.
2276
2284
  priority: nil,
2277
2285
  rate_type: nil,
2286
+ # Fraction of unused segments that will be rolled over. Must be between 0 and 1.
2287
+ rollover_fraction: nil,
2278
2288
  # List of filters that determine what kind of customer usage draws down a commit
2279
2289
  # or credit. A customer's usage needs to meet the condition of at least one of the
2280
2290
  # specifiers to contribute to a commit's or credit's drawdown. This field cannot
@@ -2300,6 +2310,7 @@ module MetronomeSDK
2300
2310
  priority: Float,
2301
2311
  rate_type:
2302
2312
  MetronomeSDK::V1::ContractCreateParams::Credit::RateType::OrSymbol,
2313
+ rollover_fraction: Float,
2303
2314
  specifiers: T::Array[MetronomeSDK::CommitSpecifierInput]
2304
2315
  }
2305
2316
  )
@@ -3813,24 +3824,6 @@ module MetronomeSDK
3813
3824
  sig { params(is_prorated: T::Boolean).void }
3814
3825
  attr_writer :is_prorated
3815
3826
 
3816
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
3817
- sig do
3818
- returns(
3819
- T.nilable(
3820
- MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::MinimumConfig
3821
- )
3822
- )
3823
- end
3824
- attr_reader :minimum_config
3825
-
3826
- sig do
3827
- params(
3828
- minimum_config:
3829
- MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::MinimumConfig::OrHash
3830
- ).void
3831
- end
3832
- attr_writer :minimum_config
3833
-
3834
3827
  # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
3835
3828
  # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
3836
3829
  sig { returns(T.nilable(Float)) }
@@ -3861,8 +3854,6 @@ module MetronomeSDK
3861
3854
  credit_type_id: String,
3862
3855
  custom_rate: T::Hash[Symbol, T.anything],
3863
3856
  is_prorated: T::Boolean,
3864
- minimum_config:
3865
- MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::MinimumConfig::OrHash,
3866
3857
  price: Float,
3867
3858
  quantity: Float,
3868
3859
  tiers: T::Array[MetronomeSDK::Tier::OrHash]
@@ -3877,8 +3868,6 @@ module MetronomeSDK
3877
3868
  # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
3878
3869
  # set to true.
3879
3870
  is_prorated: nil,
3880
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
3881
- minimum_config: nil,
3882
3871
  # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
3883
3872
  # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
3884
3873
  price: nil,
@@ -3897,8 +3886,6 @@ module MetronomeSDK
3897
3886
  credit_type_id: String,
3898
3887
  custom_rate: T::Hash[Symbol, T.anything],
3899
3888
  is_prorated: T::Boolean,
3900
- minimum_config:
3901
- MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::MinimumConfig,
3902
3889
  price: Float,
3903
3890
  quantity: Float,
3904
3891
  tiers: T::Array[MetronomeSDK::Tier]
@@ -3961,28 +3948,6 @@ module MetronomeSDK
3961
3948
  def self.values
3962
3949
  end
3963
3950
  end
3964
-
3965
- class MinimumConfig < MetronomeSDK::Internal::Type::BaseModel
3966
- OrHash =
3967
- T.type_alias do
3968
- T.any(
3969
- MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::MinimumConfig,
3970
- MetronomeSDK::Internal::AnyHash
3971
- )
3972
- end
3973
-
3974
- sig { returns(Float) }
3975
- attr_accessor :minimum
3976
-
3977
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
3978
- sig { params(minimum: Float).returns(T.attached_class) }
3979
- def self.new(minimum:)
3980
- end
3981
-
3982
- sig { override.returns({ minimum: Float }) }
3983
- def to_hash
3984
- end
3985
- end
3986
3951
  end
3987
3952
 
3988
3953
  # Indicates whether the override applies to commit rates or list rates. Can only
@@ -143,24 +143,6 @@ module MetronomeSDK
143
143
  sig { params(is_prorated: T::Boolean).void }
144
144
  attr_writer :is_prorated
145
145
 
146
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
147
- sig do
148
- returns(
149
- T.nilable(
150
- MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::MinimumConfig
151
- )
152
- )
153
- end
154
- attr_reader :minimum_config
155
-
156
- sig do
157
- params(
158
- minimum_config:
159
- MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::MinimumConfig::OrHash
160
- ).void
161
- end
162
- attr_writer :minimum_config
163
-
164
146
  # Default price. For FLAT and SUBSCRIPTION rate_type, this must be >=0. For
165
147
  # PERCENTAGE rate_type, this is a decimal fraction, e.g. use 0.1 for 10%; this
166
148
  # must be >=0 and <=1.
@@ -206,8 +188,6 @@ module MetronomeSDK
206
188
  custom_rate: T::Hash[Symbol, T.anything],
207
189
  ending_before: Time,
208
190
  is_prorated: T::Boolean,
209
- minimum_config:
210
- MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::MinimumConfig::OrHash,
211
191
  price: Float,
212
192
  pricing_group_values: T::Hash[Symbol, String],
213
193
  quantity: Float,
@@ -239,8 +219,6 @@ module MetronomeSDK
239
219
  # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
240
220
  # set to true.
241
221
  is_prorated: nil,
242
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
243
- minimum_config: nil,
244
222
  # Default price. For FLAT and SUBSCRIPTION rate_type, this must be >=0. For
245
223
  # PERCENTAGE rate_type, this is a decimal fraction, e.g. use 0.1 for 10%; this
246
224
  # must be >=0 and <=1.
@@ -270,8 +248,6 @@ module MetronomeSDK
270
248
  custom_rate: T::Hash[Symbol, T.anything],
271
249
  ending_before: Time,
272
250
  is_prorated: T::Boolean,
273
- minimum_config:
274
- MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::MinimumConfig,
275
251
  price: Float,
276
252
  pricing_group_values: T::Hash[Symbol, String],
277
253
  quantity: Float,
@@ -381,28 +357,6 @@ module MetronomeSDK
381
357
  def self.values
382
358
  end
383
359
  end
384
-
385
- class MinimumConfig < MetronomeSDK::Internal::Type::BaseModel
386
- OrHash =
387
- T.type_alias do
388
- T.any(
389
- MetronomeSDK::V1::Contracts::RateCards::RateAddManyParams::Rate::MinimumConfig,
390
- MetronomeSDK::Internal::AnyHash
391
- )
392
- end
393
-
394
- sig { returns(Float) }
395
- attr_accessor :minimum
396
-
397
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
398
- sig { params(minimum: Float).returns(T.attached_class) }
399
- def self.new(minimum:)
400
- end
401
-
402
- sig { override.returns({ minimum: Float }) }
403
- def to_hash
404
- end
405
- end
406
360
  end
407
361
  end
408
362
  end
@@ -98,24 +98,6 @@ module MetronomeSDK
98
98
  sig { params(is_prorated: T::Boolean).void }
99
99
  attr_writer :is_prorated
100
100
 
101
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
102
- sig do
103
- returns(
104
- T.nilable(
105
- MetronomeSDK::V1::Contracts::RateCards::RateAddParams::MinimumConfig
106
- )
107
- )
108
- end
109
- attr_reader :minimum_config
110
-
111
- sig do
112
- params(
113
- minimum_config:
114
- MetronomeSDK::V1::Contracts::RateCards::RateAddParams::MinimumConfig::OrHash
115
- ).void
116
- end
117
- attr_writer :minimum_config
118
-
119
101
  # Default price. For FLAT and SUBSCRIPTION rate_type, this must be >=0. For
120
102
  # PERCENTAGE rate_type, this is a decimal fraction, e.g. use 0.1 for 10%; this
121
103
  # must be >=0 and <=1.
@@ -162,8 +144,6 @@ module MetronomeSDK
162
144
  custom_rate: T::Hash[Symbol, T.anything],
163
145
  ending_before: Time,
164
146
  is_prorated: T::Boolean,
165
- minimum_config:
166
- MetronomeSDK::V1::Contracts::RateCards::RateAddParams::MinimumConfig::OrHash,
167
147
  price: Float,
168
148
  pricing_group_values: T::Hash[Symbol, String],
169
149
  quantity: Float,
@@ -198,8 +178,6 @@ module MetronomeSDK
198
178
  # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
199
179
  # set to true.
200
180
  is_prorated: nil,
201
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
202
- minimum_config: nil,
203
181
  # Default price. For FLAT and SUBSCRIPTION rate_type, this must be >=0. For
204
182
  # PERCENTAGE rate_type, this is a decimal fraction, e.g. use 0.1 for 10%; this
205
183
  # must be >=0 and <=1.
@@ -231,8 +209,6 @@ module MetronomeSDK
231
209
  custom_rate: T::Hash[Symbol, T.anything],
232
210
  ending_before: Time,
233
211
  is_prorated: T::Boolean,
234
- minimum_config:
235
- MetronomeSDK::V1::Contracts::RateCards::RateAddParams::MinimumConfig,
236
212
  price: Float,
237
213
  pricing_group_values: T::Hash[Symbol, String],
238
214
  quantity: Float,
@@ -343,28 +319,6 @@ module MetronomeSDK
343
319
  def self.values
344
320
  end
345
321
  end
346
-
347
- class MinimumConfig < MetronomeSDK::Internal::Type::BaseModel
348
- OrHash =
349
- T.type_alias do
350
- T.any(
351
- MetronomeSDK::V1::Contracts::RateCards::RateAddParams::MinimumConfig,
352
- MetronomeSDK::Internal::AnyHash
353
- )
354
- end
355
-
356
- sig { returns(Float) }
357
- attr_accessor :minimum
358
-
359
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
360
- sig { params(minimum: Float).returns(T.attached_class) }
361
- def self.new(minimum:)
362
- end
363
-
364
- sig { override.returns({ minimum: Float }) }
365
- def to_hash
366
- end
367
- end
368
322
  end
369
323
  end
370
324
  end
@@ -0,0 +1,56 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class CustomerArchiveBillingConfigurationsParams < MetronomeSDK::Internal::Type::BaseModel
7
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
8
+ include MetronomeSDK::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ MetronomeSDK::V1::CustomerArchiveBillingConfigurationsParams,
14
+ MetronomeSDK::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ # Array of billing provider configuration IDs to archive
19
+ sig { returns(T::Array[String]) }
20
+ attr_accessor :customer_billing_provider_configuration_ids
21
+
22
+ # The customer ID the billing provider configurations belong to
23
+ sig { returns(String) }
24
+ attr_accessor :customer_id
25
+
26
+ sig do
27
+ params(
28
+ customer_billing_provider_configuration_ids: T::Array[String],
29
+ customer_id: String,
30
+ request_options: MetronomeSDK::RequestOptions::OrHash
31
+ ).returns(T.attached_class)
32
+ end
33
+ def self.new(
34
+ # Array of billing provider configuration IDs to archive
35
+ customer_billing_provider_configuration_ids:,
36
+ # The customer ID the billing provider configurations belong to
37
+ customer_id:,
38
+ request_options: {}
39
+ )
40
+ end
41
+
42
+ sig do
43
+ override.returns(
44
+ {
45
+ customer_billing_provider_configuration_ids: T::Array[String],
46
+ customer_id: String,
47
+ request_options: MetronomeSDK::RequestOptions
48
+ }
49
+ )
50
+ end
51
+ def to_hash
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,95 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class CustomerArchiveBillingConfigurationsResponse < MetronomeSDK::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ MetronomeSDK::Models::V1::CustomerArchiveBillingConfigurationsResponse,
11
+ MetronomeSDK::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig do
16
+ returns(
17
+ MetronomeSDK::Models::V1::CustomerArchiveBillingConfigurationsResponse::Data
18
+ )
19
+ end
20
+ attr_reader :data
21
+
22
+ sig do
23
+ params(
24
+ data:
25
+ MetronomeSDK::Models::V1::CustomerArchiveBillingConfigurationsResponse::Data::OrHash
26
+ ).void
27
+ end
28
+ attr_writer :data
29
+
30
+ sig do
31
+ params(
32
+ data:
33
+ MetronomeSDK::Models::V1::CustomerArchiveBillingConfigurationsResponse::Data::OrHash
34
+ ).returns(T.attached_class)
35
+ end
36
+ def self.new(data:)
37
+ end
38
+
39
+ sig do
40
+ override.returns(
41
+ {
42
+ data:
43
+ MetronomeSDK::Models::V1::CustomerArchiveBillingConfigurationsResponse::Data
44
+ }
45
+ )
46
+ end
47
+ def to_hash
48
+ end
49
+
50
+ class Data < MetronomeSDK::Internal::Type::BaseModel
51
+ OrHash =
52
+ T.type_alias do
53
+ T.any(
54
+ MetronomeSDK::Models::V1::CustomerArchiveBillingConfigurationsResponse::Data,
55
+ MetronomeSDK::Internal::AnyHash
56
+ )
57
+ end
58
+
59
+ # Array of billing provider configuration IDs to archive
60
+ sig { returns(T::Array[String]) }
61
+ attr_accessor :customer_billing_provider_configuration_ids
62
+
63
+ # The customer ID the billing provider configurations belong to
64
+ sig { returns(String) }
65
+ attr_accessor :customer_id
66
+
67
+ sig do
68
+ params(
69
+ customer_billing_provider_configuration_ids: T::Array[String],
70
+ customer_id: String
71
+ ).returns(T.attached_class)
72
+ end
73
+ def self.new(
74
+ # Array of billing provider configuration IDs to archive
75
+ customer_billing_provider_configuration_ids:,
76
+ # The customer ID the billing provider configurations belong to
77
+ customer_id:
78
+ )
79
+ end
80
+
81
+ sig do
82
+ override.returns(
83
+ {
84
+ customer_billing_provider_configuration_ids: T::Array[String],
85
+ customer_id: String
86
+ }
87
+ )
88
+ end
89
+ def to_hash
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end
95
+ end
@@ -2821,24 +2821,6 @@ module MetronomeSDK
2821
2821
  sig { params(is_prorated: T::Boolean).void }
2822
2822
  attr_writer :is_prorated
2823
2823
 
2824
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
2825
- sig do
2826
- returns(
2827
- T.nilable(
2828
- MetronomeSDK::V1::PackageCreateParams::Override::OverwriteRate::MinimumConfig
2829
- )
2830
- )
2831
- end
2832
- attr_reader :minimum_config
2833
-
2834
- sig do
2835
- params(
2836
- minimum_config:
2837
- MetronomeSDK::V1::PackageCreateParams::Override::OverwriteRate::MinimumConfig::OrHash
2838
- ).void
2839
- end
2840
- attr_writer :minimum_config
2841
-
2842
2824
  # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
2843
2825
  # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
2844
2826
  sig { returns(T.nilable(Float)) }
@@ -2869,8 +2851,6 @@ module MetronomeSDK
2869
2851
  credit_type_id: String,
2870
2852
  custom_rate: T::Hash[Symbol, T.anything],
2871
2853
  is_prorated: T::Boolean,
2872
- minimum_config:
2873
- MetronomeSDK::V1::PackageCreateParams::Override::OverwriteRate::MinimumConfig::OrHash,
2874
2854
  price: Float,
2875
2855
  quantity: Float,
2876
2856
  tiers: T::Array[MetronomeSDK::Tier::OrHash]
@@ -2885,8 +2865,6 @@ module MetronomeSDK
2885
2865
  # Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
2886
2866
  # set to true.
2887
2867
  is_prorated: nil,
2888
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
2889
- minimum_config: nil,
2890
2868
  # Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
2891
2869
  # this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
2892
2870
  price: nil,
@@ -2905,8 +2883,6 @@ module MetronomeSDK
2905
2883
  credit_type_id: String,
2906
2884
  custom_rate: T::Hash[Symbol, T.anything],
2907
2885
  is_prorated: T::Boolean,
2908
- minimum_config:
2909
- MetronomeSDK::V1::PackageCreateParams::Override::OverwriteRate::MinimumConfig,
2910
2886
  price: Float,
2911
2887
  quantity: Float,
2912
2888
  tiers: T::Array[MetronomeSDK::Tier]
@@ -2969,28 +2945,6 @@ module MetronomeSDK
2969
2945
  def self.values
2970
2946
  end
2971
2947
  end
2972
-
2973
- class MinimumConfig < MetronomeSDK::Internal::Type::BaseModel
2974
- OrHash =
2975
- T.type_alias do
2976
- T.any(
2977
- MetronomeSDK::V1::PackageCreateParams::Override::OverwriteRate::MinimumConfig,
2978
- MetronomeSDK::Internal::AnyHash
2979
- )
2980
- end
2981
-
2982
- sig { returns(Float) }
2983
- attr_accessor :minimum
2984
-
2985
- # Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
2986
- sig { params(minimum: Float).returns(T.attached_class) }
2987
- def self.new(minimum:)
2988
- end
2989
-
2990
- sig { override.returns({ minimum: Float }) }
2991
- def to_hash
2992
- end
2993
- end
2994
2948
  end
2995
2949
 
2996
2950
  # Indicates whether the override applies to commit rates or list rates. Can only