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
@@ -17,10 +17,6 @@ module ModernTreasury
17
17
  sig { returns(T.nilable(String)) }
18
18
  attr_accessor :counterparty_id
19
19
 
20
- # An optional user-defined 180 character unique identifier.
21
- sig { returns(T.nilable(String)) }
22
- attr_accessor :body_external_id
23
-
24
20
  sig do
25
21
  returns(
26
22
  T.nilable(
@@ -62,6 +58,10 @@ module ModernTreasury
62
58
  end
63
59
  attr_writer :contact_details
64
60
 
61
+ # An optional user-defined 180 character unique identifier.
62
+ sig { returns(T.nilable(String)) }
63
+ attr_accessor :external_id
64
+
65
65
  # Specifies a ledger account object that will be created with the external
66
66
  # account. The resulting ledger account is linked to the external account for
67
67
  # auto-ledgering Payment objects. See
@@ -150,7 +150,6 @@ module ModernTreasury
150
150
  sig do
151
151
  params(
152
152
  counterparty_id: T.nilable(String),
153
- body_external_id: T.nilable(String),
154
153
  account_details:
155
154
  T::Array[
156
155
  ModernTreasury::ExternalAccountCreateParams::AccountDetail::OrHash
@@ -158,6 +157,7 @@ module ModernTreasury
158
157
  account_type: ModernTreasury::ExternalAccountType::OrSymbol,
159
158
  contact_details:
160
159
  T::Array[ModernTreasury::ContactDetailCreateRequest::OrHash],
160
+ external_id: T.nilable(String),
161
161
  ledger_account: ModernTreasury::LedgerAccountCreateRequest::OrHash,
162
162
  metadata: T::Hash[Symbol, String],
163
163
  name: T.nilable(String),
@@ -178,12 +178,12 @@ module ModernTreasury
178
178
  end
179
179
  def self.new(
180
180
  counterparty_id:,
181
- # An optional user-defined 180 character unique identifier.
182
- body_external_id: nil,
183
181
  account_details: nil,
184
182
  # Can be `checking`, `savings` or `other`.
185
183
  account_type: nil,
186
184
  contact_details: nil,
185
+ # An optional user-defined 180 character unique identifier.
186
+ external_id: nil,
187
187
  # Specifies a ledger account object that will be created with the external
188
188
  # account. The resulting ledger account is linked to the external account for
189
189
  # auto-ledgering Payment objects. See
@@ -215,7 +215,6 @@ module ModernTreasury
215
215
  override.returns(
216
216
  {
217
217
  counterparty_id: T.nilable(String),
218
- body_external_id: T.nilable(String),
219
218
  account_details:
220
219
  T::Array[
221
220
  ModernTreasury::ExternalAccountCreateParams::AccountDetail
@@ -223,6 +222,7 @@ module ModernTreasury
223
222
  account_type: ModernTreasury::ExternalAccountType::OrSymbol,
224
223
  contact_details:
225
224
  T::Array[ModernTreasury::ContactDetailCreateRequest],
225
+ external_id: T.nilable(String),
226
226
  ledger_account: ModernTreasury::LedgerAccountCreateRequest,
227
227
  metadata: T::Hash[Symbol, String],
228
228
  name: T.nilable(String),
@@ -0,0 +1,125 @@
1
+ # typed: strong
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ class HoldCreateParams < 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::HoldCreateParams,
13
+ ModernTreasury::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # The status of the hold
18
+ sig { returns(ModernTreasury::HoldCreateParams::Status::OrSymbol) }
19
+ attr_accessor :status
20
+
21
+ # The ID of the target to hold
22
+ sig { returns(String) }
23
+ attr_accessor :target_id
24
+
25
+ # The type of target to hold
26
+ sig { returns(ModernTreasury::HoldCreateParams::TargetType::OrSymbol) }
27
+ attr_accessor :target_type
28
+
29
+ # Additional metadata for the hold
30
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
31
+ attr_accessor :metadata
32
+
33
+ # The reason for the hold
34
+ sig { returns(T.nilable(String)) }
35
+ attr_accessor :reason
36
+
37
+ sig do
38
+ params(
39
+ status: ModernTreasury::HoldCreateParams::Status::OrSymbol,
40
+ target_id: String,
41
+ target_type: ModernTreasury::HoldCreateParams::TargetType::OrSymbol,
42
+ metadata: T.nilable(T::Hash[Symbol, String]),
43
+ reason: T.nilable(String),
44
+ request_options: ModernTreasury::RequestOptions::OrHash
45
+ ).returns(T.attached_class)
46
+ end
47
+ def self.new(
48
+ # The status of the hold
49
+ status:,
50
+ # The ID of the target to hold
51
+ target_id:,
52
+ # The type of target to hold
53
+ target_type:,
54
+ # Additional metadata for the hold
55
+ metadata: nil,
56
+ # The reason for the hold
57
+ reason: nil,
58
+ request_options: {}
59
+ )
60
+ end
61
+
62
+ sig do
63
+ override.returns(
64
+ {
65
+ status: ModernTreasury::HoldCreateParams::Status::OrSymbol,
66
+ target_id: String,
67
+ target_type: ModernTreasury::HoldCreateParams::TargetType::OrSymbol,
68
+ metadata: T.nilable(T::Hash[Symbol, String]),
69
+ reason: T.nilable(String),
70
+ request_options: ModernTreasury::RequestOptions
71
+ }
72
+ )
73
+ end
74
+ def to_hash
75
+ end
76
+
77
+ # The status of the hold
78
+ module Status
79
+ extend ModernTreasury::Internal::Type::Enum
80
+
81
+ TaggedSymbol =
82
+ T.type_alias do
83
+ T.all(Symbol, ModernTreasury::HoldCreateParams::Status)
84
+ end
85
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
86
+
87
+ ACTIVE =
88
+ T.let(:active, ModernTreasury::HoldCreateParams::Status::TaggedSymbol)
89
+
90
+ sig do
91
+ override.returns(
92
+ T::Array[ModernTreasury::HoldCreateParams::Status::TaggedSymbol]
93
+ )
94
+ end
95
+ def self.values
96
+ end
97
+ end
98
+
99
+ # The type of target to hold
100
+ module TargetType
101
+ extend ModernTreasury::Internal::Type::Enum
102
+
103
+ TaggedSymbol =
104
+ T.type_alias do
105
+ T.all(Symbol, ModernTreasury::HoldCreateParams::TargetType)
106
+ end
107
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
108
+
109
+ PAYMENT_ORDER =
110
+ T.let(
111
+ :payment_order,
112
+ ModernTreasury::HoldCreateParams::TargetType::TaggedSymbol
113
+ )
114
+
115
+ sig do
116
+ override.returns(
117
+ T::Array[ModernTreasury::HoldCreateParams::TargetType::TaggedSymbol]
118
+ )
119
+ end
120
+ def self.values
121
+ end
122
+ end
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,232 @@
1
+ # typed: strong
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ class HoldCreateResponse < ModernTreasury::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ ModernTreasury::Models::HoldCreateResponse,
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::HoldCreateResponse::Object::TaggedSymbol
24
+ )
25
+ end
26
+ attr_accessor :object
27
+
28
+ # The status of the hold
29
+ sig do
30
+ returns(
31
+ ModernTreasury::Models::HoldCreateResponse::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::HoldCreateResponse::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: ModernTreasury::Models::HoldCreateResponse::Object::OrSymbol,
80
+ status: ModernTreasury::Models::HoldCreateResponse::Status::OrSymbol,
81
+ target_id: String,
82
+ target_type:
83
+ ModernTreasury::Models::HoldCreateResponse::TargetType::OrSymbol,
84
+ updated_at: Time,
85
+ live_mode: T::Boolean,
86
+ metadata: T.nilable(T::Hash[Symbol, String]),
87
+ reason: T.nilable(String),
88
+ resolution: T.nilable(String),
89
+ resolved_at: T.nilable(Time)
90
+ ).returns(T.attached_class)
91
+ end
92
+ def self.new(
93
+ id:,
94
+ created_at:,
95
+ # The type of object
96
+ object:,
97
+ # The status of the hold
98
+ status:,
99
+ # The ID of the target being held
100
+ target_id:,
101
+ # The type of target being held
102
+ target_type:,
103
+ updated_at:,
104
+ # This field will be true if this object exists in the live environment or false
105
+ # if it exists in the test environment.
106
+ live_mode: nil,
107
+ # Additional metadata for the hold
108
+ metadata: nil,
109
+ # The reason for the hold
110
+ reason: nil,
111
+ # The resolution of the hold
112
+ resolution: nil,
113
+ # When the hold was resolved
114
+ resolved_at: nil
115
+ )
116
+ end
117
+
118
+ sig do
119
+ override.returns(
120
+ {
121
+ id: String,
122
+ created_at: Time,
123
+ object:
124
+ ModernTreasury::Models::HoldCreateResponse::Object::TaggedSymbol,
125
+ status:
126
+ ModernTreasury::Models::HoldCreateResponse::Status::TaggedSymbol,
127
+ target_id: String,
128
+ target_type:
129
+ ModernTreasury::Models::HoldCreateResponse::TargetType::TaggedSymbol,
130
+ updated_at: Time,
131
+ live_mode: T::Boolean,
132
+ metadata: T.nilable(T::Hash[Symbol, String]),
133
+ reason: T.nilable(String),
134
+ resolution: T.nilable(String),
135
+ resolved_at: T.nilable(Time)
136
+ }
137
+ )
138
+ end
139
+ def to_hash
140
+ end
141
+
142
+ # The type of object
143
+ module Object
144
+ extend ModernTreasury::Internal::Type::Enum
145
+
146
+ TaggedSymbol =
147
+ T.type_alias do
148
+ T.all(Symbol, ModernTreasury::Models::HoldCreateResponse::Object)
149
+ end
150
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
151
+
152
+ HOLD =
153
+ T.let(
154
+ :hold,
155
+ ModernTreasury::Models::HoldCreateResponse::Object::TaggedSymbol
156
+ )
157
+
158
+ sig do
159
+ override.returns(
160
+ T::Array[
161
+ ModernTreasury::Models::HoldCreateResponse::Object::TaggedSymbol
162
+ ]
163
+ )
164
+ end
165
+ def self.values
166
+ end
167
+ end
168
+
169
+ # The status of the hold
170
+ module Status
171
+ extend ModernTreasury::Internal::Type::Enum
172
+
173
+ TaggedSymbol =
174
+ T.type_alias do
175
+ T.all(Symbol, ModernTreasury::Models::HoldCreateResponse::Status)
176
+ end
177
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
178
+
179
+ ACTIVE =
180
+ T.let(
181
+ :active,
182
+ ModernTreasury::Models::HoldCreateResponse::Status::TaggedSymbol
183
+ )
184
+ RESOLVED =
185
+ T.let(
186
+ :resolved,
187
+ ModernTreasury::Models::HoldCreateResponse::Status::TaggedSymbol
188
+ )
189
+
190
+ sig do
191
+ override.returns(
192
+ T::Array[
193
+ ModernTreasury::Models::HoldCreateResponse::Status::TaggedSymbol
194
+ ]
195
+ )
196
+ end
197
+ def self.values
198
+ end
199
+ end
200
+
201
+ # The type of target being held
202
+ module TargetType
203
+ extend ModernTreasury::Internal::Type::Enum
204
+
205
+ TaggedSymbol =
206
+ T.type_alias do
207
+ T.all(
208
+ Symbol,
209
+ ModernTreasury::Models::HoldCreateResponse::TargetType
210
+ )
211
+ end
212
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
213
+
214
+ PAYMENT_ORDER =
215
+ T.let(
216
+ :payment_order,
217
+ ModernTreasury::Models::HoldCreateResponse::TargetType::TaggedSymbol
218
+ )
219
+
220
+ sig do
221
+ override.returns(
222
+ T::Array[
223
+ ModernTreasury::Models::HoldCreateResponse::TargetType::TaggedSymbol
224
+ ]
225
+ )
226
+ end
227
+ def self.values
228
+ end
229
+ end
230
+ end
231
+ end
232
+ end
@@ -0,0 +1,150 @@
1
+ # typed: strong
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ class HoldListParams < 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::HoldListParams,
13
+ ModernTreasury::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(T.nilable(String)) }
18
+ attr_accessor :after_cursor
19
+
20
+ # For example, if you want to query for records with metadata key `Type` and value
21
+ # `Loan`, the query would be `metadata%5BType%5D=Loan`. This encodes the query
22
+ # parameters.
23
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
24
+ attr_reader :metadata
25
+
26
+ sig { params(metadata: T::Hash[Symbol, String]).void }
27
+ attr_writer :metadata
28
+
29
+ sig { returns(T.nilable(Integer)) }
30
+ attr_reader :per_page
31
+
32
+ sig { params(per_page: Integer).void }
33
+ attr_writer :per_page
34
+
35
+ # Translation missing: en.openapi.descriptions.payment_order.query_params.status
36
+ sig do
37
+ returns(T.nilable(ModernTreasury::HoldListParams::Status::OrSymbol))
38
+ end
39
+ attr_accessor :status
40
+
41
+ # Translation missing:
42
+ # en.openapi.descriptions.payment_order.query_params.target_id
43
+ sig { returns(T.nilable(String)) }
44
+ attr_accessor :target_id
45
+
46
+ # Translation missing:
47
+ # en.openapi.descriptions.payment_order.query_params.target_type
48
+ sig do
49
+ returns(T.nilable(ModernTreasury::HoldListParams::TargetType::OrSymbol))
50
+ end
51
+ attr_accessor :target_type
52
+
53
+ sig do
54
+ params(
55
+ after_cursor: T.nilable(String),
56
+ metadata: T::Hash[Symbol, String],
57
+ per_page: Integer,
58
+ status: T.nilable(ModernTreasury::HoldListParams::Status::OrSymbol),
59
+ target_id: T.nilable(String),
60
+ target_type:
61
+ T.nilable(ModernTreasury::HoldListParams::TargetType::OrSymbol),
62
+ request_options: ModernTreasury::RequestOptions::OrHash
63
+ ).returns(T.attached_class)
64
+ end
65
+ def self.new(
66
+ after_cursor: nil,
67
+ # For example, if you want to query for records with metadata key `Type` and value
68
+ # `Loan`, the query would be `metadata%5BType%5D=Loan`. This encodes the query
69
+ # parameters.
70
+ metadata: nil,
71
+ per_page: nil,
72
+ # Translation missing: en.openapi.descriptions.payment_order.query_params.status
73
+ status: nil,
74
+ # Translation missing:
75
+ # en.openapi.descriptions.payment_order.query_params.target_id
76
+ target_id: nil,
77
+ # Translation missing:
78
+ # en.openapi.descriptions.payment_order.query_params.target_type
79
+ target_type: nil,
80
+ request_options: {}
81
+ )
82
+ end
83
+
84
+ sig do
85
+ override.returns(
86
+ {
87
+ after_cursor: T.nilable(String),
88
+ metadata: T::Hash[Symbol, String],
89
+ per_page: Integer,
90
+ status: T.nilable(ModernTreasury::HoldListParams::Status::OrSymbol),
91
+ target_id: T.nilable(String),
92
+ target_type:
93
+ T.nilable(ModernTreasury::HoldListParams::TargetType::OrSymbol),
94
+ request_options: ModernTreasury::RequestOptions
95
+ }
96
+ )
97
+ end
98
+ def to_hash
99
+ end
100
+
101
+ # Translation missing: en.openapi.descriptions.payment_order.query_params.status
102
+ module Status
103
+ extend ModernTreasury::Internal::Type::Enum
104
+
105
+ TaggedSymbol =
106
+ T.type_alias { T.all(Symbol, ModernTreasury::HoldListParams::Status) }
107
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
108
+
109
+ ACTIVE =
110
+ T.let(:active, ModernTreasury::HoldListParams::Status::TaggedSymbol)
111
+ RESOLVED =
112
+ T.let(:resolved, ModernTreasury::HoldListParams::Status::TaggedSymbol)
113
+
114
+ sig do
115
+ override.returns(
116
+ T::Array[ModernTreasury::HoldListParams::Status::TaggedSymbol]
117
+ )
118
+ end
119
+ def self.values
120
+ end
121
+ end
122
+
123
+ # Translation missing:
124
+ # en.openapi.descriptions.payment_order.query_params.target_type
125
+ module TargetType
126
+ extend ModernTreasury::Internal::Type::Enum
127
+
128
+ TaggedSymbol =
129
+ T.type_alias do
130
+ T.all(Symbol, ModernTreasury::HoldListParams::TargetType)
131
+ end
132
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
133
+
134
+ PAYMENT_ORDER =
135
+ T.let(
136
+ :payment_order,
137
+ ModernTreasury::HoldListParams::TargetType::TaggedSymbol
138
+ )
139
+
140
+ sig do
141
+ override.returns(
142
+ T::Array[ModernTreasury::HoldListParams::TargetType::TaggedSymbol]
143
+ )
144
+ end
145
+ def self.values
146
+ end
147
+ end
148
+ end
149
+ end
150
+ end