increase 1.363.0 → 1.364.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 (100) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/increase/client.rb +8 -0
  4. data/lib/increase/models/account_number.rb +51 -81
  5. data/lib/increase/models/account_number_create_params.rb +41 -75
  6. data/lib/increase/models/account_number_list_params.rb +39 -39
  7. data/lib/increase/models/account_number_update_params.rb +48 -79
  8. data/lib/increase/models/card_payment.rb +6 -0
  9. data/lib/increase/models/card_update_params.rb +12 -8
  10. data/lib/increase/models/checkbook.rb +352 -0
  11. data/lib/increase/models/checkbook_check.rb +100 -0
  12. data/lib/increase/models/checkbook_check_list_params.rb +61 -0
  13. data/lib/increase/models/checkbook_check_retrieve_params.rb +22 -0
  14. data/lib/increase/models/checkbook_check_stop_params.rb +22 -0
  15. data/lib/increase/models/checkbook_create_params.rb +111 -0
  16. data/lib/increase/models/checkbook_list_params.rb +104 -0
  17. data/lib/increase/models/checkbook_retrieve_params.rb +22 -0
  18. data/lib/increase/models/checkbook_stop_params.rb +22 -0
  19. data/lib/increase/models/declined_transaction.rb +10 -1
  20. data/lib/increase/models/entity.rb +1 -65
  21. data/lib/increase/models/entity_create_params.rb +1 -65
  22. data/lib/increase/models/entity_update_params.rb +1 -57
  23. data/lib/increase/models/inbound_ach_transfer.rb +6 -6
  24. data/lib/increase/models/inbound_check_deposit.rb +12 -1
  25. data/lib/increase/models/real_time_decision.rb +65 -1
  26. data/lib/increase/models/simulations/checkbook_mail_params.rb +24 -0
  27. data/lib/increase/models/transaction.rb +24 -2
  28. data/lib/increase/models.rb +18 -0
  29. data/lib/increase/resources/account_numbers.rb +19 -16
  30. data/lib/increase/resources/checkbook_checks.rb +90 -0
  31. data/lib/increase/resources/checkbooks.rb +127 -0
  32. data/lib/increase/resources/entities.rb +2 -12
  33. data/lib/increase/resources/simulations/checkbooks.rb +38 -0
  34. data/lib/increase/resources/simulations.rb +4 -0
  35. data/lib/increase/version.rb +1 -1
  36. data/lib/increase.rb +13 -0
  37. data/rbi/increase/client.rbi +6 -0
  38. data/rbi/increase/models/account_number.rbi +86 -173
  39. data/rbi/increase/models/account_number_create_params.rbi +87 -165
  40. data/rbi/increase/models/account_number_list_params.rbi +106 -105
  41. data/rbi/increase/models/account_number_update_params.rbi +105 -190
  42. data/rbi/increase/models/card_payment.rbi +14 -0
  43. data/rbi/increase/models/card_update_params.rbi +17 -15
  44. data/rbi/increase/models/checkbook.rbi +507 -0
  45. data/rbi/increase/models/checkbook_check.rbi +142 -0
  46. data/rbi/increase/models/checkbook_check_list_params.rbi +96 -0
  47. data/rbi/increase/models/checkbook_check_retrieve_params.rbi +46 -0
  48. data/rbi/increase/models/checkbook_check_stop_params.rbi +43 -0
  49. data/rbi/increase/models/checkbook_create_params.rbi +178 -0
  50. data/rbi/increase/models/checkbook_list_params.rbi +198 -0
  51. data/rbi/increase/models/checkbook_retrieve_params.rbi +40 -0
  52. data/rbi/increase/models/checkbook_stop_params.rbi +40 -0
  53. data/rbi/increase/models/declined_transaction.rbi +8 -0
  54. data/rbi/increase/models/entity.rbi +0 -97
  55. data/rbi/increase/models/entity_create_params.rbi +0 -119
  56. data/rbi/increase/models/entity_update_params.rbi +0 -108
  57. data/rbi/increase/models/inbound_ach_transfer.rbi +6 -6
  58. data/rbi/increase/models/inbound_check_deposit.rbi +10 -0
  59. data/rbi/increase/models/real_time_decision.rbi +134 -3
  60. data/rbi/increase/models/simulations/checkbook_mail_params.rbi +45 -0
  61. data/rbi/increase/models/transaction.rbi +30 -0
  62. data/rbi/increase/models.rbi +18 -0
  63. data/rbi/increase/resources/account_numbers.rbi +24 -19
  64. data/rbi/increase/resources/checkbook_checks.rbi +69 -0
  65. data/rbi/increase/resources/checkbooks.rbi +96 -0
  66. data/rbi/increase/resources/entities.rbi +0 -11
  67. data/rbi/increase/resources/simulations/checkbooks.rbi +30 -0
  68. data/rbi/increase/resources/simulations.rbi +3 -0
  69. data/sig/increase/client.rbs +4 -0
  70. data/sig/increase/models/account_number.rbs +34 -66
  71. data/sig/increase/models/account_number_create_params.rbs +30 -64
  72. data/sig/increase/models/account_number_list_params.rbs +44 -44
  73. data/sig/increase/models/account_number_update_params.rbs +39 -77
  74. data/sig/increase/models/card_payment.rbs +8 -0
  75. data/sig/increase/models/card_update_params.rbs +7 -11
  76. data/sig/increase/models/checkbook.rbs +272 -0
  77. data/sig/increase/models/checkbook_check.rbs +76 -0
  78. data/sig/increase/models/checkbook_check_list_params.rbs +56 -0
  79. data/sig/increase/models/checkbook_check_retrieve_params.rbs +24 -0
  80. data/sig/increase/models/checkbook_check_stop_params.rbs +24 -0
  81. data/sig/increase/models/checkbook_create_params.rbs +90 -0
  82. data/sig/increase/models/checkbook_list_params.rbs +97 -0
  83. data/sig/increase/models/checkbook_retrieve_params.rbs +23 -0
  84. data/sig/increase/models/checkbook_stop_params.rbs +23 -0
  85. data/sig/increase/models/declined_transaction.rbs +5 -0
  86. data/sig/increase/models/entity.rbs +0 -46
  87. data/sig/increase/models/entity_create_params.rbs +0 -55
  88. data/sig/increase/models/entity_update_params.rbs +0 -48
  89. data/sig/increase/models/inbound_check_deposit.rbs +5 -0
  90. data/sig/increase/models/real_time_decision.rbs +69 -3
  91. data/sig/increase/models/simulations/checkbook_mail_params.rbs +25 -0
  92. data/sig/increase/models/transaction.rbs +22 -1
  93. data/sig/increase/models.rbs +18 -0
  94. data/sig/increase/resources/account_numbers.rbs +5 -5
  95. data/sig/increase/resources/checkbook_checks.rbs +26 -0
  96. data/sig/increase/resources/checkbooks.rbs +33 -0
  97. data/sig/increase/resources/entities.rbs +0 -3
  98. data/sig/increase/resources/simulations/checkbooks.rbs +14 -0
  99. data/sig/increase/resources/simulations.rbs +2 -0
  100. metadata +41 -2
@@ -18362,6 +18362,13 @@ module Increase
18362
18362
  Increase::CardPayment::Element::CardRefund::PurchaseDetails::Fleet::FuelType::TaggedSymbol
18363
18363
  )
18364
18364
 
18365
+ # Diesel 1 off-road non-taxable
18366
+ DIESEL_1_OFF_ROAD_NON_TAXABLE =
18367
+ T.let(
18368
+ :diesel_1_off_road_non_taxable,
18369
+ Increase::CardPayment::Element::CardRefund::PurchaseDetails::Fleet::FuelType::TaggedSymbol
18370
+ )
18371
+
18365
18372
  # Renewable diesel R95 or greater off-road non-taxable
18366
18373
  RENEWABLE_DIESEL_R95_OR_GREATER_OFF_ROAD_NON_TAXABLE =
18367
18374
  T.let(
@@ -23209,6 +23216,13 @@ module Increase
23209
23216
  Increase::CardPayment::Element::CardSettlement::PurchaseDetails::Fleet::FuelType::TaggedSymbol
23210
23217
  )
23211
23218
 
23219
+ # Diesel 1 off-road non-taxable
23220
+ DIESEL_1_OFF_ROAD_NON_TAXABLE =
23221
+ T.let(
23222
+ :diesel_1_off_road_non_taxable,
23223
+ Increase::CardPayment::Element::CardSettlement::PurchaseDetails::Fleet::FuelType::TaggedSymbol
23224
+ )
23225
+
23212
23226
  # Renewable diesel R95 or greater off-road non-taxable
23213
23227
  RENEWABLE_DIESEL_R95_OR_GREATER_OFF_ROAD_NON_TAXABLE =
23214
23228
  T.let(
@@ -1282,21 +1282,17 @@ module Increase
1282
1282
  attr_writer :digital_card_profile_id
1283
1283
 
1284
1284
  # An email address that can be used to verify the cardholder via one-time passcode
1285
- # over email.
1285
+ # over email. Send `null` to clear the email address. Omit this field to leave it
1286
+ # unchanged.
1286
1287
  sig { returns(T.nilable(String)) }
1287
- attr_reader :email
1288
-
1289
- sig { params(email: String).void }
1290
- attr_writer :email
1288
+ attr_accessor :email
1291
1289
 
1292
1290
  # A phone number that can be used to verify the cardholder via one-time passcode
1293
1291
  # over SMS. Accepts formats like `+14155550123`, `4155550123`, `415-555-0123`, or
1294
- # `(415) 555-0123`.
1292
+ # `(415) 555-0123`. Send `null` to clear the phone number. Omit this field to
1293
+ # leave it unchanged.
1295
1294
  sig { returns(T.nilable(String)) }
1296
- attr_reader :phone
1297
-
1298
- sig { params(phone: String).void }
1299
- attr_writer :phone
1295
+ attr_accessor :phone
1300
1296
 
1301
1297
  # The contact information used in the two-factor steps for digital wallet card
1302
1298
  # creation. At least one field must be present to complete the digital wallet
@@ -1304,26 +1300,32 @@ module Increase
1304
1300
  sig do
1305
1301
  params(
1306
1302
  digital_card_profile_id: String,
1307
- email: String,
1308
- phone: String
1303
+ email: T.nilable(String),
1304
+ phone: T.nilable(String)
1309
1305
  ).returns(T.attached_class)
1310
1306
  end
1311
1307
  def self.new(
1312
1308
  # The digital card profile assigned to this digital card.
1313
1309
  digital_card_profile_id: nil,
1314
1310
  # An email address that can be used to verify the cardholder via one-time passcode
1315
- # over email.
1311
+ # over email. Send `null` to clear the email address. Omit this field to leave it
1312
+ # unchanged.
1316
1313
  email: nil,
1317
1314
  # A phone number that can be used to verify the cardholder via one-time passcode
1318
1315
  # over SMS. Accepts formats like `+14155550123`, `4155550123`, `415-555-0123`, or
1319
- # `(415) 555-0123`.
1316
+ # `(415) 555-0123`. Send `null` to clear the phone number. Omit this field to
1317
+ # leave it unchanged.
1320
1318
  phone: nil
1321
1319
  )
1322
1320
  end
1323
1321
 
1324
1322
  sig do
1325
1323
  override.returns(
1326
- { digital_card_profile_id: String, email: String, phone: String }
1324
+ {
1325
+ digital_card_profile_id: String,
1326
+ email: T.nilable(String),
1327
+ phone: T.nilable(String)
1328
+ }
1327
1329
  )
1328
1330
  end
1329
1331
  def to_hash
@@ -0,0 +1,507 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Models
5
+ class Checkbook < Increase::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(Increase::Checkbook, Increase::Internal::AnyHash) }
8
+
9
+ # The Checkbook's identifier.
10
+ sig { returns(String) }
11
+ attr_accessor :id
12
+
13
+ # The identifier of the Account Number the Checkbook is attached to.
14
+ sig { returns(String) }
15
+ attr_accessor :account_number_id
16
+
17
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
18
+ # the Checkbook was created.
19
+ sig { returns(Time) }
20
+ attr_accessor :created_at
21
+
22
+ # The idempotency key you chose for this object. This value is unique across
23
+ # Increase and is used to ensure that a request is only processed once. Learn more
24
+ # about [idempotency](https://increase.com/documentation/idempotency-keys).
25
+ sig { returns(T.nilable(String)) }
26
+ attr_accessor :idempotency_key
27
+
28
+ # The destination address that the Checkbook will be mailed to.
29
+ sig { returns(Increase::Checkbook::MailingAddress) }
30
+ attr_reader :mailing_address
31
+
32
+ sig do
33
+ params(
34
+ mailing_address: Increase::Checkbook::MailingAddress::OrHash
35
+ ).void
36
+ end
37
+ attr_writer :mailing_address
38
+
39
+ # The payer information printed on the top-left corner of each check.
40
+ sig { returns(T::Array[Increase::Checkbook::Payer]) }
41
+ attr_accessor :payer
42
+
43
+ # The address the Checkbook will return to if there is a delivery issue.
44
+ sig { returns(Increase::Checkbook::ReturnAddress) }
45
+ attr_reader :return_address
46
+
47
+ sig do
48
+ params(return_address: Increase::Checkbook::ReturnAddress::OrHash).void
49
+ end
50
+ attr_writer :return_address
51
+
52
+ # The lifecycle status of the Checkbook.
53
+ sig { returns(Increase::Checkbook::Status::TaggedSymbol) }
54
+ attr_accessor :status
55
+
56
+ # The physical format of the Checkbook.
57
+ sig { returns(Increase::Checkbook::Style::TaggedSymbol) }
58
+ attr_accessor :style
59
+
60
+ # Tracking updates relating to the Checkbook's delivery.
61
+ sig { returns(T::Array[Increase::Checkbook::TrackingUpdate]) }
62
+ attr_accessor :tracking_updates
63
+
64
+ # A constant representing the object's type. For this resource it will always be
65
+ # `checkbook`.
66
+ sig { returns(Increase::Checkbook::Type::TaggedSymbol) }
67
+ attr_accessor :type
68
+
69
+ # Checkbooks are sets of blank checks that Increase prints and mails on your
70
+ # behalf.
71
+ sig do
72
+ params(
73
+ id: String,
74
+ account_number_id: String,
75
+ created_at: Time,
76
+ idempotency_key: T.nilable(String),
77
+ mailing_address: Increase::Checkbook::MailingAddress::OrHash,
78
+ payer: T::Array[Increase::Checkbook::Payer::OrHash],
79
+ return_address: Increase::Checkbook::ReturnAddress::OrHash,
80
+ status: Increase::Checkbook::Status::OrSymbol,
81
+ style: Increase::Checkbook::Style::OrSymbol,
82
+ tracking_updates:
83
+ T::Array[Increase::Checkbook::TrackingUpdate::OrHash],
84
+ type: Increase::Checkbook::Type::OrSymbol
85
+ ).returns(T.attached_class)
86
+ end
87
+ def self.new(
88
+ # The Checkbook's identifier.
89
+ id:,
90
+ # The identifier of the Account Number the Checkbook is attached to.
91
+ account_number_id:,
92
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
93
+ # the Checkbook was created.
94
+ created_at:,
95
+ # The idempotency key you chose for this object. This value is unique across
96
+ # Increase and is used to ensure that a request is only processed once. Learn more
97
+ # about [idempotency](https://increase.com/documentation/idempotency-keys).
98
+ idempotency_key:,
99
+ # The destination address that the Checkbook will be mailed to.
100
+ mailing_address:,
101
+ # The payer information printed on the top-left corner of each check.
102
+ payer:,
103
+ # The address the Checkbook will return to if there is a delivery issue.
104
+ return_address:,
105
+ # The lifecycle status of the Checkbook.
106
+ status:,
107
+ # The physical format of the Checkbook.
108
+ style:,
109
+ # Tracking updates relating to the Checkbook's delivery.
110
+ tracking_updates:,
111
+ # A constant representing the object's type. For this resource it will always be
112
+ # `checkbook`.
113
+ type:
114
+ )
115
+ end
116
+
117
+ sig do
118
+ override.returns(
119
+ {
120
+ id: String,
121
+ account_number_id: String,
122
+ created_at: Time,
123
+ idempotency_key: T.nilable(String),
124
+ mailing_address: Increase::Checkbook::MailingAddress,
125
+ payer: T::Array[Increase::Checkbook::Payer],
126
+ return_address: Increase::Checkbook::ReturnAddress,
127
+ status: Increase::Checkbook::Status::TaggedSymbol,
128
+ style: Increase::Checkbook::Style::TaggedSymbol,
129
+ tracking_updates: T::Array[Increase::Checkbook::TrackingUpdate],
130
+ type: Increase::Checkbook::Type::TaggedSymbol
131
+ }
132
+ )
133
+ end
134
+ def to_hash
135
+ end
136
+
137
+ class MailingAddress < Increase::Internal::Type::BaseModel
138
+ OrHash =
139
+ T.type_alias do
140
+ T.any(
141
+ Increase::Checkbook::MailingAddress,
142
+ Increase::Internal::AnyHash
143
+ )
144
+ end
145
+
146
+ # The city of the destination address.
147
+ sig { returns(String) }
148
+ attr_accessor :city
149
+
150
+ # The first line of the destination address.
151
+ sig { returns(String) }
152
+ attr_accessor :line1
153
+
154
+ # The second line of the destination address.
155
+ sig { returns(T.nilable(String)) }
156
+ attr_accessor :line2
157
+
158
+ # The recipient at the destination address.
159
+ sig { returns(String) }
160
+ attr_accessor :name
161
+
162
+ # The postal code of the destination address.
163
+ sig { returns(String) }
164
+ attr_accessor :postal_code
165
+
166
+ # The state of the destination address.
167
+ sig { returns(String) }
168
+ attr_accessor :state
169
+
170
+ # The destination address that the Checkbook will be mailed to.
171
+ sig do
172
+ params(
173
+ city: String,
174
+ line1: String,
175
+ line2: T.nilable(String),
176
+ name: String,
177
+ postal_code: String,
178
+ state: String
179
+ ).returns(T.attached_class)
180
+ end
181
+ def self.new(
182
+ # The city of the destination address.
183
+ city:,
184
+ # The first line of the destination address.
185
+ line1:,
186
+ # The second line of the destination address.
187
+ line2:,
188
+ # The recipient at the destination address.
189
+ name:,
190
+ # The postal code of the destination address.
191
+ postal_code:,
192
+ # The state of the destination address.
193
+ state:
194
+ )
195
+ end
196
+
197
+ sig do
198
+ override.returns(
199
+ {
200
+ city: String,
201
+ line1: String,
202
+ line2: T.nilable(String),
203
+ name: String,
204
+ postal_code: String,
205
+ state: String
206
+ }
207
+ )
208
+ end
209
+ def to_hash
210
+ end
211
+ end
212
+
213
+ class Payer < Increase::Internal::Type::BaseModel
214
+ OrHash =
215
+ T.type_alias do
216
+ T.any(Increase::Checkbook::Payer, Increase::Internal::AnyHash)
217
+ end
218
+
219
+ # The contents of the line.
220
+ sig { returns(String) }
221
+ attr_accessor :contents
222
+
223
+ sig { params(contents: String).returns(T.attached_class) }
224
+ def self.new(
225
+ # The contents of the line.
226
+ contents:
227
+ )
228
+ end
229
+
230
+ sig { override.returns({ contents: String }) }
231
+ def to_hash
232
+ end
233
+ end
234
+
235
+ class ReturnAddress < Increase::Internal::Type::BaseModel
236
+ OrHash =
237
+ T.type_alias do
238
+ T.any(
239
+ Increase::Checkbook::ReturnAddress,
240
+ Increase::Internal::AnyHash
241
+ )
242
+ end
243
+
244
+ # The city of the return address.
245
+ sig { returns(String) }
246
+ attr_accessor :city
247
+
248
+ # The first line of the return address.
249
+ sig { returns(String) }
250
+ attr_accessor :line1
251
+
252
+ # The second line of the return address.
253
+ sig { returns(T.nilable(String)) }
254
+ attr_accessor :line2
255
+
256
+ # The recipient at the return address.
257
+ sig { returns(String) }
258
+ attr_accessor :name
259
+
260
+ # The postal code of the return address.
261
+ sig { returns(String) }
262
+ attr_accessor :postal_code
263
+
264
+ # The state of the return address.
265
+ sig { returns(String) }
266
+ attr_accessor :state
267
+
268
+ # The address the Checkbook will return to if there is a delivery issue.
269
+ sig do
270
+ params(
271
+ city: String,
272
+ line1: String,
273
+ line2: T.nilable(String),
274
+ name: String,
275
+ postal_code: String,
276
+ state: String
277
+ ).returns(T.attached_class)
278
+ end
279
+ def self.new(
280
+ # The city of the return address.
281
+ city:,
282
+ # The first line of the return address.
283
+ line1:,
284
+ # The second line of the return address.
285
+ line2:,
286
+ # The recipient at the return address.
287
+ name:,
288
+ # The postal code of the return address.
289
+ postal_code:,
290
+ # The state of the return address.
291
+ state:
292
+ )
293
+ end
294
+
295
+ sig do
296
+ override.returns(
297
+ {
298
+ city: String,
299
+ line1: String,
300
+ line2: T.nilable(String),
301
+ name: String,
302
+ postal_code: String,
303
+ state: String
304
+ }
305
+ )
306
+ end
307
+ def to_hash
308
+ end
309
+ end
310
+
311
+ # The lifecycle status of the Checkbook.
312
+ module Status
313
+ extend Increase::Internal::Type::Enum
314
+
315
+ TaggedSymbol =
316
+ T.type_alias { T.all(Symbol, Increase::Checkbook::Status) }
317
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
318
+
319
+ # The Checkbook is pending submission to the printer.
320
+ PENDING_SUBMISSION =
321
+ T.let(:pending_submission, Increase::Checkbook::Status::TaggedSymbol)
322
+
323
+ # The Checkbook has been submitted to the printer and is pending mailing.
324
+ PENDING_MAILING =
325
+ T.let(:pending_mailing, Increase::Checkbook::Status::TaggedSymbol)
326
+
327
+ # The Checkbook has been mailed.
328
+ MAILED = T.let(:mailed, Increase::Checkbook::Status::TaggedSymbol)
329
+
330
+ # The Checkbook has been stopped and its checks can no longer be deposited.
331
+ STOPPED = T.let(:stopped, Increase::Checkbook::Status::TaggedSymbol)
332
+
333
+ sig do
334
+ override.returns(T::Array[Increase::Checkbook::Status::TaggedSymbol])
335
+ end
336
+ def self.values
337
+ end
338
+ end
339
+
340
+ # The physical format of the Checkbook.
341
+ module Style
342
+ extend Increase::Internal::Type::Enum
343
+
344
+ TaggedSymbol =
345
+ T.type_alias { T.all(Symbol, Increase::Checkbook::Style) }
346
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
347
+
348
+ # A half-inch three-ring binder holding 75 pages of checks with 3 checks per page.
349
+ THREE_RING_BINDER =
350
+ T.let(:three_ring_binder, Increase::Checkbook::Style::TaggedSymbol)
351
+
352
+ # A folder holding 15 pages of checks with 3 checks per page.
353
+ FOLDER = T.let(:folder, Increase::Checkbook::Style::TaggedSymbol)
354
+
355
+ sig do
356
+ override.returns(T::Array[Increase::Checkbook::Style::TaggedSymbol])
357
+ end
358
+ def self.values
359
+ end
360
+ end
361
+
362
+ class TrackingUpdate < Increase::Internal::Type::BaseModel
363
+ OrHash =
364
+ T.type_alias do
365
+ T.any(
366
+ Increase::Checkbook::TrackingUpdate,
367
+ Increase::Internal::AnyHash
368
+ )
369
+ end
370
+
371
+ # The type of tracking event.
372
+ sig do
373
+ returns(Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol)
374
+ end
375
+ attr_accessor :category
376
+
377
+ # The ISO 3166-1 alpha-2 country code for the country where the event took place.
378
+ sig { returns(String) }
379
+ attr_accessor :country
380
+
381
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
382
+ # the tracking event took place.
383
+ sig { returns(Time) }
384
+ attr_accessor :created_at
385
+
386
+ # The postal code where the event took place.
387
+ sig { returns(String) }
388
+ attr_accessor :postal_code
389
+
390
+ sig do
391
+ params(
392
+ category: Increase::Checkbook::TrackingUpdate::Category::OrSymbol,
393
+ country: String,
394
+ created_at: Time,
395
+ postal_code: String
396
+ ).returns(T.attached_class)
397
+ end
398
+ def self.new(
399
+ # The type of tracking event.
400
+ category:,
401
+ # The ISO 3166-1 alpha-2 country code for the country where the event took place.
402
+ country:,
403
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
404
+ # the tracking event took place.
405
+ created_at:,
406
+ # The postal code where the event took place.
407
+ postal_code:
408
+ )
409
+ end
410
+
411
+ sig do
412
+ override.returns(
413
+ {
414
+ category:
415
+ Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol,
416
+ country: String,
417
+ created_at: Time,
418
+ postal_code: String
419
+ }
420
+ )
421
+ end
422
+ def to_hash
423
+ end
424
+
425
+ # The type of tracking event.
426
+ module Category
427
+ extend Increase::Internal::Type::Enum
428
+
429
+ TaggedSymbol =
430
+ T.type_alias do
431
+ T.all(Symbol, Increase::Checkbook::TrackingUpdate::Category)
432
+ end
433
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
434
+
435
+ # The checkbook is in transit.
436
+ IN_TRANSIT =
437
+ T.let(
438
+ :in_transit,
439
+ Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol
440
+ )
441
+
442
+ # The checkbook has been processed for delivery.
443
+ PROCESSED_FOR_DELIVERY =
444
+ T.let(
445
+ :processed_for_delivery,
446
+ Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol
447
+ )
448
+
449
+ # The checkbook has been delivered. Note that some couriers track delivery status based on driver location data rather than an explicit scan. While uncommon, a single checkbook may have more than one delivered event.
450
+ DELIVERED =
451
+ T.let(
452
+ :delivered,
453
+ Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol
454
+ )
455
+
456
+ # There is an issue preventing delivery. The delivery will be attempted again if possible. If the issue cannot be resolved, the checkbook will be rerouted to the return address.
457
+ DELIVERY_ISSUE =
458
+ T.let(
459
+ :delivery_issue,
460
+ Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol
461
+ )
462
+
463
+ # The checkbook has been rerouted to the return address.
464
+ RETURNING_TO_SENDER =
465
+ T.let(
466
+ :returning_to_sender,
467
+ Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol
468
+ )
469
+
470
+ # The checkbook has been delivered to the return address.
471
+ RETURNED_TO_SENDER =
472
+ T.let(
473
+ :returned_to_sender,
474
+ Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol
475
+ )
476
+
477
+ sig do
478
+ override.returns(
479
+ T::Array[
480
+ Increase::Checkbook::TrackingUpdate::Category::TaggedSymbol
481
+ ]
482
+ )
483
+ end
484
+ def self.values
485
+ end
486
+ end
487
+ end
488
+
489
+ # A constant representing the object's type. For this resource it will always be
490
+ # `checkbook`.
491
+ module Type
492
+ extend Increase::Internal::Type::Enum
493
+
494
+ TaggedSymbol = T.type_alias { T.all(Symbol, Increase::Checkbook::Type) }
495
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
496
+
497
+ CHECKBOOK = T.let(:checkbook, Increase::Checkbook::Type::TaggedSymbol)
498
+
499
+ sig do
500
+ override.returns(T::Array[Increase::Checkbook::Type::TaggedSymbol])
501
+ end
502
+ def self.values
503
+ end
504
+ end
505
+ end
506
+ end
507
+ end