metronome-sdk 0.1.0 → 0.2.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 (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/internal/transport/base_client.rb +1 -1
  5. data/lib/metronome_sdk/models/commit.rb +35 -5
  6. data/lib/metronome_sdk/models/contract_without_amendments.rb +128 -2
  7. data/lib/metronome_sdk/models/credit.rb +21 -3
  8. data/lib/metronome_sdk/models/v1/alert_create_params.rb +9 -11
  9. data/lib/metronome_sdk/models/v1/contract_create_params.rb +159 -12
  10. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +29 -1
  11. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +2 -0
  12. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +2 -0
  13. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +2 -0
  14. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +183 -24
  15. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +570 -14
  16. data/lib/metronome_sdk/models/v2/contract_list_response.rb +194 -17
  17. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +194 -17
  18. data/lib/metronome_sdk/resources/v1/alerts.rb +2 -2
  19. data/lib/metronome_sdk/version.rb +1 -1
  20. data/rbi/metronome_sdk/internal/transport/base_client.rbi +1 -1
  21. data/rbi/metronome_sdk/models/commit.rbi +89 -15
  22. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +304 -6
  23. data/rbi/metronome_sdk/models/credit.rbi +54 -9
  24. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +16 -18
  25. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +349 -15
  26. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +60 -0
  27. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +10 -0
  28. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +4 -0
  29. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +4 -0
  30. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +385 -27
  31. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1532 -42
  32. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +431 -37
  33. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +431 -37
  34. data/rbi/metronome_sdk/resources/v1/alerts.rbi +5 -5
  35. data/rbi/metronome_sdk/resources/v2/contracts.rbi +4 -0
  36. data/sig/metronome_sdk/internal/transport/base_client.rbs +1 -1
  37. data/sig/metronome_sdk/models/commit.rbs +50 -15
  38. data/sig/metronome_sdk/models/contract_without_amendments.rbs +120 -6
  39. data/sig/metronome_sdk/models/credit.rbs +30 -9
  40. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +9 -9
  41. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +130 -3
  42. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +21 -0
  43. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +4 -0
  44. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +130 -3
  45. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +612 -6
  46. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +205 -30
  47. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +205 -30
  48. data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -1
  49. metadata +2 -2
@@ -1660,6 +1660,24 @@ module MetronomeSDK
1660
1660
  end
1661
1661
  attr_writer :specifiers
1662
1662
 
1663
+ # Attach a subscription to the recurring commit/credit.
1664
+ sig do
1665
+ returns(
1666
+ T.nilable(
1667
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig
1668
+ )
1669
+ )
1670
+ end
1671
+ attr_reader :subscription_config
1672
+
1673
+ sig do
1674
+ params(
1675
+ subscription_config:
1676
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::OrHash
1677
+ ).void
1678
+ end
1679
+ attr_writer :subscription_config
1680
+
1663
1681
  sig do
1664
1682
  params(
1665
1683
  id: String,
@@ -1693,7 +1711,9 @@ module MetronomeSDK
1693
1711
  specifiers:
1694
1712
  T::Array[
1695
1713
  MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Specifier::OrHash
1696
- ]
1714
+ ],
1715
+ subscription_config:
1716
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::OrHash
1697
1717
  ).returns(T.attached_class)
1698
1718
  end
1699
1719
  def self.new(
@@ -1742,7 +1762,9 @@ module MetronomeSDK
1742
1762
  # List of filters that determine what kind of customer usage draws down a commit
1743
1763
  # or credit. A customer's usage needs to meet the condition of at least one of the
1744
1764
  # specifiers to contribute to a commit's or credit's drawdown.
1745
- specifiers: nil
1765
+ specifiers: nil,
1766
+ # Attach a subscription to the recurring commit/credit.
1767
+ subscription_config: nil
1746
1768
  )
1747
1769
  end
1748
1770
 
@@ -1780,7 +1802,9 @@ module MetronomeSDK
1780
1802
  specifiers:
1781
1803
  T::Array[
1782
1804
  MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Specifier
1783
- ]
1805
+ ],
1806
+ subscription_config:
1807
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig
1784
1808
  }
1785
1809
  )
1786
1810
  end
@@ -2461,6 +2485,131 @@ module MetronomeSDK
2461
2485
  def to_hash
2462
2486
  end
2463
2487
  end
2488
+
2489
+ class SubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
2490
+ OrHash =
2491
+ T.type_alias do
2492
+ T.any(
2493
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig,
2494
+ MetronomeSDK::Internal::AnyHash
2495
+ )
2496
+ end
2497
+
2498
+ sig do
2499
+ returns(
2500
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::Allocation::TaggedSymbol
2501
+ )
2502
+ end
2503
+ attr_accessor :allocation
2504
+
2505
+ sig do
2506
+ returns(
2507
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig
2508
+ )
2509
+ end
2510
+ attr_reader :apply_seat_increase_config
2511
+
2512
+ sig do
2513
+ params(
2514
+ apply_seat_increase_config:
2515
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig::OrHash
2516
+ ).void
2517
+ end
2518
+ attr_writer :apply_seat_increase_config
2519
+
2520
+ sig { returns(String) }
2521
+ attr_accessor :subscription_id
2522
+
2523
+ # Attach a subscription to the recurring commit/credit.
2524
+ sig do
2525
+ params(
2526
+ allocation:
2527
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::Allocation::OrSymbol,
2528
+ apply_seat_increase_config:
2529
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig::OrHash,
2530
+ subscription_id: String
2531
+ ).returns(T.attached_class)
2532
+ end
2533
+ def self.new(
2534
+ allocation:,
2535
+ apply_seat_increase_config:,
2536
+ subscription_id:
2537
+ )
2538
+ end
2539
+
2540
+ sig do
2541
+ override.returns(
2542
+ {
2543
+ allocation:
2544
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::Allocation::TaggedSymbol,
2545
+ apply_seat_increase_config:
2546
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig,
2547
+ subscription_id: String
2548
+ }
2549
+ )
2550
+ end
2551
+ def to_hash
2552
+ end
2553
+
2554
+ module Allocation
2555
+ extend MetronomeSDK::Internal::Type::Enum
2556
+
2557
+ TaggedSymbol =
2558
+ T.type_alias do
2559
+ T.all(
2560
+ Symbol,
2561
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::Allocation
2562
+ )
2563
+ end
2564
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2565
+
2566
+ INDIVIDUAL =
2567
+ T.let(
2568
+ :INDIVIDUAL,
2569
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::Allocation::TaggedSymbol
2570
+ )
2571
+ POOLED =
2572
+ T.let(
2573
+ :POOLED,
2574
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::Allocation::TaggedSymbol
2575
+ )
2576
+
2577
+ sig do
2578
+ override.returns(
2579
+ T::Array[
2580
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::Allocation::TaggedSymbol
2581
+ ]
2582
+ )
2583
+ end
2584
+ def self.values
2585
+ end
2586
+ end
2587
+
2588
+ class ApplySeatIncreaseConfig < MetronomeSDK::Internal::Type::BaseModel
2589
+ OrHash =
2590
+ T.type_alias do
2591
+ T.any(
2592
+ MetronomeSDK::ContractWithoutAmendments::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig,
2593
+ MetronomeSDK::Internal::AnyHash
2594
+ )
2595
+ end
2596
+
2597
+ # Indicates whether a mid-period seat increase should be prorated.
2598
+ sig { returns(T::Boolean) }
2599
+ attr_accessor :is_prorated
2600
+
2601
+ sig { params(is_prorated: T::Boolean).returns(T.attached_class) }
2602
+ def self.new(
2603
+ # Indicates whether a mid-period seat increase should be prorated.
2604
+ is_prorated:
2605
+ )
2606
+ end
2607
+
2608
+ sig { override.returns({ is_prorated: T::Boolean }) }
2609
+ def to_hash
2610
+ end
2611
+ end
2612
+ end
2464
2613
  end
2465
2614
 
2466
2615
  class RecurringCredit < MetronomeSDK::Internal::Type::BaseModel
@@ -2689,6 +2838,24 @@ module MetronomeSDK
2689
2838
  end
2690
2839
  attr_writer :specifiers
2691
2840
 
2841
+ # Attach a subscription to the recurring commit/credit.
2842
+ sig do
2843
+ returns(
2844
+ T.nilable(
2845
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig
2846
+ )
2847
+ )
2848
+ end
2849
+ attr_reader :subscription_config
2850
+
2851
+ sig do
2852
+ params(
2853
+ subscription_config:
2854
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::OrHash
2855
+ ).void
2856
+ end
2857
+ attr_writer :subscription_config
2858
+
2692
2859
  sig do
2693
2860
  params(
2694
2861
  id: String,
@@ -2720,7 +2887,9 @@ module MetronomeSDK
2720
2887
  specifiers:
2721
2888
  T::Array[
2722
2889
  MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Specifier::OrHash
2723
- ]
2890
+ ],
2891
+ subscription_config:
2892
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::OrHash
2724
2893
  ).returns(T.attached_class)
2725
2894
  end
2726
2895
  def self.new(
@@ -2767,7 +2936,9 @@ module MetronomeSDK
2767
2936
  # List of filters that determine what kind of customer usage draws down a commit
2768
2937
  # or credit. A customer's usage needs to meet the condition of at least one of the
2769
2938
  # specifiers to contribute to a commit's or credit's drawdown.
2770
- specifiers: nil
2939
+ specifiers: nil,
2940
+ # Attach a subscription to the recurring commit/credit.
2941
+ subscription_config: nil
2771
2942
  )
2772
2943
  end
2773
2944
 
@@ -2803,7 +2974,9 @@ module MetronomeSDK
2803
2974
  specifiers:
2804
2975
  T::Array[
2805
2976
  MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Specifier
2806
- ]
2977
+ ],
2978
+ subscription_config:
2979
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig
2807
2980
  }
2808
2981
  )
2809
2982
  end
@@ -3446,6 +3619,131 @@ module MetronomeSDK
3446
3619
  def to_hash
3447
3620
  end
3448
3621
  end
3622
+
3623
+ class SubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
3624
+ OrHash =
3625
+ T.type_alias do
3626
+ T.any(
3627
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig,
3628
+ MetronomeSDK::Internal::AnyHash
3629
+ )
3630
+ end
3631
+
3632
+ sig do
3633
+ returns(
3634
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::Allocation::TaggedSymbol
3635
+ )
3636
+ end
3637
+ attr_accessor :allocation
3638
+
3639
+ sig do
3640
+ returns(
3641
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig
3642
+ )
3643
+ end
3644
+ attr_reader :apply_seat_increase_config
3645
+
3646
+ sig do
3647
+ params(
3648
+ apply_seat_increase_config:
3649
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig::OrHash
3650
+ ).void
3651
+ end
3652
+ attr_writer :apply_seat_increase_config
3653
+
3654
+ sig { returns(String) }
3655
+ attr_accessor :subscription_id
3656
+
3657
+ # Attach a subscription to the recurring commit/credit.
3658
+ sig do
3659
+ params(
3660
+ allocation:
3661
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::Allocation::OrSymbol,
3662
+ apply_seat_increase_config:
3663
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig::OrHash,
3664
+ subscription_id: String
3665
+ ).returns(T.attached_class)
3666
+ end
3667
+ def self.new(
3668
+ allocation:,
3669
+ apply_seat_increase_config:,
3670
+ subscription_id:
3671
+ )
3672
+ end
3673
+
3674
+ sig do
3675
+ override.returns(
3676
+ {
3677
+ allocation:
3678
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::Allocation::TaggedSymbol,
3679
+ apply_seat_increase_config:
3680
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig,
3681
+ subscription_id: String
3682
+ }
3683
+ )
3684
+ end
3685
+ def to_hash
3686
+ end
3687
+
3688
+ module Allocation
3689
+ extend MetronomeSDK::Internal::Type::Enum
3690
+
3691
+ TaggedSymbol =
3692
+ T.type_alias do
3693
+ T.all(
3694
+ Symbol,
3695
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::Allocation
3696
+ )
3697
+ end
3698
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3699
+
3700
+ INDIVIDUAL =
3701
+ T.let(
3702
+ :INDIVIDUAL,
3703
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::Allocation::TaggedSymbol
3704
+ )
3705
+ POOLED =
3706
+ T.let(
3707
+ :POOLED,
3708
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::Allocation::TaggedSymbol
3709
+ )
3710
+
3711
+ sig do
3712
+ override.returns(
3713
+ T::Array[
3714
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::Allocation::TaggedSymbol
3715
+ ]
3716
+ )
3717
+ end
3718
+ def self.values
3719
+ end
3720
+ end
3721
+
3722
+ class ApplySeatIncreaseConfig < MetronomeSDK::Internal::Type::BaseModel
3723
+ OrHash =
3724
+ T.type_alias do
3725
+ T.any(
3726
+ MetronomeSDK::ContractWithoutAmendments::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig,
3727
+ MetronomeSDK::Internal::AnyHash
3728
+ )
3729
+ end
3730
+
3731
+ # Indicates whether a mid-period seat increase should be prorated.
3732
+ sig { returns(T::Boolean) }
3733
+ attr_accessor :is_prorated
3734
+
3735
+ sig { params(is_prorated: T::Boolean).returns(T.attached_class) }
3736
+ def self.new(
3737
+ # Indicates whether a mid-period seat increase should be prorated.
3738
+ is_prorated:
3739
+ )
3740
+ end
3741
+
3742
+ sig { override.returns({ is_prorated: T::Boolean }) }
3743
+ def to_hash
3744
+ end
3745
+ end
3746
+ end
3449
3747
  end
3450
3748
 
3451
3749
  class ResellerRoyalty < MetronomeSDK::Internal::Type::BaseModel
@@ -740,6 +740,12 @@ module MetronomeSDK
740
740
  end
741
741
  attr_accessor :type
742
742
 
743
+ sig { returns(T.nilable(String)) }
744
+ attr_reader :contract_id
745
+
746
+ sig { params(contract_id: String).void }
747
+ attr_writer :contract_id
748
+
743
749
  sig do
744
750
  params(
745
751
  amount: Float,
@@ -747,10 +753,18 @@ module MetronomeSDK
747
753
  segment_id: String,
748
754
  timestamp: Time,
749
755
  type:
750
- MetronomeSDK::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry::Type::OrSymbol
756
+ MetronomeSDK::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry::Type::OrSymbol,
757
+ contract_id: String
751
758
  ).returns(T.attached_class)
752
759
  end
753
- def self.new(amount:, invoice_id:, segment_id:, timestamp:, type:)
760
+ def self.new(
761
+ amount:,
762
+ invoice_id:,
763
+ segment_id:,
764
+ timestamp:,
765
+ type:,
766
+ contract_id: nil
767
+ )
754
768
  end
755
769
 
756
770
  sig do
@@ -761,7 +775,8 @@ module MetronomeSDK
761
775
  segment_id: String,
762
776
  timestamp: Time,
763
777
  type:
764
- MetronomeSDK::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry::Type::TaggedSymbol
778
+ MetronomeSDK::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry::Type::TaggedSymbol,
779
+ contract_id: String
765
780
  }
766
781
  )
767
782
  end
@@ -907,6 +922,12 @@ module MetronomeSDK
907
922
  end
908
923
  attr_accessor :type
909
924
 
925
+ sig { returns(T.nilable(String)) }
926
+ attr_reader :contract_id
927
+
928
+ sig { params(contract_id: String).void }
929
+ attr_writer :contract_id
930
+
910
931
  sig do
911
932
  params(
912
933
  amount: Float,
@@ -914,10 +935,18 @@ module MetronomeSDK
914
935
  segment_id: String,
915
936
  timestamp: Time,
916
937
  type:
917
- MetronomeSDK::Credit::Ledger::CreditCanceledLedgerEntry::Type::OrSymbol
938
+ MetronomeSDK::Credit::Ledger::CreditCanceledLedgerEntry::Type::OrSymbol,
939
+ contract_id: String
918
940
  ).returns(T.attached_class)
919
941
  end
920
- def self.new(amount:, invoice_id:, segment_id:, timestamp:, type:)
942
+ def self.new(
943
+ amount:,
944
+ invoice_id:,
945
+ segment_id:,
946
+ timestamp:,
947
+ type:,
948
+ contract_id: nil
949
+ )
921
950
  end
922
951
 
923
952
  sig do
@@ -928,7 +957,8 @@ module MetronomeSDK
928
957
  segment_id: String,
929
958
  timestamp: Time,
930
959
  type:
931
- MetronomeSDK::Credit::Ledger::CreditCanceledLedgerEntry::Type::TaggedSymbol
960
+ MetronomeSDK::Credit::Ledger::CreditCanceledLedgerEntry::Type::TaggedSymbol,
961
+ contract_id: String
932
962
  }
933
963
  )
934
964
  end
@@ -993,6 +1023,12 @@ module MetronomeSDK
993
1023
  end
994
1024
  attr_accessor :type
995
1025
 
1026
+ sig { returns(T.nilable(String)) }
1027
+ attr_reader :contract_id
1028
+
1029
+ sig { params(contract_id: String).void }
1030
+ attr_writer :contract_id
1031
+
996
1032
  sig do
997
1033
  params(
998
1034
  amount: Float,
@@ -1000,10 +1036,18 @@ module MetronomeSDK
1000
1036
  segment_id: String,
1001
1037
  timestamp: Time,
1002
1038
  type:
1003
- MetronomeSDK::Credit::Ledger::CreditCreditedLedgerEntry::Type::OrSymbol
1039
+ MetronomeSDK::Credit::Ledger::CreditCreditedLedgerEntry::Type::OrSymbol,
1040
+ contract_id: String
1004
1041
  ).returns(T.attached_class)
1005
1042
  end
1006
- def self.new(amount:, invoice_id:, segment_id:, timestamp:, type:)
1043
+ def self.new(
1044
+ amount:,
1045
+ invoice_id:,
1046
+ segment_id:,
1047
+ timestamp:,
1048
+ type:,
1049
+ contract_id: nil
1050
+ )
1007
1051
  end
1008
1052
 
1009
1053
  sig do
@@ -1014,7 +1058,8 @@ module MetronomeSDK
1014
1058
  segment_id: String,
1015
1059
  timestamp: Time,
1016
1060
  type:
1017
- MetronomeSDK::Credit::Ledger::CreditCreditedLedgerEntry::Type::TaggedSymbol
1061
+ MetronomeSDK::Credit::Ledger::CreditCreditedLedgerEntry::Type::TaggedSymbol,
1062
+ contract_id: String
1018
1063
  }
1019
1064
  )
1020
1065
  end
@@ -94,22 +94,22 @@ module MetronomeSDK
94
94
  sig { params(evaluate_on_create: T::Boolean).void }
95
95
  attr_writer :evaluate_on_create
96
96
 
97
- # Scopes alert evaluation to a specific presentation group key on individual line
98
- # items. Only present for spend alerts.
97
+ # Only present for `spend_threshold_reached` alerts. Scope alert to a specific
98
+ # group key on individual line items.
99
99
  sig do
100
100
  returns(
101
- T.nilable(MetronomeSDK::V1::AlertCreateParams::GroupKeyFilter)
101
+ T.nilable(T::Array[MetronomeSDK::V1::AlertCreateParams::GroupValue])
102
102
  )
103
103
  end
104
- attr_reader :group_key_filter
104
+ attr_reader :group_values
105
105
 
106
106
  sig do
107
107
  params(
108
- group_key_filter:
109
- MetronomeSDK::V1::AlertCreateParams::GroupKeyFilter::OrHash
108
+ group_values:
109
+ T::Array[MetronomeSDK::V1::AlertCreateParams::GroupValue::OrHash]
110
110
  ).void
111
111
  end
112
- attr_writer :group_key_filter
112
+ attr_writer :group_values
113
113
 
114
114
  # Only supported for invoice_total_reached alerts. A list of invoice types to
115
115
  # evaluate.
@@ -151,8 +151,8 @@ module MetronomeSDK
151
151
  ],
152
152
  customer_id: String,
153
153
  evaluate_on_create: T::Boolean,
154
- group_key_filter:
155
- MetronomeSDK::V1::AlertCreateParams::GroupKeyFilter::OrHash,
154
+ group_values:
155
+ T::Array[MetronomeSDK::V1::AlertCreateParams::GroupValue::OrHash],
156
156
  invoice_types_filter: T::Array[String],
157
157
  plan_id: String,
158
158
  uniqueness_key: String,
@@ -188,9 +188,9 @@ module MetronomeSDK
188
188
  # alert threshold. If false, it will only evaluate on future customers that
189
189
  # trigger the alert threshold. Defaults to true.
190
190
  evaluate_on_create: nil,
191
- # Scopes alert evaluation to a specific presentation group key on individual line
192
- # items. Only present for spend alerts.
193
- group_key_filter: nil,
191
+ # Only present for `spend_threshold_reached` alerts. Scope alert to a specific
192
+ # group key on individual line items.
193
+ group_values: nil,
194
194
  # Only supported for invoice_total_reached alerts. A list of invoice types to
195
195
  # evaluate.
196
196
  invoice_types_filter: nil,
@@ -221,8 +221,8 @@ module MetronomeSDK
221
221
  ],
222
222
  customer_id: String,
223
223
  evaluate_on_create: T::Boolean,
224
- group_key_filter:
225
- MetronomeSDK::V1::AlertCreateParams::GroupKeyFilter,
224
+ group_values:
225
+ T::Array[MetronomeSDK::V1::AlertCreateParams::GroupValue],
226
226
  invoice_types_filter: T::Array[String],
227
227
  plan_id: String,
228
228
  uniqueness_key: String,
@@ -411,11 +411,11 @@ module MetronomeSDK
411
411
  end
412
412
  end
413
413
 
414
- class GroupKeyFilter < MetronomeSDK::Internal::Type::BaseModel
414
+ class GroupValue < MetronomeSDK::Internal::Type::BaseModel
415
415
  OrHash =
416
416
  T.type_alias do
417
417
  T.any(
418
- MetronomeSDK::V1::AlertCreateParams::GroupKeyFilter,
418
+ MetronomeSDK::V1::AlertCreateParams::GroupValue,
419
419
  MetronomeSDK::Internal::AnyHash
420
420
  )
421
421
  end
@@ -426,8 +426,6 @@ module MetronomeSDK
426
426
  sig { returns(String) }
427
427
  attr_accessor :value
428
428
 
429
- # Scopes alert evaluation to a specific presentation group key on individual line
430
- # items. Only present for spend alerts.
431
429
  sig { params(key: String, value: String).returns(T.attached_class) }
432
430
  def self.new(key:, value:)
433
431
  end