@gitmyabi/seadrop 1.0.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.
@@ -0,0 +1,2150 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SeaDrop_json = exports.SeaDrop_jsonAbi = void 0;
4
+ const viem_1 = require("viem");
5
+ /**
6
+ * SeaDrop_json ABI
7
+ *
8
+ * This ABI is typed using viem's type system for full type safety.
9
+ */
10
+ exports.SeaDrop_jsonAbi = [
11
+ {
12
+ "inputs": [],
13
+ "stateMutability": "nonpayable",
14
+ "type": "constructor"
15
+ },
16
+ {
17
+ "inputs": [],
18
+ "name": "CreatorPayoutAddressCannotBeZeroAddress",
19
+ "type": "error"
20
+ },
21
+ {
22
+ "inputs": [],
23
+ "name": "DuplicateFeeRecipient",
24
+ "type": "error"
25
+ },
26
+ {
27
+ "inputs": [],
28
+ "name": "DuplicatePayer",
29
+ "type": "error"
30
+ },
31
+ {
32
+ "inputs": [],
33
+ "name": "FeeRecipientCannotBeZeroAddress",
34
+ "type": "error"
35
+ },
36
+ {
37
+ "inputs": [],
38
+ "name": "FeeRecipientNotAllowed",
39
+ "type": "error"
40
+ },
41
+ {
42
+ "inputs": [],
43
+ "name": "FeeRecipientNotPresent",
44
+ "type": "error"
45
+ },
46
+ {
47
+ "inputs": [
48
+ {
49
+ "internalType": "uint256",
50
+ "name": "got",
51
+ "type": "uint256"
52
+ },
53
+ {
54
+ "internalType": "uint256",
55
+ "name": "want",
56
+ "type": "uint256"
57
+ }
58
+ ],
59
+ "name": "IncorrectPayment",
60
+ "type": "error"
61
+ },
62
+ {
63
+ "inputs": [
64
+ {
65
+ "internalType": "uint256",
66
+ "name": "feeBps",
67
+ "type": "uint256"
68
+ }
69
+ ],
70
+ "name": "InvalidFeeBps",
71
+ "type": "error"
72
+ },
73
+ {
74
+ "inputs": [],
75
+ "name": "InvalidProof",
76
+ "type": "error"
77
+ },
78
+ {
79
+ "inputs": [
80
+ {
81
+ "internalType": "address",
82
+ "name": "recoveredSigner",
83
+ "type": "address"
84
+ }
85
+ ],
86
+ "name": "InvalidSignature",
87
+ "type": "error"
88
+ },
89
+ {
90
+ "inputs": [
91
+ {
92
+ "internalType": "uint256",
93
+ "name": "got",
94
+ "type": "uint256"
95
+ },
96
+ {
97
+ "internalType": "uint256",
98
+ "name": "maximum",
99
+ "type": "uint256"
100
+ }
101
+ ],
102
+ "name": "InvalidSignedEndTime",
103
+ "type": "error"
104
+ },
105
+ {
106
+ "inputs": [
107
+ {
108
+ "internalType": "uint256",
109
+ "name": "got",
110
+ "type": "uint256"
111
+ },
112
+ {
113
+ "internalType": "uint256",
114
+ "name": "minimumOrMaximum",
115
+ "type": "uint256"
116
+ }
117
+ ],
118
+ "name": "InvalidSignedFeeBps",
119
+ "type": "error"
120
+ },
121
+ {
122
+ "inputs": [
123
+ {
124
+ "internalType": "uint256",
125
+ "name": "got",
126
+ "type": "uint256"
127
+ },
128
+ {
129
+ "internalType": "uint256",
130
+ "name": "maximum",
131
+ "type": "uint256"
132
+ }
133
+ ],
134
+ "name": "InvalidSignedMaxTokenSupplyForStage",
135
+ "type": "error"
136
+ },
137
+ {
138
+ "inputs": [
139
+ {
140
+ "internalType": "uint256",
141
+ "name": "got",
142
+ "type": "uint256"
143
+ },
144
+ {
145
+ "internalType": "uint256",
146
+ "name": "maximum",
147
+ "type": "uint256"
148
+ }
149
+ ],
150
+ "name": "InvalidSignedMaxTotalMintableByWallet",
151
+ "type": "error"
152
+ },
153
+ {
154
+ "inputs": [
155
+ {
156
+ "internalType": "uint256",
157
+ "name": "got",
158
+ "type": "uint256"
159
+ },
160
+ {
161
+ "internalType": "uint256",
162
+ "name": "minimum",
163
+ "type": "uint256"
164
+ }
165
+ ],
166
+ "name": "InvalidSignedMintPrice",
167
+ "type": "error"
168
+ },
169
+ {
170
+ "inputs": [
171
+ {
172
+ "internalType": "uint256",
173
+ "name": "got",
174
+ "type": "uint256"
175
+ },
176
+ {
177
+ "internalType": "uint256",
178
+ "name": "minimum",
179
+ "type": "uint256"
180
+ }
181
+ ],
182
+ "name": "InvalidSignedStartTime",
183
+ "type": "error"
184
+ },
185
+ {
186
+ "inputs": [],
187
+ "name": "MintQuantityCannotBeZero",
188
+ "type": "error"
189
+ },
190
+ {
191
+ "inputs": [
192
+ {
193
+ "internalType": "uint256",
194
+ "name": "total",
195
+ "type": "uint256"
196
+ },
197
+ {
198
+ "internalType": "uint256",
199
+ "name": "allowed",
200
+ "type": "uint256"
201
+ }
202
+ ],
203
+ "name": "MintQuantityExceedsMaxMintedPerWallet",
204
+ "type": "error"
205
+ },
206
+ {
207
+ "inputs": [
208
+ {
209
+ "internalType": "uint256",
210
+ "name": "total",
211
+ "type": "uint256"
212
+ },
213
+ {
214
+ "internalType": "uint256",
215
+ "name": "maxSupply",
216
+ "type": "uint256"
217
+ }
218
+ ],
219
+ "name": "MintQuantityExceedsMaxSupply",
220
+ "type": "error"
221
+ },
222
+ {
223
+ "inputs": [
224
+ {
225
+ "internalType": "uint256",
226
+ "name": "total",
227
+ "type": "uint256"
228
+ },
229
+ {
230
+ "internalType": "uint256",
231
+ "name": "maxTokenSupplyForStage",
232
+ "type": "uint256"
233
+ }
234
+ ],
235
+ "name": "MintQuantityExceedsMaxTokenSupplyForStage",
236
+ "type": "error"
237
+ },
238
+ {
239
+ "inputs": [
240
+ {
241
+ "internalType": "uint256",
242
+ "name": "currentTimestamp",
243
+ "type": "uint256"
244
+ },
245
+ {
246
+ "internalType": "uint256",
247
+ "name": "startTimestamp",
248
+ "type": "uint256"
249
+ },
250
+ {
251
+ "internalType": "uint256",
252
+ "name": "endTimestamp",
253
+ "type": "uint256"
254
+ }
255
+ ],
256
+ "name": "NotActive",
257
+ "type": "error"
258
+ },
259
+ {
260
+ "inputs": [
261
+ {
262
+ "internalType": "address",
263
+ "name": "sender",
264
+ "type": "address"
265
+ }
266
+ ],
267
+ "name": "OnlyINonFungibleSeaDropToken",
268
+ "type": "error"
269
+ },
270
+ {
271
+ "inputs": [],
272
+ "name": "PayerCannotBeZeroAddress",
273
+ "type": "error"
274
+ },
275
+ {
276
+ "inputs": [],
277
+ "name": "PayerNotAllowed",
278
+ "type": "error"
279
+ },
280
+ {
281
+ "inputs": [],
282
+ "name": "PayerNotPresent",
283
+ "type": "error"
284
+ },
285
+ {
286
+ "inputs": [],
287
+ "name": "SignatureAlreadyUsed",
288
+ "type": "error"
289
+ },
290
+ {
291
+ "inputs": [],
292
+ "name": "SignedMintsMustRestrictFeeRecipients",
293
+ "type": "error"
294
+ },
295
+ {
296
+ "inputs": [],
297
+ "name": "SignerCannotBeZeroAddress",
298
+ "type": "error"
299
+ },
300
+ {
301
+ "inputs": [],
302
+ "name": "SignerNotPresent",
303
+ "type": "error"
304
+ },
305
+ {
306
+ "inputs": [],
307
+ "name": "TokenGatedDropAllowedNftTokenCannotBeDropToken",
308
+ "type": "error"
309
+ },
310
+ {
311
+ "inputs": [],
312
+ "name": "TokenGatedDropAllowedNftTokenCannotBeZeroAddress",
313
+ "type": "error"
314
+ },
315
+ {
316
+ "inputs": [],
317
+ "name": "TokenGatedDropStageNotPresent",
318
+ "type": "error"
319
+ },
320
+ {
321
+ "inputs": [
322
+ {
323
+ "internalType": "address",
324
+ "name": "nftContract",
325
+ "type": "address"
326
+ },
327
+ {
328
+ "internalType": "address",
329
+ "name": "allowedNftToken",
330
+ "type": "address"
331
+ },
332
+ {
333
+ "internalType": "uint256",
334
+ "name": "allowedNftTokenId",
335
+ "type": "uint256"
336
+ }
337
+ ],
338
+ "name": "TokenGatedNotTokenOwner",
339
+ "type": "error"
340
+ },
341
+ {
342
+ "inputs": [
343
+ {
344
+ "internalType": "address",
345
+ "name": "nftContract",
346
+ "type": "address"
347
+ },
348
+ {
349
+ "internalType": "address",
350
+ "name": "allowedNftToken",
351
+ "type": "address"
352
+ },
353
+ {
354
+ "internalType": "uint256",
355
+ "name": "allowedNftTokenId",
356
+ "type": "uint256"
357
+ }
358
+ ],
359
+ "name": "TokenGatedTokenIdAlreadyRedeemed",
360
+ "type": "error"
361
+ },
362
+ {
363
+ "anonymous": false,
364
+ "inputs": [
365
+ {
366
+ "indexed": true,
367
+ "internalType": "address",
368
+ "name": "nftContract",
369
+ "type": "address"
370
+ },
371
+ {
372
+ "indexed": true,
373
+ "internalType": "bytes32",
374
+ "name": "previousMerkleRoot",
375
+ "type": "bytes32"
376
+ },
377
+ {
378
+ "indexed": true,
379
+ "internalType": "bytes32",
380
+ "name": "newMerkleRoot",
381
+ "type": "bytes32"
382
+ },
383
+ {
384
+ "indexed": false,
385
+ "internalType": "string[]",
386
+ "name": "publicKeyURI",
387
+ "type": "string[]"
388
+ },
389
+ {
390
+ "indexed": false,
391
+ "internalType": "string",
392
+ "name": "allowListURI",
393
+ "type": "string"
394
+ }
395
+ ],
396
+ "name": "AllowListUpdated",
397
+ "type": "event"
398
+ },
399
+ {
400
+ "anonymous": false,
401
+ "inputs": [
402
+ {
403
+ "indexed": true,
404
+ "internalType": "address",
405
+ "name": "nftContract",
406
+ "type": "address"
407
+ },
408
+ {
409
+ "indexed": true,
410
+ "internalType": "address",
411
+ "name": "feeRecipient",
412
+ "type": "address"
413
+ },
414
+ {
415
+ "indexed": true,
416
+ "internalType": "bool",
417
+ "name": "allowed",
418
+ "type": "bool"
419
+ }
420
+ ],
421
+ "name": "AllowedFeeRecipientUpdated",
422
+ "type": "event"
423
+ },
424
+ {
425
+ "anonymous": false,
426
+ "inputs": [
427
+ {
428
+ "indexed": true,
429
+ "internalType": "address",
430
+ "name": "nftContract",
431
+ "type": "address"
432
+ },
433
+ {
434
+ "indexed": true,
435
+ "internalType": "address",
436
+ "name": "newPayoutAddress",
437
+ "type": "address"
438
+ }
439
+ ],
440
+ "name": "CreatorPayoutAddressUpdated",
441
+ "type": "event"
442
+ },
443
+ {
444
+ "anonymous": false,
445
+ "inputs": [
446
+ {
447
+ "indexed": true,
448
+ "internalType": "address",
449
+ "name": "nftContract",
450
+ "type": "address"
451
+ },
452
+ {
453
+ "indexed": false,
454
+ "internalType": "string",
455
+ "name": "newDropURI",
456
+ "type": "string"
457
+ }
458
+ ],
459
+ "name": "DropURIUpdated",
460
+ "type": "event"
461
+ },
462
+ {
463
+ "anonymous": false,
464
+ "inputs": [
465
+ {
466
+ "indexed": true,
467
+ "internalType": "address",
468
+ "name": "nftContract",
469
+ "type": "address"
470
+ },
471
+ {
472
+ "indexed": true,
473
+ "internalType": "address",
474
+ "name": "payer",
475
+ "type": "address"
476
+ },
477
+ {
478
+ "indexed": true,
479
+ "internalType": "bool",
480
+ "name": "allowed",
481
+ "type": "bool"
482
+ }
483
+ ],
484
+ "name": "PayerUpdated",
485
+ "type": "event"
486
+ },
487
+ {
488
+ "anonymous": false,
489
+ "inputs": [
490
+ {
491
+ "indexed": true,
492
+ "internalType": "address",
493
+ "name": "nftContract",
494
+ "type": "address"
495
+ },
496
+ {
497
+ "components": [
498
+ {
499
+ "internalType": "uint80",
500
+ "name": "mintPrice",
501
+ "type": "uint80"
502
+ },
503
+ {
504
+ "internalType": "uint48",
505
+ "name": "startTime",
506
+ "type": "uint48"
507
+ },
508
+ {
509
+ "internalType": "uint48",
510
+ "name": "endTime",
511
+ "type": "uint48"
512
+ },
513
+ {
514
+ "internalType": "uint16",
515
+ "name": "maxTotalMintableByWallet",
516
+ "type": "uint16"
517
+ },
518
+ {
519
+ "internalType": "uint16",
520
+ "name": "feeBps",
521
+ "type": "uint16"
522
+ },
523
+ {
524
+ "internalType": "bool",
525
+ "name": "restrictFeeRecipients",
526
+ "type": "bool"
527
+ }
528
+ ],
529
+ "indexed": false,
530
+ "internalType": "struct PublicDrop",
531
+ "name": "publicDrop",
532
+ "type": "tuple"
533
+ }
534
+ ],
535
+ "name": "PublicDropUpdated",
536
+ "type": "event"
537
+ },
538
+ {
539
+ "anonymous": false,
540
+ "inputs": [
541
+ {
542
+ "indexed": true,
543
+ "internalType": "address",
544
+ "name": "nftContract",
545
+ "type": "address"
546
+ },
547
+ {
548
+ "indexed": true,
549
+ "internalType": "address",
550
+ "name": "minter",
551
+ "type": "address"
552
+ },
553
+ {
554
+ "indexed": true,
555
+ "internalType": "address",
556
+ "name": "feeRecipient",
557
+ "type": "address"
558
+ },
559
+ {
560
+ "indexed": false,
561
+ "internalType": "address",
562
+ "name": "payer",
563
+ "type": "address"
564
+ },
565
+ {
566
+ "indexed": false,
567
+ "internalType": "uint256",
568
+ "name": "quantityMinted",
569
+ "type": "uint256"
570
+ },
571
+ {
572
+ "indexed": false,
573
+ "internalType": "uint256",
574
+ "name": "unitMintPrice",
575
+ "type": "uint256"
576
+ },
577
+ {
578
+ "indexed": false,
579
+ "internalType": "uint256",
580
+ "name": "feeBps",
581
+ "type": "uint256"
582
+ },
583
+ {
584
+ "indexed": false,
585
+ "internalType": "uint256",
586
+ "name": "dropStageIndex",
587
+ "type": "uint256"
588
+ }
589
+ ],
590
+ "name": "SeaDropMint",
591
+ "type": "event"
592
+ },
593
+ {
594
+ "anonymous": false,
595
+ "inputs": [
596
+ {
597
+ "indexed": true,
598
+ "internalType": "address",
599
+ "name": "nftContract",
600
+ "type": "address"
601
+ },
602
+ {
603
+ "indexed": true,
604
+ "internalType": "address",
605
+ "name": "signer",
606
+ "type": "address"
607
+ },
608
+ {
609
+ "components": [
610
+ {
611
+ "internalType": "uint80",
612
+ "name": "minMintPrice",
613
+ "type": "uint80"
614
+ },
615
+ {
616
+ "internalType": "uint24",
617
+ "name": "maxMaxTotalMintableByWallet",
618
+ "type": "uint24"
619
+ },
620
+ {
621
+ "internalType": "uint40",
622
+ "name": "minStartTime",
623
+ "type": "uint40"
624
+ },
625
+ {
626
+ "internalType": "uint40",
627
+ "name": "maxEndTime",
628
+ "type": "uint40"
629
+ },
630
+ {
631
+ "internalType": "uint40",
632
+ "name": "maxMaxTokenSupplyForStage",
633
+ "type": "uint40"
634
+ },
635
+ {
636
+ "internalType": "uint16",
637
+ "name": "minFeeBps",
638
+ "type": "uint16"
639
+ },
640
+ {
641
+ "internalType": "uint16",
642
+ "name": "maxFeeBps",
643
+ "type": "uint16"
644
+ }
645
+ ],
646
+ "indexed": false,
647
+ "internalType": "struct SignedMintValidationParams",
648
+ "name": "signedMintValidationParams",
649
+ "type": "tuple"
650
+ }
651
+ ],
652
+ "name": "SignedMintValidationParamsUpdated",
653
+ "type": "event"
654
+ },
655
+ {
656
+ "anonymous": false,
657
+ "inputs": [
658
+ {
659
+ "indexed": true,
660
+ "internalType": "address",
661
+ "name": "nftContract",
662
+ "type": "address"
663
+ },
664
+ {
665
+ "indexed": true,
666
+ "internalType": "address",
667
+ "name": "allowedNftToken",
668
+ "type": "address"
669
+ },
670
+ {
671
+ "components": [
672
+ {
673
+ "internalType": "uint80",
674
+ "name": "mintPrice",
675
+ "type": "uint80"
676
+ },
677
+ {
678
+ "internalType": "uint16",
679
+ "name": "maxTotalMintableByWallet",
680
+ "type": "uint16"
681
+ },
682
+ {
683
+ "internalType": "uint48",
684
+ "name": "startTime",
685
+ "type": "uint48"
686
+ },
687
+ {
688
+ "internalType": "uint48",
689
+ "name": "endTime",
690
+ "type": "uint48"
691
+ },
692
+ {
693
+ "internalType": "uint8",
694
+ "name": "dropStageIndex",
695
+ "type": "uint8"
696
+ },
697
+ {
698
+ "internalType": "uint32",
699
+ "name": "maxTokenSupplyForStage",
700
+ "type": "uint32"
701
+ },
702
+ {
703
+ "internalType": "uint16",
704
+ "name": "feeBps",
705
+ "type": "uint16"
706
+ },
707
+ {
708
+ "internalType": "bool",
709
+ "name": "restrictFeeRecipients",
710
+ "type": "bool"
711
+ }
712
+ ],
713
+ "indexed": false,
714
+ "internalType": "struct TokenGatedDropStage",
715
+ "name": "dropStage",
716
+ "type": "tuple"
717
+ }
718
+ ],
719
+ "name": "TokenGatedDropStageUpdated",
720
+ "type": "event"
721
+ },
722
+ {
723
+ "inputs": [
724
+ {
725
+ "internalType": "address",
726
+ "name": "nftContract",
727
+ "type": "address"
728
+ }
729
+ ],
730
+ "name": "getAllowListMerkleRoot",
731
+ "outputs": [
732
+ {
733
+ "internalType": "bytes32",
734
+ "name": "",
735
+ "type": "bytes32"
736
+ }
737
+ ],
738
+ "stateMutability": "view",
739
+ "type": "function"
740
+ },
741
+ {
742
+ "inputs": [
743
+ {
744
+ "internalType": "address",
745
+ "name": "nftContract",
746
+ "type": "address"
747
+ }
748
+ ],
749
+ "name": "getAllowedFeeRecipients",
750
+ "outputs": [
751
+ {
752
+ "internalType": "address[]",
753
+ "name": "",
754
+ "type": "address[]"
755
+ }
756
+ ],
757
+ "stateMutability": "view",
758
+ "type": "function"
759
+ },
760
+ {
761
+ "inputs": [
762
+ {
763
+ "internalType": "address",
764
+ "name": "nftContract",
765
+ "type": "address"
766
+ },
767
+ {
768
+ "internalType": "address",
769
+ "name": "allowedNftToken",
770
+ "type": "address"
771
+ },
772
+ {
773
+ "internalType": "uint256",
774
+ "name": "allowedNftTokenId",
775
+ "type": "uint256"
776
+ }
777
+ ],
778
+ "name": "getAllowedNftTokenIdIsRedeemed",
779
+ "outputs": [
780
+ {
781
+ "internalType": "bool",
782
+ "name": "",
783
+ "type": "bool"
784
+ }
785
+ ],
786
+ "stateMutability": "view",
787
+ "type": "function"
788
+ },
789
+ {
790
+ "inputs": [
791
+ {
792
+ "internalType": "address",
793
+ "name": "nftContract",
794
+ "type": "address"
795
+ }
796
+ ],
797
+ "name": "getCreatorPayoutAddress",
798
+ "outputs": [
799
+ {
800
+ "internalType": "address",
801
+ "name": "",
802
+ "type": "address"
803
+ }
804
+ ],
805
+ "stateMutability": "view",
806
+ "type": "function"
807
+ },
808
+ {
809
+ "inputs": [
810
+ {
811
+ "internalType": "address",
812
+ "name": "nftContract",
813
+ "type": "address"
814
+ },
815
+ {
816
+ "internalType": "address",
817
+ "name": "feeRecipient",
818
+ "type": "address"
819
+ }
820
+ ],
821
+ "name": "getFeeRecipientIsAllowed",
822
+ "outputs": [
823
+ {
824
+ "internalType": "bool",
825
+ "name": "",
826
+ "type": "bool"
827
+ }
828
+ ],
829
+ "stateMutability": "view",
830
+ "type": "function"
831
+ },
832
+ {
833
+ "inputs": [
834
+ {
835
+ "internalType": "address",
836
+ "name": "nftContract",
837
+ "type": "address"
838
+ },
839
+ {
840
+ "internalType": "address",
841
+ "name": "payer",
842
+ "type": "address"
843
+ }
844
+ ],
845
+ "name": "getPayerIsAllowed",
846
+ "outputs": [
847
+ {
848
+ "internalType": "bool",
849
+ "name": "",
850
+ "type": "bool"
851
+ }
852
+ ],
853
+ "stateMutability": "view",
854
+ "type": "function"
855
+ },
856
+ {
857
+ "inputs": [
858
+ {
859
+ "internalType": "address",
860
+ "name": "nftContract",
861
+ "type": "address"
862
+ }
863
+ ],
864
+ "name": "getPayers",
865
+ "outputs": [
866
+ {
867
+ "internalType": "address[]",
868
+ "name": "",
869
+ "type": "address[]"
870
+ }
871
+ ],
872
+ "stateMutability": "view",
873
+ "type": "function"
874
+ },
875
+ {
876
+ "inputs": [
877
+ {
878
+ "internalType": "address",
879
+ "name": "nftContract",
880
+ "type": "address"
881
+ }
882
+ ],
883
+ "name": "getPublicDrop",
884
+ "outputs": [
885
+ {
886
+ "components": [
887
+ {
888
+ "internalType": "uint80",
889
+ "name": "mintPrice",
890
+ "type": "uint80"
891
+ },
892
+ {
893
+ "internalType": "uint48",
894
+ "name": "startTime",
895
+ "type": "uint48"
896
+ },
897
+ {
898
+ "internalType": "uint48",
899
+ "name": "endTime",
900
+ "type": "uint48"
901
+ },
902
+ {
903
+ "internalType": "uint16",
904
+ "name": "maxTotalMintableByWallet",
905
+ "type": "uint16"
906
+ },
907
+ {
908
+ "internalType": "uint16",
909
+ "name": "feeBps",
910
+ "type": "uint16"
911
+ },
912
+ {
913
+ "internalType": "bool",
914
+ "name": "restrictFeeRecipients",
915
+ "type": "bool"
916
+ }
917
+ ],
918
+ "internalType": "struct PublicDrop",
919
+ "name": "",
920
+ "type": "tuple"
921
+ }
922
+ ],
923
+ "stateMutability": "view",
924
+ "type": "function"
925
+ },
926
+ {
927
+ "inputs": [
928
+ {
929
+ "internalType": "address",
930
+ "name": "nftContract",
931
+ "type": "address"
932
+ },
933
+ {
934
+ "internalType": "address",
935
+ "name": "signer",
936
+ "type": "address"
937
+ }
938
+ ],
939
+ "name": "getSignedMintValidationParams",
940
+ "outputs": [
941
+ {
942
+ "components": [
943
+ {
944
+ "internalType": "uint80",
945
+ "name": "minMintPrice",
946
+ "type": "uint80"
947
+ },
948
+ {
949
+ "internalType": "uint24",
950
+ "name": "maxMaxTotalMintableByWallet",
951
+ "type": "uint24"
952
+ },
953
+ {
954
+ "internalType": "uint40",
955
+ "name": "minStartTime",
956
+ "type": "uint40"
957
+ },
958
+ {
959
+ "internalType": "uint40",
960
+ "name": "maxEndTime",
961
+ "type": "uint40"
962
+ },
963
+ {
964
+ "internalType": "uint40",
965
+ "name": "maxMaxTokenSupplyForStage",
966
+ "type": "uint40"
967
+ },
968
+ {
969
+ "internalType": "uint16",
970
+ "name": "minFeeBps",
971
+ "type": "uint16"
972
+ },
973
+ {
974
+ "internalType": "uint16",
975
+ "name": "maxFeeBps",
976
+ "type": "uint16"
977
+ }
978
+ ],
979
+ "internalType": "struct SignedMintValidationParams",
980
+ "name": "",
981
+ "type": "tuple"
982
+ }
983
+ ],
984
+ "stateMutability": "view",
985
+ "type": "function"
986
+ },
987
+ {
988
+ "inputs": [
989
+ {
990
+ "internalType": "address",
991
+ "name": "nftContract",
992
+ "type": "address"
993
+ }
994
+ ],
995
+ "name": "getSigners",
996
+ "outputs": [
997
+ {
998
+ "internalType": "address[]",
999
+ "name": "",
1000
+ "type": "address[]"
1001
+ }
1002
+ ],
1003
+ "stateMutability": "view",
1004
+ "type": "function"
1005
+ },
1006
+ {
1007
+ "inputs": [
1008
+ {
1009
+ "internalType": "address",
1010
+ "name": "nftContract",
1011
+ "type": "address"
1012
+ }
1013
+ ],
1014
+ "name": "getTokenGatedAllowedTokens",
1015
+ "outputs": [
1016
+ {
1017
+ "internalType": "address[]",
1018
+ "name": "",
1019
+ "type": "address[]"
1020
+ }
1021
+ ],
1022
+ "stateMutability": "view",
1023
+ "type": "function"
1024
+ },
1025
+ {
1026
+ "inputs": [
1027
+ {
1028
+ "internalType": "address",
1029
+ "name": "nftContract",
1030
+ "type": "address"
1031
+ },
1032
+ {
1033
+ "internalType": "address",
1034
+ "name": "allowedNftToken",
1035
+ "type": "address"
1036
+ }
1037
+ ],
1038
+ "name": "getTokenGatedDrop",
1039
+ "outputs": [
1040
+ {
1041
+ "components": [
1042
+ {
1043
+ "internalType": "uint80",
1044
+ "name": "mintPrice",
1045
+ "type": "uint80"
1046
+ },
1047
+ {
1048
+ "internalType": "uint16",
1049
+ "name": "maxTotalMintableByWallet",
1050
+ "type": "uint16"
1051
+ },
1052
+ {
1053
+ "internalType": "uint48",
1054
+ "name": "startTime",
1055
+ "type": "uint48"
1056
+ },
1057
+ {
1058
+ "internalType": "uint48",
1059
+ "name": "endTime",
1060
+ "type": "uint48"
1061
+ },
1062
+ {
1063
+ "internalType": "uint8",
1064
+ "name": "dropStageIndex",
1065
+ "type": "uint8"
1066
+ },
1067
+ {
1068
+ "internalType": "uint32",
1069
+ "name": "maxTokenSupplyForStage",
1070
+ "type": "uint32"
1071
+ },
1072
+ {
1073
+ "internalType": "uint16",
1074
+ "name": "feeBps",
1075
+ "type": "uint16"
1076
+ },
1077
+ {
1078
+ "internalType": "bool",
1079
+ "name": "restrictFeeRecipients",
1080
+ "type": "bool"
1081
+ }
1082
+ ],
1083
+ "internalType": "struct TokenGatedDropStage",
1084
+ "name": "",
1085
+ "type": "tuple"
1086
+ }
1087
+ ],
1088
+ "stateMutability": "view",
1089
+ "type": "function"
1090
+ },
1091
+ {
1092
+ "inputs": [
1093
+ {
1094
+ "internalType": "address",
1095
+ "name": "nftContract",
1096
+ "type": "address"
1097
+ },
1098
+ {
1099
+ "internalType": "address",
1100
+ "name": "feeRecipient",
1101
+ "type": "address"
1102
+ },
1103
+ {
1104
+ "internalType": "address",
1105
+ "name": "minterIfNotPayer",
1106
+ "type": "address"
1107
+ },
1108
+ {
1109
+ "internalType": "uint256",
1110
+ "name": "quantity",
1111
+ "type": "uint256"
1112
+ },
1113
+ {
1114
+ "components": [
1115
+ {
1116
+ "internalType": "uint256",
1117
+ "name": "mintPrice",
1118
+ "type": "uint256"
1119
+ },
1120
+ {
1121
+ "internalType": "uint256",
1122
+ "name": "maxTotalMintableByWallet",
1123
+ "type": "uint256"
1124
+ },
1125
+ {
1126
+ "internalType": "uint256",
1127
+ "name": "startTime",
1128
+ "type": "uint256"
1129
+ },
1130
+ {
1131
+ "internalType": "uint256",
1132
+ "name": "endTime",
1133
+ "type": "uint256"
1134
+ },
1135
+ {
1136
+ "internalType": "uint256",
1137
+ "name": "dropStageIndex",
1138
+ "type": "uint256"
1139
+ },
1140
+ {
1141
+ "internalType": "uint256",
1142
+ "name": "maxTokenSupplyForStage",
1143
+ "type": "uint256"
1144
+ },
1145
+ {
1146
+ "internalType": "uint256",
1147
+ "name": "feeBps",
1148
+ "type": "uint256"
1149
+ },
1150
+ {
1151
+ "internalType": "bool",
1152
+ "name": "restrictFeeRecipients",
1153
+ "type": "bool"
1154
+ }
1155
+ ],
1156
+ "internalType": "struct MintParams",
1157
+ "name": "mintParams",
1158
+ "type": "tuple"
1159
+ },
1160
+ {
1161
+ "internalType": "bytes32[]",
1162
+ "name": "proof",
1163
+ "type": "bytes32[]"
1164
+ }
1165
+ ],
1166
+ "name": "mintAllowList",
1167
+ "outputs": [],
1168
+ "stateMutability": "payable",
1169
+ "type": "function"
1170
+ },
1171
+ {
1172
+ "inputs": [
1173
+ {
1174
+ "internalType": "address",
1175
+ "name": "nftContract",
1176
+ "type": "address"
1177
+ },
1178
+ {
1179
+ "internalType": "address",
1180
+ "name": "feeRecipient",
1181
+ "type": "address"
1182
+ },
1183
+ {
1184
+ "internalType": "address",
1185
+ "name": "minterIfNotPayer",
1186
+ "type": "address"
1187
+ },
1188
+ {
1189
+ "components": [
1190
+ {
1191
+ "internalType": "address",
1192
+ "name": "allowedNftToken",
1193
+ "type": "address"
1194
+ },
1195
+ {
1196
+ "internalType": "uint256[]",
1197
+ "name": "allowedNftTokenIds",
1198
+ "type": "uint256[]"
1199
+ }
1200
+ ],
1201
+ "internalType": "struct TokenGatedMintParams",
1202
+ "name": "mintParams",
1203
+ "type": "tuple"
1204
+ }
1205
+ ],
1206
+ "name": "mintAllowedTokenHolder",
1207
+ "outputs": [],
1208
+ "stateMutability": "payable",
1209
+ "type": "function"
1210
+ },
1211
+ {
1212
+ "inputs": [
1213
+ {
1214
+ "internalType": "address",
1215
+ "name": "nftContract",
1216
+ "type": "address"
1217
+ },
1218
+ {
1219
+ "internalType": "address",
1220
+ "name": "feeRecipient",
1221
+ "type": "address"
1222
+ },
1223
+ {
1224
+ "internalType": "address",
1225
+ "name": "minterIfNotPayer",
1226
+ "type": "address"
1227
+ },
1228
+ {
1229
+ "internalType": "uint256",
1230
+ "name": "quantity",
1231
+ "type": "uint256"
1232
+ }
1233
+ ],
1234
+ "name": "mintPublic",
1235
+ "outputs": [],
1236
+ "stateMutability": "payable",
1237
+ "type": "function"
1238
+ },
1239
+ {
1240
+ "inputs": [
1241
+ {
1242
+ "internalType": "address",
1243
+ "name": "nftContract",
1244
+ "type": "address"
1245
+ },
1246
+ {
1247
+ "internalType": "address",
1248
+ "name": "feeRecipient",
1249
+ "type": "address"
1250
+ },
1251
+ {
1252
+ "internalType": "address",
1253
+ "name": "minterIfNotPayer",
1254
+ "type": "address"
1255
+ },
1256
+ {
1257
+ "internalType": "uint256",
1258
+ "name": "quantity",
1259
+ "type": "uint256"
1260
+ },
1261
+ {
1262
+ "components": [
1263
+ {
1264
+ "internalType": "uint256",
1265
+ "name": "mintPrice",
1266
+ "type": "uint256"
1267
+ },
1268
+ {
1269
+ "internalType": "uint256",
1270
+ "name": "maxTotalMintableByWallet",
1271
+ "type": "uint256"
1272
+ },
1273
+ {
1274
+ "internalType": "uint256",
1275
+ "name": "startTime",
1276
+ "type": "uint256"
1277
+ },
1278
+ {
1279
+ "internalType": "uint256",
1280
+ "name": "endTime",
1281
+ "type": "uint256"
1282
+ },
1283
+ {
1284
+ "internalType": "uint256",
1285
+ "name": "dropStageIndex",
1286
+ "type": "uint256"
1287
+ },
1288
+ {
1289
+ "internalType": "uint256",
1290
+ "name": "maxTokenSupplyForStage",
1291
+ "type": "uint256"
1292
+ },
1293
+ {
1294
+ "internalType": "uint256",
1295
+ "name": "feeBps",
1296
+ "type": "uint256"
1297
+ },
1298
+ {
1299
+ "internalType": "bool",
1300
+ "name": "restrictFeeRecipients",
1301
+ "type": "bool"
1302
+ }
1303
+ ],
1304
+ "internalType": "struct MintParams",
1305
+ "name": "mintParams",
1306
+ "type": "tuple"
1307
+ },
1308
+ {
1309
+ "internalType": "uint256",
1310
+ "name": "salt",
1311
+ "type": "uint256"
1312
+ },
1313
+ {
1314
+ "internalType": "bytes",
1315
+ "name": "signature",
1316
+ "type": "bytes"
1317
+ }
1318
+ ],
1319
+ "name": "mintSigned",
1320
+ "outputs": [],
1321
+ "stateMutability": "payable",
1322
+ "type": "function"
1323
+ },
1324
+ {
1325
+ "inputs": [
1326
+ {
1327
+ "components": [
1328
+ {
1329
+ "internalType": "bytes32",
1330
+ "name": "merkleRoot",
1331
+ "type": "bytes32"
1332
+ },
1333
+ {
1334
+ "internalType": "string[]",
1335
+ "name": "publicKeyURIs",
1336
+ "type": "string[]"
1337
+ },
1338
+ {
1339
+ "internalType": "string",
1340
+ "name": "allowListURI",
1341
+ "type": "string"
1342
+ }
1343
+ ],
1344
+ "internalType": "struct AllowListData",
1345
+ "name": "allowListData",
1346
+ "type": "tuple"
1347
+ }
1348
+ ],
1349
+ "name": "updateAllowList",
1350
+ "outputs": [],
1351
+ "stateMutability": "nonpayable",
1352
+ "type": "function"
1353
+ },
1354
+ {
1355
+ "inputs": [
1356
+ {
1357
+ "internalType": "address",
1358
+ "name": "feeRecipient",
1359
+ "type": "address"
1360
+ },
1361
+ {
1362
+ "internalType": "bool",
1363
+ "name": "allowed",
1364
+ "type": "bool"
1365
+ }
1366
+ ],
1367
+ "name": "updateAllowedFeeRecipient",
1368
+ "outputs": [],
1369
+ "stateMutability": "nonpayable",
1370
+ "type": "function"
1371
+ },
1372
+ {
1373
+ "inputs": [
1374
+ {
1375
+ "internalType": "address",
1376
+ "name": "_payoutAddress",
1377
+ "type": "address"
1378
+ }
1379
+ ],
1380
+ "name": "updateCreatorPayoutAddress",
1381
+ "outputs": [],
1382
+ "stateMutability": "nonpayable",
1383
+ "type": "function"
1384
+ },
1385
+ {
1386
+ "inputs": [
1387
+ {
1388
+ "internalType": "string",
1389
+ "name": "dropURI",
1390
+ "type": "string"
1391
+ }
1392
+ ],
1393
+ "name": "updateDropURI",
1394
+ "outputs": [],
1395
+ "stateMutability": "nonpayable",
1396
+ "type": "function"
1397
+ },
1398
+ {
1399
+ "inputs": [
1400
+ {
1401
+ "internalType": "address",
1402
+ "name": "payer",
1403
+ "type": "address"
1404
+ },
1405
+ {
1406
+ "internalType": "bool",
1407
+ "name": "allowed",
1408
+ "type": "bool"
1409
+ }
1410
+ ],
1411
+ "name": "updatePayer",
1412
+ "outputs": [],
1413
+ "stateMutability": "nonpayable",
1414
+ "type": "function"
1415
+ },
1416
+ {
1417
+ "inputs": [
1418
+ {
1419
+ "components": [
1420
+ {
1421
+ "internalType": "uint80",
1422
+ "name": "mintPrice",
1423
+ "type": "uint80"
1424
+ },
1425
+ {
1426
+ "internalType": "uint48",
1427
+ "name": "startTime",
1428
+ "type": "uint48"
1429
+ },
1430
+ {
1431
+ "internalType": "uint48",
1432
+ "name": "endTime",
1433
+ "type": "uint48"
1434
+ },
1435
+ {
1436
+ "internalType": "uint16",
1437
+ "name": "maxTotalMintableByWallet",
1438
+ "type": "uint16"
1439
+ },
1440
+ {
1441
+ "internalType": "uint16",
1442
+ "name": "feeBps",
1443
+ "type": "uint16"
1444
+ },
1445
+ {
1446
+ "internalType": "bool",
1447
+ "name": "restrictFeeRecipients",
1448
+ "type": "bool"
1449
+ }
1450
+ ],
1451
+ "internalType": "struct PublicDrop",
1452
+ "name": "publicDrop",
1453
+ "type": "tuple"
1454
+ }
1455
+ ],
1456
+ "name": "updatePublicDrop",
1457
+ "outputs": [],
1458
+ "stateMutability": "nonpayable",
1459
+ "type": "function"
1460
+ },
1461
+ {
1462
+ "inputs": [
1463
+ {
1464
+ "internalType": "address",
1465
+ "name": "signer",
1466
+ "type": "address"
1467
+ },
1468
+ {
1469
+ "components": [
1470
+ {
1471
+ "internalType": "uint80",
1472
+ "name": "minMintPrice",
1473
+ "type": "uint80"
1474
+ },
1475
+ {
1476
+ "internalType": "uint24",
1477
+ "name": "maxMaxTotalMintableByWallet",
1478
+ "type": "uint24"
1479
+ },
1480
+ {
1481
+ "internalType": "uint40",
1482
+ "name": "minStartTime",
1483
+ "type": "uint40"
1484
+ },
1485
+ {
1486
+ "internalType": "uint40",
1487
+ "name": "maxEndTime",
1488
+ "type": "uint40"
1489
+ },
1490
+ {
1491
+ "internalType": "uint40",
1492
+ "name": "maxMaxTokenSupplyForStage",
1493
+ "type": "uint40"
1494
+ },
1495
+ {
1496
+ "internalType": "uint16",
1497
+ "name": "minFeeBps",
1498
+ "type": "uint16"
1499
+ },
1500
+ {
1501
+ "internalType": "uint16",
1502
+ "name": "maxFeeBps",
1503
+ "type": "uint16"
1504
+ }
1505
+ ],
1506
+ "internalType": "struct SignedMintValidationParams",
1507
+ "name": "signedMintValidationParams",
1508
+ "type": "tuple"
1509
+ }
1510
+ ],
1511
+ "name": "updateSignedMintValidationParams",
1512
+ "outputs": [],
1513
+ "stateMutability": "nonpayable",
1514
+ "type": "function"
1515
+ },
1516
+ {
1517
+ "inputs": [
1518
+ {
1519
+ "internalType": "address",
1520
+ "name": "allowedNftToken",
1521
+ "type": "address"
1522
+ },
1523
+ {
1524
+ "components": [
1525
+ {
1526
+ "internalType": "uint80",
1527
+ "name": "mintPrice",
1528
+ "type": "uint80"
1529
+ },
1530
+ {
1531
+ "internalType": "uint16",
1532
+ "name": "maxTotalMintableByWallet",
1533
+ "type": "uint16"
1534
+ },
1535
+ {
1536
+ "internalType": "uint48",
1537
+ "name": "startTime",
1538
+ "type": "uint48"
1539
+ },
1540
+ {
1541
+ "internalType": "uint48",
1542
+ "name": "endTime",
1543
+ "type": "uint48"
1544
+ },
1545
+ {
1546
+ "internalType": "uint8",
1547
+ "name": "dropStageIndex",
1548
+ "type": "uint8"
1549
+ },
1550
+ {
1551
+ "internalType": "uint32",
1552
+ "name": "maxTokenSupplyForStage",
1553
+ "type": "uint32"
1554
+ },
1555
+ {
1556
+ "internalType": "uint16",
1557
+ "name": "feeBps",
1558
+ "type": "uint16"
1559
+ },
1560
+ {
1561
+ "internalType": "bool",
1562
+ "name": "restrictFeeRecipients",
1563
+ "type": "bool"
1564
+ }
1565
+ ],
1566
+ "internalType": "struct TokenGatedDropStage",
1567
+ "name": "dropStage",
1568
+ "type": "tuple"
1569
+ }
1570
+ ],
1571
+ "name": "updateTokenGatedDrop",
1572
+ "outputs": [],
1573
+ "stateMutability": "nonpayable",
1574
+ "type": "function"
1575
+ }
1576
+ ];
1577
+ /**
1578
+ * SeaDrop_json Contract Class
1579
+ *
1580
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
1581
+ *
1582
+ * @example
1583
+ * ```typescript
1584
+ * import { createPublicClient, createWalletClient, http } from 'viem';
1585
+ * import { mainnet } from 'viem/chains';
1586
+ * import { SeaDrop_json } from 'SeaDrop_json';
1587
+ *
1588
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
1589
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
1590
+ *
1591
+ * const contract = new SeaDrop_json('0x...', { publicClient, walletClient });
1592
+ *
1593
+ * // Read functions
1594
+ * const result = await contract.balanceOf('0x...');
1595
+ *
1596
+ * // Write functions
1597
+ * const hash = await contract.transfer('0x...', 1000n);
1598
+ *
1599
+ * // Simulate transactions (dry-run)
1600
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
1601
+ * console.log('Gas estimate:', simulation.request.gas);
1602
+ *
1603
+ * // Watch events
1604
+ * const unwatch = contract.watch.Transfer((event) => {
1605
+ * console.log('Transfer event:', event);
1606
+ * });
1607
+ * ```
1608
+ */
1609
+ class SeaDrop_json {
1610
+ constructor(address, clients) {
1611
+ this.contractAddress = address;
1612
+ this.publicClient = clients.publicClient;
1613
+ this.contract = (0, viem_1.getContract)({
1614
+ address,
1615
+ abi: exports.SeaDrop_jsonAbi,
1616
+ client: {
1617
+ public: clients.publicClient,
1618
+ wallet: clients.walletClient,
1619
+ },
1620
+ });
1621
+ }
1622
+ /**
1623
+ * Get the contract address
1624
+ */
1625
+ get address() {
1626
+ return this.contractAddress;
1627
+ }
1628
+ /**
1629
+ * Get the underlying viem contract instance
1630
+ */
1631
+ getContract() {
1632
+ return this.contract;
1633
+ }
1634
+ /**
1635
+ * getAllowListMerkleRoot
1636
+ * view
1637
+ */
1638
+ async getAllowListMerkleRoot(nftContract) {
1639
+ return this.contract.read.getAllowListMerkleRoot([nftContract]);
1640
+ }
1641
+ /**
1642
+ * getAllowedFeeRecipients
1643
+ * view
1644
+ */
1645
+ async getAllowedFeeRecipients(nftContract) {
1646
+ return this.contract.read.getAllowedFeeRecipients([nftContract]);
1647
+ }
1648
+ /**
1649
+ * getAllowedNftTokenIdIsRedeemed
1650
+ * view
1651
+ */
1652
+ async getAllowedNftTokenIdIsRedeemed(nftContract, allowedNftToken, allowedNftTokenId) {
1653
+ return this.contract.read.getAllowedNftTokenIdIsRedeemed([nftContract, allowedNftToken, allowedNftTokenId]);
1654
+ }
1655
+ /**
1656
+ * getCreatorPayoutAddress
1657
+ * view
1658
+ */
1659
+ async getCreatorPayoutAddress(nftContract) {
1660
+ return this.contract.read.getCreatorPayoutAddress([nftContract]);
1661
+ }
1662
+ /**
1663
+ * getFeeRecipientIsAllowed
1664
+ * view
1665
+ */
1666
+ async getFeeRecipientIsAllowed(nftContract, feeRecipient) {
1667
+ return this.contract.read.getFeeRecipientIsAllowed([nftContract, feeRecipient]);
1668
+ }
1669
+ /**
1670
+ * getPayerIsAllowed
1671
+ * view
1672
+ */
1673
+ async getPayerIsAllowed(nftContract, payer) {
1674
+ return this.contract.read.getPayerIsAllowed([nftContract, payer]);
1675
+ }
1676
+ /**
1677
+ * getPayers
1678
+ * view
1679
+ */
1680
+ async getPayers(nftContract) {
1681
+ return this.contract.read.getPayers([nftContract]);
1682
+ }
1683
+ /**
1684
+ * getPublicDrop
1685
+ * view
1686
+ */
1687
+ async getPublicDrop(nftContract) {
1688
+ return this.contract.read.getPublicDrop([nftContract]);
1689
+ }
1690
+ /**
1691
+ * getSignedMintValidationParams
1692
+ * view
1693
+ */
1694
+ async getSignedMintValidationParams(nftContract, signer) {
1695
+ return this.contract.read.getSignedMintValidationParams([nftContract, signer]);
1696
+ }
1697
+ /**
1698
+ * getSigners
1699
+ * view
1700
+ */
1701
+ async getSigners(nftContract) {
1702
+ return this.contract.read.getSigners([nftContract]);
1703
+ }
1704
+ /**
1705
+ * getTokenGatedAllowedTokens
1706
+ * view
1707
+ */
1708
+ async getTokenGatedAllowedTokens(nftContract) {
1709
+ return this.contract.read.getTokenGatedAllowedTokens([nftContract]);
1710
+ }
1711
+ /**
1712
+ * getTokenGatedDrop
1713
+ * view
1714
+ */
1715
+ async getTokenGatedDrop(nftContract, allowedNftToken) {
1716
+ return this.contract.read.getTokenGatedDrop([nftContract, allowedNftToken]);
1717
+ }
1718
+ /**
1719
+ * mintAllowList
1720
+ * payable
1721
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1722
+ */
1723
+ async mintAllowList(nftContract, feeRecipient, minterIfNotPayer, quantity, mintParams, proof, options) {
1724
+ if (!this.contract.write) {
1725
+ throw new Error('Wallet client is required for write operations');
1726
+ }
1727
+ return this.contract.write.mintAllowList([nftContract, feeRecipient, minterIfNotPayer, quantity, mintParams, proof], options);
1728
+ }
1729
+ /**
1730
+ * mintAllowedTokenHolder
1731
+ * payable
1732
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1733
+ */
1734
+ async mintAllowedTokenHolder(nftContract, feeRecipient, minterIfNotPayer, mintParams, options) {
1735
+ if (!this.contract.write) {
1736
+ throw new Error('Wallet client is required for write operations');
1737
+ }
1738
+ return this.contract.write.mintAllowedTokenHolder([nftContract, feeRecipient, minterIfNotPayer, mintParams], options);
1739
+ }
1740
+ /**
1741
+ * mintPublic
1742
+ * payable
1743
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1744
+ */
1745
+ async mintPublic(nftContract, feeRecipient, minterIfNotPayer, quantity, options) {
1746
+ if (!this.contract.write) {
1747
+ throw new Error('Wallet client is required for write operations');
1748
+ }
1749
+ return this.contract.write.mintPublic([nftContract, feeRecipient, minterIfNotPayer, quantity], options);
1750
+ }
1751
+ /**
1752
+ * mintSigned
1753
+ * payable
1754
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1755
+ */
1756
+ async mintSigned(nftContract, feeRecipient, minterIfNotPayer, quantity, mintParams, salt, signature, options) {
1757
+ if (!this.contract.write) {
1758
+ throw new Error('Wallet client is required for write operations');
1759
+ }
1760
+ return this.contract.write.mintSigned([nftContract, feeRecipient, minterIfNotPayer, quantity, mintParams, salt, signature], options);
1761
+ }
1762
+ /**
1763
+ * updateAllowList
1764
+ * nonpayable
1765
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1766
+ */
1767
+ async updateAllowList(allowListData, options) {
1768
+ if (!this.contract.write) {
1769
+ throw new Error('Wallet client is required for write operations');
1770
+ }
1771
+ return this.contract.write.updateAllowList([allowListData], options);
1772
+ }
1773
+ /**
1774
+ * updateAllowedFeeRecipient
1775
+ * nonpayable
1776
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1777
+ */
1778
+ async updateAllowedFeeRecipient(feeRecipient, allowed, options) {
1779
+ if (!this.contract.write) {
1780
+ throw new Error('Wallet client is required for write operations');
1781
+ }
1782
+ return this.contract.write.updateAllowedFeeRecipient([feeRecipient, allowed], options);
1783
+ }
1784
+ /**
1785
+ * updateCreatorPayoutAddress
1786
+ * nonpayable
1787
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1788
+ */
1789
+ async updateCreatorPayoutAddress(_payoutAddress, options) {
1790
+ if (!this.contract.write) {
1791
+ throw new Error('Wallet client is required for write operations');
1792
+ }
1793
+ return this.contract.write.updateCreatorPayoutAddress([_payoutAddress], options);
1794
+ }
1795
+ /**
1796
+ * updateDropURI
1797
+ * nonpayable
1798
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1799
+ */
1800
+ async updateDropURI(dropURI, options) {
1801
+ if (!this.contract.write) {
1802
+ throw new Error('Wallet client is required for write operations');
1803
+ }
1804
+ return this.contract.write.updateDropURI([dropURI], options);
1805
+ }
1806
+ /**
1807
+ * updatePayer
1808
+ * nonpayable
1809
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1810
+ */
1811
+ async updatePayer(payer, allowed, options) {
1812
+ if (!this.contract.write) {
1813
+ throw new Error('Wallet client is required for write operations');
1814
+ }
1815
+ return this.contract.write.updatePayer([payer, allowed], options);
1816
+ }
1817
+ /**
1818
+ * updatePublicDrop
1819
+ * nonpayable
1820
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1821
+ */
1822
+ async updatePublicDrop(publicDrop, options) {
1823
+ if (!this.contract.write) {
1824
+ throw new Error('Wallet client is required for write operations');
1825
+ }
1826
+ return this.contract.write.updatePublicDrop([publicDrop], options);
1827
+ }
1828
+ /**
1829
+ * updateSignedMintValidationParams
1830
+ * nonpayable
1831
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1832
+ */
1833
+ async updateSignedMintValidationParams(signer, signedMintValidationParams, options) {
1834
+ if (!this.contract.write) {
1835
+ throw new Error('Wallet client is required for write operations');
1836
+ }
1837
+ return this.contract.write.updateSignedMintValidationParams([signer, signedMintValidationParams], options);
1838
+ }
1839
+ /**
1840
+ * updateTokenGatedDrop
1841
+ * nonpayable
1842
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1843
+ */
1844
+ async updateTokenGatedDrop(allowedNftToken, dropStage, options) {
1845
+ if (!this.contract.write) {
1846
+ throw new Error('Wallet client is required for write operations');
1847
+ }
1848
+ return this.contract.write.updateTokenGatedDrop([allowedNftToken, dropStage], options);
1849
+ }
1850
+ /**
1851
+ * Simulate contract write operations (dry-run without sending transaction)
1852
+ *
1853
+ * @example
1854
+ * const result = await contract.simulate.transfer('0x...', 1000n);
1855
+ * console.log('Gas estimate:', result.request.gas);
1856
+ * console.log('Would succeed:', result.result);
1857
+ */
1858
+ get simulate() {
1859
+ const contract = this.contract;
1860
+ if (!contract.simulate) {
1861
+ throw new Error('Public client is required for simulation');
1862
+ }
1863
+ return {
1864
+ /**
1865
+ * Simulate mintAllowList
1866
+ * Returns gas estimate and result without sending transaction
1867
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1868
+ */
1869
+ async mintAllowList(nftContract, feeRecipient, minterIfNotPayer, quantity, mintParams, proof, options) {
1870
+ return contract.simulate.mintAllowList([nftContract, feeRecipient, minterIfNotPayer, quantity, mintParams, proof], options);
1871
+ },
1872
+ /**
1873
+ * Simulate mintAllowedTokenHolder
1874
+ * Returns gas estimate and result without sending transaction
1875
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1876
+ */
1877
+ async mintAllowedTokenHolder(nftContract, feeRecipient, minterIfNotPayer, mintParams, options) {
1878
+ return contract.simulate.mintAllowedTokenHolder([nftContract, feeRecipient, minterIfNotPayer, mintParams], options);
1879
+ },
1880
+ /**
1881
+ * Simulate mintPublic
1882
+ * Returns gas estimate and result without sending transaction
1883
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1884
+ */
1885
+ async mintPublic(nftContract, feeRecipient, minterIfNotPayer, quantity, options) {
1886
+ return contract.simulate.mintPublic([nftContract, feeRecipient, minterIfNotPayer, quantity], options);
1887
+ },
1888
+ /**
1889
+ * Simulate mintSigned
1890
+ * Returns gas estimate and result without sending transaction
1891
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1892
+ */
1893
+ async mintSigned(nftContract, feeRecipient, minterIfNotPayer, quantity, mintParams, salt, signature, options) {
1894
+ return contract.simulate.mintSigned([nftContract, feeRecipient, minterIfNotPayer, quantity, mintParams, salt, signature], options);
1895
+ },
1896
+ /**
1897
+ * Simulate updateAllowList
1898
+ * Returns gas estimate and result without sending transaction
1899
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1900
+ */
1901
+ async updateAllowList(allowListData, options) {
1902
+ return contract.simulate.updateAllowList([allowListData], options);
1903
+ },
1904
+ /**
1905
+ * Simulate updateAllowedFeeRecipient
1906
+ * Returns gas estimate and result without sending transaction
1907
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1908
+ */
1909
+ async updateAllowedFeeRecipient(feeRecipient, allowed, options) {
1910
+ return contract.simulate.updateAllowedFeeRecipient([feeRecipient, allowed], options);
1911
+ },
1912
+ /**
1913
+ * Simulate updateCreatorPayoutAddress
1914
+ * Returns gas estimate and result without sending transaction
1915
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1916
+ */
1917
+ async updateCreatorPayoutAddress(_payoutAddress, options) {
1918
+ return contract.simulate.updateCreatorPayoutAddress([_payoutAddress], options);
1919
+ },
1920
+ /**
1921
+ * Simulate updateDropURI
1922
+ * Returns gas estimate and result without sending transaction
1923
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1924
+ */
1925
+ async updateDropURI(dropURI, options) {
1926
+ return contract.simulate.updateDropURI([dropURI], options);
1927
+ },
1928
+ /**
1929
+ * Simulate updatePayer
1930
+ * Returns gas estimate and result without sending transaction
1931
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1932
+ */
1933
+ async updatePayer(payer, allowed, options) {
1934
+ return contract.simulate.updatePayer([payer, allowed], options);
1935
+ },
1936
+ /**
1937
+ * Simulate updatePublicDrop
1938
+ * Returns gas estimate and result without sending transaction
1939
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1940
+ */
1941
+ async updatePublicDrop(publicDrop, options) {
1942
+ return contract.simulate.updatePublicDrop([publicDrop], options);
1943
+ },
1944
+ /**
1945
+ * Simulate updateSignedMintValidationParams
1946
+ * Returns gas estimate and result without sending transaction
1947
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1948
+ */
1949
+ async updateSignedMintValidationParams(signer, signedMintValidationParams, options) {
1950
+ return contract.simulate.updateSignedMintValidationParams([signer, signedMintValidationParams], options);
1951
+ },
1952
+ /**
1953
+ * Simulate updateTokenGatedDrop
1954
+ * Returns gas estimate and result without sending transaction
1955
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1956
+ */
1957
+ async updateTokenGatedDrop(allowedNftToken, dropStage, options) {
1958
+ return contract.simulate.updateTokenGatedDrop([allowedNftToken, dropStage], options);
1959
+ }
1960
+ };
1961
+ }
1962
+ /**
1963
+ * Watch contract events
1964
+ *
1965
+ * @example
1966
+ * // Watch all Transfer events
1967
+ * const unwatch = contract.watch.Transfer((event) => {
1968
+ * console.log('Transfer:', event);
1969
+ * });
1970
+ *
1971
+ * // Stop watching
1972
+ * unwatch();
1973
+ */
1974
+ get watch() {
1975
+ return {
1976
+ /**
1977
+ * Watch AllowListUpdated events
1978
+ * @param callback Function to call when event is emitted
1979
+ * @param filter Optional filter for indexed parameters
1980
+ * @returns Unwatch function to stop listening
1981
+ */
1982
+ AllowListUpdated: (callback, filter) => {
1983
+ return this.publicClient.watchContractEvent({
1984
+ address: this.contractAddress,
1985
+ abi: exports.SeaDrop_jsonAbi,
1986
+ eventName: 'AllowListUpdated',
1987
+ args: filter,
1988
+ onLogs: (logs) => {
1989
+ logs.forEach((log) => {
1990
+ callback(log.args);
1991
+ });
1992
+ },
1993
+ });
1994
+ },
1995
+ /**
1996
+ * Watch AllowedFeeRecipientUpdated events
1997
+ * @param callback Function to call when event is emitted
1998
+ * @param filter Optional filter for indexed parameters
1999
+ * @returns Unwatch function to stop listening
2000
+ */
2001
+ AllowedFeeRecipientUpdated: (callback, filter) => {
2002
+ return this.publicClient.watchContractEvent({
2003
+ address: this.contractAddress,
2004
+ abi: exports.SeaDrop_jsonAbi,
2005
+ eventName: 'AllowedFeeRecipientUpdated',
2006
+ args: filter,
2007
+ onLogs: (logs) => {
2008
+ logs.forEach((log) => {
2009
+ callback(log.args);
2010
+ });
2011
+ },
2012
+ });
2013
+ },
2014
+ /**
2015
+ * Watch CreatorPayoutAddressUpdated events
2016
+ * @param callback Function to call when event is emitted
2017
+ * @param filter Optional filter for indexed parameters
2018
+ * @returns Unwatch function to stop listening
2019
+ */
2020
+ CreatorPayoutAddressUpdated: (callback, filter) => {
2021
+ return this.publicClient.watchContractEvent({
2022
+ address: this.contractAddress,
2023
+ abi: exports.SeaDrop_jsonAbi,
2024
+ eventName: 'CreatorPayoutAddressUpdated',
2025
+ args: filter,
2026
+ onLogs: (logs) => {
2027
+ logs.forEach((log) => {
2028
+ callback(log.args);
2029
+ });
2030
+ },
2031
+ });
2032
+ },
2033
+ /**
2034
+ * Watch DropURIUpdated events
2035
+ * @param callback Function to call when event is emitted
2036
+ * @param filter Optional filter for indexed parameters
2037
+ * @returns Unwatch function to stop listening
2038
+ */
2039
+ DropURIUpdated: (callback, filter) => {
2040
+ return this.publicClient.watchContractEvent({
2041
+ address: this.contractAddress,
2042
+ abi: exports.SeaDrop_jsonAbi,
2043
+ eventName: 'DropURIUpdated',
2044
+ args: filter,
2045
+ onLogs: (logs) => {
2046
+ logs.forEach((log) => {
2047
+ callback(log.args);
2048
+ });
2049
+ },
2050
+ });
2051
+ },
2052
+ /**
2053
+ * Watch PayerUpdated events
2054
+ * @param callback Function to call when event is emitted
2055
+ * @param filter Optional filter for indexed parameters
2056
+ * @returns Unwatch function to stop listening
2057
+ */
2058
+ PayerUpdated: (callback, filter) => {
2059
+ return this.publicClient.watchContractEvent({
2060
+ address: this.contractAddress,
2061
+ abi: exports.SeaDrop_jsonAbi,
2062
+ eventName: 'PayerUpdated',
2063
+ args: filter,
2064
+ onLogs: (logs) => {
2065
+ logs.forEach((log) => {
2066
+ callback(log.args);
2067
+ });
2068
+ },
2069
+ });
2070
+ },
2071
+ /**
2072
+ * Watch PublicDropUpdated events
2073
+ * @param callback Function to call when event is emitted
2074
+ * @param filter Optional filter for indexed parameters
2075
+ * @returns Unwatch function to stop listening
2076
+ */
2077
+ PublicDropUpdated: (callback, filter) => {
2078
+ return this.publicClient.watchContractEvent({
2079
+ address: this.contractAddress,
2080
+ abi: exports.SeaDrop_jsonAbi,
2081
+ eventName: 'PublicDropUpdated',
2082
+ args: filter,
2083
+ onLogs: (logs) => {
2084
+ logs.forEach((log) => {
2085
+ callback(log.args);
2086
+ });
2087
+ },
2088
+ });
2089
+ },
2090
+ /**
2091
+ * Watch SeaDropMint events
2092
+ * @param callback Function to call when event is emitted
2093
+ * @param filter Optional filter for indexed parameters
2094
+ * @returns Unwatch function to stop listening
2095
+ */
2096
+ SeaDropMint: (callback, filter) => {
2097
+ return this.publicClient.watchContractEvent({
2098
+ address: this.contractAddress,
2099
+ abi: exports.SeaDrop_jsonAbi,
2100
+ eventName: 'SeaDropMint',
2101
+ args: filter,
2102
+ onLogs: (logs) => {
2103
+ logs.forEach((log) => {
2104
+ callback(log.args);
2105
+ });
2106
+ },
2107
+ });
2108
+ },
2109
+ /**
2110
+ * Watch SignedMintValidationParamsUpdated events
2111
+ * @param callback Function to call when event is emitted
2112
+ * @param filter Optional filter for indexed parameters
2113
+ * @returns Unwatch function to stop listening
2114
+ */
2115
+ SignedMintValidationParamsUpdated: (callback, filter) => {
2116
+ return this.publicClient.watchContractEvent({
2117
+ address: this.contractAddress,
2118
+ abi: exports.SeaDrop_jsonAbi,
2119
+ eventName: 'SignedMintValidationParamsUpdated',
2120
+ args: filter,
2121
+ onLogs: (logs) => {
2122
+ logs.forEach((log) => {
2123
+ callback(log.args);
2124
+ });
2125
+ },
2126
+ });
2127
+ },
2128
+ /**
2129
+ * Watch TokenGatedDropStageUpdated events
2130
+ * @param callback Function to call when event is emitted
2131
+ * @param filter Optional filter for indexed parameters
2132
+ * @returns Unwatch function to stop listening
2133
+ */
2134
+ TokenGatedDropStageUpdated: (callback, filter) => {
2135
+ return this.publicClient.watchContractEvent({
2136
+ address: this.contractAddress,
2137
+ abi: exports.SeaDrop_jsonAbi,
2138
+ eventName: 'TokenGatedDropStageUpdated',
2139
+ args: filter,
2140
+ onLogs: (logs) => {
2141
+ logs.forEach((log) => {
2142
+ callback(log.args);
2143
+ });
2144
+ },
2145
+ });
2146
+ }
2147
+ };
2148
+ }
2149
+ }
2150
+ exports.SeaDrop_json = SeaDrop_json;