lithic 0.1.0.pre.alpha.54 → 0.1.0.pre.alpha.55

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 (134) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/models/account_holder_simulate_enrollment_review_response.rb +2 -2
  5. data/lib/lithic/models/account_holder_update_response.rb +4 -4
  6. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +252 -0
  7. data/lib/lithic/models/auth_rules/v2_create_params.rb +38 -284
  8. data/lib/lithic/models/auth_rules/v2_create_response.rb +8 -508
  9. data/lib/lithic/models/auth_rules/v2_draft_params.rb +4 -250
  10. data/lib/lithic/models/auth_rules/v2_draft_response.rb +8 -508
  11. data/lib/lithic/models/auth_rules/v2_list_response.rb +8 -508
  12. data/lib/lithic/models/auth_rules/v2_promote_response.rb +8 -508
  13. data/lib/lithic/models/auth_rules/v2_retrieve_features_response.rb +4 -11
  14. data/lib/lithic/models/auth_rules/v2_retrieve_response.rb +8 -508
  15. data/lib/lithic/models/auth_rules/v2_update_response.rb +8 -508
  16. data/lib/lithic/models/auth_rules/velocity_limit_params.rb +4 -7
  17. data/lib/lithic/models/auth_rules/velocity_limit_period.rb +154 -0
  18. data/lib/lithic/models/book_transfer_response.rb +5 -5
  19. data/lib/lithic/models/dispute.rb +510 -242
  20. data/lib/lithic/models/dispute_create_response.rb +326 -0
  21. data/lib/lithic/models/dispute_delete_response.rb +326 -0
  22. data/lib/lithic/models/dispute_list_response.rb +326 -0
  23. data/lib/lithic/models/dispute_retrieve_response.rb +326 -0
  24. data/lib/lithic/models/dispute_update_response.rb +326 -0
  25. data/lib/lithic/models/event.rb +213 -69
  26. data/lib/lithic/models/event_list_params.rb +112 -6
  27. data/lib/lithic/models/event_subscription.rb +112 -6
  28. data/lib/lithic/models/events/subscription_create_params.rb +112 -6
  29. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +12 -6
  30. data/lib/lithic/models/events/subscription_update_params.rb +112 -6
  31. data/lib/lithic/models/financial_account.rb +1 -65
  32. data/lib/lithic/models/financial_accounts/financial_account_credit_config.rb +1 -64
  33. data/lib/lithic/models/financial_accounts/loan_tape.rb +99 -3
  34. data/lib/lithic/models/financial_accounts/statement.rb +66 -2
  35. data/lib/lithic/models/payment.rb +9 -9
  36. data/lib/lithic/models/payment_simulate_action_params.rb +17 -1
  37. data/lib/lithic/models/tokenization.rb +189 -23
  38. data/lib/lithic/models/transaction.rb +12 -116
  39. data/lib/lithic/models/transactions/events/enhanced_data.rb +9 -9
  40. data/lib/lithic/resources/auth_rules/v2/backtests.rb +3 -5
  41. data/lib/lithic/resources/auth_rules/v2.rb +13 -56
  42. data/lib/lithic/resources/disputes.rb +10 -10
  43. data/lib/lithic/resources/payments.rb +5 -1
  44. data/lib/lithic/version.rb +1 -1
  45. data/lib/lithic.rb +7 -3
  46. data/rbi/lithic/models/account_holder_simulate_enrollment_review_response.rbi +3 -6
  47. data/rbi/lithic/models/account_holder_update_response.rbi +6 -12
  48. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +577 -0
  49. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +85 -679
  50. data/rbi/lithic/models/auth_rules/v2_create_response.rbi +4 -1146
  51. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +4 -575
  52. data/rbi/lithic/models/auth_rules/v2_draft_response.rbi +4 -1146
  53. data/rbi/lithic/models/auth_rules/v2_list_response.rbi +4 -1146
  54. data/rbi/lithic/models/auth_rules/v2_promote_response.rbi +4 -1146
  55. data/rbi/lithic/models/auth_rules/v2_retrieve_features_response.rbi +9 -22
  56. data/rbi/lithic/models/auth_rules/v2_retrieve_response.rbi +4 -1146
  57. data/rbi/lithic/models/auth_rules/v2_update_response.rbi +4 -1146
  58. data/rbi/lithic/models/auth_rules/velocity_limit_params.rbi +17 -29
  59. data/rbi/lithic/models/auth_rules/velocity_limit_period.rbi +223 -0
  60. data/rbi/lithic/models/book_transfer_response.rbi +14 -11
  61. data/rbi/lithic/models/dispute.rbi +942 -395
  62. data/rbi/lithic/models/dispute_create_response.rbi +599 -0
  63. data/rbi/lithic/models/dispute_delete_response.rbi +599 -0
  64. data/rbi/lithic/models/dispute_list_response.rbi +582 -0
  65. data/rbi/lithic/models/dispute_retrieve_response.rbi +601 -0
  66. data/rbi/lithic/models/dispute_update_response.rbi +599 -0
  67. data/rbi/lithic/models/event.rbi +348 -111
  68. data/rbi/lithic/models/event_list_params.rbi +155 -25
  69. data/rbi/lithic/models/event_subscription.rbi +155 -25
  70. data/rbi/lithic/models/events/subscription_create_params.rbi +155 -25
  71. data/rbi/lithic/models/events/subscription_send_simulated_example_params.rbi +55 -25
  72. data/rbi/lithic/models/events/subscription_update_params.rbi +155 -25
  73. data/rbi/lithic/models/financial_account.rbi +3 -132
  74. data/rbi/lithic/models/financial_accounts/financial_account_credit_config.rbi +3 -136
  75. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +132 -9
  76. data/rbi/lithic/models/financial_accounts/statement.rbi +88 -6
  77. data/rbi/lithic/models/payment.rbi +11 -14
  78. data/rbi/lithic/models/payment_simulate_action_params.rbi +22 -0
  79. data/rbi/lithic/models/tokenization.rbi +429 -34
  80. data/rbi/lithic/models/transaction.rbi +22 -246
  81. data/rbi/lithic/models/transactions/events/enhanced_data.rbi +12 -12
  82. data/rbi/lithic/resources/auth_rules/v2/backtests.rbi +0 -3
  83. data/rbi/lithic/resources/auth_rules/v2.rbi +24 -72
  84. data/rbi/lithic/resources/disputes.rbi +7 -5
  85. data/rbi/lithic/resources/payments.rbi +6 -0
  86. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +4 -6
  87. data/sig/lithic/models/account_holder_update_response.rbs +8 -12
  88. data/sig/lithic/models/auth_rules/conditional_authorization_action_parameters.rbs +163 -0
  89. data/sig/lithic/models/auth_rules/v2_create_params.rbs +22 -188
  90. data/sig/lithic/models/auth_rules/v2_create_response.rbs +2 -318
  91. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -159
  92. data/sig/lithic/models/auth_rules/v2_draft_response.rbs +2 -318
  93. data/sig/lithic/models/auth_rules/v2_list_response.rbs +2 -318
  94. data/sig/lithic/models/auth_rules/v2_promote_response.rbs +2 -318
  95. data/sig/lithic/models/auth_rules/v2_retrieve_features_response.rbs +4 -4
  96. data/sig/lithic/models/auth_rules/v2_retrieve_response.rbs +2 -318
  97. data/sig/lithic/models/auth_rules/v2_update_response.rbs +2 -318
  98. data/sig/lithic/models/auth_rules/velocity_limit_params.rbs +4 -4
  99. data/sig/lithic/models/auth_rules/velocity_limit_period.rbs +91 -0
  100. data/sig/lithic/models/book_transfer_response.rbs +7 -7
  101. data/sig/lithic/models/dispute.rbs +417 -157
  102. data/sig/lithic/models/dispute_create_response.rbs +210 -0
  103. data/sig/lithic/models/dispute_delete_response.rbs +210 -0
  104. data/sig/lithic/models/dispute_list_response.rbs +210 -0
  105. data/sig/lithic/models/dispute_retrieve_response.rbs +210 -0
  106. data/sig/lithic/models/dispute_update_response.rbs +210 -0
  107. data/sig/lithic/models/event.rbs +25 -13
  108. data/sig/lithic/models/event_list_params.rbs +25 -13
  109. data/sig/lithic/models/event_subscription.rbs +25 -13
  110. data/sig/lithic/models/events/subscription_create_params.rbs +25 -13
  111. data/sig/lithic/models/events/subscription_send_simulated_example_params.rbs +25 -13
  112. data/sig/lithic/models/events/subscription_update_params.rbs +25 -13
  113. data/sig/lithic/models/financial_account.rbs +3 -45
  114. data/sig/lithic/models/financial_accounts/financial_account_credit_config.rbs +3 -49
  115. data/sig/lithic/models/financial_accounts/loan_tape.rbs +87 -9
  116. data/sig/lithic/models/financial_accounts/statement.rbs +58 -6
  117. data/sig/lithic/models/payment.rbs +8 -10
  118. data/sig/lithic/models/payment_simulate_action_params.rbs +14 -0
  119. data/sig/lithic/models/tokenization.rbs +160 -13
  120. data/sig/lithic/models/transaction.rbs +13 -94
  121. data/sig/lithic/models/transactions/events/enhanced_data.rbs +15 -15
  122. data/sig/lithic/resources/auth_rules/v2.rbs +2 -12
  123. data/sig/lithic/resources/disputes.rbs +5 -5
  124. data/sig/lithic/resources/payments.rbs +2 -0
  125. metadata +23 -11
  126. data/lib/lithic/models/auth_rules/v2_apply_params.rb +0 -56
  127. data/lib/lithic/models/auth_rules/v2_apply_response.rb +0 -766
  128. data/lib/lithic/models/auth_rules/velocity_limit_params_period_window.rb +0 -248
  129. data/rbi/lithic/models/auth_rules/v2_apply_params.rbi +0 -86
  130. data/rbi/lithic/models/auth_rules/v2_apply_response.rbi +0 -1638
  131. data/rbi/lithic/models/auth_rules/velocity_limit_params_period_window.rbi +0 -557
  132. data/sig/lithic/models/auth_rules/v2_apply_params.rbs +0 -54
  133. data/sig/lithic/models/auth_rules/v2_apply_response.rbs +0 -509
  134. data/sig/lithic/models/auth_rules/velocity_limit_params_period_window.rbs +0 -223
@@ -22,10 +22,6 @@ module Lithic
22
22
  sig { returns(Time) }
23
23
  attr_accessor :created_at
24
24
 
25
- # The device identifier associated with the tokenization.
26
- sig { returns(T.nilable(String)) }
27
- attr_accessor :device_id
28
-
29
25
  # The dynamic pan assigned to the token by the network.
30
26
  sig { returns(T.nilable(String)) }
31
27
  attr_accessor :dpan
@@ -34,9 +30,10 @@ module Lithic
34
30
  sig { returns(Lithic::Tokenization::Status::TaggedSymbol) }
35
31
  attr_accessor :status
36
32
 
37
- # The entity that requested the tokenization. Represents a Digital Wallet or
38
- # merchant.
39
- sig { returns(Lithic::Tokenization::TokenRequestorName::TaggedSymbol) }
33
+ # The entity that requested the tokenization. For digital wallets, this will be
34
+ # one of the defined wallet types. For merchant tokenizations, this will be a
35
+ # free-form merchant name string.
36
+ sig { returns(Lithic::Tokenization::TokenRequestorName::Variants) }
40
37
  attr_accessor :token_requestor_name
41
38
 
42
39
  # The network's unique reference for the tokenization.
@@ -51,15 +48,16 @@ module Lithic
51
48
  sig { returns(Time) }
52
49
  attr_accessor :updated_at
53
50
 
54
- # Specifies the digital card art displayed in the user’s digital wallet after
51
+ # The device identifier associated with the tokenization.
52
+ sig { returns(T.nilable(String)) }
53
+ attr_accessor :device_id
54
+
55
+ # Specifies the digital card art displayed in the user's digital wallet after
55
56
  # tokenization. This will be null if the tokenization was created without an
56
57
  # associated digital card art. See
57
58
  # [Flexible Card Art Guide](https://docs.lithic.com/docs/about-digital-wallets#flexible-card-art).
58
59
  sig { returns(T.nilable(String)) }
59
- attr_reader :digital_card_art_token
60
-
61
- sig { params(digital_card_art_token: String).void }
62
- attr_writer :digital_card_art_token
60
+ attr_accessor :digital_card_art_token
63
61
 
64
62
  # A list of events related to the tokenization.
65
63
  sig { returns(T.nilable(T::Array[Lithic::Tokenization::Event])) }
@@ -78,16 +76,16 @@ module Lithic
78
76
  account_token: String,
79
77
  card_token: String,
80
78
  created_at: Time,
81
- device_id: T.nilable(String),
82
79
  dpan: T.nilable(String),
83
80
  status: Lithic::Tokenization::Status::OrSymbol,
84
81
  token_requestor_name:
85
- Lithic::Tokenization::TokenRequestorName::OrSymbol,
82
+ T.any(Lithic::Tokenization::TokenRequestorName::OrSymbol, String),
86
83
  token_unique_reference: String,
87
84
  tokenization_channel:
88
85
  Lithic::Tokenization::TokenizationChannel::OrSymbol,
89
86
  updated_at: Time,
90
- digital_card_art_token: String,
87
+ device_id: T.nilable(String),
88
+ digital_card_art_token: T.nilable(String),
91
89
  events: T::Array[Lithic::Tokenization::Event::OrHash],
92
90
  payment_account_reference_id: T.nilable(String)
93
91
  ).returns(T.attached_class)
@@ -101,14 +99,13 @@ module Lithic
101
99
  card_token:,
102
100
  # Date and time when the tokenization first occurred. UTC time zone.
103
101
  created_at:,
104
- # The device identifier associated with the tokenization.
105
- device_id:,
106
102
  # The dynamic pan assigned to the token by the network.
107
103
  dpan:,
108
104
  # The status of the tokenization request
109
105
  status:,
110
- # The entity that requested the tokenization. Represents a Digital Wallet or
111
- # merchant.
106
+ # The entity that requested the tokenization. For digital wallets, this will be
107
+ # one of the defined wallet types. For merchant tokenizations, this will be a
108
+ # free-form merchant name string.
112
109
  token_requestor_name:,
113
110
  # The network's unique reference for the tokenization.
114
111
  token_unique_reference:,
@@ -116,7 +113,9 @@ module Lithic
116
113
  tokenization_channel:,
117
114
  # Latest date and time when the tokenization was updated. UTC time zone.
118
115
  updated_at:,
119
- # Specifies the digital card art displayed in the user’s digital wallet after
116
+ # The device identifier associated with the tokenization.
117
+ device_id: nil,
118
+ # Specifies the digital card art displayed in the user's digital wallet after
120
119
  # tokenization. This will be null if the tokenization was created without an
121
120
  # associated digital card art. See
122
121
  # [Flexible Card Art Guide](https://docs.lithic.com/docs/about-digital-wallets#flexible-card-art).
@@ -135,16 +134,16 @@ module Lithic
135
134
  account_token: String,
136
135
  card_token: String,
137
136
  created_at: Time,
138
- device_id: T.nilable(String),
139
137
  dpan: T.nilable(String),
140
138
  status: Lithic::Tokenization::Status::TaggedSymbol,
141
139
  token_requestor_name:
142
- Lithic::Tokenization::TokenRequestorName::TaggedSymbol,
140
+ Lithic::Tokenization::TokenRequestorName::Variants,
143
141
  token_unique_reference: String,
144
142
  tokenization_channel:
145
143
  Lithic::Tokenization::TokenizationChannel::TaggedSymbol,
146
144
  updated_at: Time,
147
- digital_card_art_token: String,
145
+ device_id: T.nilable(String),
146
+ digital_card_art_token: T.nilable(String),
148
147
  events: T::Array[Lithic::Tokenization::Event],
149
148
  payment_account_reference_id: T.nilable(String)
150
149
  }
@@ -179,10 +178,27 @@ module Lithic
179
178
  end
180
179
  end
181
180
 
182
- # The entity that requested the tokenization. Represents a Digital Wallet or
183
- # merchant.
181
+ # The entity that requested the tokenization. For digital wallets, this will be
182
+ # one of the defined wallet types. For merchant tokenizations, this will be a
183
+ # free-form merchant name string.
184
184
  module TokenRequestorName
185
- extend Lithic::Internal::Type::Enum
185
+ extend Lithic::Internal::Type::Union
186
+
187
+ Variants =
188
+ T.type_alias do
189
+ T.any(
190
+ Lithic::Tokenization::TokenRequestorName::TaggedSymbol,
191
+ String
192
+ )
193
+ end
194
+
195
+ sig do
196
+ override.returns(
197
+ T::Array[Lithic::Tokenization::TokenRequestorName::Variants]
198
+ )
199
+ end
200
+ def self.variants
201
+ end
186
202
 
187
203
  TaggedSymbol =
188
204
  T.type_alias do
@@ -220,6 +236,11 @@ module Lithic
220
236
  :GARMIN_PAY,
221
237
  Lithic::Tokenization::TokenRequestorName::TaggedSymbol
222
238
  )
239
+ GOOGLE_PAY =
240
+ T.let(
241
+ :GOOGLE_PAY,
242
+ Lithic::Tokenization::TokenRequestorName::TaggedSymbol
243
+ )
223
244
  MICROSOFT_PAY =
224
245
  T.let(
225
246
  :MICROSOFT_PAY,
@@ -245,14 +266,6 @@ module Lithic
245
266
  :VISA_CHECKOUT,
246
267
  Lithic::Tokenization::TokenRequestorName::TaggedSymbol
247
268
  )
248
-
249
- sig do
250
- override.returns(
251
- T::Array[Lithic::Tokenization::TokenRequestorName::TaggedSymbol]
252
- )
253
- end
254
- def self.values
255
- end
256
269
  end
257
270
 
258
271
  # The channel through which the tokenization was made.
@@ -316,6 +329,64 @@ module Lithic
316
329
  end
317
330
  attr_writer :result
318
331
 
332
+ # Results from rules that were evaluated for this tokenization
333
+ sig do
334
+ returns(T.nilable(T::Array[Lithic::Tokenization::Event::RuleResult]))
335
+ end
336
+ attr_reader :rule_results
337
+
338
+ sig do
339
+ params(
340
+ rule_results:
341
+ T::Array[Lithic::Tokenization::Event::RuleResult::OrHash]
342
+ ).void
343
+ end
344
+ attr_writer :rule_results
345
+
346
+ # List of reasons why the tokenization was declined
347
+ sig do
348
+ returns(
349
+ T.nilable(
350
+ T::Array[
351
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
352
+ ]
353
+ )
354
+ )
355
+ end
356
+ attr_reader :tokenization_decline_reasons
357
+
358
+ sig do
359
+ params(
360
+ tokenization_decline_reasons:
361
+ T::Array[
362
+ Lithic::Tokenization::Event::TokenizationDeclineReason::OrSymbol
363
+ ]
364
+ ).void
365
+ end
366
+ attr_writer :tokenization_decline_reasons
367
+
368
+ # List of reasons why two-factor authentication was required
369
+ sig do
370
+ returns(
371
+ T.nilable(
372
+ T::Array[
373
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
374
+ ]
375
+ )
376
+ )
377
+ end
378
+ attr_reader :tokenization_tfa_reasons
379
+
380
+ sig do
381
+ params(
382
+ tokenization_tfa_reasons:
383
+ T::Array[
384
+ Lithic::Tokenization::Event::TokenizationTfaReason::OrSymbol
385
+ ]
386
+ ).void
387
+ end
388
+ attr_writer :tokenization_tfa_reasons
389
+
319
390
  # Enum representing the type of tokenization event that occurred
320
391
  sig do
321
392
  returns(T.nilable(Lithic::Tokenization::Event::Type::TaggedSymbol))
@@ -330,6 +401,16 @@ module Lithic
330
401
  token: String,
331
402
  created_at: Time,
332
403
  result: Lithic::Tokenization::Event::Result::OrSymbol,
404
+ rule_results:
405
+ T::Array[Lithic::Tokenization::Event::RuleResult::OrHash],
406
+ tokenization_decline_reasons:
407
+ T::Array[
408
+ Lithic::Tokenization::Event::TokenizationDeclineReason::OrSymbol
409
+ ],
410
+ tokenization_tfa_reasons:
411
+ T::Array[
412
+ Lithic::Tokenization::Event::TokenizationTfaReason::OrSymbol
413
+ ],
333
414
  type: Lithic::Tokenization::Event::Type::OrSymbol
334
415
  ).returns(T.attached_class)
335
416
  end
@@ -340,6 +421,12 @@ module Lithic
340
421
  created_at: nil,
341
422
  # Enum representing the result of the tokenization event
342
423
  result: nil,
424
+ # Results from rules that were evaluated for this tokenization
425
+ rule_results: nil,
426
+ # List of reasons why the tokenization was declined
427
+ tokenization_decline_reasons: nil,
428
+ # List of reasons why two-factor authentication was required
429
+ tokenization_tfa_reasons: nil,
343
430
  # Enum representing the type of tokenization event that occurred
344
431
  type: nil
345
432
  )
@@ -351,6 +438,15 @@ module Lithic
351
438
  token: String,
352
439
  created_at: Time,
353
440
  result: Lithic::Tokenization::Event::Result::TaggedSymbol,
441
+ rule_results: T::Array[Lithic::Tokenization::Event::RuleResult],
442
+ tokenization_decline_reasons:
443
+ T::Array[
444
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
445
+ ],
446
+ tokenization_tfa_reasons:
447
+ T::Array[
448
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
449
+ ],
354
450
  type: Lithic::Tokenization::Event::Type::TaggedSymbol
355
451
  }
356
452
  )
@@ -430,6 +526,305 @@ module Lithic
430
526
  end
431
527
  end
432
528
 
529
+ class RuleResult < Lithic::Internal::Type::BaseModel
530
+ OrHash =
531
+ T.type_alias do
532
+ T.any(
533
+ Lithic::Tokenization::Event::RuleResult,
534
+ Lithic::Internal::AnyHash
535
+ )
536
+ end
537
+
538
+ # The Auth Rule Token associated with the rule. If this is set to null, then the
539
+ # result was not associated with a customer-configured rule. This may happen in
540
+ # cases where a tokenization is declined or requires TFA due to a
541
+ # Lithic-configured security or compliance rule, for example.
542
+ sig { returns(T.nilable(String)) }
543
+ attr_accessor :auth_rule_token
544
+
545
+ # A human-readable explanation outlining the motivation for the rule's result
546
+ sig { returns(T.nilable(String)) }
547
+ attr_accessor :explanation
548
+
549
+ # The name for the rule, if any was configured
550
+ sig { returns(T.nilable(String)) }
551
+ attr_accessor :name
552
+
553
+ # The result associated with this rule
554
+ sig do
555
+ returns(
556
+ Lithic::Tokenization::Event::RuleResult::Result::TaggedSymbol
557
+ )
558
+ end
559
+ attr_accessor :result
560
+
561
+ sig do
562
+ params(
563
+ auth_rule_token: T.nilable(String),
564
+ explanation: T.nilable(String),
565
+ name: T.nilable(String),
566
+ result: Lithic::Tokenization::Event::RuleResult::Result::OrSymbol
567
+ ).returns(T.attached_class)
568
+ end
569
+ def self.new(
570
+ # The Auth Rule Token associated with the rule. If this is set to null, then the
571
+ # result was not associated with a customer-configured rule. This may happen in
572
+ # cases where a tokenization is declined or requires TFA due to a
573
+ # Lithic-configured security or compliance rule, for example.
574
+ auth_rule_token:,
575
+ # A human-readable explanation outlining the motivation for the rule's result
576
+ explanation:,
577
+ # The name for the rule, if any was configured
578
+ name:,
579
+ # The result associated with this rule
580
+ result:
581
+ )
582
+ end
583
+
584
+ sig do
585
+ override.returns(
586
+ {
587
+ auth_rule_token: T.nilable(String),
588
+ explanation: T.nilable(String),
589
+ name: T.nilable(String),
590
+ result:
591
+ Lithic::Tokenization::Event::RuleResult::Result::TaggedSymbol
592
+ }
593
+ )
594
+ end
595
+ def to_hash
596
+ end
597
+
598
+ # The result associated with this rule
599
+ module Result
600
+ extend Lithic::Internal::Type::Enum
601
+
602
+ TaggedSymbol =
603
+ T.type_alias do
604
+ T.all(Symbol, Lithic::Tokenization::Event::RuleResult::Result)
605
+ end
606
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
607
+
608
+ APPROVED =
609
+ T.let(
610
+ :APPROVED,
611
+ Lithic::Tokenization::Event::RuleResult::Result::TaggedSymbol
612
+ )
613
+ DECLINED =
614
+ T.let(
615
+ :DECLINED,
616
+ Lithic::Tokenization::Event::RuleResult::Result::TaggedSymbol
617
+ )
618
+ REQUIRE_TFA =
619
+ T.let(
620
+ :REQUIRE_TFA,
621
+ Lithic::Tokenization::Event::RuleResult::Result::TaggedSymbol
622
+ )
623
+ ERROR =
624
+ T.let(
625
+ :ERROR,
626
+ Lithic::Tokenization::Event::RuleResult::Result::TaggedSymbol
627
+ )
628
+
629
+ sig do
630
+ override.returns(
631
+ T::Array[
632
+ Lithic::Tokenization::Event::RuleResult::Result::TaggedSymbol
633
+ ]
634
+ )
635
+ end
636
+ def self.values
637
+ end
638
+ end
639
+ end
640
+
641
+ # Reason code for why a tokenization was declined
642
+ module TokenizationDeclineReason
643
+ extend Lithic::Internal::Type::Enum
644
+
645
+ TaggedSymbol =
646
+ T.type_alias do
647
+ T.all(
648
+ Symbol,
649
+ Lithic::Tokenization::Event::TokenizationDeclineReason
650
+ )
651
+ end
652
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
653
+
654
+ ACCOUNT_SCORE_1 =
655
+ T.let(
656
+ :ACCOUNT_SCORE_1,
657
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
658
+ )
659
+ DEVICE_SCORE_1 =
660
+ T.let(
661
+ :DEVICE_SCORE_1,
662
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
663
+ )
664
+ ALL_WALLET_DECLINE_REASONS_PRESENT =
665
+ T.let(
666
+ :ALL_WALLET_DECLINE_REASONS_PRESENT,
667
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
668
+ )
669
+ WALLET_RECOMMENDED_DECISION_RED =
670
+ T.let(
671
+ :WALLET_RECOMMENDED_DECISION_RED,
672
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
673
+ )
674
+ CVC_MISMATCH =
675
+ T.let(
676
+ :CVC_MISMATCH,
677
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
678
+ )
679
+ CARD_EXPIRY_MONTH_MISMATCH =
680
+ T.let(
681
+ :CARD_EXPIRY_MONTH_MISMATCH,
682
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
683
+ )
684
+ CARD_EXPIRY_YEAR_MISMATCH =
685
+ T.let(
686
+ :CARD_EXPIRY_YEAR_MISMATCH,
687
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
688
+ )
689
+ CARD_INVALID_STATE =
690
+ T.let(
691
+ :CARD_INVALID_STATE,
692
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
693
+ )
694
+ CUSTOMER_RED_PATH =
695
+ T.let(
696
+ :CUSTOMER_RED_PATH,
697
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
698
+ )
699
+ INVALID_CUSTOMER_RESPONSE =
700
+ T.let(
701
+ :INVALID_CUSTOMER_RESPONSE,
702
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
703
+ )
704
+ NETWORK_FAILURE =
705
+ T.let(
706
+ :NETWORK_FAILURE,
707
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
708
+ )
709
+ GENERIC_DECLINE =
710
+ T.let(
711
+ :GENERIC_DECLINE,
712
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
713
+ )
714
+ DIGITAL_CARD_ART_REQUIRED =
715
+ T.let(
716
+ :DIGITAL_CARD_ART_REQUIRED,
717
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
718
+ )
719
+
720
+ sig do
721
+ override.returns(
722
+ T::Array[
723
+ Lithic::Tokenization::Event::TokenizationDeclineReason::TaggedSymbol
724
+ ]
725
+ )
726
+ end
727
+ def self.values
728
+ end
729
+ end
730
+
731
+ # Reason code for why a tokenization required two-factor authentication
732
+ module TokenizationTfaReason
733
+ extend Lithic::Internal::Type::Enum
734
+
735
+ TaggedSymbol =
736
+ T.type_alias do
737
+ T.all(Symbol, Lithic::Tokenization::Event::TokenizationTfaReason)
738
+ end
739
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
740
+
741
+ WALLET_RECOMMENDED_TFA =
742
+ T.let(
743
+ :WALLET_RECOMMENDED_TFA,
744
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
745
+ )
746
+ SUSPICIOUS_ACTIVITY =
747
+ T.let(
748
+ :SUSPICIOUS_ACTIVITY,
749
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
750
+ )
751
+ DEVICE_RECENTLY_LOST =
752
+ T.let(
753
+ :DEVICE_RECENTLY_LOST,
754
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
755
+ )
756
+ TOO_MANY_RECENT_ATTEMPTS =
757
+ T.let(
758
+ :TOO_MANY_RECENT_ATTEMPTS,
759
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
760
+ )
761
+ TOO_MANY_RECENT_TOKENS =
762
+ T.let(
763
+ :TOO_MANY_RECENT_TOKENS,
764
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
765
+ )
766
+ TOO_MANY_DIFFERENT_CARDHOLDERS =
767
+ T.let(
768
+ :TOO_MANY_DIFFERENT_CARDHOLDERS,
769
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
770
+ )
771
+ OUTSIDE_HOME_TERRITORY =
772
+ T.let(
773
+ :OUTSIDE_HOME_TERRITORY,
774
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
775
+ )
776
+ HAS_SUSPENDED_TOKENS =
777
+ T.let(
778
+ :HAS_SUSPENDED_TOKENS,
779
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
780
+ )
781
+ HIGH_RISK =
782
+ T.let(
783
+ :HIGH_RISK,
784
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
785
+ )
786
+ ACCOUNT_SCORE_LOW =
787
+ T.let(
788
+ :ACCOUNT_SCORE_LOW,
789
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
790
+ )
791
+ DEVICE_SCORE_LOW =
792
+ T.let(
793
+ :DEVICE_SCORE_LOW,
794
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
795
+ )
796
+ CARD_STATE_TFA =
797
+ T.let(
798
+ :CARD_STATE_TFA,
799
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
800
+ )
801
+ HARDCODED_TFA =
802
+ T.let(
803
+ :HARDCODED_TFA,
804
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
805
+ )
806
+ CUSTOMER_RULE_TFA =
807
+ T.let(
808
+ :CUSTOMER_RULE_TFA,
809
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
810
+ )
811
+ DEVICE_HOST_CARD_EMULATION =
812
+ T.let(
813
+ :DEVICE_HOST_CARD_EMULATION,
814
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
815
+ )
816
+
817
+ sig do
818
+ override.returns(
819
+ T::Array[
820
+ Lithic::Tokenization::Event::TokenizationTfaReason::TaggedSymbol
821
+ ]
822
+ )
823
+ end
824
+ def self.values
825
+ end
826
+ end
827
+
433
828
  # Enum representing the type of tokenization event that occurred
434
829
  module Type
435
830
  extend Lithic::Internal::Type::Enum