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
@@ -687,6 +687,7 @@ module MetronomeSDK
687
687
 
688
688
  type override_specifier =
689
689
  {
690
+ any_commit_or_credit_template_ids: ::Array[String],
690
691
  billing_frequency: MetronomeSDK::Models::V1::PackageListResponse::Override::OverrideSpecifier::billing_frequency,
691
692
  commit_template_ids: ::Array[String],
692
693
  presentation_group_values: ::Hash[Symbol, String?],
@@ -697,6 +698,12 @@ module MetronomeSDK
697
698
  }
698
699
 
699
700
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
701
+ attr_reader any_commit_or_credit_template_ids: ::Array[String]?
702
+
703
+ def any_commit_or_credit_template_ids=: (
704
+ ::Array[String]
705
+ ) -> ::Array[String]
706
+
700
707
  attr_reader billing_frequency: MetronomeSDK::Models::V1::PackageListResponse::Override::OverrideSpecifier::billing_frequency?
701
708
 
702
709
  def billing_frequency=: (
@@ -734,6 +741,7 @@ module MetronomeSDK
734
741
  ) -> ::Array[String]
735
742
 
736
743
  def initialize: (
744
+ ?any_commit_or_credit_template_ids: ::Array[String],
737
745
  ?billing_frequency: MetronomeSDK::Models::V1::PackageListResponse::Override::OverrideSpecifier::billing_frequency,
738
746
  ?commit_template_ids: ::Array[String],
739
747
  ?presentation_group_values: ::Hash[Symbol, String?],
@@ -744,6 +752,7 @@ module MetronomeSDK
744
752
  ) -> void
745
753
 
746
754
  def to_hash: -> {
755
+ any_commit_or_credit_template_ids: ::Array[String],
747
756
  billing_frequency: MetronomeSDK::Models::V1::PackageListResponse::Override::OverrideSpecifier::billing_frequency,
748
757
  commit_template_ids: ::Array[String],
749
758
  presentation_group_values: ::Hash[Symbol, String?],
@@ -1439,6 +1448,7 @@ module MetronomeSDK
1439
1448
  invoice_amount: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::InvoiceAmount,
1440
1449
  name: String,
1441
1450
  proration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::proration,
1451
+ proration_rounding: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding?,
1442
1452
  recurrence_frequency: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::recurrence_frequency,
1443
1453
  rollover_fraction: Float,
1444
1454
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1494,6 +1504,8 @@ module MetronomeSDK
1494
1504
  MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::proration
1495
1505
  ) -> MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::proration
1496
1506
 
1507
+ attr_accessor proration_rounding: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding?
1508
+
1497
1509
  attr_reader recurrence_frequency: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::recurrence_frequency?
1498
1510
 
1499
1511
  def recurrence_frequency=: (
@@ -1531,6 +1543,7 @@ module MetronomeSDK
1531
1543
  ?invoice_amount: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::InvoiceAmount,
1532
1544
  ?name: String,
1533
1545
  ?proration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::proration,
1546
+ ?proration_rounding: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding?,
1534
1547
  ?recurrence_frequency: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::recurrence_frequency,
1535
1548
  ?rollover_fraction: Float,
1536
1549
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1552,6 +1565,7 @@ module MetronomeSDK
1552
1565
  invoice_amount: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::InvoiceAmount,
1553
1566
  name: String,
1554
1567
  proration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::proration,
1568
+ proration_rounding: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding?,
1555
1569
  recurrence_frequency: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::recurrence_frequency,
1556
1570
  rollover_fraction: Float,
1557
1571
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1748,7 +1762,106 @@ module MetronomeSDK
1748
1762
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::proration]
1749
1763
  end
1750
1764
 
1751
- type recurrence_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
1765
+ type proration_rounding =
1766
+ {
1767
+ access: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access,
1768
+ invoice: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice
1769
+ }
1770
+
1771
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
1772
+ attr_reader access: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access?
1773
+
1774
+ def access=: (
1775
+ MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access
1776
+ ) -> MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access
1777
+
1778
+ attr_reader invoice: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice?
1779
+
1780
+ def invoice=: (
1781
+ MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice
1782
+ ) -> MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice
1783
+
1784
+ def initialize: (
1785
+ ?access: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access,
1786
+ ?invoice: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice
1787
+ ) -> void
1788
+
1789
+ def to_hash: -> {
1790
+ access: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access,
1791
+ invoice: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice
1792
+ }
1793
+
1794
+ type access =
1795
+ {
1796
+ decimal_places: Float,
1797
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access::rounding_method
1798
+ }
1799
+
1800
+ class Access < MetronomeSDK::Internal::Type::BaseModel
1801
+ attr_accessor decimal_places: Float
1802
+
1803
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access::rounding_method
1804
+
1805
+ def initialize: (
1806
+ decimal_places: Float,
1807
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access::rounding_method
1808
+ ) -> void
1809
+
1810
+ def to_hash: -> {
1811
+ decimal_places: Float,
1812
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access::rounding_method
1813
+ }
1814
+
1815
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
1816
+
1817
+ module RoundingMethod
1818
+ extend MetronomeSDK::Internal::Type::Enum
1819
+
1820
+ HALF_UP: :HALF_UP
1821
+ FLOOR: :FLOOR
1822
+ CEILING: :CEILING
1823
+
1824
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Access::rounding_method]
1825
+ end
1826
+ end
1827
+
1828
+ type invoice =
1829
+ {
1830
+ decimal_places: Float,
1831
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice::rounding_method
1832
+ }
1833
+
1834
+ class Invoice < MetronomeSDK::Internal::Type::BaseModel
1835
+ attr_accessor decimal_places: Float
1836
+
1837
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice::rounding_method
1838
+
1839
+ def initialize: (
1840
+ decimal_places: Float,
1841
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice::rounding_method
1842
+ ) -> void
1843
+
1844
+ def to_hash: -> {
1845
+ decimal_places: Float,
1846
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice::rounding_method
1847
+ }
1848
+
1849
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
1850
+
1851
+ module RoundingMethod
1852
+ extend MetronomeSDK::Internal::Type::Enum
1853
+
1854
+ HALF_UP: :HALF_UP
1855
+ FLOOR: :FLOOR
1856
+ CEILING: :CEILING
1857
+
1858
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::ProrationRounding::Invoice::rounding_method]
1859
+ end
1860
+ end
1861
+ end
1862
+
1863
+ type recurrence_frequency =
1864
+ :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY | :DAILY
1752
1865
 
1753
1866
  module RecurrenceFrequency
1754
1867
  extend MetronomeSDK::Internal::Type::Enum
@@ -1757,6 +1870,7 @@ module MetronomeSDK
1757
1870
  QUARTERLY: :QUARTERLY
1758
1871
  ANNUAL: :ANNUAL
1759
1872
  WEEKLY: :WEEKLY
1873
+ DAILY: :DAILY
1760
1874
 
1761
1875
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::RecurringCommit::recurrence_frequency]
1762
1876
  end
@@ -1825,6 +1939,7 @@ module MetronomeSDK
1825
1939
  duration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::Duration,
1826
1940
  name: String,
1827
1941
  proration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::proration,
1942
+ proration_rounding: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding?,
1828
1943
  recurrence_frequency: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::recurrence_frequency,
1829
1944
  rollover_fraction: Float,
1830
1945
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1874,6 +1989,8 @@ module MetronomeSDK
1874
1989
  MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::proration
1875
1990
  ) -> MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::proration
1876
1991
 
1992
+ attr_accessor proration_rounding: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding?
1993
+
1877
1994
  attr_reader recurrence_frequency: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::recurrence_frequency?
1878
1995
 
1879
1996
  def recurrence_frequency=: (
@@ -1910,6 +2027,7 @@ module MetronomeSDK
1910
2027
  ?duration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::Duration,
1911
2028
  ?name: String,
1912
2029
  ?proration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::proration,
2030
+ ?proration_rounding: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding?,
1913
2031
  ?recurrence_frequency: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::recurrence_frequency,
1914
2032
  ?rollover_fraction: Float,
1915
2033
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1930,6 +2048,7 @@ module MetronomeSDK
1930
2048
  duration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::Duration,
1931
2049
  name: String,
1932
2050
  proration: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::proration,
2051
+ proration_rounding: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding?,
1933
2052
  recurrence_frequency: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::recurrence_frequency,
1934
2053
  rollover_fraction: Float,
1935
2054
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -2103,7 +2222,63 @@ module MetronomeSDK
2103
2222
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::proration]
2104
2223
  end
2105
2224
 
2106
- type recurrence_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
2225
+ type proration_rounding =
2226
+ {
2227
+ access: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access
2228
+ }
2229
+
2230
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
2231
+ attr_reader access: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access?
2232
+
2233
+ def access=: (
2234
+ MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access
2235
+ ) -> MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access
2236
+
2237
+ def initialize: (
2238
+ ?access: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access
2239
+ ) -> void
2240
+
2241
+ def to_hash: -> {
2242
+ access: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access
2243
+ }
2244
+
2245
+ type access =
2246
+ {
2247
+ decimal_places: Float,
2248
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access::rounding_method
2249
+ }
2250
+
2251
+ class Access < MetronomeSDK::Internal::Type::BaseModel
2252
+ attr_accessor decimal_places: Float
2253
+
2254
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access::rounding_method
2255
+
2256
+ def initialize: (
2257
+ decimal_places: Float,
2258
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access::rounding_method
2259
+ ) -> void
2260
+
2261
+ def to_hash: -> {
2262
+ decimal_places: Float,
2263
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access::rounding_method
2264
+ }
2265
+
2266
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
2267
+
2268
+ module RoundingMethod
2269
+ extend MetronomeSDK::Internal::Type::Enum
2270
+
2271
+ HALF_UP: :HALF_UP
2272
+ FLOOR: :FLOOR
2273
+ CEILING: :CEILING
2274
+
2275
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::ProrationRounding::Access::rounding_method]
2276
+ end
2277
+ end
2278
+ end
2279
+
2280
+ type recurrence_frequency =
2281
+ :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY | :DAILY
2107
2282
 
2108
2283
  module RecurrenceFrequency
2109
2284
  extend MetronomeSDK::Internal::Type::Enum
@@ -2112,6 +2287,7 @@ module MetronomeSDK
2112
2287
  QUARTERLY: :QUARTERLY
2113
2288
  ANNUAL: :ANNUAL
2114
2289
  WEEKLY: :WEEKLY
2290
+ DAILY: :DAILY
2115
2291
 
2116
2292
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::RecurringCredit::recurrence_frequency]
2117
2293
  end
@@ -2287,6 +2463,7 @@ module MetronomeSDK
2287
2463
  proration: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration,
2288
2464
  subscription_rate: MetronomeSDK::Models::V1::PackageListResponse::Subscription::SubscriptionRate,
2289
2465
  id: String,
2466
+ billing_cycle_config: MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig,
2290
2467
  custom_fields: ::Hash[Symbol, String],
2291
2468
  description: String,
2292
2469
  duration: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Duration,
@@ -2309,6 +2486,12 @@ module MetronomeSDK
2309
2486
 
2310
2487
  def id=: (String) -> String
2311
2488
 
2489
+ attr_reader billing_cycle_config: MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig?
2490
+
2491
+ def billing_cycle_config=: (
2492
+ MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig
2493
+ ) -> MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig
2494
+
2312
2495
  attr_reader custom_fields: ::Hash[Symbol, String]?
2313
2496
 
2314
2497
  def custom_fields=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
@@ -2358,6 +2541,7 @@ module MetronomeSDK
2358
2541
  proration: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration,
2359
2542
  subscription_rate: MetronomeSDK::Models::V1::PackageListResponse::Subscription::SubscriptionRate,
2360
2543
  ?id: String,
2544
+ ?billing_cycle_config: MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig,
2361
2545
  ?custom_fields: ::Hash[Symbol, String],
2362
2546
  ?description: String,
2363
2547
  ?duration: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Duration,
@@ -2374,6 +2558,7 @@ module MetronomeSDK
2374
2558
  proration: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration,
2375
2559
  subscription_rate: MetronomeSDK::Models::V1::PackageListResponse::Subscription::SubscriptionRate,
2376
2560
  id: String,
2561
+ billing_cycle_config: MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig,
2377
2562
  custom_fields: ::Hash[Symbol, String],
2378
2563
  description: String,
2379
2564
  duration: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Duration,
@@ -2399,7 +2584,8 @@ module MetronomeSDK
2399
2584
  type proration =
2400
2585
  {
2401
2586
  invoice_behavior: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::invoice_behavior,
2402
- is_prorated: bool
2587
+ is_prorated: bool,
2588
+ rounding: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding
2403
2589
  }
2404
2590
 
2405
2591
  class Proration < MetronomeSDK::Internal::Type::BaseModel
@@ -2407,14 +2593,22 @@ module MetronomeSDK
2407
2593
 
2408
2594
  attr_accessor is_prorated: bool
2409
2595
 
2596
+ attr_reader rounding: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding?
2597
+
2598
+ def rounding=: (
2599
+ MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding
2600
+ ) -> MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding
2601
+
2410
2602
  def initialize: (
2411
2603
  invoice_behavior: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::invoice_behavior,
2412
- is_prorated: bool
2604
+ is_prorated: bool,
2605
+ ?rounding: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding
2413
2606
  ) -> void
2414
2607
 
2415
2608
  def to_hash: -> {
2416
2609
  invoice_behavior: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::invoice_behavior,
2417
- is_prorated: bool
2610
+ is_prorated: bool,
2611
+ rounding: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding
2418
2612
  }
2419
2613
 
2420
2614
  type invoice_behavior =
@@ -2428,6 +2622,40 @@ module MetronomeSDK
2428
2622
 
2429
2623
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::invoice_behavior]
2430
2624
  end
2625
+
2626
+ type rounding =
2627
+ {
2628
+ decimal_places: Float,
2629
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding::rounding_method
2630
+ }
2631
+
2632
+ class Rounding < MetronomeSDK::Internal::Type::BaseModel
2633
+ attr_accessor decimal_places: Float
2634
+
2635
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding::rounding_method
2636
+
2637
+ def initialize: (
2638
+ decimal_places: Float,
2639
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding::rounding_method
2640
+ ) -> void
2641
+
2642
+ def to_hash: -> {
2643
+ decimal_places: Float,
2644
+ rounding_method: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding::rounding_method
2645
+ }
2646
+
2647
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
2648
+
2649
+ module RoundingMethod
2650
+ extend MetronomeSDK::Internal::Type::Enum
2651
+
2652
+ HALF_UP: :HALF_UP
2653
+ FLOOR: :FLOOR
2654
+ CEILING: :CEILING
2655
+
2656
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::Subscription::Proration::Rounding::rounding_method]
2657
+ end
2658
+ end
2431
2659
  end
2432
2660
 
2433
2661
  type subscription_rate =
@@ -2477,6 +2705,38 @@ module MetronomeSDK
2477
2705
  end
2478
2706
  end
2479
2707
 
2708
+ type billing_cycle_config =
2709
+ {
2710
+ invoice_placement: MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig::invoice_placement
2711
+ }
2712
+
2713
+ class BillingCycleConfig < MetronomeSDK::Internal::Type::BaseModel
2714
+ attr_reader invoice_placement: MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig::invoice_placement?
2715
+
2716
+ def invoice_placement=: (
2717
+ MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig::invoice_placement
2718
+ ) -> MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig::invoice_placement
2719
+
2720
+ def initialize: (
2721
+ ?invoice_placement: MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig::invoice_placement
2722
+ ) -> void
2723
+
2724
+ def to_hash: -> {
2725
+ invoice_placement: MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig::invoice_placement
2726
+ }
2727
+
2728
+ type invoice_placement = :ON_SCHEDULED_INVOICE | :ON_USAGE_INVOICE
2729
+
2730
+ module InvoicePlacement
2731
+ extend MetronomeSDK::Internal::Type::Enum
2732
+
2733
+ ON_SCHEDULED_INVOICE: :ON_SCHEDULED_INVOICE
2734
+ ON_USAGE_INVOICE: :ON_USAGE_INVOICE
2735
+
2736
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::Subscription::BillingCycleConfig::invoice_placement]
2737
+ end
2738
+ end
2739
+
2480
2740
  type duration =
2481
2741
  {
2482
2742
  unit: MetronomeSDK::Models::V1::PackageListResponse::Subscription::Duration::unit,