metronome-sdk 3.7.0 → 3.8.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 (96) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +38 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/internal/transport/base_client.rb +4 -1
  5. data/lib/metronome_sdk/models/commit.rb +10 -1
  6. data/lib/metronome_sdk/models/contract_v2.rb +290 -7
  7. data/lib/metronome_sdk/models/contract_without_amendments.rb +178 -4
  8. data/lib/metronome_sdk/models/credit.rb +10 -1
  9. data/lib/metronome_sdk/models/override.rb +7 -1
  10. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +10 -2
  11. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +3 -1
  12. data/lib/metronome_sdk/models/subscription.rb +90 -2
  13. data/lib/metronome_sdk/models/v1/alert_create_params.rb +127 -1
  14. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +17 -4
  15. data/lib/metronome_sdk/models/v1/contract_create_params.rb +290 -10
  16. data/lib/metronome_sdk/models/v1/contract_create_response.rb +178 -4
  17. data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rb +88 -0
  18. data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rb +62 -0
  19. data/lib/metronome_sdk/models/v1/contract_list_seat_balances_params.rb +10 -1
  20. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +127 -1
  21. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +130 -3
  22. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +10 -1
  23. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +2 -0
  24. data/lib/metronome_sdk/models/v1/package_create_params.rb +279 -10
  25. data/lib/metronome_sdk/models/v1/package_list_response.rb +264 -7
  26. data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +264 -7
  27. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +515 -9
  28. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +456 -8
  29. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +456 -8
  30. data/lib/metronome_sdk/resources/v1/alerts.rb +3 -1
  31. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +4 -0
  32. data/lib/metronome_sdk/resources/v1/contracts.rb +68 -1
  33. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +4 -2
  34. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +3 -1
  35. data/lib/metronome_sdk/resources/v1/dashboards.rb +7 -2
  36. data/lib/metronome_sdk/version.rb +1 -1
  37. data/lib/metronome_sdk.rb +2 -0
  38. data/rbi/metronome_sdk/models/commit.rbi +13 -0
  39. data/rbi/metronome_sdk/models/contract_v2.rbi +715 -3
  40. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +463 -0
  41. data/rbi/metronome_sdk/models/credit.rbi +13 -0
  42. data/rbi/metronome_sdk/models/override.rbi +9 -0
  43. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +11 -1
  44. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +4 -0
  45. data/rbi/metronome_sdk/models/subscription.rbi +212 -3
  46. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +373 -0
  47. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +27 -6
  48. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +719 -9
  49. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +463 -0
  50. data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbi +112 -0
  51. data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbi +119 -0
  52. data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_params.rbi +13 -0
  53. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +360 -0
  54. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +379 -2
  55. data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +13 -0
  56. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +10 -0
  57. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +706 -9
  58. data/rbi/metronome_sdk/models/v1/package_list_response.rbi +693 -3
  59. data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +693 -3
  60. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1333 -40
  61. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +1204 -67
  62. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1204 -67
  63. data/rbi/metronome_sdk/resources/v1/alerts.rbi +8 -0
  64. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +4 -0
  65. data/rbi/metronome_sdk/resources/v1/contracts.rbi +70 -0
  66. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +8 -1
  67. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +4 -0
  68. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +7 -2
  69. data/sig/metronome_sdk/models/commit.rbs +7 -0
  70. data/sig/metronome_sdk/models/contract_v2.rbs +278 -5
  71. data/sig/metronome_sdk/models/contract_without_amendments.rbs +169 -2
  72. data/sig/metronome_sdk/models/credit.rbs +7 -0
  73. data/sig/metronome_sdk/models/override.rbs +7 -0
  74. data/sig/metronome_sdk/models/subscription.rbs +88 -3
  75. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +144 -0
  76. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +7 -0
  77. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +278 -5
  78. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +167 -2
  79. data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbs +63 -0
  80. data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbs +59 -0
  81. data/sig/metronome_sdk/models/v1/contract_list_seat_balances_params.rbs +7 -0
  82. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +141 -0
  83. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +150 -0
  84. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +8 -1
  85. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +4 -0
  86. data/sig/metronome_sdk/models/v1/package_create_params.rbs +271 -5
  87. data/sig/metronome_sdk/models/v1/package_list_response.rbs +265 -5
  88. data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +263 -5
  89. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +468 -5
  90. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +428 -5
  91. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +427 -5
  92. data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
  93. data/sig/metronome_sdk/resources/v1/contracts.rbs +13 -0
  94. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
  95. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -0
  96. metadata +8 -2
@@ -848,6 +848,7 @@ module MetronomeSDK
848
848
 
849
849
  type override_specifier =
850
850
  {
851
+ any_commit_or_credit_ids: ::Array[String],
851
852
  billing_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddOverride::OverrideSpecifier::billing_frequency,
852
853
  commit_ids: ::Array[String],
853
854
  presentation_group_values: ::Hash[Symbol, String?],
@@ -858,6 +859,12 @@ module MetronomeSDK
858
859
  }
859
860
 
860
861
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
862
+ attr_reader any_commit_or_credit_ids: ::Array[String]?
863
+
864
+ def any_commit_or_credit_ids=: (
865
+ ::Array[String]
866
+ ) -> ::Array[String]
867
+
861
868
  attr_reader billing_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddOverride::OverrideSpecifier::billing_frequency?
862
869
 
863
870
  def billing_frequency=: (
@@ -893,6 +900,7 @@ module MetronomeSDK
893
900
  def recurring_commit_ids=: (::Array[String]) -> ::Array[String]
894
901
 
895
902
  def initialize: (
903
+ ?any_commit_or_credit_ids: ::Array[String],
896
904
  ?billing_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddOverride::OverrideSpecifier::billing_frequency,
897
905
  ?commit_ids: ::Array[String],
898
906
  ?presentation_group_values: ::Hash[Symbol, String?],
@@ -903,6 +911,7 @@ module MetronomeSDK
903
911
  ) -> void
904
912
 
905
913
  def to_hash: -> {
914
+ any_commit_or_credit_ids: ::Array[String],
906
915
  billing_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddOverride::OverrideSpecifier::billing_frequency,
907
916
  commit_ids: ::Array[String],
908
917
  presentation_group_values: ::Hash[Symbol, String?],
@@ -1066,6 +1075,7 @@ module MetronomeSDK
1066
1075
  name: String,
1067
1076
  netsuite_sales_order_id: String,
1068
1077
  proration: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::proration,
1078
+ proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding?,
1069
1079
  recurrence_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::recurrence_frequency,
1070
1080
  rollover_fraction: Float,
1071
1081
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1135,6 +1145,8 @@ module MetronomeSDK
1135
1145
  MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::proration
1136
1146
  ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::proration
1137
1147
 
1148
+ attr_accessor proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding?
1149
+
1138
1150
  attr_reader recurrence_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::recurrence_frequency?
1139
1151
 
1140
1152
  def recurrence_frequency=: (
@@ -1175,6 +1187,7 @@ module MetronomeSDK
1175
1187
  ?name: String,
1176
1188
  ?netsuite_sales_order_id: String,
1177
1189
  ?proration: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::proration,
1190
+ ?proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding?,
1178
1191
  ?recurrence_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::recurrence_frequency,
1179
1192
  ?rollover_fraction: Float,
1180
1193
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1199,6 +1212,7 @@ module MetronomeSDK
1199
1212
  name: String,
1200
1213
  netsuite_sales_order_id: String,
1201
1214
  proration: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::proration,
1215
+ proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding?,
1202
1216
  recurrence_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::recurrence_frequency,
1203
1217
  rollover_fraction: Float,
1204
1218
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1335,8 +1349,106 @@ module MetronomeSDK
1335
1349
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::proration]
1336
1350
  end
1337
1351
 
1352
+ type proration_rounding =
1353
+ {
1354
+ access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access,
1355
+ invoice: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice
1356
+ }
1357
+
1358
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
1359
+ attr_reader access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access?
1360
+
1361
+ def access=: (
1362
+ MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access
1363
+ ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access
1364
+
1365
+ attr_reader invoice: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice?
1366
+
1367
+ def invoice=: (
1368
+ MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice
1369
+ ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice
1370
+
1371
+ def initialize: (
1372
+ ?access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access,
1373
+ ?invoice: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice
1374
+ ) -> void
1375
+
1376
+ def to_hash: -> {
1377
+ access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access,
1378
+ invoice: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice
1379
+ }
1380
+
1381
+ type access =
1382
+ {
1383
+ decimal_places: Float,
1384
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access::rounding_method
1385
+ }
1386
+
1387
+ class Access < MetronomeSDK::Internal::Type::BaseModel
1388
+ attr_accessor decimal_places: Float
1389
+
1390
+ attr_accessor rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access::rounding_method
1391
+
1392
+ def initialize: (
1393
+ decimal_places: Float,
1394
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access::rounding_method
1395
+ ) -> void
1396
+
1397
+ def to_hash: -> {
1398
+ decimal_places: Float,
1399
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access::rounding_method
1400
+ }
1401
+
1402
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
1403
+
1404
+ module RoundingMethod
1405
+ extend MetronomeSDK::Internal::Type::Enum
1406
+
1407
+ HALF_UP: :HALF_UP
1408
+ FLOOR: :FLOOR
1409
+ CEILING: :CEILING
1410
+
1411
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Access::rounding_method]
1412
+ end
1413
+ end
1414
+
1415
+ type invoice =
1416
+ {
1417
+ decimal_places: Float,
1418
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice::rounding_method
1419
+ }
1420
+
1421
+ class Invoice < MetronomeSDK::Internal::Type::BaseModel
1422
+ attr_accessor decimal_places: Float
1423
+
1424
+ attr_accessor rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice::rounding_method
1425
+
1426
+ def initialize: (
1427
+ decimal_places: Float,
1428
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice::rounding_method
1429
+ ) -> void
1430
+
1431
+ def to_hash: -> {
1432
+ decimal_places: Float,
1433
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice::rounding_method
1434
+ }
1435
+
1436
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
1437
+
1438
+ module RoundingMethod
1439
+ extend MetronomeSDK::Internal::Type::Enum
1440
+
1441
+ HALF_UP: :HALF_UP
1442
+ FLOOR: :FLOOR
1443
+ CEILING: :CEILING
1444
+
1445
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::ProrationRounding::Invoice::rounding_method]
1446
+ end
1447
+ end
1448
+ end
1449
+
1338
1450
  type recurrence_frequency =
1339
- :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
1451
+ :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY | :DAILY
1340
1452
 
1341
1453
  module RecurrenceFrequency
1342
1454
  extend MetronomeSDK::Internal::Type::Enum
@@ -1345,6 +1457,7 @@ module MetronomeSDK
1345
1457
  QUARTERLY: :QUARTERLY
1346
1458
  ANNUAL: :ANNUAL
1347
1459
  WEEKLY: :WEEKLY
1460
+ DAILY: :DAILY
1348
1461
 
1349
1462
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCommit::recurrence_frequency]
1350
1463
  end
@@ -1368,6 +1481,7 @@ module MetronomeSDK
1368
1481
  name: String,
1369
1482
  netsuite_sales_order_id: String,
1370
1483
  proration: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::proration,
1484
+ proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding?,
1371
1485
  recurrence_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::recurrence_frequency,
1372
1486
  rollover_fraction: Float,
1373
1487
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1431,6 +1545,8 @@ module MetronomeSDK
1431
1545
  MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::proration
1432
1546
  ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::proration
1433
1547
 
1548
+ attr_accessor proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding?
1549
+
1434
1550
  attr_reader recurrence_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::recurrence_frequency?
1435
1551
 
1436
1552
  def recurrence_frequency=: (
@@ -1470,6 +1586,7 @@ module MetronomeSDK
1470
1586
  ?name: String,
1471
1587
  ?netsuite_sales_order_id: String,
1472
1588
  ?proration: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::proration,
1589
+ ?proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding?,
1473
1590
  ?recurrence_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::recurrence_frequency,
1474
1591
  ?rollover_fraction: Float,
1475
1592
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1493,6 +1610,7 @@ module MetronomeSDK
1493
1610
  name: String,
1494
1611
  netsuite_sales_order_id: String,
1495
1612
  proration: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::proration,
1613
+ proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding?,
1496
1614
  recurrence_frequency: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::recurrence_frequency,
1497
1615
  rollover_fraction: Float,
1498
1616
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1606,8 +1724,63 @@ module MetronomeSDK
1606
1724
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::proration]
1607
1725
  end
1608
1726
 
1727
+ type proration_rounding =
1728
+ {
1729
+ access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access
1730
+ }
1731
+
1732
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
1733
+ attr_reader access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access?
1734
+
1735
+ def access=: (
1736
+ MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access
1737
+ ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access
1738
+
1739
+ def initialize: (
1740
+ ?access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access
1741
+ ) -> void
1742
+
1743
+ def to_hash: -> {
1744
+ access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access
1745
+ }
1746
+
1747
+ type access =
1748
+ {
1749
+ decimal_places: Float,
1750
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access::rounding_method
1751
+ }
1752
+
1753
+ class Access < MetronomeSDK::Internal::Type::BaseModel
1754
+ attr_accessor decimal_places: Float
1755
+
1756
+ attr_accessor rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access::rounding_method
1757
+
1758
+ def initialize: (
1759
+ decimal_places: Float,
1760
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access::rounding_method
1761
+ ) -> void
1762
+
1763
+ def to_hash: -> {
1764
+ decimal_places: Float,
1765
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access::rounding_method
1766
+ }
1767
+
1768
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
1769
+
1770
+ module RoundingMethod
1771
+ extend MetronomeSDK::Internal::Type::Enum
1772
+
1773
+ HALF_UP: :HALF_UP
1774
+ FLOOR: :FLOOR
1775
+ CEILING: :CEILING
1776
+
1777
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::ProrationRounding::Access::rounding_method]
1778
+ end
1779
+ end
1780
+ end
1781
+
1609
1782
  type recurrence_frequency =
1610
- :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
1783
+ :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY | :DAILY
1611
1784
 
1612
1785
  module RecurrenceFrequency
1613
1786
  extend MetronomeSDK::Internal::Type::Enum
@@ -1616,6 +1789,7 @@ module MetronomeSDK
1616
1789
  QUARTERLY: :QUARTERLY
1617
1790
  ANNUAL: :ANNUAL
1618
1791
  WEEKLY: :WEEKLY
1792
+ DAILY: :DAILY
1619
1793
 
1620
1794
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddRecurringCredit::recurrence_frequency]
1621
1795
  end
@@ -1797,6 +1971,7 @@ module MetronomeSDK
1797
1971
  starting_at: Time,
1798
1972
  subscription_rate: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::SubscriptionRate,
1799
1973
  id: String,
1974
+ billing_cycle_config: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig,
1800
1975
  custom_fields: ::Hash[Symbol, String],
1801
1976
  description: String,
1802
1977
  ending_before: Time,
@@ -1824,6 +1999,12 @@ module MetronomeSDK
1824
1999
 
1825
2000
  def id=: (String) -> String
1826
2001
 
2002
+ attr_reader billing_cycle_config: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig?
2003
+
2004
+ def billing_cycle_config=: (
2005
+ MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig
2006
+ ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig
2007
+
1827
2008
  attr_reader custom_fields: ::Hash[Symbol, String]?
1828
2009
 
1829
2010
  def custom_fields=: (
@@ -1861,6 +2042,7 @@ module MetronomeSDK
1861
2042
  starting_at: Time,
1862
2043
  subscription_rate: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::SubscriptionRate,
1863
2044
  ?id: String,
2045
+ ?billing_cycle_config: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig,
1864
2046
  ?custom_fields: ::Hash[Symbol, String],
1865
2047
  ?description: String,
1866
2048
  ?ending_before: Time,
@@ -1878,6 +2060,7 @@ module MetronomeSDK
1878
2060
  starting_at: Time,
1879
2061
  subscription_rate: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::SubscriptionRate,
1880
2062
  id: String,
2063
+ billing_cycle_config: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig,
1881
2064
  custom_fields: ::Hash[Symbol, String],
1882
2065
  description: String,
1883
2066
  ending_before: Time,
@@ -1984,7 +2167,8 @@ module MetronomeSDK
1984
2167
  type proration =
1985
2168
  {
1986
2169
  invoice_behavior: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::invoice_behavior,
1987
- is_prorated: bool
2170
+ is_prorated: bool,
2171
+ rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding
1988
2172
  }
1989
2173
 
1990
2174
  class Proration < MetronomeSDK::Internal::Type::BaseModel
@@ -1992,14 +2176,22 @@ module MetronomeSDK
1992
2176
 
1993
2177
  attr_accessor is_prorated: bool
1994
2178
 
2179
+ attr_reader rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding?
2180
+
2181
+ def rounding=: (
2182
+ MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding
2183
+ ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding
2184
+
1995
2185
  def initialize: (
1996
2186
  invoice_behavior: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::invoice_behavior,
1997
- is_prorated: bool
2187
+ is_prorated: bool,
2188
+ ?rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding
1998
2189
  ) -> void
1999
2190
 
2000
2191
  def to_hash: -> {
2001
2192
  invoice_behavior: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::invoice_behavior,
2002
- is_prorated: bool
2193
+ is_prorated: bool,
2194
+ rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding
2003
2195
  }
2004
2196
 
2005
2197
  type invoice_behavior =
@@ -2013,6 +2205,40 @@ module MetronomeSDK
2013
2205
 
2014
2206
  def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::invoice_behavior]
2015
2207
  end
2208
+
2209
+ type rounding =
2210
+ {
2211
+ decimal_places: Float,
2212
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding::rounding_method
2213
+ }
2214
+
2215
+ class Rounding < MetronomeSDK::Internal::Type::BaseModel
2216
+ attr_accessor decimal_places: Float
2217
+
2218
+ attr_accessor rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding::rounding_method
2219
+
2220
+ def initialize: (
2221
+ decimal_places: Float,
2222
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding::rounding_method
2223
+ ) -> void
2224
+
2225
+ def to_hash: -> {
2226
+ decimal_places: Float,
2227
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding::rounding_method
2228
+ }
2229
+
2230
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
2231
+
2232
+ module RoundingMethod
2233
+ extend MetronomeSDK::Internal::Type::Enum
2234
+
2235
+ HALF_UP: :HALF_UP
2236
+ FLOOR: :FLOOR
2237
+ CEILING: :CEILING
2238
+
2239
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::Proration::Rounding::rounding_method]
2240
+ end
2241
+ end
2016
2242
  end
2017
2243
 
2018
2244
  type quantity_management_mode = :SEAT_BASED | :QUANTITY_ONLY
@@ -2099,6 +2325,40 @@ module MetronomeSDK
2099
2325
  end
2100
2326
  end
2101
2327
 
2328
+ type billing_cycle_config =
2329
+ {
2330
+ anchor_date: Time,
2331
+ invoice_placement: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig::invoice_placement
2332
+ }
2333
+
2334
+ class BillingCycleConfig < MetronomeSDK::Internal::Type::BaseModel
2335
+ attr_accessor anchor_date: Time
2336
+
2337
+ attr_accessor invoice_placement: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig::invoice_placement
2338
+
2339
+ def initialize: (
2340
+ anchor_date: Time,
2341
+ invoice_placement: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig::invoice_placement
2342
+ ) -> void
2343
+
2344
+ def to_hash: -> {
2345
+ anchor_date: Time,
2346
+ invoice_placement: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig::invoice_placement
2347
+ }
2348
+
2349
+ type invoice_placement =
2350
+ :ON_SCHEDULED_INVOICE | :ON_USAGE_INVOICE
2351
+
2352
+ module InvoicePlacement
2353
+ extend MetronomeSDK::Internal::Type::Enum
2354
+
2355
+ ON_SCHEDULED_INVOICE: :ON_SCHEDULED_INVOICE
2356
+ ON_USAGE_INVOICE: :ON_USAGE_INVOICE
2357
+
2358
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::AddSubscription::BillingCycleConfig::invoice_placement]
2359
+ end
2360
+ end
2361
+
2102
2362
  type seat_config = { seat_group_key: String }
2103
2363
 
2104
2364
  class SeatConfig < MetronomeSDK::Internal::Type::BaseModel
@@ -3190,6 +3450,7 @@ module MetronomeSDK
3190
3450
  access_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::AccessAmount,
3191
3451
  ending_before: Time,
3192
3452
  invoice_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::InvoiceAmount,
3453
+ proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding?,
3193
3454
  rate_type: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::rate_type
3194
3455
  }
3195
3456
 
@@ -3212,6 +3473,8 @@ module MetronomeSDK
3212
3473
  MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::InvoiceAmount
3213
3474
  ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::InvoiceAmount
3214
3475
 
3476
+ attr_accessor proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding?
3477
+
3215
3478
  attr_reader rate_type: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::rate_type?
3216
3479
 
3217
3480
  def rate_type=: (
@@ -3223,6 +3486,7 @@ module MetronomeSDK
3223
3486
  ?access_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::AccessAmount,
3224
3487
  ?ending_before: Time,
3225
3488
  ?invoice_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::InvoiceAmount,
3489
+ ?proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding?,
3226
3490
  ?rate_type: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::rate_type
3227
3491
  ) -> void
3228
3492
 
@@ -3231,6 +3495,7 @@ module MetronomeSDK
3231
3495
  access_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::AccessAmount,
3232
3496
  ending_before: Time,
3233
3497
  invoice_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::InvoiceAmount,
3498
+ proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding?,
3234
3499
  rate_type: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::rate_type
3235
3500
  }
3236
3501
 
@@ -3266,6 +3531,104 @@ module MetronomeSDK
3266
3531
  def to_hash: -> { quantity: Float, unit_price: Float }
3267
3532
  end
3268
3533
 
3534
+ type proration_rounding =
3535
+ {
3536
+ access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access,
3537
+ invoice: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice
3538
+ }
3539
+
3540
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
3541
+ attr_reader access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access?
3542
+
3543
+ def access=: (
3544
+ MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access
3545
+ ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access
3546
+
3547
+ attr_reader invoice: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice?
3548
+
3549
+ def invoice=: (
3550
+ MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice
3551
+ ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice
3552
+
3553
+ def initialize: (
3554
+ ?access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access,
3555
+ ?invoice: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice
3556
+ ) -> void
3557
+
3558
+ def to_hash: -> {
3559
+ access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access,
3560
+ invoice: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice
3561
+ }
3562
+
3563
+ type access =
3564
+ {
3565
+ decimal_places: Float,
3566
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access::rounding_method
3567
+ }
3568
+
3569
+ class Access < MetronomeSDK::Internal::Type::BaseModel
3570
+ attr_accessor decimal_places: Float
3571
+
3572
+ attr_accessor rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access::rounding_method
3573
+
3574
+ def initialize: (
3575
+ decimal_places: Float,
3576
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access::rounding_method
3577
+ ) -> void
3578
+
3579
+ def to_hash: -> {
3580
+ decimal_places: Float,
3581
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access::rounding_method
3582
+ }
3583
+
3584
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
3585
+
3586
+ module RoundingMethod
3587
+ extend MetronomeSDK::Internal::Type::Enum
3588
+
3589
+ HALF_UP: :HALF_UP
3590
+ FLOOR: :FLOOR
3591
+ CEILING: :CEILING
3592
+
3593
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Access::rounding_method]
3594
+ end
3595
+ end
3596
+
3597
+ type invoice =
3598
+ {
3599
+ decimal_places: Float,
3600
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice::rounding_method
3601
+ }
3602
+
3603
+ class Invoice < MetronomeSDK::Internal::Type::BaseModel
3604
+ attr_accessor decimal_places: Float
3605
+
3606
+ attr_accessor rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice::rounding_method
3607
+
3608
+ def initialize: (
3609
+ decimal_places: Float,
3610
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice::rounding_method
3611
+ ) -> void
3612
+
3613
+ def to_hash: -> {
3614
+ decimal_places: Float,
3615
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice::rounding_method
3616
+ }
3617
+
3618
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
3619
+
3620
+ module RoundingMethod
3621
+ extend MetronomeSDK::Internal::Type::Enum
3622
+
3623
+ HALF_UP: :HALF_UP
3624
+ FLOOR: :FLOOR
3625
+ CEILING: :CEILING
3626
+
3627
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCommit::ProrationRounding::Invoice::rounding_method]
3628
+ end
3629
+ end
3630
+ end
3631
+
3269
3632
  type rate_type = :LIST_RATE | :COMMIT_RATE
3270
3633
 
3271
3634
  module RateType
@@ -3283,6 +3646,7 @@ module MetronomeSDK
3283
3646
  id: String,
3284
3647
  access_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::AccessAmount,
3285
3648
  ending_before: Time,
3649
+ proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding?,
3286
3650
  rate_type: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::rate_type
3287
3651
  }
3288
3652
 
@@ -3299,6 +3663,8 @@ module MetronomeSDK
3299
3663
 
3300
3664
  def ending_before=: (Time) -> Time
3301
3665
 
3666
+ attr_accessor proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding?
3667
+
3302
3668
  attr_reader rate_type: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::rate_type?
3303
3669
 
3304
3670
  def rate_type=: (
@@ -3309,6 +3675,7 @@ module MetronomeSDK
3309
3675
  id: String,
3310
3676
  ?access_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::AccessAmount,
3311
3677
  ?ending_before: Time,
3678
+ ?proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding?,
3312
3679
  ?rate_type: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::rate_type
3313
3680
  ) -> void
3314
3681
 
@@ -3316,6 +3683,7 @@ module MetronomeSDK
3316
3683
  id: String,
3317
3684
  access_amount: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::AccessAmount,
3318
3685
  ending_before: Time,
3686
+ proration_rounding: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding?,
3319
3687
  rate_type: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::rate_type
3320
3688
  }
3321
3689
 
@@ -3335,6 +3703,61 @@ module MetronomeSDK
3335
3703
  def to_hash: -> { quantity: Float, unit_price: Float }
3336
3704
  end
3337
3705
 
3706
+ type proration_rounding =
3707
+ {
3708
+ access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access
3709
+ }
3710
+
3711
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
3712
+ attr_reader access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access?
3713
+
3714
+ def access=: (
3715
+ MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access
3716
+ ) -> MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access
3717
+
3718
+ def initialize: (
3719
+ ?access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access
3720
+ ) -> void
3721
+
3722
+ def to_hash: -> {
3723
+ access: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access
3724
+ }
3725
+
3726
+ type access =
3727
+ {
3728
+ decimal_places: Float,
3729
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access::rounding_method
3730
+ }
3731
+
3732
+ class Access < MetronomeSDK::Internal::Type::BaseModel
3733
+ attr_accessor decimal_places: Float
3734
+
3735
+ attr_accessor rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access::rounding_method
3736
+
3737
+ def initialize: (
3738
+ decimal_places: Float,
3739
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access::rounding_method
3740
+ ) -> void
3741
+
3742
+ def to_hash: -> {
3743
+ decimal_places: Float,
3744
+ rounding_method: MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access::rounding_method
3745
+ }
3746
+
3747
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
3748
+
3749
+ module RoundingMethod
3750
+ extend MetronomeSDK::Internal::Type::Enum
3751
+
3752
+ HALF_UP: :HALF_UP
3753
+ FLOOR: :FLOOR
3754
+ CEILING: :CEILING
3755
+
3756
+ def self?.values: -> ::Array[MetronomeSDK::Models::V2::ContractEditResponse::Data::Edit::UpdateRecurringCredit::ProrationRounding::Access::rounding_method]
3757
+ end
3758
+ end
3759
+ end
3760
+
3338
3761
  type rate_type = :LIST_RATE | :COMMIT_RATE
3339
3762
 
3340
3763
  module RateType