lithic 0.1.0.pre.alpha.55 → 0.1.0.pre.alpha.56

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 (196) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/client.rb +4 -0
  5. data/lib/lithic/models/account_activity_list_response.rb +60 -148
  6. data/lib/lithic/models/account_activity_retrieve_transaction_response.rb +60 -151
  7. data/lib/lithic/models/auth_rules/auth_rule_condition.rb +8 -51
  8. data/lib/lithic/models/auth_rules/conditional_3ds_action_parameters.rb +8 -51
  9. data/lib/lithic/models/auth_rules/conditional_ach_action_parameters.rb +260 -0
  10. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +8 -53
  11. data/lib/lithic/models/auth_rules/conditional_operation.rb +26 -0
  12. data/lib/lithic/models/auth_rules/conditional_tokenization_action_parameters.rb +254 -0
  13. data/lib/lithic/models/auth_rules/conditional_value.rb +27 -0
  14. data/lib/lithic/models/auth_rules/v2_create_params.rb +14 -5
  15. data/lib/lithic/models/auth_rules/v2_create_response.rb +21 -8
  16. data/lib/lithic/models/auth_rules/v2_draft_params.rb +7 -3
  17. data/lib/lithic/models/auth_rules/v2_draft_response.rb +21 -8
  18. data/lib/lithic/models/auth_rules/v2_list_params.rb +3 -0
  19. data/lib/lithic/models/auth_rules/v2_list_response.rb +21 -8
  20. data/lib/lithic/models/auth_rules/v2_promote_response.rb +21 -8
  21. data/lib/lithic/models/auth_rules/v2_retrieve_response.rb +21 -8
  22. data/lib/lithic/models/auth_rules/v2_update_response.rb +21 -8
  23. data/lib/lithic/models/book_transfer_response.rb +1 -0
  24. data/lib/lithic/models/category_details.rb +27 -0
  25. data/lib/lithic/models/dispute.rb +242 -510
  26. data/lib/lithic/models/dispute_v2.rb +555 -0
  27. data/lib/lithic/models/disputes_v2_list_params.rb +84 -0
  28. data/lib/lithic/models/disputes_v2_retrieve_params.rb +14 -0
  29. data/lib/lithic/models/external_bank_account_address.rb +2 -2
  30. data/lib/lithic/models/external_bank_account_create_response.rb +18 -18
  31. data/lib/lithic/models/external_bank_account_list_response.rb +18 -18
  32. data/lib/lithic/models/external_bank_account_retrieve_response.rb +18 -18
  33. data/lib/lithic/models/external_bank_account_retry_micro_deposits_response.rb +18 -18
  34. data/lib/lithic/models/external_bank_account_retry_prenote_response.rb +18 -18
  35. data/lib/lithic/models/external_bank_account_unpause_params.rb +14 -0
  36. data/lib/lithic/models/external_bank_account_unpause_response.rb +242 -0
  37. data/lib/lithic/models/external_bank_account_update_response.rb +18 -18
  38. data/lib/lithic/models/external_bank_accounts/micro_deposit_create_response.rb +18 -18
  39. data/lib/lithic/models/external_payment.rb +3 -2
  40. data/lib/lithic/models/external_payment_list_params.rb +1 -0
  41. data/lib/lithic/models/financial_account.rb +4 -3
  42. data/lib/lithic/models/financial_accounts/category_balances.rb +29 -0
  43. data/lib/lithic/models/financial_accounts/loan_tape.rb +35 -520
  44. data/lib/lithic/models/financial_accounts/statement.rb +73 -275
  45. data/lib/lithic/models/financial_event.rb +148 -0
  46. data/lib/lithic/models/financial_transaction.rb +3 -146
  47. data/lib/lithic/models/management_operation_list_params.rb +1 -0
  48. data/lib/lithic/models/management_operation_transaction.rb +5 -4
  49. data/lib/lithic/models/merchant.rb +70 -0
  50. data/lib/lithic/models/payment.rb +7 -5
  51. data/lib/lithic/models/payment_return_params.rb +62 -0
  52. data/lib/lithic/models/statement_totals.rb +100 -0
  53. data/lib/lithic/models/three_ds/authentication_retrieve_response.rb +9 -9
  54. data/lib/lithic/models/transaction.rb +3 -69
  55. data/lib/lithic/models/transactions/events/enhanced_data.rb +49 -40
  56. data/lib/lithic/models/transfer.rb +3 -146
  57. data/lib/lithic/models.rb +18 -0
  58. data/lib/lithic/resources/auth_rules/v2.rb +2 -2
  59. data/lib/lithic/resources/disputes.rb +10 -10
  60. data/lib/lithic/resources/disputes_v2.rb +74 -0
  61. data/lib/lithic/resources/external_bank_accounts.rb +19 -0
  62. data/lib/lithic/resources/payments.rb +48 -0
  63. data/lib/lithic/version.rb +1 -1
  64. data/lib/lithic.rb +16 -5
  65. data/rbi/lithic/client.rbi +3 -0
  66. data/rbi/lithic/models/account_activity_list_response.rbi +121 -544
  67. data/rbi/lithic/models/account_activity_retrieve_transaction_response.rbi +121 -544
  68. data/rbi/lithic/models/auth_rules/auth_rule_condition.rbi +13 -139
  69. data/rbi/lithic/models/auth_rules/conditional_3ds_action_parameters.rbi +13 -153
  70. data/rbi/lithic/models/auth_rules/conditional_ach_action_parameters.rbi +789 -0
  71. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +13 -153
  72. data/rbi/lithic/models/auth_rules/conditional_operation.rbi +74 -0
  73. data/rbi/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbi +674 -0
  74. data/rbi/lithic/models/auth_rules/conditional_value.rbi +28 -0
  75. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +33 -7
  76. data/rbi/lithic/models/auth_rules/v2_create_response.rbi +33 -7
  77. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +12 -4
  78. data/rbi/lithic/models/auth_rules/v2_draft_response.rbi +33 -7
  79. data/rbi/lithic/models/auth_rules/v2_list_params.rbi +15 -0
  80. data/rbi/lithic/models/auth_rules/v2_list_response.rbi +33 -7
  81. data/rbi/lithic/models/auth_rules/v2_promote_response.rbi +33 -7
  82. data/rbi/lithic/models/auth_rules/v2_retrieve_response.rbi +33 -7
  83. data/rbi/lithic/models/auth_rules/v2_update_response.rbi +33 -7
  84. data/rbi/lithic/models/book_transfer_response.rbi +2 -0
  85. data/rbi/lithic/models/category_details.rbi +43 -0
  86. data/rbi/lithic/models/dispute.rbi +395 -942
  87. data/rbi/lithic/models/dispute_v2.rbi +965 -0
  88. data/rbi/lithic/models/disputes_v2_list_params.rbi +129 -0
  89. data/rbi/lithic/models/disputes_v2_retrieve_params.rbi +27 -0
  90. data/rbi/lithic/models/external_bank_account_address.rbi +3 -6
  91. data/rbi/lithic/models/external_bank_account_create_response.rbi +31 -51
  92. data/rbi/lithic/models/external_bank_account_list_response.rbi +31 -51
  93. data/rbi/lithic/models/external_bank_account_retrieve_response.rbi +31 -51
  94. data/rbi/lithic/models/external_bank_account_retry_micro_deposits_response.rbi +31 -51
  95. data/rbi/lithic/models/external_bank_account_retry_prenote_response.rbi +31 -51
  96. data/rbi/lithic/models/external_bank_account_unpause_params.rbi +30 -0
  97. data/rbi/lithic/models/external_bank_account_unpause_response.rbi +375 -0
  98. data/rbi/lithic/models/external_bank_account_update_response.rbi +31 -51
  99. data/rbi/lithic/models/external_bank_accounts/micro_deposit_create_response.rbi +31 -51
  100. data/rbi/lithic/models/external_payment.rbi +5 -6
  101. data/rbi/lithic/models/external_payment_list_params.rbi +5 -0
  102. data/rbi/lithic/models/financial_account.rbi +12 -4
  103. data/rbi/lithic/models/financial_accounts/category_balances.rbi +42 -0
  104. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +47 -802
  105. data/rbi/lithic/models/financial_accounts/statement.rbi +118 -430
  106. data/rbi/lithic/models/financial_event.rbi +409 -0
  107. data/rbi/lithic/models/financial_transaction.rbi +3 -509
  108. data/rbi/lithic/models/management_operation_list_params.rbi +5 -0
  109. data/rbi/lithic/models/management_operation_transaction.rbi +11 -12
  110. data/rbi/lithic/models/merchant.rbi +89 -0
  111. data/rbi/lithic/models/payment.rbi +16 -7
  112. data/rbi/lithic/models/payment_return_params.rbi +85 -0
  113. data/rbi/lithic/models/statement_totals.rbi +128 -0
  114. data/rbi/lithic/models/three_ds/authentication_retrieve_response.rbi +12 -12
  115. data/rbi/lithic/models/transaction.rbi +4 -90
  116. data/rbi/lithic/models/transactions/events/enhanced_data.rbi +74 -133
  117. data/rbi/lithic/models/transfer.rbi +4 -436
  118. data/rbi/lithic/models.rbi +19 -0
  119. data/rbi/lithic/resources/auth_rules/v2.rbi +8 -3
  120. data/rbi/lithic/resources/disputes.rbi +5 -7
  121. data/rbi/lithic/resources/disputes_v2.rbi +64 -0
  122. data/rbi/lithic/resources/external_bank_accounts.rbi +10 -0
  123. data/rbi/lithic/resources/payments.rbi +46 -0
  124. data/sig/lithic/client.rbs +2 -0
  125. data/sig/lithic/models/account_activity_list_response.rbs +67 -221
  126. data/sig/lithic/models/account_activity_retrieve_transaction_response.rbs +67 -221
  127. data/sig/lithic/models/auth_rules/auth_rule_condition.rbs +10 -61
  128. data/sig/lithic/models/auth_rules/conditional_3ds_action_parameters.rbs +10 -61
  129. data/sig/lithic/models/auth_rules/conditional_ach_action_parameters.rbs +293 -0
  130. data/sig/lithic/models/auth_rules/conditional_authorization_action_parameters.rbs +10 -61
  131. data/sig/lithic/models/auth_rules/conditional_operation.rbs +34 -0
  132. data/sig/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbs +237 -0
  133. data/sig/lithic/models/auth_rules/conditional_value.rbs +15 -0
  134. data/sig/lithic/models/auth_rules/v2_create_params.rbs +11 -1
  135. data/sig/lithic/models/auth_rules/v2_create_response.rbs +13 -1
  136. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +2 -0
  137. data/sig/lithic/models/auth_rules/v2_draft_response.rbs +13 -1
  138. data/sig/lithic/models/auth_rules/v2_list_params.rbs +9 -1
  139. data/sig/lithic/models/auth_rules/v2_list_response.rbs +13 -1
  140. data/sig/lithic/models/auth_rules/v2_promote_response.rbs +13 -1
  141. data/sig/lithic/models/auth_rules/v2_retrieve_response.rbs +13 -1
  142. data/sig/lithic/models/auth_rules/v2_update_response.rbs +13 -1
  143. data/sig/lithic/models/book_transfer_response.rbs +3 -1
  144. data/sig/lithic/models/category_details.rbs +26 -0
  145. data/sig/lithic/models/dispute.rbs +157 -417
  146. data/sig/lithic/models/dispute_v2.rbs +438 -0
  147. data/sig/lithic/models/disputes_v2_list_params.rbs +77 -0
  148. data/sig/lithic/models/disputes_v2_retrieve_params.rbs +15 -0
  149. data/sig/lithic/models/external_bank_account_address.rbs +4 -6
  150. data/sig/lithic/models/external_bank_account_create_response.rbs +36 -56
  151. data/sig/lithic/models/external_bank_account_list_response.rbs +36 -56
  152. data/sig/lithic/models/external_bank_account_retrieve_response.rbs +36 -56
  153. data/sig/lithic/models/external_bank_account_retry_micro_deposits_response.rbs +36 -56
  154. data/sig/lithic/models/external_bank_account_retry_prenote_response.rbs +36 -56
  155. data/sig/lithic/models/external_bank_account_unpause_params.rbs +15 -0
  156. data/sig/lithic/models/external_bank_account_unpause_response.rbs +162 -0
  157. data/sig/lithic/models/external_bank_account_update_response.rbs +36 -56
  158. data/sig/lithic/models/external_bank_accounts/micro_deposit_create_response.rbs +36 -56
  159. data/sig/lithic/models/external_payment.rbs +7 -7
  160. data/sig/lithic/models/external_payment_list_params.rbs +3 -1
  161. data/sig/lithic/models/financial_account.rbs +4 -4
  162. data/sig/lithic/models/financial_accounts/category_balances.rbs +24 -0
  163. data/sig/lithic/models/financial_accounts/loan_tape.rbs +48 -464
  164. data/sig/lithic/models/financial_accounts/statement.rbs +59 -244
  165. data/sig/lithic/models/financial_event.rbs +216 -0
  166. data/sig/lithic/models/financial_transaction.rbs +4 -217
  167. data/sig/lithic/models/management_operation_list_params.rbs +3 -1
  168. data/sig/lithic/models/management_operation_transaction.rbs +11 -13
  169. data/sig/lithic/models/merchant.rbs +50 -0
  170. data/sig/lithic/models/payment.rbs +9 -5
  171. data/sig/lithic/models/payment_return_params.rbs +46 -0
  172. data/sig/lithic/models/statement_totals.rbs +76 -0
  173. data/sig/lithic/models/transaction.rbs +4 -51
  174. data/sig/lithic/models/transactions/events/enhanced_data.rbs +78 -124
  175. data/sig/lithic/models/transfer.rbs +6 -219
  176. data/sig/lithic/models.rbs +18 -0
  177. data/sig/lithic/resources/disputes.rbs +5 -5
  178. data/sig/lithic/resources/disputes_v2.rbs +24 -0
  179. data/sig/lithic/resources/external_bank_accounts.rbs +5 -0
  180. data/sig/lithic/resources/payments.rbs +10 -0
  181. metadata +50 -17
  182. data/lib/lithic/models/dispute_create_response.rb +0 -326
  183. data/lib/lithic/models/dispute_delete_response.rb +0 -326
  184. data/lib/lithic/models/dispute_list_response.rb +0 -326
  185. data/lib/lithic/models/dispute_retrieve_response.rb +0 -326
  186. data/lib/lithic/models/dispute_update_response.rb +0 -326
  187. data/rbi/lithic/models/dispute_create_response.rbi +0 -599
  188. data/rbi/lithic/models/dispute_delete_response.rbi +0 -599
  189. data/rbi/lithic/models/dispute_list_response.rbi +0 -582
  190. data/rbi/lithic/models/dispute_retrieve_response.rbi +0 -601
  191. data/rbi/lithic/models/dispute_update_response.rbi +0 -599
  192. data/sig/lithic/models/dispute_create_response.rbs +0 -210
  193. data/sig/lithic/models/dispute_delete_response.rbs +0 -210
  194. data/sig/lithic/models/dispute_list_response.rbs +0 -210
  195. data/sig/lithic/models/dispute_retrieve_response.rbs +0 -210
  196. data/sig/lithic/models/dispute_update_response.rbs +0 -210
@@ -0,0 +1,674 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ module AuthRules
6
+ class ConditionalTokenizationActionParameters < Lithic::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Lithic::AuthRules::ConditionalTokenizationActionParameters,
11
+ Lithic::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ # The action to take if the conditions are met
16
+ sig do
17
+ returns(
18
+ T.any(
19
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction,
20
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction
21
+ )
22
+ )
23
+ end
24
+ attr_accessor :action
25
+
26
+ sig do
27
+ returns(
28
+ T::Array[
29
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition
30
+ ]
31
+ )
32
+ end
33
+ attr_accessor :conditions
34
+
35
+ sig do
36
+ params(
37
+ action:
38
+ T.any(
39
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::OrHash,
40
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::OrHash
41
+ ),
42
+ conditions:
43
+ T::Array[
44
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::OrHash
45
+ ]
46
+ ).returns(T.attached_class)
47
+ end
48
+ def self.new(
49
+ # The action to take if the conditions are met
50
+ action:,
51
+ conditions:
52
+ )
53
+ end
54
+
55
+ sig do
56
+ override.returns(
57
+ {
58
+ action:
59
+ T.any(
60
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction,
61
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction
62
+ ),
63
+ conditions:
64
+ T::Array[
65
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition
66
+ ]
67
+ }
68
+ )
69
+ end
70
+ def to_hash
71
+ end
72
+
73
+ # The action to take if the conditions are met
74
+ module Action
75
+ extend Lithic::Internal::Type::Union
76
+
77
+ Variants =
78
+ T.type_alias do
79
+ T.any(
80
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction,
81
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction
82
+ )
83
+ end
84
+
85
+ class DeclineAction < Lithic::Internal::Type::BaseModel
86
+ OrHash =
87
+ T.type_alias do
88
+ T.any(
89
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction,
90
+ Lithic::Internal::AnyHash
91
+ )
92
+ end
93
+
94
+ # Decline the tokenization request
95
+ sig do
96
+ returns(
97
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Type::OrSymbol
98
+ )
99
+ end
100
+ attr_accessor :type
101
+
102
+ # Reason code for declining the tokenization request
103
+ sig do
104
+ returns(
105
+ T.nilable(
106
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::OrSymbol
107
+ )
108
+ )
109
+ end
110
+ attr_reader :reason
111
+
112
+ sig do
113
+ params(
114
+ reason:
115
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::OrSymbol
116
+ ).void
117
+ end
118
+ attr_writer :reason
119
+
120
+ sig do
121
+ params(
122
+ type:
123
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Type::OrSymbol,
124
+ reason:
125
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::OrSymbol
126
+ ).returns(T.attached_class)
127
+ end
128
+ def self.new(
129
+ # Decline the tokenization request
130
+ type:,
131
+ # Reason code for declining the tokenization request
132
+ reason: nil
133
+ )
134
+ end
135
+
136
+ sig do
137
+ override.returns(
138
+ {
139
+ type:
140
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Type::OrSymbol,
141
+ reason:
142
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::OrSymbol
143
+ }
144
+ )
145
+ end
146
+ def to_hash
147
+ end
148
+
149
+ # Decline the tokenization request
150
+ module Type
151
+ extend Lithic::Internal::Type::Enum
152
+
153
+ TaggedSymbol =
154
+ T.type_alias do
155
+ T.all(
156
+ Symbol,
157
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Type
158
+ )
159
+ end
160
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
161
+
162
+ DECLINE =
163
+ T.let(
164
+ :DECLINE,
165
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Type::TaggedSymbol
166
+ )
167
+
168
+ sig do
169
+ override.returns(
170
+ T::Array[
171
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Type::TaggedSymbol
172
+ ]
173
+ )
174
+ end
175
+ def self.values
176
+ end
177
+ end
178
+
179
+ # Reason code for declining the tokenization request
180
+ module Reason
181
+ extend Lithic::Internal::Type::Enum
182
+
183
+ TaggedSymbol =
184
+ T.type_alias do
185
+ T.all(
186
+ Symbol,
187
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason
188
+ )
189
+ end
190
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
191
+
192
+ ACCOUNT_SCORE_1 =
193
+ T.let(
194
+ :ACCOUNT_SCORE_1,
195
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
196
+ )
197
+ DEVICE_SCORE_1 =
198
+ T.let(
199
+ :DEVICE_SCORE_1,
200
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
201
+ )
202
+ ALL_WALLET_DECLINE_REASONS_PRESENT =
203
+ T.let(
204
+ :ALL_WALLET_DECLINE_REASONS_PRESENT,
205
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
206
+ )
207
+ WALLET_RECOMMENDED_DECISION_RED =
208
+ T.let(
209
+ :WALLET_RECOMMENDED_DECISION_RED,
210
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
211
+ )
212
+ CVC_MISMATCH =
213
+ T.let(
214
+ :CVC_MISMATCH,
215
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
216
+ )
217
+ CARD_EXPIRY_MONTH_MISMATCH =
218
+ T.let(
219
+ :CARD_EXPIRY_MONTH_MISMATCH,
220
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
221
+ )
222
+ CARD_EXPIRY_YEAR_MISMATCH =
223
+ T.let(
224
+ :CARD_EXPIRY_YEAR_MISMATCH,
225
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
226
+ )
227
+ CARD_INVALID_STATE =
228
+ T.let(
229
+ :CARD_INVALID_STATE,
230
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
231
+ )
232
+ CUSTOMER_RED_PATH =
233
+ T.let(
234
+ :CUSTOMER_RED_PATH,
235
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
236
+ )
237
+ INVALID_CUSTOMER_RESPONSE =
238
+ T.let(
239
+ :INVALID_CUSTOMER_RESPONSE,
240
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
241
+ )
242
+ NETWORK_FAILURE =
243
+ T.let(
244
+ :NETWORK_FAILURE,
245
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
246
+ )
247
+ GENERIC_DECLINE =
248
+ T.let(
249
+ :GENERIC_DECLINE,
250
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
251
+ )
252
+ DIGITAL_CARD_ART_REQUIRED =
253
+ T.let(
254
+ :DIGITAL_CARD_ART_REQUIRED,
255
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
256
+ )
257
+
258
+ sig do
259
+ override.returns(
260
+ T::Array[
261
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::DeclineAction::Reason::TaggedSymbol
262
+ ]
263
+ )
264
+ end
265
+ def self.values
266
+ end
267
+ end
268
+ end
269
+
270
+ class RequireTfaAction < Lithic::Internal::Type::BaseModel
271
+ OrHash =
272
+ T.type_alias do
273
+ T.any(
274
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction,
275
+ Lithic::Internal::AnyHash
276
+ )
277
+ end
278
+
279
+ # Require two-factor authentication for the tokenization request
280
+ sig do
281
+ returns(
282
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Type::OrSymbol
283
+ )
284
+ end
285
+ attr_accessor :type
286
+
287
+ # Reason code for requiring two-factor authentication
288
+ sig do
289
+ returns(
290
+ T.nilable(
291
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::OrSymbol
292
+ )
293
+ )
294
+ end
295
+ attr_reader :reason
296
+
297
+ sig do
298
+ params(
299
+ reason:
300
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::OrSymbol
301
+ ).void
302
+ end
303
+ attr_writer :reason
304
+
305
+ sig do
306
+ params(
307
+ type:
308
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Type::OrSymbol,
309
+ reason:
310
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::OrSymbol
311
+ ).returns(T.attached_class)
312
+ end
313
+ def self.new(
314
+ # Require two-factor authentication for the tokenization request
315
+ type:,
316
+ # Reason code for requiring two-factor authentication
317
+ reason: nil
318
+ )
319
+ end
320
+
321
+ sig do
322
+ override.returns(
323
+ {
324
+ type:
325
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Type::OrSymbol,
326
+ reason:
327
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::OrSymbol
328
+ }
329
+ )
330
+ end
331
+ def to_hash
332
+ end
333
+
334
+ # Require two-factor authentication for the tokenization request
335
+ module Type
336
+ extend Lithic::Internal::Type::Enum
337
+
338
+ TaggedSymbol =
339
+ T.type_alias do
340
+ T.all(
341
+ Symbol,
342
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Type
343
+ )
344
+ end
345
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
346
+
347
+ REQUIRE_TFA =
348
+ T.let(
349
+ :REQUIRE_TFA,
350
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Type::TaggedSymbol
351
+ )
352
+
353
+ sig do
354
+ override.returns(
355
+ T::Array[
356
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Type::TaggedSymbol
357
+ ]
358
+ )
359
+ end
360
+ def self.values
361
+ end
362
+ end
363
+
364
+ # Reason code for requiring two-factor authentication
365
+ module Reason
366
+ extend Lithic::Internal::Type::Enum
367
+
368
+ TaggedSymbol =
369
+ T.type_alias do
370
+ T.all(
371
+ Symbol,
372
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason
373
+ )
374
+ end
375
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
376
+
377
+ WALLET_RECOMMENDED_TFA =
378
+ T.let(
379
+ :WALLET_RECOMMENDED_TFA,
380
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
381
+ )
382
+ SUSPICIOUS_ACTIVITY =
383
+ T.let(
384
+ :SUSPICIOUS_ACTIVITY,
385
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
386
+ )
387
+ DEVICE_RECENTLY_LOST =
388
+ T.let(
389
+ :DEVICE_RECENTLY_LOST,
390
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
391
+ )
392
+ TOO_MANY_RECENT_ATTEMPTS =
393
+ T.let(
394
+ :TOO_MANY_RECENT_ATTEMPTS,
395
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
396
+ )
397
+ TOO_MANY_RECENT_TOKENS =
398
+ T.let(
399
+ :TOO_MANY_RECENT_TOKENS,
400
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
401
+ )
402
+ TOO_MANY_DIFFERENT_CARDHOLDERS =
403
+ T.let(
404
+ :TOO_MANY_DIFFERENT_CARDHOLDERS,
405
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
406
+ )
407
+ OUTSIDE_HOME_TERRITORY =
408
+ T.let(
409
+ :OUTSIDE_HOME_TERRITORY,
410
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
411
+ )
412
+ HAS_SUSPENDED_TOKENS =
413
+ T.let(
414
+ :HAS_SUSPENDED_TOKENS,
415
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
416
+ )
417
+ HIGH_RISK =
418
+ T.let(
419
+ :HIGH_RISK,
420
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
421
+ )
422
+ ACCOUNT_SCORE_LOW =
423
+ T.let(
424
+ :ACCOUNT_SCORE_LOW,
425
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
426
+ )
427
+ DEVICE_SCORE_LOW =
428
+ T.let(
429
+ :DEVICE_SCORE_LOW,
430
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
431
+ )
432
+ CARD_STATE_TFA =
433
+ T.let(
434
+ :CARD_STATE_TFA,
435
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
436
+ )
437
+ HARDCODED_TFA =
438
+ T.let(
439
+ :HARDCODED_TFA,
440
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
441
+ )
442
+ CUSTOMER_RULE_TFA =
443
+ T.let(
444
+ :CUSTOMER_RULE_TFA,
445
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
446
+ )
447
+ DEVICE_HOST_CARD_EMULATION =
448
+ T.let(
449
+ :DEVICE_HOST_CARD_EMULATION,
450
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
451
+ )
452
+
453
+ sig do
454
+ override.returns(
455
+ T::Array[
456
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::RequireTfaAction::Reason::TaggedSymbol
457
+ ]
458
+ )
459
+ end
460
+ def self.values
461
+ end
462
+ end
463
+ end
464
+
465
+ sig do
466
+ override.returns(
467
+ T::Array[
468
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Action::Variants
469
+ ]
470
+ )
471
+ end
472
+ def self.variants
473
+ end
474
+ end
475
+
476
+ class Condition < Lithic::Internal::Type::BaseModel
477
+ OrHash =
478
+ T.type_alias do
479
+ T.any(
480
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition,
481
+ Lithic::Internal::AnyHash
482
+ )
483
+ end
484
+
485
+ # The attribute to target.
486
+ #
487
+ # The following attributes may be targeted:
488
+ #
489
+ # - `TIMESTAMP`: The timestamp of the tokenization request in ISO 8601 format.
490
+ # - `TOKENIZATION_CHANNEL`: The channel through which the tokenization request was
491
+ # initiated (e.g., DIGITAL_WALLET, ECOMMERCE).
492
+ # - `TOKENIZATION_SOURCE`: The source of the tokenization request.
493
+ # - `TOKEN_REQUESTOR_NAME`: The name of the entity requesting the token. Valid
494
+ # values are `ALT_ID`, `AMAZON_ONE`, `AMERICAN_EXPRESS_TOKEN_SERVICE`,
495
+ # `ANDROID_PAY`, `APPLE_PAY`, `FACEBOOK`, `FITBIT_PAY`, `GARMIN_PAY`,
496
+ # `GOOGLE_PAY`, `GOOGLE_VCN`, `ISSUER_HCE`, `MICROSOFT_PAY`, `NETFLIX`,
497
+ # `SAMSUNG_PAY`, `UNKNOWN`, `VISA_CHECKOUT`.
498
+ # - `WALLET_ACCOUNT_SCORE`: Risk score for the account in the digital wallet.
499
+ # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
500
+ # = medium risk).
501
+ # - `WALLET_DEVICE_SCORE`: Risk score for the device in the digital wallet.
502
+ # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
503
+ # = medium risk).
504
+ # - `WALLET_RECOMMENDED_DECISION`: The decision recommended by the digital wallet
505
+ # provider. Valid values include APPROVE, DECLINE,
506
+ # REQUIRE_ADDITIONAL_AUTHENTICATION.
507
+ # - `TOKEN_REQUESTOR_ID`: Unique identifier for the entity requesting the token.
508
+ # - `WALLET_TOKEN_STATUS`: The current status of the wallet token.
509
+ sig do
510
+ returns(
511
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::OrSymbol
512
+ )
513
+ end
514
+ attr_accessor :attribute
515
+
516
+ # The operation to apply to the attribute
517
+ sig { returns(Lithic::AuthRules::ConditionalOperation::OrSymbol) }
518
+ attr_accessor :operation
519
+
520
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
521
+ sig { returns(Lithic::AuthRules::ConditionalValue::Variants) }
522
+ attr_accessor :value
523
+
524
+ sig do
525
+ params(
526
+ attribute:
527
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::OrSymbol,
528
+ operation: Lithic::AuthRules::ConditionalOperation::OrSymbol,
529
+ value: Lithic::AuthRules::ConditionalValue::Variants
530
+ ).returns(T.attached_class)
531
+ end
532
+ def self.new(
533
+ # The attribute to target.
534
+ #
535
+ # The following attributes may be targeted:
536
+ #
537
+ # - `TIMESTAMP`: The timestamp of the tokenization request in ISO 8601 format.
538
+ # - `TOKENIZATION_CHANNEL`: The channel through which the tokenization request was
539
+ # initiated (e.g., DIGITAL_WALLET, ECOMMERCE).
540
+ # - `TOKENIZATION_SOURCE`: The source of the tokenization request.
541
+ # - `TOKEN_REQUESTOR_NAME`: The name of the entity requesting the token. Valid
542
+ # values are `ALT_ID`, `AMAZON_ONE`, `AMERICAN_EXPRESS_TOKEN_SERVICE`,
543
+ # `ANDROID_PAY`, `APPLE_PAY`, `FACEBOOK`, `FITBIT_PAY`, `GARMIN_PAY`,
544
+ # `GOOGLE_PAY`, `GOOGLE_VCN`, `ISSUER_HCE`, `MICROSOFT_PAY`, `NETFLIX`,
545
+ # `SAMSUNG_PAY`, `UNKNOWN`, `VISA_CHECKOUT`.
546
+ # - `WALLET_ACCOUNT_SCORE`: Risk score for the account in the digital wallet.
547
+ # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
548
+ # = medium risk).
549
+ # - `WALLET_DEVICE_SCORE`: Risk score for the device in the digital wallet.
550
+ # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
551
+ # = medium risk).
552
+ # - `WALLET_RECOMMENDED_DECISION`: The decision recommended by the digital wallet
553
+ # provider. Valid values include APPROVE, DECLINE,
554
+ # REQUIRE_ADDITIONAL_AUTHENTICATION.
555
+ # - `TOKEN_REQUESTOR_ID`: Unique identifier for the entity requesting the token.
556
+ # - `WALLET_TOKEN_STATUS`: The current status of the wallet token.
557
+ attribute:,
558
+ # The operation to apply to the attribute
559
+ operation:,
560
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
561
+ value:
562
+ )
563
+ end
564
+
565
+ sig do
566
+ override.returns(
567
+ {
568
+ attribute:
569
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::OrSymbol,
570
+ operation: Lithic::AuthRules::ConditionalOperation::OrSymbol,
571
+ value: Lithic::AuthRules::ConditionalValue::Variants
572
+ }
573
+ )
574
+ end
575
+ def to_hash
576
+ end
577
+
578
+ # The attribute to target.
579
+ #
580
+ # The following attributes may be targeted:
581
+ #
582
+ # - `TIMESTAMP`: The timestamp of the tokenization request in ISO 8601 format.
583
+ # - `TOKENIZATION_CHANNEL`: The channel through which the tokenization request was
584
+ # initiated (e.g., DIGITAL_WALLET, ECOMMERCE).
585
+ # - `TOKENIZATION_SOURCE`: The source of the tokenization request.
586
+ # - `TOKEN_REQUESTOR_NAME`: The name of the entity requesting the token. Valid
587
+ # values are `ALT_ID`, `AMAZON_ONE`, `AMERICAN_EXPRESS_TOKEN_SERVICE`,
588
+ # `ANDROID_PAY`, `APPLE_PAY`, `FACEBOOK`, `FITBIT_PAY`, `GARMIN_PAY`,
589
+ # `GOOGLE_PAY`, `GOOGLE_VCN`, `ISSUER_HCE`, `MICROSOFT_PAY`, `NETFLIX`,
590
+ # `SAMSUNG_PAY`, `UNKNOWN`, `VISA_CHECKOUT`.
591
+ # - `WALLET_ACCOUNT_SCORE`: Risk score for the account in the digital wallet.
592
+ # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
593
+ # = medium risk).
594
+ # - `WALLET_DEVICE_SCORE`: Risk score for the device in the digital wallet.
595
+ # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
596
+ # = medium risk).
597
+ # - `WALLET_RECOMMENDED_DECISION`: The decision recommended by the digital wallet
598
+ # provider. Valid values include APPROVE, DECLINE,
599
+ # REQUIRE_ADDITIONAL_AUTHENTICATION.
600
+ # - `TOKEN_REQUESTOR_ID`: Unique identifier for the entity requesting the token.
601
+ # - `WALLET_TOKEN_STATUS`: The current status of the wallet token.
602
+ module Attribute
603
+ extend Lithic::Internal::Type::Enum
604
+
605
+ TaggedSymbol =
606
+ T.type_alias do
607
+ T.all(
608
+ Symbol,
609
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute
610
+ )
611
+ end
612
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
613
+
614
+ TIMESTAMP =
615
+ T.let(
616
+ :TIMESTAMP,
617
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
618
+ )
619
+ TOKENIZATION_CHANNEL =
620
+ T.let(
621
+ :TOKENIZATION_CHANNEL,
622
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
623
+ )
624
+ TOKENIZATION_SOURCE =
625
+ T.let(
626
+ :TOKENIZATION_SOURCE,
627
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
628
+ )
629
+ TOKEN_REQUESTOR_NAME =
630
+ T.let(
631
+ :TOKEN_REQUESTOR_NAME,
632
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
633
+ )
634
+ WALLET_ACCOUNT_SCORE =
635
+ T.let(
636
+ :WALLET_ACCOUNT_SCORE,
637
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
638
+ )
639
+ WALLET_DEVICE_SCORE =
640
+ T.let(
641
+ :WALLET_DEVICE_SCORE,
642
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
643
+ )
644
+ WALLET_RECOMMENDED_DECISION =
645
+ T.let(
646
+ :WALLET_RECOMMENDED_DECISION,
647
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
648
+ )
649
+ TOKEN_REQUESTOR_ID =
650
+ T.let(
651
+ :TOKEN_REQUESTOR_ID,
652
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
653
+ )
654
+ WALLET_TOKEN_STATUS =
655
+ T.let(
656
+ :WALLET_TOKEN_STATUS,
657
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
658
+ )
659
+
660
+ sig do
661
+ override.returns(
662
+ T::Array[
663
+ Lithic::AuthRules::ConditionalTokenizationActionParameters::Condition::Attribute::TaggedSymbol
664
+ ]
665
+ )
666
+ end
667
+ def self.values
668
+ end
669
+ end
670
+ end
671
+ end
672
+ end
673
+ end
674
+ end
@@ -0,0 +1,28 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ module AuthRules
6
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
7
+ module ConditionalValue
8
+ extend Lithic::Internal::Type::Union
9
+
10
+ Variants = T.type_alias { T.any(String, Integer, T::Array[String]) }
11
+
12
+ sig do
13
+ override.returns(
14
+ T::Array[Lithic::AuthRules::ConditionalValue::Variants]
15
+ )
16
+ end
17
+ def self.variants
18
+ end
19
+
20
+ StringArray =
21
+ T.let(
22
+ Lithic::Internal::Type::ArrayOf[String],
23
+ Lithic::Internal::Type::Converter
24
+ )
25
+ end
26
+ end
27
+ end
28
+ end