increase 1.18.1 → 1.20.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.
@@ -774,6 +774,24 @@ module Increase
774
774
  end
775
775
  attr_accessor :actioner
776
776
 
777
+ # Additional amounts associated with the card authorization, such as ATM
778
+ # surcharges fees. These are usually a subset of the `amount` field and are used
779
+ # to provide more detailed information about the transaction.
780
+ sig do
781
+ returns(
782
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts
783
+ )
784
+ end
785
+ attr_reader :additional_amounts
786
+
787
+ sig do
788
+ params(
789
+ additional_amounts:
790
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::OrHash
791
+ ).void
792
+ end
793
+ attr_writer :additional_amounts
794
+
777
795
  # The declined amount in the minor unit of the destination account currency. For
778
796
  # dollars, for example, this is cents.
779
797
  sig { returns(Integer) }
@@ -953,6 +971,8 @@ module Increase
953
971
  id: String,
954
972
  actioner:
955
973
  Increase::DeclinedTransaction::Source::CardDecline::Actioner::OrSymbol,
974
+ additional_amounts:
975
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::OrHash,
956
976
  amount: Integer,
957
977
  card_payment_id: String,
958
978
  currency:
@@ -996,6 +1016,10 @@ module Increase
996
1016
  # Whether this authorization was approved by Increase, the card network through
997
1017
  # stand-in processing, or the user through a real-time decision.
998
1018
  actioner:,
1019
+ # Additional amounts associated with the card authorization, such as ATM
1020
+ # surcharges fees. These are usually a subset of the `amount` field and are used
1021
+ # to provide more detailed information about the transaction.
1022
+ additional_amounts:,
999
1023
  # The declined amount in the minor unit of the destination account currency. For
1000
1024
  # dollars, for example, this is cents.
1001
1025
  amount:,
@@ -1069,6 +1093,8 @@ module Increase
1069
1093
  id: String,
1070
1094
  actioner:
1071
1095
  Increase::DeclinedTransaction::Source::CardDecline::Actioner::TaggedSymbol,
1096
+ additional_amounts:
1097
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts,
1072
1098
  amount: Integer,
1073
1099
  card_payment_id: String,
1074
1100
  currency:
@@ -1156,6 +1182,648 @@ module Increase
1156
1182
  end
1157
1183
  end
1158
1184
 
1185
+ class AdditionalAmounts < Increase::Internal::Type::BaseModel
1186
+ OrHash =
1187
+ T.type_alias do
1188
+ T.any(
1189
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts,
1190
+ Increase::Internal::AnyHash
1191
+ )
1192
+ end
1193
+
1194
+ # The part of this transaction amount that was for clinic-related services.
1195
+ sig do
1196
+ returns(
1197
+ T.nilable(
1198
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Clinic
1199
+ )
1200
+ )
1201
+ end
1202
+ attr_reader :clinic
1203
+
1204
+ sig do
1205
+ params(
1206
+ clinic:
1207
+ T.nilable(
1208
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Clinic::OrHash
1209
+ )
1210
+ ).void
1211
+ end
1212
+ attr_writer :clinic
1213
+
1214
+ # The part of this transaction amount that was for dental-related services.
1215
+ sig do
1216
+ returns(
1217
+ T.nilable(
1218
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Dental
1219
+ )
1220
+ )
1221
+ end
1222
+ attr_reader :dental
1223
+
1224
+ sig do
1225
+ params(
1226
+ dental:
1227
+ T.nilable(
1228
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Dental::OrHash
1229
+ )
1230
+ ).void
1231
+ end
1232
+ attr_writer :dental
1233
+
1234
+ # The part of this transaction amount that was for healthcare prescriptions.
1235
+ sig do
1236
+ returns(
1237
+ T.nilable(
1238
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Prescription
1239
+ )
1240
+ )
1241
+ end
1242
+ attr_reader :prescription
1243
+
1244
+ sig do
1245
+ params(
1246
+ prescription:
1247
+ T.nilable(
1248
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Prescription::OrHash
1249
+ )
1250
+ ).void
1251
+ end
1252
+ attr_writer :prescription
1253
+
1254
+ # The surcharge amount charged for this transaction by the merchant.
1255
+ sig do
1256
+ returns(
1257
+ T.nilable(
1258
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Surcharge
1259
+ )
1260
+ )
1261
+ end
1262
+ attr_reader :surcharge
1263
+
1264
+ sig do
1265
+ params(
1266
+ surcharge:
1267
+ T.nilable(
1268
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Surcharge::OrHash
1269
+ )
1270
+ ).void
1271
+ end
1272
+ attr_writer :surcharge
1273
+
1274
+ # The total amount of a series of incremental authorizations, optionally provided.
1275
+ sig do
1276
+ returns(
1277
+ T.nilable(
1278
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalCumulative
1279
+ )
1280
+ )
1281
+ end
1282
+ attr_reader :total_cumulative
1283
+
1284
+ sig do
1285
+ params(
1286
+ total_cumulative:
1287
+ T.nilable(
1288
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalCumulative::OrHash
1289
+ )
1290
+ ).void
1291
+ end
1292
+ attr_writer :total_cumulative
1293
+
1294
+ # The total amount of healthcare-related additional amounts.
1295
+ sig do
1296
+ returns(
1297
+ T.nilable(
1298
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalHealthcare
1299
+ )
1300
+ )
1301
+ end
1302
+ attr_reader :total_healthcare
1303
+
1304
+ sig do
1305
+ params(
1306
+ total_healthcare:
1307
+ T.nilable(
1308
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalHealthcare::OrHash
1309
+ )
1310
+ ).void
1311
+ end
1312
+ attr_writer :total_healthcare
1313
+
1314
+ # The part of this transaction amount that was for transit-related services.
1315
+ sig do
1316
+ returns(
1317
+ T.nilable(
1318
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Transit
1319
+ )
1320
+ )
1321
+ end
1322
+ attr_reader :transit
1323
+
1324
+ sig do
1325
+ params(
1326
+ transit:
1327
+ T.nilable(
1328
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Transit::OrHash
1329
+ )
1330
+ ).void
1331
+ end
1332
+ attr_writer :transit
1333
+
1334
+ # An unknown additional amount.
1335
+ sig do
1336
+ returns(
1337
+ T.nilable(
1338
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Unknown
1339
+ )
1340
+ )
1341
+ end
1342
+ attr_reader :unknown
1343
+
1344
+ sig do
1345
+ params(
1346
+ unknown:
1347
+ T.nilable(
1348
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Unknown::OrHash
1349
+ )
1350
+ ).void
1351
+ end
1352
+ attr_writer :unknown
1353
+
1354
+ # The part of this transaction amount that was for vision-related services.
1355
+ sig do
1356
+ returns(
1357
+ T.nilable(
1358
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Vision
1359
+ )
1360
+ )
1361
+ end
1362
+ attr_reader :vision
1363
+
1364
+ sig do
1365
+ params(
1366
+ vision:
1367
+ T.nilable(
1368
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Vision::OrHash
1369
+ )
1370
+ ).void
1371
+ end
1372
+ attr_writer :vision
1373
+
1374
+ # Additional amounts associated with the card authorization, such as ATM
1375
+ # surcharges fees. These are usually a subset of the `amount` field and are used
1376
+ # to provide more detailed information about the transaction.
1377
+ sig do
1378
+ params(
1379
+ clinic:
1380
+ T.nilable(
1381
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Clinic::OrHash
1382
+ ),
1383
+ dental:
1384
+ T.nilable(
1385
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Dental::OrHash
1386
+ ),
1387
+ prescription:
1388
+ T.nilable(
1389
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Prescription::OrHash
1390
+ ),
1391
+ surcharge:
1392
+ T.nilable(
1393
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Surcharge::OrHash
1394
+ ),
1395
+ total_cumulative:
1396
+ T.nilable(
1397
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalCumulative::OrHash
1398
+ ),
1399
+ total_healthcare:
1400
+ T.nilable(
1401
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalHealthcare::OrHash
1402
+ ),
1403
+ transit:
1404
+ T.nilable(
1405
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Transit::OrHash
1406
+ ),
1407
+ unknown:
1408
+ T.nilable(
1409
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Unknown::OrHash
1410
+ ),
1411
+ vision:
1412
+ T.nilable(
1413
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Vision::OrHash
1414
+ )
1415
+ ).returns(T.attached_class)
1416
+ end
1417
+ def self.new(
1418
+ # The part of this transaction amount that was for clinic-related services.
1419
+ clinic:,
1420
+ # The part of this transaction amount that was for dental-related services.
1421
+ dental:,
1422
+ # The part of this transaction amount that was for healthcare prescriptions.
1423
+ prescription:,
1424
+ # The surcharge amount charged for this transaction by the merchant.
1425
+ surcharge:,
1426
+ # The total amount of a series of incremental authorizations, optionally provided.
1427
+ total_cumulative:,
1428
+ # The total amount of healthcare-related additional amounts.
1429
+ total_healthcare:,
1430
+ # The part of this transaction amount that was for transit-related services.
1431
+ transit:,
1432
+ # An unknown additional amount.
1433
+ unknown:,
1434
+ # The part of this transaction amount that was for vision-related services.
1435
+ vision:
1436
+ )
1437
+ end
1438
+
1439
+ sig do
1440
+ override.returns(
1441
+ {
1442
+ clinic:
1443
+ T.nilable(
1444
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Clinic
1445
+ ),
1446
+ dental:
1447
+ T.nilable(
1448
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Dental
1449
+ ),
1450
+ prescription:
1451
+ T.nilable(
1452
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Prescription
1453
+ ),
1454
+ surcharge:
1455
+ T.nilable(
1456
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Surcharge
1457
+ ),
1458
+ total_cumulative:
1459
+ T.nilable(
1460
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalCumulative
1461
+ ),
1462
+ total_healthcare:
1463
+ T.nilable(
1464
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalHealthcare
1465
+ ),
1466
+ transit:
1467
+ T.nilable(
1468
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Transit
1469
+ ),
1470
+ unknown:
1471
+ T.nilable(
1472
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Unknown
1473
+ ),
1474
+ vision:
1475
+ T.nilable(
1476
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Vision
1477
+ )
1478
+ }
1479
+ )
1480
+ end
1481
+ def to_hash
1482
+ end
1483
+
1484
+ class Clinic < Increase::Internal::Type::BaseModel
1485
+ OrHash =
1486
+ T.type_alias do
1487
+ T.any(
1488
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Clinic,
1489
+ Increase::Internal::AnyHash
1490
+ )
1491
+ end
1492
+
1493
+ # The amount in minor units of the `currency` field.
1494
+ sig { returns(Integer) }
1495
+ attr_accessor :amount
1496
+
1497
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1498
+ # amount's currency.
1499
+ sig { returns(String) }
1500
+ attr_accessor :currency
1501
+
1502
+ # The part of this transaction amount that was for clinic-related services.
1503
+ sig do
1504
+ params(amount: Integer, currency: String).returns(
1505
+ T.attached_class
1506
+ )
1507
+ end
1508
+ def self.new(
1509
+ # The amount in minor units of the `currency` field.
1510
+ amount:,
1511
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1512
+ # amount's currency.
1513
+ currency:
1514
+ )
1515
+ end
1516
+
1517
+ sig { override.returns({ amount: Integer, currency: String }) }
1518
+ def to_hash
1519
+ end
1520
+ end
1521
+
1522
+ class Dental < Increase::Internal::Type::BaseModel
1523
+ OrHash =
1524
+ T.type_alias do
1525
+ T.any(
1526
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Dental,
1527
+ Increase::Internal::AnyHash
1528
+ )
1529
+ end
1530
+
1531
+ # The amount in minor units of the `currency` field.
1532
+ sig { returns(Integer) }
1533
+ attr_accessor :amount
1534
+
1535
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1536
+ # amount's currency.
1537
+ sig { returns(String) }
1538
+ attr_accessor :currency
1539
+
1540
+ # The part of this transaction amount that was for dental-related services.
1541
+ sig do
1542
+ params(amount: Integer, currency: String).returns(
1543
+ T.attached_class
1544
+ )
1545
+ end
1546
+ def self.new(
1547
+ # The amount in minor units of the `currency` field.
1548
+ amount:,
1549
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1550
+ # amount's currency.
1551
+ currency:
1552
+ )
1553
+ end
1554
+
1555
+ sig { override.returns({ amount: Integer, currency: String }) }
1556
+ def to_hash
1557
+ end
1558
+ end
1559
+
1560
+ class Prescription < Increase::Internal::Type::BaseModel
1561
+ OrHash =
1562
+ T.type_alias do
1563
+ T.any(
1564
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Prescription,
1565
+ Increase::Internal::AnyHash
1566
+ )
1567
+ end
1568
+
1569
+ # The amount in minor units of the `currency` field.
1570
+ sig { returns(Integer) }
1571
+ attr_accessor :amount
1572
+
1573
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1574
+ # amount's currency.
1575
+ sig { returns(String) }
1576
+ attr_accessor :currency
1577
+
1578
+ # The part of this transaction amount that was for healthcare prescriptions.
1579
+ sig do
1580
+ params(amount: Integer, currency: String).returns(
1581
+ T.attached_class
1582
+ )
1583
+ end
1584
+ def self.new(
1585
+ # The amount in minor units of the `currency` field.
1586
+ amount:,
1587
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1588
+ # amount's currency.
1589
+ currency:
1590
+ )
1591
+ end
1592
+
1593
+ sig { override.returns({ amount: Integer, currency: String }) }
1594
+ def to_hash
1595
+ end
1596
+ end
1597
+
1598
+ class Surcharge < Increase::Internal::Type::BaseModel
1599
+ OrHash =
1600
+ T.type_alias do
1601
+ T.any(
1602
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Surcharge,
1603
+ Increase::Internal::AnyHash
1604
+ )
1605
+ end
1606
+
1607
+ # The amount in minor units of the `currency` field.
1608
+ sig { returns(Integer) }
1609
+ attr_accessor :amount
1610
+
1611
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1612
+ # amount's currency.
1613
+ sig { returns(String) }
1614
+ attr_accessor :currency
1615
+
1616
+ # The surcharge amount charged for this transaction by the merchant.
1617
+ sig do
1618
+ params(amount: Integer, currency: String).returns(
1619
+ T.attached_class
1620
+ )
1621
+ end
1622
+ def self.new(
1623
+ # The amount in minor units of the `currency` field.
1624
+ amount:,
1625
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1626
+ # amount's currency.
1627
+ currency:
1628
+ )
1629
+ end
1630
+
1631
+ sig { override.returns({ amount: Integer, currency: String }) }
1632
+ def to_hash
1633
+ end
1634
+ end
1635
+
1636
+ class TotalCumulative < Increase::Internal::Type::BaseModel
1637
+ OrHash =
1638
+ T.type_alias do
1639
+ T.any(
1640
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalCumulative,
1641
+ Increase::Internal::AnyHash
1642
+ )
1643
+ end
1644
+
1645
+ # The amount in minor units of the `currency` field.
1646
+ sig { returns(Integer) }
1647
+ attr_accessor :amount
1648
+
1649
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1650
+ # amount's currency.
1651
+ sig { returns(String) }
1652
+ attr_accessor :currency
1653
+
1654
+ # The total amount of a series of incremental authorizations, optionally provided.
1655
+ sig do
1656
+ params(amount: Integer, currency: String).returns(
1657
+ T.attached_class
1658
+ )
1659
+ end
1660
+ def self.new(
1661
+ # The amount in minor units of the `currency` field.
1662
+ amount:,
1663
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1664
+ # amount's currency.
1665
+ currency:
1666
+ )
1667
+ end
1668
+
1669
+ sig { override.returns({ amount: Integer, currency: String }) }
1670
+ def to_hash
1671
+ end
1672
+ end
1673
+
1674
+ class TotalHealthcare < Increase::Internal::Type::BaseModel
1675
+ OrHash =
1676
+ T.type_alias do
1677
+ T.any(
1678
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::TotalHealthcare,
1679
+ Increase::Internal::AnyHash
1680
+ )
1681
+ end
1682
+
1683
+ # The amount in minor units of the `currency` field.
1684
+ sig { returns(Integer) }
1685
+ attr_accessor :amount
1686
+
1687
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1688
+ # amount's currency.
1689
+ sig { returns(String) }
1690
+ attr_accessor :currency
1691
+
1692
+ # The total amount of healthcare-related additional amounts.
1693
+ sig do
1694
+ params(amount: Integer, currency: String).returns(
1695
+ T.attached_class
1696
+ )
1697
+ end
1698
+ def self.new(
1699
+ # The amount in minor units of the `currency` field.
1700
+ amount:,
1701
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1702
+ # amount's currency.
1703
+ currency:
1704
+ )
1705
+ end
1706
+
1707
+ sig { override.returns({ amount: Integer, currency: String }) }
1708
+ def to_hash
1709
+ end
1710
+ end
1711
+
1712
+ class Transit < Increase::Internal::Type::BaseModel
1713
+ OrHash =
1714
+ T.type_alias do
1715
+ T.any(
1716
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Transit,
1717
+ Increase::Internal::AnyHash
1718
+ )
1719
+ end
1720
+
1721
+ # The amount in minor units of the `currency` field.
1722
+ sig { returns(Integer) }
1723
+ attr_accessor :amount
1724
+
1725
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1726
+ # amount's currency.
1727
+ sig { returns(String) }
1728
+ attr_accessor :currency
1729
+
1730
+ # The part of this transaction amount that was for transit-related services.
1731
+ sig do
1732
+ params(amount: Integer, currency: String).returns(
1733
+ T.attached_class
1734
+ )
1735
+ end
1736
+ def self.new(
1737
+ # The amount in minor units of the `currency` field.
1738
+ amount:,
1739
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1740
+ # amount's currency.
1741
+ currency:
1742
+ )
1743
+ end
1744
+
1745
+ sig { override.returns({ amount: Integer, currency: String }) }
1746
+ def to_hash
1747
+ end
1748
+ end
1749
+
1750
+ class Unknown < Increase::Internal::Type::BaseModel
1751
+ OrHash =
1752
+ T.type_alias do
1753
+ T.any(
1754
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Unknown,
1755
+ Increase::Internal::AnyHash
1756
+ )
1757
+ end
1758
+
1759
+ # The amount in minor units of the `currency` field.
1760
+ sig { returns(Integer) }
1761
+ attr_accessor :amount
1762
+
1763
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1764
+ # amount's currency.
1765
+ sig { returns(String) }
1766
+ attr_accessor :currency
1767
+
1768
+ # An unknown additional amount.
1769
+ sig do
1770
+ params(amount: Integer, currency: String).returns(
1771
+ T.attached_class
1772
+ )
1773
+ end
1774
+ def self.new(
1775
+ # The amount in minor units of the `currency` field.
1776
+ amount:,
1777
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1778
+ # amount's currency.
1779
+ currency:
1780
+ )
1781
+ end
1782
+
1783
+ sig { override.returns({ amount: Integer, currency: String }) }
1784
+ def to_hash
1785
+ end
1786
+ end
1787
+
1788
+ class Vision < Increase::Internal::Type::BaseModel
1789
+ OrHash =
1790
+ T.type_alias do
1791
+ T.any(
1792
+ Increase::DeclinedTransaction::Source::CardDecline::AdditionalAmounts::Vision,
1793
+ Increase::Internal::AnyHash
1794
+ )
1795
+ end
1796
+
1797
+ # The amount in minor units of the `currency` field.
1798
+ sig { returns(Integer) }
1799
+ attr_accessor :amount
1800
+
1801
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1802
+ # amount's currency.
1803
+ sig { returns(String) }
1804
+ attr_accessor :currency
1805
+
1806
+ # The part of this transaction amount that was for vision-related services.
1807
+ sig do
1808
+ params(amount: Integer, currency: String).returns(
1809
+ T.attached_class
1810
+ )
1811
+ end
1812
+ def self.new(
1813
+ # The amount in minor units of the `currency` field.
1814
+ amount:,
1815
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the additional
1816
+ # amount's currency.
1817
+ currency:
1818
+ )
1819
+ end
1820
+
1821
+ sig { override.returns({ amount: Integer, currency: String }) }
1822
+ def to_hash
1823
+ end
1824
+ end
1825
+ end
1826
+
1159
1827
  # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the destination
1160
1828
  # account currency.
1161
1829
  module Currency