@zoralabs/protocol-deployments 0.2.1 → 0.2.2

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.
@@ -867,6 +867,47 @@ export const iPremintDefinitionsABI = [
867
867
  },
868
868
  ] as const
869
869
 
870
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
871
+ // ISponsoredSparksSpenderAction
872
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
873
+
874
+ export const iSponsoredSparksSpenderActionABI = [
875
+ {
876
+ stateMutability: 'nonpayable',
877
+ type: 'function',
878
+ inputs: [
879
+ {
880
+ name: 'sponsoredMintBatch',
881
+ internalType: 'struct SponsoredMintBatch',
882
+ type: 'tuple',
883
+ components: [
884
+ { name: 'verifier', internalType: 'address', type: 'address' },
885
+ { name: 'from', internalType: 'address', type: 'address' },
886
+ {
887
+ name: 'destination',
888
+ internalType: 'address payable',
889
+ type: 'address',
890
+ },
891
+ { name: 'data', internalType: 'bytes', type: 'bytes' },
892
+ {
893
+ name: 'expectedRedeemAmount',
894
+ internalType: 'uint256',
895
+ type: 'uint256',
896
+ },
897
+ { name: 'totalAmount', internalType: 'uint256', type: 'uint256' },
898
+ { name: 'ids', internalType: 'uint256[]', type: 'uint256[]' },
899
+ { name: 'quantities', internalType: 'uint256[]', type: 'uint256[]' },
900
+ { name: 'nonce', internalType: 'uint256', type: 'uint256' },
901
+ { name: 'deadline', internalType: 'uint256', type: 'uint256' },
902
+ ],
903
+ },
904
+ { name: 'signature', internalType: 'bytes', type: 'bytes' },
905
+ ],
906
+ name: 'sponsoredMintBatch',
907
+ outputs: [],
908
+ },
909
+ ] as const
910
+
870
911
  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
871
912
  // IUnwrapAndForwardAction
872
913
  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -1310,6 +1351,396 @@ export const protocolRewardsConfig = {
1310
1351
  abi: protocolRewardsABI,
1311
1352
  } as const
1312
1353
 
1354
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
1355
+ // SponsoredSparksSpender
1356
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
1357
+
1358
+ /**
1359
+ * [__View Contract on Zora Explorer__](https://explorer.zora.energy/address/0x29b75AbA7dc7FE26d90CD96fbB390B26e04C4EB2)
1360
+ */
1361
+ export const sponsoredSparksSpenderABI = [
1362
+ {
1363
+ stateMutability: 'nonpayable',
1364
+ type: 'constructor',
1365
+ inputs: [
1366
+ {
1367
+ name: '_zoraSparks1155',
1368
+ internalType: 'contract IZoraSparks1155',
1369
+ type: 'address',
1370
+ },
1371
+ { name: 'fundsManager', internalType: 'address', type: 'address' },
1372
+ {
1373
+ name: 'defaultVerifiers',
1374
+ internalType: 'address[]',
1375
+ type: 'address[]',
1376
+ },
1377
+ ],
1378
+ },
1379
+ { stateMutability: 'payable', type: 'receive' },
1380
+ {
1381
+ stateMutability: 'view',
1382
+ type: 'function',
1383
+ inputs: [],
1384
+ name: 'NAME',
1385
+ outputs: [{ name: '', internalType: 'string', type: 'string' }],
1386
+ },
1387
+ {
1388
+ stateMutability: 'view',
1389
+ type: 'function',
1390
+ inputs: [],
1391
+ name: 'SPONSORSHIP_TYPEHASH',
1392
+ outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
1393
+ },
1394
+ {
1395
+ stateMutability: 'view',
1396
+ type: 'function',
1397
+ inputs: [],
1398
+ name: 'VERSION',
1399
+ outputs: [{ name: '', internalType: 'string', type: 'string' }],
1400
+ },
1401
+ {
1402
+ stateMutability: 'nonpayable',
1403
+ type: 'function',
1404
+ inputs: [],
1405
+ name: 'acceptOwnership',
1406
+ outputs: [],
1407
+ },
1408
+ {
1409
+ stateMutability: 'view',
1410
+ type: 'function',
1411
+ inputs: [{ name: '', internalType: 'address', type: 'address' }],
1412
+ name: 'allowedVerifiers',
1413
+ outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
1414
+ },
1415
+ {
1416
+ stateMutability: 'pure',
1417
+ type: 'function',
1418
+ inputs: [],
1419
+ name: 'contractName',
1420
+ outputs: [{ name: '', internalType: 'string', type: 'string' }],
1421
+ },
1422
+ {
1423
+ stateMutability: 'pure',
1424
+ type: 'function',
1425
+ inputs: [],
1426
+ name: 'contractVersion',
1427
+ outputs: [{ name: '', internalType: 'string', type: 'string' }],
1428
+ },
1429
+ {
1430
+ stateMutability: 'view',
1431
+ type: 'function',
1432
+ inputs: [],
1433
+ name: 'eip712Domain',
1434
+ outputs: [
1435
+ { name: 'fields', internalType: 'bytes1', type: 'bytes1' },
1436
+ { name: 'name', internalType: 'string', type: 'string' },
1437
+ { name: 'version', internalType: 'string', type: 'string' },
1438
+ { name: 'chainId', internalType: 'uint256', type: 'uint256' },
1439
+ { name: 'verifyingContract', internalType: 'address', type: 'address' },
1440
+ { name: 'salt', internalType: 'bytes32', type: 'bytes32' },
1441
+ { name: 'extensions', internalType: 'uint256[]', type: 'uint256[]' },
1442
+ ],
1443
+ },
1444
+ {
1445
+ stateMutability: 'payable',
1446
+ type: 'function',
1447
+ inputs: [],
1448
+ name: 'fund',
1449
+ outputs: [],
1450
+ },
1451
+ {
1452
+ stateMutability: 'view',
1453
+ type: 'function',
1454
+ inputs: [
1455
+ {
1456
+ name: 'sponsorship',
1457
+ internalType: 'struct SponsoredMintBatch',
1458
+ type: 'tuple',
1459
+ components: [
1460
+ { name: 'verifier', internalType: 'address', type: 'address' },
1461
+ { name: 'from', internalType: 'address', type: 'address' },
1462
+ {
1463
+ name: 'destination',
1464
+ internalType: 'address payable',
1465
+ type: 'address',
1466
+ },
1467
+ { name: 'data', internalType: 'bytes', type: 'bytes' },
1468
+ {
1469
+ name: 'expectedRedeemAmount',
1470
+ internalType: 'uint256',
1471
+ type: 'uint256',
1472
+ },
1473
+ { name: 'totalAmount', internalType: 'uint256', type: 'uint256' },
1474
+ { name: 'ids', internalType: 'uint256[]', type: 'uint256[]' },
1475
+ { name: 'quantities', internalType: 'uint256[]', type: 'uint256[]' },
1476
+ { name: 'nonce', internalType: 'uint256', type: 'uint256' },
1477
+ { name: 'deadline', internalType: 'uint256', type: 'uint256' },
1478
+ ],
1479
+ },
1480
+ ],
1481
+ name: 'hashSponsoredMint',
1482
+ outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
1483
+ },
1484
+ {
1485
+ stateMutability: 'nonpayable',
1486
+ type: 'function',
1487
+ inputs: [
1488
+ { name: '', internalType: 'address', type: 'address' },
1489
+ { name: 'from', internalType: 'address', type: 'address' },
1490
+ { name: 'ids', internalType: 'uint256[]', type: 'uint256[]' },
1491
+ { name: 'values', internalType: 'uint256[]', type: 'uint256[]' },
1492
+ { name: 'data', internalType: 'bytes', type: 'bytes' },
1493
+ ],
1494
+ name: 'onERC1155BatchReceived',
1495
+ outputs: [{ name: '', internalType: 'bytes4', type: 'bytes4' }],
1496
+ },
1497
+ {
1498
+ stateMutability: 'nonpayable',
1499
+ type: 'function',
1500
+ inputs: [
1501
+ { name: '', internalType: 'address', type: 'address' },
1502
+ { name: 'from', internalType: 'address', type: 'address' },
1503
+ { name: 'id', internalType: 'uint256', type: 'uint256' },
1504
+ { name: 'value', internalType: 'uint256', type: 'uint256' },
1505
+ { name: 'data', internalType: 'bytes', type: 'bytes' },
1506
+ ],
1507
+ name: 'onERC1155Received',
1508
+ outputs: [{ name: '', internalType: 'bytes4', type: 'bytes4' }],
1509
+ },
1510
+ {
1511
+ stateMutability: 'view',
1512
+ type: 'function',
1513
+ inputs: [],
1514
+ name: 'owner',
1515
+ outputs: [{ name: '', internalType: 'address', type: 'address' }],
1516
+ },
1517
+ {
1518
+ stateMutability: 'view',
1519
+ type: 'function',
1520
+ inputs: [],
1521
+ name: 'pendingOwner',
1522
+ outputs: [{ name: '', internalType: 'address', type: 'address' }],
1523
+ },
1524
+ {
1525
+ stateMutability: 'nonpayable',
1526
+ type: 'function',
1527
+ inputs: [],
1528
+ name: 'renounceOwnership',
1529
+ outputs: [],
1530
+ },
1531
+ {
1532
+ stateMutability: 'nonpayable',
1533
+ type: 'function',
1534
+ inputs: [
1535
+ { name: 'verifier', internalType: 'address', type: 'address' },
1536
+ { name: 'enabled', internalType: 'bool', type: 'bool' },
1537
+ ],
1538
+ name: 'setVerifierStatus',
1539
+ outputs: [],
1540
+ },
1541
+ {
1542
+ stateMutability: 'nonpayable',
1543
+ type: 'function',
1544
+ inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],
1545
+ name: 'transferOwnership',
1546
+ outputs: [],
1547
+ },
1548
+ {
1549
+ stateMutability: 'view',
1550
+ type: 'function',
1551
+ inputs: [
1552
+ { name: '', internalType: 'address', type: 'address' },
1553
+ { name: '', internalType: 'uint256', type: 'uint256' },
1554
+ ],
1555
+ name: 'usedNonces',
1556
+ outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
1557
+ },
1558
+ {
1559
+ stateMutability: 'nonpayable',
1560
+ type: 'function',
1561
+ inputs: [{ name: 'amount', internalType: 'uint256', type: 'uint256' }],
1562
+ name: 'withdraw',
1563
+ outputs: [],
1564
+ },
1565
+ {
1566
+ type: 'event',
1567
+ anonymous: false,
1568
+ inputs: [
1569
+ {
1570
+ name: 'sender',
1571
+ internalType: 'address',
1572
+ type: 'address',
1573
+ indexed: true,
1574
+ },
1575
+ {
1576
+ name: 'amount',
1577
+ internalType: 'uint256',
1578
+ type: 'uint256',
1579
+ indexed: true,
1580
+ },
1581
+ ],
1582
+ name: 'ContractFunded',
1583
+ },
1584
+ { type: 'event', anonymous: false, inputs: [], name: 'EIP712DomainChanged' },
1585
+ {
1586
+ type: 'event',
1587
+ anonymous: false,
1588
+ inputs: [
1589
+ {
1590
+ name: 'previousOwner',
1591
+ internalType: 'address',
1592
+ type: 'address',
1593
+ indexed: true,
1594
+ },
1595
+ {
1596
+ name: 'newOwner',
1597
+ internalType: 'address',
1598
+ type: 'address',
1599
+ indexed: true,
1600
+ },
1601
+ ],
1602
+ name: 'OwnershipTransferStarted',
1603
+ },
1604
+ {
1605
+ type: 'event',
1606
+ anonymous: false,
1607
+ inputs: [
1608
+ {
1609
+ name: 'previousOwner',
1610
+ internalType: 'address',
1611
+ type: 'address',
1612
+ indexed: true,
1613
+ },
1614
+ {
1615
+ name: 'newOwner',
1616
+ internalType: 'address',
1617
+ type: 'address',
1618
+ indexed: true,
1619
+ },
1620
+ ],
1621
+ name: 'OwnershipTransferred',
1622
+ },
1623
+ {
1624
+ type: 'event',
1625
+ anonymous: false,
1626
+ inputs: [
1627
+ {
1628
+ name: 'verifier',
1629
+ internalType: 'address',
1630
+ type: 'address',
1631
+ indexed: true,
1632
+ },
1633
+ { name: 'from', internalType: 'address', type: 'address', indexed: true },
1634
+ {
1635
+ name: 'amountSpent',
1636
+ internalType: 'uint256',
1637
+ type: 'uint256',
1638
+ indexed: false,
1639
+ },
1640
+ {
1641
+ name: 'contractValue',
1642
+ internalType: 'uint256',
1643
+ type: 'uint256',
1644
+ indexed: false,
1645
+ },
1646
+ ],
1647
+ name: 'SentSponsoredCallFromMintBalances',
1648
+ },
1649
+ {
1650
+ type: 'event',
1651
+ anonymous: false,
1652
+ inputs: [
1653
+ {
1654
+ name: 'verifier',
1655
+ internalType: 'address',
1656
+ type: 'address',
1657
+ indexed: true,
1658
+ },
1659
+ { name: 'enabled', internalType: 'bool', type: 'bool', indexed: true },
1660
+ ],
1661
+ name: 'SetVerifierStatus',
1662
+ },
1663
+ {
1664
+ type: 'error',
1665
+ inputs: [{ name: 'data', internalType: 'bytes', type: 'bytes' }],
1666
+ name: 'CallFailed',
1667
+ },
1668
+ {
1669
+ type: 'error',
1670
+ inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }],
1671
+ name: 'ERC20NotSupported',
1672
+ },
1673
+ { type: 'error', inputs: [], name: 'IdsMismatch' },
1674
+ { type: 'error', inputs: [], name: 'InvalidShortString' },
1675
+ { type: 'error', inputs: [], name: 'InvalidSignature' },
1676
+ { type: 'error', inputs: [], name: 'LengthMismatch' },
1677
+ { type: 'error', inputs: [], name: 'NonceUsed' },
1678
+ { type: 'error', inputs: [], name: 'NotExpectingReceive' },
1679
+ { type: 'error', inputs: [], name: 'NotZoraSparks1155' },
1680
+ {
1681
+ type: 'error',
1682
+ inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],
1683
+ name: 'OwnableInvalidOwner',
1684
+ },
1685
+ {
1686
+ type: 'error',
1687
+ inputs: [{ name: 'account', internalType: 'address', type: 'address' }],
1688
+ name: 'OwnableUnauthorizedAccount',
1689
+ },
1690
+ {
1691
+ type: 'error',
1692
+ inputs: [
1693
+ {
1694
+ name: 'expectedRedeemAmount',
1695
+ internalType: 'uint256',
1696
+ type: 'uint256',
1697
+ },
1698
+ {
1699
+ name: 'transientReceivedAmount',
1700
+ internalType: 'uint256',
1701
+ type: 'uint256',
1702
+ },
1703
+ ],
1704
+ name: 'RedeemAmountIsIncorrect',
1705
+ },
1706
+ { type: 'error', inputs: [], name: 'SignatureExpired' },
1707
+ { type: 'error', inputs: [], name: 'SingleTransferNotSupported' },
1708
+ {
1709
+ type: 'error',
1710
+ inputs: [{ name: 'str', internalType: 'string', type: 'string' }],
1711
+ name: 'StringTooLong',
1712
+ },
1713
+ {
1714
+ type: 'error',
1715
+ inputs: [{ name: 'data', internalType: 'bytes', type: 'bytes' }],
1716
+ name: 'TransferFailed',
1717
+ },
1718
+ { type: 'error', inputs: [], name: 'UnknownAction' },
1719
+ { type: 'error', inputs: [], name: 'UnknownUserAction' },
1720
+ { type: 'error', inputs: [], name: 'ValuesMismatch' },
1721
+ {
1722
+ type: 'error',
1723
+ inputs: [{ name: 'verifier', internalType: 'address', type: 'address' }],
1724
+ name: 'VerifierNotAllowed',
1725
+ },
1726
+ { type: 'error', inputs: [], name: 'WithdrawFailed' },
1727
+ ] as const
1728
+
1729
+ /**
1730
+ * [__View Contract on Zora Explorer__](https://explorer.zora.energy/address/0x29b75AbA7dc7FE26d90CD96fbB390B26e04C4EB2)
1731
+ */
1732
+ export const sponsoredSparksSpenderAddress = {
1733
+ 7777777: '0x29b75AbA7dc7FE26d90CD96fbB390B26e04C4EB2',
1734
+ } as const
1735
+
1736
+ /**
1737
+ * [__View Contract on Zora Explorer__](https://explorer.zora.energy/address/0x29b75AbA7dc7FE26d90CD96fbB390B26e04C4EB2)
1738
+ */
1739
+ export const sponsoredSparksSpenderConfig = {
1740
+ address: sponsoredSparksSpenderAddress,
1741
+ abi: sponsoredSparksSpenderABI,
1742
+ } as const
1743
+
1313
1744
  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
1314
1745
  // UpgradeGate
1315
1746
  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -1788,6 +2219,51 @@ export const zoraCreator1155FactoryImplABI = [
1788
2219
  { name: '', internalType: 'contract IMinter1155', type: 'address' },
1789
2220
  ],
1790
2221
  },
2222
+ {
2223
+ stateMutability: 'nonpayable',
2224
+ type: 'function',
2225
+ inputs: [
2226
+ {
2227
+ name: 'expectedContractAddress',
2228
+ internalType: 'address',
2229
+ type: 'address',
2230
+ },
2231
+ { name: 'newContractURI', internalType: 'string', type: 'string' },
2232
+ { name: 'name', internalType: 'string', type: 'string' },
2233
+ {
2234
+ name: 'defaultRoyaltyConfiguration',
2235
+ internalType: 'struct ICreatorRoyaltiesControl.RoyaltyConfiguration',
2236
+ type: 'tuple',
2237
+ components: [
2238
+ {
2239
+ name: 'royaltyMintSchedule',
2240
+ internalType: 'uint32',
2241
+ type: 'uint32',
2242
+ },
2243
+ { name: 'royaltyBPS', internalType: 'uint32', type: 'uint32' },
2244
+ {
2245
+ name: 'royaltyRecipient',
2246
+ internalType: 'address',
2247
+ type: 'address',
2248
+ },
2249
+ ],
2250
+ },
2251
+ {
2252
+ name: 'defaultAdmin',
2253
+ internalType: 'address payable',
2254
+ type: 'address',
2255
+ },
2256
+ { name: 'setupActions', internalType: 'bytes[]', type: 'bytes[]' },
2257
+ ],
2258
+ name: 'getOrCreateContractDeterministic',
2259
+ outputs: [
2260
+ {
2261
+ name: 'calculatedContractAddress',
2262
+ internalType: 'address',
2263
+ type: 'address',
2264
+ },
2265
+ ],
2266
+ },
1791
2267
  {
1792
2268
  stateMutability: 'view',
1793
2269
  type: 'function',
@@ -1924,6 +2400,19 @@ export const zoraCreator1155FactoryImplABI = [
1924
2400
  ],
1925
2401
  name: 'BeaconUpgraded',
1926
2402
  },
2403
+ {
2404
+ type: 'event',
2405
+ anonymous: false,
2406
+ inputs: [
2407
+ {
2408
+ name: 'calculatedContractAddress',
2409
+ internalType: 'address',
2410
+ type: 'address',
2411
+ indexed: false,
2412
+ },
2413
+ ],
2414
+ name: 'ContractAlreadyExistsSkippingDeploy',
2415
+ },
1927
2416
  { type: 'event', anonymous: false, inputs: [], name: 'FactorySetup' },
1928
2417
  {
1929
2418
  type: 'event',
@@ -2060,6 +2549,22 @@ export const zoraCreator1155FactoryImplABI = [
2060
2549
  { type: 'error', inputs: [], name: 'ERC1967_NEW_IMPL_NOT_CONTRACT' },
2061
2550
  { type: 'error', inputs: [], name: 'ERC1967_NEW_IMPL_NOT_UUPS' },
2062
2551
  { type: 'error', inputs: [], name: 'ERC1967_UNSUPPORTED_PROXIABLEUUID' },
2552
+ {
2553
+ type: 'error',
2554
+ inputs: [
2555
+ {
2556
+ name: 'expectedContractAddress',
2557
+ internalType: 'address',
2558
+ type: 'address',
2559
+ },
2560
+ {
2561
+ name: 'calculcatedContractAddress',
2562
+ internalType: 'address',
2563
+ type: 'address',
2564
+ },
2565
+ ],
2566
+ name: 'ExpectedContractAddressDoesNotMatchCalculatedContractAddress',
2567
+ },
2063
2568
  {
2064
2569
  type: 'error',
2065
2570
  inputs: [],
package/src/typedData.ts CHANGED
@@ -15,6 +15,7 @@ import {
15
15
  import {
16
16
  zoraMints1155Address,
17
17
  iPremintDefinitionsABI,
18
+ sponsoredSparksSpenderAddress,
18
19
  } from "./generated/wagmi";
19
20
  import {
20
21
  PremintConfigEncoded,
@@ -340,3 +341,75 @@ export const mintsSafeTransferBatchTypedDataDefinition = ({
340
341
  verifyingContract: zoraMints1155Address[chainId],
341
342
  },
342
343
  });
344
+
345
+ export const sponsoredSparksBatchTransferTypedDataType = {
346
+ SponsoredMintBatch: [
347
+ {
348
+ name: "verifier",
349
+ type: "address",
350
+ },
351
+ {
352
+ name: "from",
353
+ type: "address",
354
+ },
355
+ {
356
+ name: "destination",
357
+ type: "address",
358
+ },
359
+ {
360
+ name: "data",
361
+ type: "bytes",
362
+ },
363
+ {
364
+ name: "expectedRedeemAmount",
365
+ type: "uint256",
366
+ },
367
+ {
368
+ name: "totalAmount",
369
+ type: "uint256",
370
+ },
371
+ {
372
+ name: "ids",
373
+ type: "uint256[]",
374
+ },
375
+ {
376
+ name: "quantities",
377
+ type: "uint256[]",
378
+ },
379
+ {
380
+ name: "nonce",
381
+ type: "uint256",
382
+ },
383
+ {
384
+ name: "deadline",
385
+ type: "uint256",
386
+ },
387
+ ],
388
+ } as const;
389
+
390
+ /**
391
+ * Builds a typed data definition for a PermitSafeTransferBatch on the Mints1155 contract to be signed
392
+ * @returns
393
+ */
394
+ export const sponsoredSparksBatchTypedDataDefinition = ({
395
+ chainId,
396
+ message,
397
+ }: {
398
+ chainId: keyof typeof sponsoredSparksSpenderAddress;
399
+ message: TypedDataToPrimitiveTypes<
400
+ typeof sponsoredSparksBatchTransferTypedDataType
401
+ >["SponsoredMintBatch"];
402
+ }): TypedDataDefinition<
403
+ typeof sponsoredSparksBatchTransferTypedDataType,
404
+ "SponsoredMintBatch"
405
+ > => ({
406
+ types: sponsoredSparksBatchTransferTypedDataType,
407
+ message,
408
+ primaryType: "SponsoredMintBatch",
409
+ domain: {
410
+ chainId,
411
+ name: "SponsoredSparksSpender",
412
+ version: "1",
413
+ verifyingContract: sponsoredSparksSpenderAddress[chainId],
414
+ },
415
+ });
package/src/types.ts CHANGED
@@ -3,6 +3,7 @@ import { ExtractAbiFunction, AbiParametersToPrimitiveTypes } from "abitype";
3
3
  import {
4
4
  zoraCreator1155PremintExecutorImplABI,
5
5
  iPremintDefinitionsABI,
6
+ sponsoredSparksSpenderABI,
6
7
  } from "./generated/wagmi";
7
8
  import { Address } from "viem";
8
9
 
@@ -113,3 +114,10 @@ export type TokenConfigWithVersion<T extends PremintConfigVersion> = {
113
114
  tokenConfig: TokenConfigForVersion<T>;
114
115
  premintConfigVersion: T;
115
116
  };
117
+
118
+ export type SponsoredSparksBatch = AbiParametersToPrimitiveTypes<
119
+ ExtractAbiFunction<
120
+ typeof sponsoredSparksSpenderABI,
121
+ "hashSponsoredMint"
122
+ >["inputs"]
123
+ >[0];