modern_treasury 0.9.0 → 0.11.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 (98) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +29 -0
  3. data/README.md +1 -1
  4. data/lib/modern_treasury/client.rb +12 -0
  5. data/lib/modern_treasury/internal/transport/base_client.rb +7 -1
  6. data/lib/modern_treasury/internal/transport/pooled_net_requester.rb +6 -2
  7. data/lib/modern_treasury/models/counterparty_create_params.rb +9 -9
  8. data/lib/modern_treasury/models/external_account_create_params.rb +9 -9
  9. data/lib/modern_treasury/models/hold_create_params.rb +74 -0
  10. data/lib/modern_treasury/models/hold_create_response.rb +143 -0
  11. data/lib/modern_treasury/models/hold_list_params.rb +89 -0
  12. data/lib/modern_treasury/models/hold_list_response.rb +143 -0
  13. data/lib/modern_treasury/models/hold_retrieve_params.rb +14 -0
  14. data/lib/modern_treasury/models/hold_retrieve_response.rb +143 -0
  15. data/lib/modern_treasury/models/hold_update_params.rb +40 -0
  16. data/lib/modern_treasury/models/hold_update_response.rb +143 -0
  17. data/lib/modern_treasury/models/internal_account_request_closure_params.rb +14 -0
  18. data/lib/modern_treasury/models/journal_entry_list_params.rb +38 -0
  19. data/lib/modern_treasury/models/journal_entry_retrieve_params.rb +14 -0
  20. data/lib/modern_treasury/models/journal_report_list_params.rb +14 -0
  21. data/lib/modern_treasury/models/journal_report_retrieve_params.rb +14 -0
  22. data/lib/modern_treasury/models/journal_report_update_params.rb +26 -0
  23. data/lib/modern_treasury/models/payment_order.rb +1 -1
  24. data/lib/modern_treasury/models/payment_reference.rb +1 -1
  25. data/lib/modern_treasury/models/return_object.rb +1 -1
  26. data/lib/modern_treasury/models/transaction.rb +1 -1
  27. data/lib/modern_treasury/models.rb +20 -0
  28. data/lib/modern_treasury/resources/counterparties.rb +14 -16
  29. data/lib/modern_treasury/resources/external_accounts.rb +16 -18
  30. data/lib/modern_treasury/resources/holds.rb +126 -0
  31. data/lib/modern_treasury/resources/internal_accounts.rb +20 -0
  32. data/lib/modern_treasury/resources/journal_entries.rb +60 -0
  33. data/lib/modern_treasury/resources/journal_reports.rb +78 -0
  34. data/lib/modern_treasury/version.rb +1 -1
  35. data/lib/modern_treasury.rb +18 -0
  36. data/manifest.yaml +1 -0
  37. data/rbi/modern_treasury/client.rbi +9 -0
  38. data/rbi/modern_treasury/internal/transport/base_client.rbi +5 -0
  39. data/rbi/modern_treasury/internal/transport/pooled_net_requester.rbi +6 -2
  40. data/rbi/modern_treasury/internal/type/base_model.rbi +8 -4
  41. data/rbi/modern_treasury/models/counterparty_create_params.rbi +8 -8
  42. data/rbi/modern_treasury/models/external_account_create_params.rbi +8 -8
  43. data/rbi/modern_treasury/models/hold_create_params.rbi +125 -0
  44. data/rbi/modern_treasury/models/hold_create_response.rbi +232 -0
  45. data/rbi/modern_treasury/models/hold_list_params.rbi +150 -0
  46. data/rbi/modern_treasury/models/hold_list_response.rbi +225 -0
  47. data/rbi/modern_treasury/models/hold_retrieve_params.rbi +32 -0
  48. data/rbi/modern_treasury/models/hold_retrieve_response.rbi +234 -0
  49. data/rbi/modern_treasury/models/hold_update_params.rbi +79 -0
  50. data/rbi/modern_treasury/models/hold_update_response.rbi +232 -0
  51. data/rbi/modern_treasury/models/internal_account_request_closure_params.rbi +32 -0
  52. data/rbi/modern_treasury/models/journal_entry_list_params.rbi +68 -0
  53. data/rbi/modern_treasury/models/journal_entry_retrieve_params.rbi +32 -0
  54. data/rbi/modern_treasury/models/journal_report_list_params.rbi +32 -0
  55. data/rbi/modern_treasury/models/journal_report_retrieve_params.rbi +32 -0
  56. data/rbi/modern_treasury/models/journal_report_update_params.rbi +52 -0
  57. data/rbi/modern_treasury/models/payment_order.rbi +2 -2
  58. data/rbi/modern_treasury/models/payment_reference.rbi +2 -2
  59. data/rbi/modern_treasury/models/return_object.rbi +2 -2
  60. data/rbi/modern_treasury/models/transaction.rbi +2 -2
  61. data/rbi/modern_treasury/models.rbi +23 -0
  62. data/rbi/modern_treasury/resources/counterparties.rbi +15 -17
  63. data/rbi/modern_treasury/resources/external_accounts.rbi +16 -22
  64. data/rbi/modern_treasury/resources/holds.rbi +108 -0
  65. data/rbi/modern_treasury/resources/internal_accounts.rbi +14 -0
  66. data/rbi/modern_treasury/resources/journal_entries.rbi +46 -0
  67. data/rbi/modern_treasury/resources/journal_reports.rbi +51 -0
  68. data/sig/modern_treasury/client.rbs +6 -0
  69. data/sig/modern_treasury/internal/transport/base_client.rbs +2 -0
  70. data/sig/modern_treasury/internal/transport/pooled_net_requester.rbs +4 -1
  71. data/sig/modern_treasury/models/counterparty_create_params.rbs +5 -5
  72. data/sig/modern_treasury/models/external_account_create_params.rbs +5 -5
  73. data/sig/modern_treasury/models/hold_create_params.rbs +66 -0
  74. data/sig/modern_treasury/models/hold_create_response.rbs +108 -0
  75. data/sig/modern_treasury/models/hold_list_params.rbs +76 -0
  76. data/sig/modern_treasury/models/hold_list_response.rbs +108 -0
  77. data/sig/modern_treasury/models/hold_retrieve_params.rbs +15 -0
  78. data/sig/modern_treasury/models/hold_retrieve_response.rbs +108 -0
  79. data/sig/modern_treasury/models/hold_update_params.rbs +41 -0
  80. data/sig/modern_treasury/models/hold_update_response.rbs +108 -0
  81. data/sig/modern_treasury/models/internal_account_request_closure_params.rbs +15 -0
  82. data/sig/modern_treasury/models/journal_entry_list_params.rbs +36 -0
  83. data/sig/modern_treasury/models/journal_entry_retrieve_params.rbs +15 -0
  84. data/sig/modern_treasury/models/journal_report_list_params.rbs +15 -0
  85. data/sig/modern_treasury/models/journal_report_retrieve_params.rbs +15 -0
  86. data/sig/modern_treasury/models/journal_report_update_params.rbs +32 -0
  87. data/sig/modern_treasury/models/payment_order.rbs +2 -2
  88. data/sig/modern_treasury/models/payment_reference.rbs +2 -2
  89. data/sig/modern_treasury/models/return_object.rbs +2 -2
  90. data/sig/modern_treasury/models/transaction.rbs +2 -2
  91. data/sig/modern_treasury/models.rbs +20 -0
  92. data/sig/modern_treasury/resources/counterparties.rbs +1 -1
  93. data/sig/modern_treasury/resources/external_accounts.rbs +1 -1
  94. data/sig/modern_treasury/resources/holds.rbs +38 -0
  95. data/sig/modern_treasury/resources/internal_accounts.rbs +5 -0
  96. data/sig/modern_treasury/resources/journal_entries.rbs +19 -0
  97. data/sig/modern_treasury/resources/journal_reports.rbs +21 -0
  98. metadata +53 -2
@@ -0,0 +1,225 @@
1
+ # typed: strong
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ class HoldListResponse < ModernTreasury::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ ModernTreasury::Models::HoldListResponse,
10
+ ModernTreasury::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :id
16
+
17
+ sig { returns(Time) }
18
+ attr_accessor :created_at
19
+
20
+ # The type of object
21
+ sig do
22
+ returns(ModernTreasury::Models::HoldListResponse::Object::TaggedSymbol)
23
+ end
24
+ attr_accessor :object
25
+
26
+ # The status of the hold
27
+ sig do
28
+ returns(ModernTreasury::Models::HoldListResponse::Status::TaggedSymbol)
29
+ end
30
+ attr_accessor :status
31
+
32
+ # The ID of the target being held
33
+ sig { returns(String) }
34
+ attr_accessor :target_id
35
+
36
+ # The type of target being held
37
+ sig do
38
+ returns(
39
+ ModernTreasury::Models::HoldListResponse::TargetType::TaggedSymbol
40
+ )
41
+ end
42
+ attr_accessor :target_type
43
+
44
+ sig { returns(Time) }
45
+ attr_accessor :updated_at
46
+
47
+ # This field will be true if this object exists in the live environment or false
48
+ # if it exists in the test environment.
49
+ sig { returns(T.nilable(T::Boolean)) }
50
+ attr_reader :live_mode
51
+
52
+ sig { params(live_mode: T::Boolean).void }
53
+ attr_writer :live_mode
54
+
55
+ # Additional metadata for the hold
56
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
57
+ attr_accessor :metadata
58
+
59
+ # The reason for the hold
60
+ sig { returns(T.nilable(String)) }
61
+ attr_accessor :reason
62
+
63
+ # The resolution of the hold
64
+ sig { returns(T.nilable(String)) }
65
+ attr_accessor :resolution
66
+
67
+ # When the hold was resolved
68
+ sig { returns(T.nilable(Time)) }
69
+ attr_accessor :resolved_at
70
+
71
+ sig do
72
+ params(
73
+ id: String,
74
+ created_at: Time,
75
+ object: ModernTreasury::Models::HoldListResponse::Object::OrSymbol,
76
+ status: ModernTreasury::Models::HoldListResponse::Status::OrSymbol,
77
+ target_id: String,
78
+ target_type:
79
+ ModernTreasury::Models::HoldListResponse::TargetType::OrSymbol,
80
+ updated_at: Time,
81
+ live_mode: T::Boolean,
82
+ metadata: T.nilable(T::Hash[Symbol, String]),
83
+ reason: T.nilable(String),
84
+ resolution: T.nilable(String),
85
+ resolved_at: T.nilable(Time)
86
+ ).returns(T.attached_class)
87
+ end
88
+ def self.new(
89
+ id:,
90
+ created_at:,
91
+ # The type of object
92
+ object:,
93
+ # The status of the hold
94
+ status:,
95
+ # The ID of the target being held
96
+ target_id:,
97
+ # The type of target being held
98
+ target_type:,
99
+ updated_at:,
100
+ # This field will be true if this object exists in the live environment or false
101
+ # if it exists in the test environment.
102
+ live_mode: nil,
103
+ # Additional metadata for the hold
104
+ metadata: nil,
105
+ # The reason for the hold
106
+ reason: nil,
107
+ # The resolution of the hold
108
+ resolution: nil,
109
+ # When the hold was resolved
110
+ resolved_at: nil
111
+ )
112
+ end
113
+
114
+ sig do
115
+ override.returns(
116
+ {
117
+ id: String,
118
+ created_at: Time,
119
+ object:
120
+ ModernTreasury::Models::HoldListResponse::Object::TaggedSymbol,
121
+ status:
122
+ ModernTreasury::Models::HoldListResponse::Status::TaggedSymbol,
123
+ target_id: String,
124
+ target_type:
125
+ ModernTreasury::Models::HoldListResponse::TargetType::TaggedSymbol,
126
+ updated_at: Time,
127
+ live_mode: T::Boolean,
128
+ metadata: T.nilable(T::Hash[Symbol, String]),
129
+ reason: T.nilable(String),
130
+ resolution: T.nilable(String),
131
+ resolved_at: T.nilable(Time)
132
+ }
133
+ )
134
+ end
135
+ def to_hash
136
+ end
137
+
138
+ # The type of object
139
+ module Object
140
+ extend ModernTreasury::Internal::Type::Enum
141
+
142
+ TaggedSymbol =
143
+ T.type_alias do
144
+ T.all(Symbol, ModernTreasury::Models::HoldListResponse::Object)
145
+ end
146
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
147
+
148
+ HOLD =
149
+ T.let(
150
+ :hold,
151
+ ModernTreasury::Models::HoldListResponse::Object::TaggedSymbol
152
+ )
153
+
154
+ sig do
155
+ override.returns(
156
+ T::Array[
157
+ ModernTreasury::Models::HoldListResponse::Object::TaggedSymbol
158
+ ]
159
+ )
160
+ end
161
+ def self.values
162
+ end
163
+ end
164
+
165
+ # The status of the hold
166
+ module Status
167
+ extend ModernTreasury::Internal::Type::Enum
168
+
169
+ TaggedSymbol =
170
+ T.type_alias do
171
+ T.all(Symbol, ModernTreasury::Models::HoldListResponse::Status)
172
+ end
173
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
174
+
175
+ ACTIVE =
176
+ T.let(
177
+ :active,
178
+ ModernTreasury::Models::HoldListResponse::Status::TaggedSymbol
179
+ )
180
+ RESOLVED =
181
+ T.let(
182
+ :resolved,
183
+ ModernTreasury::Models::HoldListResponse::Status::TaggedSymbol
184
+ )
185
+
186
+ sig do
187
+ override.returns(
188
+ T::Array[
189
+ ModernTreasury::Models::HoldListResponse::Status::TaggedSymbol
190
+ ]
191
+ )
192
+ end
193
+ def self.values
194
+ end
195
+ end
196
+
197
+ # The type of target being held
198
+ module TargetType
199
+ extend ModernTreasury::Internal::Type::Enum
200
+
201
+ TaggedSymbol =
202
+ T.type_alias do
203
+ T.all(Symbol, ModernTreasury::Models::HoldListResponse::TargetType)
204
+ end
205
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
206
+
207
+ PAYMENT_ORDER =
208
+ T.let(
209
+ :payment_order,
210
+ ModernTreasury::Models::HoldListResponse::TargetType::TaggedSymbol
211
+ )
212
+
213
+ sig do
214
+ override.returns(
215
+ T::Array[
216
+ ModernTreasury::Models::HoldListResponse::TargetType::TaggedSymbol
217
+ ]
218
+ )
219
+ end
220
+ def self.values
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
@@ -0,0 +1,32 @@
1
+ # typed: strong
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ class HoldRetrieveParams < ModernTreasury::Internal::Type::BaseModel
6
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
7
+ include ModernTreasury::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ ModernTreasury::HoldRetrieveParams,
13
+ ModernTreasury::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: ModernTreasury::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig do
26
+ override.returns({ request_options: ModernTreasury::RequestOptions })
27
+ end
28
+ def to_hash
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,234 @@
1
+ # typed: strong
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ class HoldRetrieveResponse < ModernTreasury::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ ModernTreasury::Models::HoldRetrieveResponse,
10
+ ModernTreasury::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :id
16
+
17
+ sig { returns(Time) }
18
+ attr_accessor :created_at
19
+
20
+ # The type of object
21
+ sig do
22
+ returns(
23
+ ModernTreasury::Models::HoldRetrieveResponse::Object::TaggedSymbol
24
+ )
25
+ end
26
+ attr_accessor :object
27
+
28
+ # The status of the hold
29
+ sig do
30
+ returns(
31
+ ModernTreasury::Models::HoldRetrieveResponse::Status::TaggedSymbol
32
+ )
33
+ end
34
+ attr_accessor :status
35
+
36
+ # The ID of the target being held
37
+ sig { returns(String) }
38
+ attr_accessor :target_id
39
+
40
+ # The type of target being held
41
+ sig do
42
+ returns(
43
+ ModernTreasury::Models::HoldRetrieveResponse::TargetType::TaggedSymbol
44
+ )
45
+ end
46
+ attr_accessor :target_type
47
+
48
+ sig { returns(Time) }
49
+ attr_accessor :updated_at
50
+
51
+ # This field will be true if this object exists in the live environment or false
52
+ # if it exists in the test environment.
53
+ sig { returns(T.nilable(T::Boolean)) }
54
+ attr_reader :live_mode
55
+
56
+ sig { params(live_mode: T::Boolean).void }
57
+ attr_writer :live_mode
58
+
59
+ # Additional metadata for the hold
60
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
61
+ attr_accessor :metadata
62
+
63
+ # The reason for the hold
64
+ sig { returns(T.nilable(String)) }
65
+ attr_accessor :reason
66
+
67
+ # The resolution of the hold
68
+ sig { returns(T.nilable(String)) }
69
+ attr_accessor :resolution
70
+
71
+ # When the hold was resolved
72
+ sig { returns(T.nilable(Time)) }
73
+ attr_accessor :resolved_at
74
+
75
+ sig do
76
+ params(
77
+ id: String,
78
+ created_at: Time,
79
+ object:
80
+ ModernTreasury::Models::HoldRetrieveResponse::Object::OrSymbol,
81
+ status:
82
+ ModernTreasury::Models::HoldRetrieveResponse::Status::OrSymbol,
83
+ target_id: String,
84
+ target_type:
85
+ ModernTreasury::Models::HoldRetrieveResponse::TargetType::OrSymbol,
86
+ updated_at: Time,
87
+ live_mode: T::Boolean,
88
+ metadata: T.nilable(T::Hash[Symbol, String]),
89
+ reason: T.nilable(String),
90
+ resolution: T.nilable(String),
91
+ resolved_at: T.nilable(Time)
92
+ ).returns(T.attached_class)
93
+ end
94
+ def self.new(
95
+ id:,
96
+ created_at:,
97
+ # The type of object
98
+ object:,
99
+ # The status of the hold
100
+ status:,
101
+ # The ID of the target being held
102
+ target_id:,
103
+ # The type of target being held
104
+ target_type:,
105
+ updated_at:,
106
+ # This field will be true if this object exists in the live environment or false
107
+ # if it exists in the test environment.
108
+ live_mode: nil,
109
+ # Additional metadata for the hold
110
+ metadata: nil,
111
+ # The reason for the hold
112
+ reason: nil,
113
+ # The resolution of the hold
114
+ resolution: nil,
115
+ # When the hold was resolved
116
+ resolved_at: nil
117
+ )
118
+ end
119
+
120
+ sig do
121
+ override.returns(
122
+ {
123
+ id: String,
124
+ created_at: Time,
125
+ object:
126
+ ModernTreasury::Models::HoldRetrieveResponse::Object::TaggedSymbol,
127
+ status:
128
+ ModernTreasury::Models::HoldRetrieveResponse::Status::TaggedSymbol,
129
+ target_id: String,
130
+ target_type:
131
+ ModernTreasury::Models::HoldRetrieveResponse::TargetType::TaggedSymbol,
132
+ updated_at: Time,
133
+ live_mode: T::Boolean,
134
+ metadata: T.nilable(T::Hash[Symbol, String]),
135
+ reason: T.nilable(String),
136
+ resolution: T.nilable(String),
137
+ resolved_at: T.nilable(Time)
138
+ }
139
+ )
140
+ end
141
+ def to_hash
142
+ end
143
+
144
+ # The type of object
145
+ module Object
146
+ extend ModernTreasury::Internal::Type::Enum
147
+
148
+ TaggedSymbol =
149
+ T.type_alias do
150
+ T.all(Symbol, ModernTreasury::Models::HoldRetrieveResponse::Object)
151
+ end
152
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
153
+
154
+ HOLD =
155
+ T.let(
156
+ :hold,
157
+ ModernTreasury::Models::HoldRetrieveResponse::Object::TaggedSymbol
158
+ )
159
+
160
+ sig do
161
+ override.returns(
162
+ T::Array[
163
+ ModernTreasury::Models::HoldRetrieveResponse::Object::TaggedSymbol
164
+ ]
165
+ )
166
+ end
167
+ def self.values
168
+ end
169
+ end
170
+
171
+ # The status of the hold
172
+ module Status
173
+ extend ModernTreasury::Internal::Type::Enum
174
+
175
+ TaggedSymbol =
176
+ T.type_alias do
177
+ T.all(Symbol, ModernTreasury::Models::HoldRetrieveResponse::Status)
178
+ end
179
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
180
+
181
+ ACTIVE =
182
+ T.let(
183
+ :active,
184
+ ModernTreasury::Models::HoldRetrieveResponse::Status::TaggedSymbol
185
+ )
186
+ RESOLVED =
187
+ T.let(
188
+ :resolved,
189
+ ModernTreasury::Models::HoldRetrieveResponse::Status::TaggedSymbol
190
+ )
191
+
192
+ sig do
193
+ override.returns(
194
+ T::Array[
195
+ ModernTreasury::Models::HoldRetrieveResponse::Status::TaggedSymbol
196
+ ]
197
+ )
198
+ end
199
+ def self.values
200
+ end
201
+ end
202
+
203
+ # The type of target being held
204
+ module TargetType
205
+ extend ModernTreasury::Internal::Type::Enum
206
+
207
+ TaggedSymbol =
208
+ T.type_alias do
209
+ T.all(
210
+ Symbol,
211
+ ModernTreasury::Models::HoldRetrieveResponse::TargetType
212
+ )
213
+ end
214
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
215
+
216
+ PAYMENT_ORDER =
217
+ T.let(
218
+ :payment_order,
219
+ ModernTreasury::Models::HoldRetrieveResponse::TargetType::TaggedSymbol
220
+ )
221
+
222
+ sig do
223
+ override.returns(
224
+ T::Array[
225
+ ModernTreasury::Models::HoldRetrieveResponse::TargetType::TaggedSymbol
226
+ ]
227
+ )
228
+ end
229
+ def self.values
230
+ end
231
+ end
232
+ end
233
+ end
234
+ end
@@ -0,0 +1,79 @@
1
+ # typed: strong
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ class HoldUpdateParams < ModernTreasury::Internal::Type::BaseModel
6
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
7
+ include ModernTreasury::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ ModernTreasury::HoldUpdateParams,
13
+ ModernTreasury::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # The new status of the hold
18
+ sig { returns(ModernTreasury::HoldUpdateParams::Status::OrSymbol) }
19
+ attr_accessor :status
20
+
21
+ # The resolution of the hold
22
+ sig { returns(T.nilable(String)) }
23
+ attr_accessor :resolution
24
+
25
+ sig do
26
+ params(
27
+ status: ModernTreasury::HoldUpdateParams::Status::OrSymbol,
28
+ resolution: T.nilable(String),
29
+ request_options: ModernTreasury::RequestOptions::OrHash
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(
33
+ # The new status of the hold
34
+ status:,
35
+ # The resolution of the hold
36
+ resolution: nil,
37
+ request_options: {}
38
+ )
39
+ end
40
+
41
+ sig do
42
+ override.returns(
43
+ {
44
+ status: ModernTreasury::HoldUpdateParams::Status::OrSymbol,
45
+ resolution: T.nilable(String),
46
+ request_options: ModernTreasury::RequestOptions
47
+ }
48
+ )
49
+ end
50
+ def to_hash
51
+ end
52
+
53
+ # The new status of the hold
54
+ module Status
55
+ extend ModernTreasury::Internal::Type::Enum
56
+
57
+ TaggedSymbol =
58
+ T.type_alias do
59
+ T.all(Symbol, ModernTreasury::HoldUpdateParams::Status)
60
+ end
61
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
62
+
63
+ RESOLVED =
64
+ T.let(
65
+ :resolved,
66
+ ModernTreasury::HoldUpdateParams::Status::TaggedSymbol
67
+ )
68
+
69
+ sig do
70
+ override.returns(
71
+ T::Array[ModernTreasury::HoldUpdateParams::Status::TaggedSymbol]
72
+ )
73
+ end
74
+ def self.values
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end