@gitmyabi/factorynft 0.0.0-stage → 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,1748 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FactoryNFT_json = exports.FactoryNFT_jsonAbi = void 0;
4
+ const viem_1 = require("viem");
5
+ /**
6
+ * FactoryNFT_json ABI
7
+ *
8
+ * This ABI is typed using viem's type system for full type safety.
9
+ */
10
+ exports.FactoryNFT_jsonAbi = [
11
+ {
12
+ "inputs": [
13
+ {
14
+ "internalType": "contract IERC20",
15
+ "name": "huntToken_",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "address",
20
+ "name": "initialOwner",
21
+ "type": "address"
22
+ },
23
+ {
24
+ "internalType": "address",
25
+ "name": "seedOwner",
26
+ "type": "address"
27
+ },
28
+ {
29
+ "internalType": "string",
30
+ "name": "uri_",
31
+ "type": "string"
32
+ },
33
+ {
34
+ "internalType": "address",
35
+ "name": "royaltyOperator_",
36
+ "type": "address"
37
+ }
38
+ ],
39
+ "stateMutability": "nonpayable",
40
+ "type": "constructor"
41
+ },
42
+ {
43
+ "inputs": [
44
+ {
45
+ "internalType": "uint256",
46
+ "name": "actual",
47
+ "type": "uint256"
48
+ },
49
+ {
50
+ "internalType": "uint256",
51
+ "name": "minimum",
52
+ "type": "uint256"
53
+ }
54
+ ],
55
+ "name": "BurnProceedsTooLow",
56
+ "type": "error"
57
+ },
58
+ {
59
+ "inputs": [
60
+ {
61
+ "internalType": "address",
62
+ "name": "sender",
63
+ "type": "address"
64
+ },
65
+ {
66
+ "internalType": "uint256",
67
+ "name": "balance",
68
+ "type": "uint256"
69
+ },
70
+ {
71
+ "internalType": "uint256",
72
+ "name": "needed",
73
+ "type": "uint256"
74
+ },
75
+ {
76
+ "internalType": "uint256",
77
+ "name": "tokenId",
78
+ "type": "uint256"
79
+ }
80
+ ],
81
+ "name": "ERC1155InsufficientBalance",
82
+ "type": "error"
83
+ },
84
+ {
85
+ "inputs": [
86
+ {
87
+ "internalType": "address",
88
+ "name": "approver",
89
+ "type": "address"
90
+ }
91
+ ],
92
+ "name": "ERC1155InvalidApprover",
93
+ "type": "error"
94
+ },
95
+ {
96
+ "inputs": [
97
+ {
98
+ "internalType": "uint256",
99
+ "name": "idsLength",
100
+ "type": "uint256"
101
+ },
102
+ {
103
+ "internalType": "uint256",
104
+ "name": "valuesLength",
105
+ "type": "uint256"
106
+ }
107
+ ],
108
+ "name": "ERC1155InvalidArrayLength",
109
+ "type": "error"
110
+ },
111
+ {
112
+ "inputs": [
113
+ {
114
+ "internalType": "address",
115
+ "name": "operator",
116
+ "type": "address"
117
+ }
118
+ ],
119
+ "name": "ERC1155InvalidOperator",
120
+ "type": "error"
121
+ },
122
+ {
123
+ "inputs": [
124
+ {
125
+ "internalType": "address",
126
+ "name": "receiver",
127
+ "type": "address"
128
+ }
129
+ ],
130
+ "name": "ERC1155InvalidReceiver",
131
+ "type": "error"
132
+ },
133
+ {
134
+ "inputs": [
135
+ {
136
+ "internalType": "address",
137
+ "name": "sender",
138
+ "type": "address"
139
+ }
140
+ ],
141
+ "name": "ERC1155InvalidSender",
142
+ "type": "error"
143
+ },
144
+ {
145
+ "inputs": [
146
+ {
147
+ "internalType": "address",
148
+ "name": "operator",
149
+ "type": "address"
150
+ },
151
+ {
152
+ "internalType": "address",
153
+ "name": "owner",
154
+ "type": "address"
155
+ }
156
+ ],
157
+ "name": "ERC1155MissingApprovalForAll",
158
+ "type": "error"
159
+ },
160
+ {
161
+ "inputs": [
162
+ {
163
+ "internalType": "uint256",
164
+ "name": "numerator",
165
+ "type": "uint256"
166
+ },
167
+ {
168
+ "internalType": "uint256",
169
+ "name": "denominator",
170
+ "type": "uint256"
171
+ }
172
+ ],
173
+ "name": "ERC2981InvalidDefaultRoyalty",
174
+ "type": "error"
175
+ },
176
+ {
177
+ "inputs": [
178
+ {
179
+ "internalType": "address",
180
+ "name": "receiver",
181
+ "type": "address"
182
+ }
183
+ ],
184
+ "name": "ERC2981InvalidDefaultRoyaltyReceiver",
185
+ "type": "error"
186
+ },
187
+ {
188
+ "inputs": [
189
+ {
190
+ "internalType": "uint256",
191
+ "name": "tokenId",
192
+ "type": "uint256"
193
+ },
194
+ {
195
+ "internalType": "uint256",
196
+ "name": "numerator",
197
+ "type": "uint256"
198
+ },
199
+ {
200
+ "internalType": "uint256",
201
+ "name": "denominator",
202
+ "type": "uint256"
203
+ }
204
+ ],
205
+ "name": "ERC2981InvalidTokenRoyalty",
206
+ "type": "error"
207
+ },
208
+ {
209
+ "inputs": [
210
+ {
211
+ "internalType": "uint256",
212
+ "name": "tokenId",
213
+ "type": "uint256"
214
+ },
215
+ {
216
+ "internalType": "address",
217
+ "name": "receiver",
218
+ "type": "address"
219
+ }
220
+ ],
221
+ "name": "ERC2981InvalidTokenRoyaltyReceiver",
222
+ "type": "error"
223
+ },
224
+ {
225
+ "inputs": [],
226
+ "name": "InexactHuntTransfer",
227
+ "type": "error"
228
+ },
229
+ {
230
+ "inputs": [],
231
+ "name": "InvalidAddress",
232
+ "type": "error"
233
+ },
234
+ {
235
+ "inputs": [],
236
+ "name": "InvalidAmount",
237
+ "type": "error"
238
+ },
239
+ {
240
+ "inputs": [],
241
+ "name": "MinimumSupply",
242
+ "type": "error"
243
+ },
244
+ {
245
+ "inputs": [
246
+ {
247
+ "internalType": "uint256",
248
+ "name": "required",
249
+ "type": "uint256"
250
+ },
251
+ {
252
+ "internalType": "uint256",
253
+ "name": "maximum",
254
+ "type": "uint256"
255
+ }
256
+ ],
257
+ "name": "MintPriceExceeded",
258
+ "type": "error"
259
+ },
260
+ {
261
+ "inputs": [
262
+ {
263
+ "internalType": "address",
264
+ "name": "owner",
265
+ "type": "address"
266
+ }
267
+ ],
268
+ "name": "OwnableInvalidOwner",
269
+ "type": "error"
270
+ },
271
+ {
272
+ "inputs": [
273
+ {
274
+ "internalType": "address",
275
+ "name": "account",
276
+ "type": "address"
277
+ }
278
+ ],
279
+ "name": "OwnableUnauthorizedAccount",
280
+ "type": "error"
281
+ },
282
+ {
283
+ "inputs": [],
284
+ "name": "ReentrancyGuardReentrantCall",
285
+ "type": "error"
286
+ },
287
+ {
288
+ "inputs": [
289
+ {
290
+ "internalType": "address",
291
+ "name": "token",
292
+ "type": "address"
293
+ }
294
+ ],
295
+ "name": "SafeERC20FailedOperation",
296
+ "type": "error"
297
+ },
298
+ {
299
+ "inputs": [
300
+ {
301
+ "internalType": "uint256",
302
+ "name": "actual",
303
+ "type": "uint256"
304
+ },
305
+ {
306
+ "internalType": "uint256",
307
+ "name": "expected",
308
+ "type": "uint256"
309
+ }
310
+ ],
311
+ "name": "SupplyChanged",
312
+ "type": "error"
313
+ },
314
+ {
315
+ "anonymous": false,
316
+ "inputs": [
317
+ {
318
+ "indexed": true,
319
+ "internalType": "address",
320
+ "name": "account",
321
+ "type": "address"
322
+ },
323
+ {
324
+ "indexed": true,
325
+ "internalType": "address",
326
+ "name": "operator",
327
+ "type": "address"
328
+ },
329
+ {
330
+ "indexed": false,
331
+ "internalType": "bool",
332
+ "name": "approved",
333
+ "type": "bool"
334
+ }
335
+ ],
336
+ "name": "ApprovalForAll",
337
+ "type": "event"
338
+ },
339
+ {
340
+ "anonymous": false,
341
+ "inputs": [
342
+ {
343
+ "indexed": true,
344
+ "internalType": "address",
345
+ "name": "depositor",
346
+ "type": "address"
347
+ },
348
+ {
349
+ "indexed": false,
350
+ "internalType": "uint256",
351
+ "name": "huntIn",
352
+ "type": "uint256"
353
+ },
354
+ {
355
+ "indexed": false,
356
+ "internalType": "uint256",
357
+ "name": "supply",
358
+ "type": "uint256"
359
+ }
360
+ ],
361
+ "name": "Deposited",
362
+ "type": "event"
363
+ },
364
+ {
365
+ "anonymous": false,
366
+ "inputs": [
367
+ {
368
+ "indexed": true,
369
+ "internalType": "address",
370
+ "name": "payer",
371
+ "type": "address"
372
+ },
373
+ {
374
+ "indexed": true,
375
+ "internalType": "address",
376
+ "name": "receiver",
377
+ "type": "address"
378
+ },
379
+ {
380
+ "indexed": false,
381
+ "internalType": "uint256",
382
+ "name": "amount",
383
+ "type": "uint256"
384
+ },
385
+ {
386
+ "indexed": false,
387
+ "internalType": "uint256",
388
+ "name": "huntIn",
389
+ "type": "uint256"
390
+ }
391
+ ],
392
+ "name": "Minted",
393
+ "type": "event"
394
+ },
395
+ {
396
+ "anonymous": false,
397
+ "inputs": [
398
+ {
399
+ "indexed": true,
400
+ "internalType": "address",
401
+ "name": "previousOwner",
402
+ "type": "address"
403
+ },
404
+ {
405
+ "indexed": true,
406
+ "internalType": "address",
407
+ "name": "newOwner",
408
+ "type": "address"
409
+ }
410
+ ],
411
+ "name": "OwnershipTransferStarted",
412
+ "type": "event"
413
+ },
414
+ {
415
+ "anonymous": false,
416
+ "inputs": [
417
+ {
418
+ "indexed": true,
419
+ "internalType": "address",
420
+ "name": "previousOwner",
421
+ "type": "address"
422
+ },
423
+ {
424
+ "indexed": true,
425
+ "internalType": "address",
426
+ "name": "newOwner",
427
+ "type": "address"
428
+ }
429
+ ],
430
+ "name": "OwnershipTransferred",
431
+ "type": "event"
432
+ },
433
+ {
434
+ "anonymous": false,
435
+ "inputs": [
436
+ {
437
+ "indexed": true,
438
+ "internalType": "address",
439
+ "name": "holder",
440
+ "type": "address"
441
+ },
442
+ {
443
+ "indexed": false,
444
+ "internalType": "uint256",
445
+ "name": "amount",
446
+ "type": "uint256"
447
+ },
448
+ {
449
+ "indexed": false,
450
+ "internalType": "uint256",
451
+ "name": "huntOut",
452
+ "type": "uint256"
453
+ },
454
+ {
455
+ "indexed": false,
456
+ "internalType": "uint256",
457
+ "name": "retainedFee",
458
+ "type": "uint256"
459
+ }
460
+ ],
461
+ "name": "Redeemed",
462
+ "type": "event"
463
+ },
464
+ {
465
+ "anonymous": false,
466
+ "inputs": [
467
+ {
468
+ "indexed": true,
469
+ "internalType": "address",
470
+ "name": "previousOperator",
471
+ "type": "address"
472
+ },
473
+ {
474
+ "indexed": true,
475
+ "internalType": "address",
476
+ "name": "newOperator",
477
+ "type": "address"
478
+ }
479
+ ],
480
+ "name": "RoyaltyOperatorUpdated",
481
+ "type": "event"
482
+ },
483
+ {
484
+ "anonymous": false,
485
+ "inputs": [
486
+ {
487
+ "indexed": true,
488
+ "internalType": "address",
489
+ "name": "operator",
490
+ "type": "address"
491
+ },
492
+ {
493
+ "indexed": true,
494
+ "internalType": "address",
495
+ "name": "from",
496
+ "type": "address"
497
+ },
498
+ {
499
+ "indexed": true,
500
+ "internalType": "address",
501
+ "name": "to",
502
+ "type": "address"
503
+ },
504
+ {
505
+ "indexed": false,
506
+ "internalType": "uint256[]",
507
+ "name": "ids",
508
+ "type": "uint256[]"
509
+ },
510
+ {
511
+ "indexed": false,
512
+ "internalType": "uint256[]",
513
+ "name": "values",
514
+ "type": "uint256[]"
515
+ }
516
+ ],
517
+ "name": "TransferBatch",
518
+ "type": "event"
519
+ },
520
+ {
521
+ "anonymous": false,
522
+ "inputs": [
523
+ {
524
+ "indexed": true,
525
+ "internalType": "address",
526
+ "name": "operator",
527
+ "type": "address"
528
+ },
529
+ {
530
+ "indexed": true,
531
+ "internalType": "address",
532
+ "name": "from",
533
+ "type": "address"
534
+ },
535
+ {
536
+ "indexed": true,
537
+ "internalType": "address",
538
+ "name": "to",
539
+ "type": "address"
540
+ },
541
+ {
542
+ "indexed": false,
543
+ "internalType": "uint256",
544
+ "name": "id",
545
+ "type": "uint256"
546
+ },
547
+ {
548
+ "indexed": false,
549
+ "internalType": "uint256",
550
+ "name": "value",
551
+ "type": "uint256"
552
+ }
553
+ ],
554
+ "name": "TransferSingle",
555
+ "type": "event"
556
+ },
557
+ {
558
+ "anonymous": false,
559
+ "inputs": [
560
+ {
561
+ "indexed": false,
562
+ "internalType": "string",
563
+ "name": "value",
564
+ "type": "string"
565
+ },
566
+ {
567
+ "indexed": true,
568
+ "internalType": "uint256",
569
+ "name": "id",
570
+ "type": "uint256"
571
+ }
572
+ ],
573
+ "name": "URI",
574
+ "type": "event"
575
+ },
576
+ {
577
+ "inputs": [],
578
+ "name": "BURN_FEE_BPS",
579
+ "outputs": [
580
+ {
581
+ "internalType": "uint256",
582
+ "name": "",
583
+ "type": "uint256"
584
+ }
585
+ ],
586
+ "stateMutability": "view",
587
+ "type": "function"
588
+ },
589
+ {
590
+ "inputs": [],
591
+ "name": "INITIAL_NAV",
592
+ "outputs": [
593
+ {
594
+ "internalType": "uint256",
595
+ "name": "",
596
+ "type": "uint256"
597
+ }
598
+ ],
599
+ "stateMutability": "view",
600
+ "type": "function"
601
+ },
602
+ {
603
+ "inputs": [],
604
+ "name": "ROYALTY_BPS",
605
+ "outputs": [
606
+ {
607
+ "internalType": "uint96",
608
+ "name": "",
609
+ "type": "uint96"
610
+ }
611
+ ],
612
+ "stateMutability": "view",
613
+ "type": "function"
614
+ },
615
+ {
616
+ "inputs": [],
617
+ "name": "TOKEN_ID",
618
+ "outputs": [
619
+ {
620
+ "internalType": "uint256",
621
+ "name": "",
622
+ "type": "uint256"
623
+ }
624
+ ],
625
+ "stateMutability": "view",
626
+ "type": "function"
627
+ },
628
+ {
629
+ "inputs": [],
630
+ "name": "acceptOwnership",
631
+ "outputs": [],
632
+ "stateMutability": "nonpayable",
633
+ "type": "function"
634
+ },
635
+ {
636
+ "inputs": [
637
+ {
638
+ "internalType": "address",
639
+ "name": "account",
640
+ "type": "address"
641
+ },
642
+ {
643
+ "internalType": "uint256",
644
+ "name": "id",
645
+ "type": "uint256"
646
+ }
647
+ ],
648
+ "name": "balanceOf",
649
+ "outputs": [
650
+ {
651
+ "internalType": "uint256",
652
+ "name": "",
653
+ "type": "uint256"
654
+ }
655
+ ],
656
+ "stateMutability": "view",
657
+ "type": "function"
658
+ },
659
+ {
660
+ "inputs": [
661
+ {
662
+ "internalType": "address[]",
663
+ "name": "accounts",
664
+ "type": "address[]"
665
+ },
666
+ {
667
+ "internalType": "uint256[]",
668
+ "name": "ids",
669
+ "type": "uint256[]"
670
+ }
671
+ ],
672
+ "name": "balanceOfBatch",
673
+ "outputs": [
674
+ {
675
+ "internalType": "uint256[]",
676
+ "name": "",
677
+ "type": "uint256[]"
678
+ }
679
+ ],
680
+ "stateMutability": "view",
681
+ "type": "function"
682
+ },
683
+ {
684
+ "inputs": [
685
+ {
686
+ "internalType": "uint256",
687
+ "name": "amount",
688
+ "type": "uint256"
689
+ },
690
+ {
691
+ "internalType": "uint256",
692
+ "name": "minHuntOut",
693
+ "type": "uint256"
694
+ }
695
+ ],
696
+ "name": "burn",
697
+ "outputs": [
698
+ {
699
+ "internalType": "uint256",
700
+ "name": "huntOut",
701
+ "type": "uint256"
702
+ }
703
+ ],
704
+ "stateMutability": "nonpayable",
705
+ "type": "function"
706
+ },
707
+ {
708
+ "inputs": [
709
+ {
710
+ "internalType": "uint256",
711
+ "name": "amount",
712
+ "type": "uint256"
713
+ },
714
+ {
715
+ "internalType": "uint256",
716
+ "name": "expectedSupply",
717
+ "type": "uint256"
718
+ }
719
+ ],
720
+ "name": "deposit",
721
+ "outputs": [],
722
+ "stateMutability": "nonpayable",
723
+ "type": "function"
724
+ },
725
+ {
726
+ "inputs": [
727
+ {
728
+ "internalType": "uint256",
729
+ "name": "id",
730
+ "type": "uint256"
731
+ }
732
+ ],
733
+ "name": "exists",
734
+ "outputs": [
735
+ {
736
+ "internalType": "bool",
737
+ "name": "",
738
+ "type": "bool"
739
+ }
740
+ ],
741
+ "stateMutability": "view",
742
+ "type": "function"
743
+ },
744
+ {
745
+ "inputs": [],
746
+ "name": "huntToken",
747
+ "outputs": [
748
+ {
749
+ "internalType": "contract IERC20",
750
+ "name": "",
751
+ "type": "address"
752
+ }
753
+ ],
754
+ "stateMutability": "view",
755
+ "type": "function"
756
+ },
757
+ {
758
+ "inputs": [
759
+ {
760
+ "internalType": "address",
761
+ "name": "account",
762
+ "type": "address"
763
+ },
764
+ {
765
+ "internalType": "address",
766
+ "name": "operator",
767
+ "type": "address"
768
+ }
769
+ ],
770
+ "name": "isApprovedForAll",
771
+ "outputs": [
772
+ {
773
+ "internalType": "bool",
774
+ "name": "",
775
+ "type": "bool"
776
+ }
777
+ ],
778
+ "stateMutability": "view",
779
+ "type": "function"
780
+ },
781
+ {
782
+ "inputs": [
783
+ {
784
+ "internalType": "uint256",
785
+ "name": "amount",
786
+ "type": "uint256"
787
+ },
788
+ {
789
+ "internalType": "uint256",
790
+ "name": "maxHuntIn",
791
+ "type": "uint256"
792
+ },
793
+ {
794
+ "internalType": "address",
795
+ "name": "receiver",
796
+ "type": "address"
797
+ }
798
+ ],
799
+ "name": "mint",
800
+ "outputs": [
801
+ {
802
+ "internalType": "uint256",
803
+ "name": "huntIn",
804
+ "type": "uint256"
805
+ }
806
+ ],
807
+ "stateMutability": "nonpayable",
808
+ "type": "function"
809
+ },
810
+ {
811
+ "inputs": [],
812
+ "name": "navPerNFT",
813
+ "outputs": [
814
+ {
815
+ "internalType": "uint256",
816
+ "name": "",
817
+ "type": "uint256"
818
+ }
819
+ ],
820
+ "stateMutability": "view",
821
+ "type": "function"
822
+ },
823
+ {
824
+ "inputs": [],
825
+ "name": "owner",
826
+ "outputs": [
827
+ {
828
+ "internalType": "address",
829
+ "name": "",
830
+ "type": "address"
831
+ }
832
+ ],
833
+ "stateMutability": "view",
834
+ "type": "function"
835
+ },
836
+ {
837
+ "inputs": [],
838
+ "name": "pendingOwner",
839
+ "outputs": [
840
+ {
841
+ "internalType": "address",
842
+ "name": "",
843
+ "type": "address"
844
+ }
845
+ ],
846
+ "stateMutability": "view",
847
+ "type": "function"
848
+ },
849
+ {
850
+ "inputs": [
851
+ {
852
+ "internalType": "uint256",
853
+ "name": "amount",
854
+ "type": "uint256"
855
+ }
856
+ ],
857
+ "name": "quoteBurn",
858
+ "outputs": [
859
+ {
860
+ "internalType": "uint256",
861
+ "name": "huntOut",
862
+ "type": "uint256"
863
+ }
864
+ ],
865
+ "stateMutability": "view",
866
+ "type": "function"
867
+ },
868
+ {
869
+ "inputs": [
870
+ {
871
+ "internalType": "uint256",
872
+ "name": "amount",
873
+ "type": "uint256"
874
+ }
875
+ ],
876
+ "name": "quoteMint",
877
+ "outputs": [
878
+ {
879
+ "internalType": "uint256",
880
+ "name": "huntIn",
881
+ "type": "uint256"
882
+ }
883
+ ],
884
+ "stateMutability": "view",
885
+ "type": "function"
886
+ },
887
+ {
888
+ "inputs": [],
889
+ "name": "renounceOwnership",
890
+ "outputs": [],
891
+ "stateMutability": "nonpayable",
892
+ "type": "function"
893
+ },
894
+ {
895
+ "inputs": [
896
+ {
897
+ "internalType": "uint256",
898
+ "name": "tokenId",
899
+ "type": "uint256"
900
+ },
901
+ {
902
+ "internalType": "uint256",
903
+ "name": "salePrice",
904
+ "type": "uint256"
905
+ }
906
+ ],
907
+ "name": "royaltyInfo",
908
+ "outputs": [
909
+ {
910
+ "internalType": "address",
911
+ "name": "receiver",
912
+ "type": "address"
913
+ },
914
+ {
915
+ "internalType": "uint256",
916
+ "name": "amount",
917
+ "type": "uint256"
918
+ }
919
+ ],
920
+ "stateMutability": "view",
921
+ "type": "function"
922
+ },
923
+ {
924
+ "inputs": [],
925
+ "name": "royaltyOperator",
926
+ "outputs": [
927
+ {
928
+ "internalType": "address",
929
+ "name": "",
930
+ "type": "address"
931
+ }
932
+ ],
933
+ "stateMutability": "view",
934
+ "type": "function"
935
+ },
936
+ {
937
+ "inputs": [
938
+ {
939
+ "internalType": "address",
940
+ "name": "from",
941
+ "type": "address"
942
+ },
943
+ {
944
+ "internalType": "address",
945
+ "name": "to",
946
+ "type": "address"
947
+ },
948
+ {
949
+ "internalType": "uint256[]",
950
+ "name": "ids",
951
+ "type": "uint256[]"
952
+ },
953
+ {
954
+ "internalType": "uint256[]",
955
+ "name": "values",
956
+ "type": "uint256[]"
957
+ },
958
+ {
959
+ "internalType": "bytes",
960
+ "name": "data",
961
+ "type": "bytes"
962
+ }
963
+ ],
964
+ "name": "safeBatchTransferFrom",
965
+ "outputs": [],
966
+ "stateMutability": "nonpayable",
967
+ "type": "function"
968
+ },
969
+ {
970
+ "inputs": [
971
+ {
972
+ "internalType": "address",
973
+ "name": "from",
974
+ "type": "address"
975
+ },
976
+ {
977
+ "internalType": "address",
978
+ "name": "to",
979
+ "type": "address"
980
+ },
981
+ {
982
+ "internalType": "uint256",
983
+ "name": "id",
984
+ "type": "uint256"
985
+ },
986
+ {
987
+ "internalType": "uint256",
988
+ "name": "value",
989
+ "type": "uint256"
990
+ },
991
+ {
992
+ "internalType": "bytes",
993
+ "name": "data",
994
+ "type": "bytes"
995
+ }
996
+ ],
997
+ "name": "safeTransferFrom",
998
+ "outputs": [],
999
+ "stateMutability": "nonpayable",
1000
+ "type": "function"
1001
+ },
1002
+ {
1003
+ "inputs": [
1004
+ {
1005
+ "internalType": "address",
1006
+ "name": "operator",
1007
+ "type": "address"
1008
+ },
1009
+ {
1010
+ "internalType": "bool",
1011
+ "name": "approved",
1012
+ "type": "bool"
1013
+ }
1014
+ ],
1015
+ "name": "setApprovalForAll",
1016
+ "outputs": [],
1017
+ "stateMutability": "nonpayable",
1018
+ "type": "function"
1019
+ },
1020
+ {
1021
+ "inputs": [
1022
+ {
1023
+ "internalType": "address",
1024
+ "name": "newOperator",
1025
+ "type": "address"
1026
+ }
1027
+ ],
1028
+ "name": "setRoyaltyOperator",
1029
+ "outputs": [],
1030
+ "stateMutability": "nonpayable",
1031
+ "type": "function"
1032
+ },
1033
+ {
1034
+ "inputs": [
1035
+ {
1036
+ "internalType": "string",
1037
+ "name": "newURI",
1038
+ "type": "string"
1039
+ }
1040
+ ],
1041
+ "name": "setURI",
1042
+ "outputs": [],
1043
+ "stateMutability": "nonpayable",
1044
+ "type": "function"
1045
+ },
1046
+ {
1047
+ "inputs": [
1048
+ {
1049
+ "internalType": "bytes4",
1050
+ "name": "interfaceId",
1051
+ "type": "bytes4"
1052
+ }
1053
+ ],
1054
+ "name": "supportsInterface",
1055
+ "outputs": [
1056
+ {
1057
+ "internalType": "bool",
1058
+ "name": "",
1059
+ "type": "bool"
1060
+ }
1061
+ ],
1062
+ "stateMutability": "view",
1063
+ "type": "function"
1064
+ },
1065
+ {
1066
+ "inputs": [],
1067
+ "name": "totalSupply",
1068
+ "outputs": [
1069
+ {
1070
+ "internalType": "uint256",
1071
+ "name": "",
1072
+ "type": "uint256"
1073
+ }
1074
+ ],
1075
+ "stateMutability": "view",
1076
+ "type": "function"
1077
+ },
1078
+ {
1079
+ "inputs": [
1080
+ {
1081
+ "internalType": "uint256",
1082
+ "name": "id",
1083
+ "type": "uint256"
1084
+ }
1085
+ ],
1086
+ "name": "totalSupply",
1087
+ "outputs": [
1088
+ {
1089
+ "internalType": "uint256",
1090
+ "name": "",
1091
+ "type": "uint256"
1092
+ }
1093
+ ],
1094
+ "stateMutability": "view",
1095
+ "type": "function"
1096
+ },
1097
+ {
1098
+ "inputs": [
1099
+ {
1100
+ "internalType": "address",
1101
+ "name": "newOwner",
1102
+ "type": "address"
1103
+ }
1104
+ ],
1105
+ "name": "transferOwnership",
1106
+ "outputs": [],
1107
+ "stateMutability": "nonpayable",
1108
+ "type": "function"
1109
+ },
1110
+ {
1111
+ "inputs": [
1112
+ {
1113
+ "internalType": "uint256",
1114
+ "name": "",
1115
+ "type": "uint256"
1116
+ }
1117
+ ],
1118
+ "name": "uri",
1119
+ "outputs": [
1120
+ {
1121
+ "internalType": "string",
1122
+ "name": "",
1123
+ "type": "string"
1124
+ }
1125
+ ],
1126
+ "stateMutability": "view",
1127
+ "type": "function"
1128
+ }
1129
+ ];
1130
+ /**
1131
+ * FactoryNFT_json Contract Class
1132
+ *
1133
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
1134
+ *
1135
+ * @example
1136
+ * ```typescript
1137
+ * import { createPublicClient, createWalletClient, http } from 'viem';
1138
+ * import { mainnet } from 'viem/chains';
1139
+ * import { FactoryNFT_json } from 'FactoryNFT_json';
1140
+ *
1141
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
1142
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
1143
+ *
1144
+ * const contract = new FactoryNFT_json('0x...', { publicClient, walletClient });
1145
+ *
1146
+ * // Read functions
1147
+ * const result = await contract.balanceOf('0x...');
1148
+ *
1149
+ * // Write functions
1150
+ * const hash = await contract.transfer('0x...', 1000n);
1151
+ *
1152
+ * // Simulate transactions (dry-run)
1153
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
1154
+ * console.log('Gas estimate:', simulation.request.gas);
1155
+ *
1156
+ * // Watch events
1157
+ * const unwatch = contract.watch.Transfer((event) => {
1158
+ * console.log('Transfer event:', event);
1159
+ * });
1160
+ * ```
1161
+ */
1162
+ class FactoryNFT_json {
1163
+ constructor(address, clients) {
1164
+ this.contractAddress = address;
1165
+ this.publicClient = clients.publicClient;
1166
+ this.contract = (0, viem_1.getContract)({
1167
+ address,
1168
+ abi: exports.FactoryNFT_jsonAbi,
1169
+ client: {
1170
+ public: clients.publicClient,
1171
+ wallet: clients.walletClient,
1172
+ },
1173
+ });
1174
+ }
1175
+ /**
1176
+ * Get the contract address
1177
+ */
1178
+ get address() {
1179
+ return this.contractAddress;
1180
+ }
1181
+ /**
1182
+ * Get the underlying viem contract instance
1183
+ */
1184
+ getContract() {
1185
+ return this.contract;
1186
+ }
1187
+ /**
1188
+ * BURN_FEE_BPS
1189
+ * view
1190
+ */
1191
+ async BURN_FEE_BPS() {
1192
+ return this.contract.read.BURN_FEE_BPS();
1193
+ }
1194
+ /**
1195
+ * INITIAL_NAV
1196
+ * view
1197
+ */
1198
+ async INITIAL_NAV() {
1199
+ return this.contract.read.INITIAL_NAV();
1200
+ }
1201
+ /**
1202
+ * ROYALTY_BPS
1203
+ * view
1204
+ */
1205
+ async ROYALTY_BPS() {
1206
+ return this.contract.read.ROYALTY_BPS();
1207
+ }
1208
+ /**
1209
+ * TOKEN_ID
1210
+ * view
1211
+ */
1212
+ async TOKEN_ID() {
1213
+ return this.contract.read.TOKEN_ID();
1214
+ }
1215
+ /**
1216
+ * balanceOf
1217
+ * view
1218
+ */
1219
+ async balanceOf(account, id) {
1220
+ return this.contract.read.balanceOf([account, id]);
1221
+ }
1222
+ /**
1223
+ * balanceOfBatch
1224
+ * view
1225
+ */
1226
+ async balanceOfBatch(accounts, ids) {
1227
+ return this.contract.read.balanceOfBatch([accounts, ids]);
1228
+ }
1229
+ /**
1230
+ * exists
1231
+ * view
1232
+ */
1233
+ async exists(id) {
1234
+ return this.contract.read.exists([id]);
1235
+ }
1236
+ /**
1237
+ * huntToken
1238
+ * view
1239
+ */
1240
+ async huntToken() {
1241
+ return this.contract.read.huntToken();
1242
+ }
1243
+ /**
1244
+ * isApprovedForAll
1245
+ * view
1246
+ */
1247
+ async isApprovedForAll(account, operator) {
1248
+ return this.contract.read.isApprovedForAll([account, operator]);
1249
+ }
1250
+ /**
1251
+ * navPerNFT
1252
+ * view
1253
+ */
1254
+ async navPerNFT() {
1255
+ return this.contract.read.navPerNFT();
1256
+ }
1257
+ /**
1258
+ * owner
1259
+ * view
1260
+ */
1261
+ async owner() {
1262
+ return this.contract.read.owner();
1263
+ }
1264
+ /**
1265
+ * pendingOwner
1266
+ * view
1267
+ */
1268
+ async pendingOwner() {
1269
+ return this.contract.read.pendingOwner();
1270
+ }
1271
+ /**
1272
+ * quoteBurn
1273
+ * view
1274
+ */
1275
+ async quoteBurn(amount) {
1276
+ return this.contract.read.quoteBurn([amount]);
1277
+ }
1278
+ /**
1279
+ * quoteMint
1280
+ * view
1281
+ */
1282
+ async quoteMint(amount) {
1283
+ return this.contract.read.quoteMint([amount]);
1284
+ }
1285
+ /**
1286
+ * royaltyInfo
1287
+ * view
1288
+ */
1289
+ async royaltyInfo(tokenId, salePrice) {
1290
+ return this.contract.read.royaltyInfo([tokenId, salePrice]);
1291
+ }
1292
+ /**
1293
+ * royaltyOperator
1294
+ * view
1295
+ */
1296
+ async royaltyOperator() {
1297
+ return this.contract.read.royaltyOperator();
1298
+ }
1299
+ /**
1300
+ * supportsInterface
1301
+ * view
1302
+ */
1303
+ async supportsInterface(interfaceId) {
1304
+ return this.contract.read.supportsInterface([interfaceId]);
1305
+ }
1306
+ async totalSupply(...args) {
1307
+ return this.contract.read.totalSupply(args);
1308
+ }
1309
+ /**
1310
+ * uri
1311
+ * view
1312
+ */
1313
+ async uri(arg0) {
1314
+ return this.contract.read.uri([arg0]);
1315
+ }
1316
+ /**
1317
+ * acceptOwnership
1318
+ * nonpayable
1319
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1320
+ */
1321
+ async acceptOwnership(options) {
1322
+ if (!this.contract.write) {
1323
+ throw new Error('Wallet client is required for write operations');
1324
+ }
1325
+ return this.contract.write.acceptOwnership(options);
1326
+ }
1327
+ /**
1328
+ * burn
1329
+ * nonpayable
1330
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1331
+ */
1332
+ async burn(amount, minHuntOut, options) {
1333
+ if (!this.contract.write) {
1334
+ throw new Error('Wallet client is required for write operations');
1335
+ }
1336
+ return this.contract.write.burn([amount, minHuntOut], options);
1337
+ }
1338
+ /**
1339
+ * deposit
1340
+ * nonpayable
1341
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1342
+ */
1343
+ async deposit(amount, expectedSupply, options) {
1344
+ if (!this.contract.write) {
1345
+ throw new Error('Wallet client is required for write operations');
1346
+ }
1347
+ return this.contract.write.deposit([amount, expectedSupply], options);
1348
+ }
1349
+ /**
1350
+ * mint
1351
+ * nonpayable
1352
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1353
+ */
1354
+ async mint(amount, maxHuntIn, receiver, options) {
1355
+ if (!this.contract.write) {
1356
+ throw new Error('Wallet client is required for write operations');
1357
+ }
1358
+ return this.contract.write.mint([amount, maxHuntIn, receiver], options);
1359
+ }
1360
+ /**
1361
+ * renounceOwnership
1362
+ * nonpayable
1363
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1364
+ */
1365
+ async renounceOwnership(options) {
1366
+ if (!this.contract.write) {
1367
+ throw new Error('Wallet client is required for write operations');
1368
+ }
1369
+ return this.contract.write.renounceOwnership(options);
1370
+ }
1371
+ /**
1372
+ * safeBatchTransferFrom
1373
+ * nonpayable
1374
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1375
+ */
1376
+ async safeBatchTransferFrom(from, to, ids, values, data, options) {
1377
+ if (!this.contract.write) {
1378
+ throw new Error('Wallet client is required for write operations');
1379
+ }
1380
+ return this.contract.write.safeBatchTransferFrom([from, to, ids, values, data], options);
1381
+ }
1382
+ /**
1383
+ * safeTransferFrom
1384
+ * nonpayable
1385
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1386
+ */
1387
+ async safeTransferFrom(from, to, id, value, data, options) {
1388
+ if (!this.contract.write) {
1389
+ throw new Error('Wallet client is required for write operations');
1390
+ }
1391
+ return this.contract.write.safeTransferFrom([from, to, id, value, data], options);
1392
+ }
1393
+ /**
1394
+ * setApprovalForAll
1395
+ * nonpayable
1396
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1397
+ */
1398
+ async setApprovalForAll(operator, approved, options) {
1399
+ if (!this.contract.write) {
1400
+ throw new Error('Wallet client is required for write operations');
1401
+ }
1402
+ return this.contract.write.setApprovalForAll([operator, approved], options);
1403
+ }
1404
+ /**
1405
+ * setRoyaltyOperator
1406
+ * nonpayable
1407
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1408
+ */
1409
+ async setRoyaltyOperator(newOperator, options) {
1410
+ if (!this.contract.write) {
1411
+ throw new Error('Wallet client is required for write operations');
1412
+ }
1413
+ return this.contract.write.setRoyaltyOperator([newOperator], options);
1414
+ }
1415
+ /**
1416
+ * setURI
1417
+ * nonpayable
1418
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1419
+ */
1420
+ async setURI(newURI, options) {
1421
+ if (!this.contract.write) {
1422
+ throw new Error('Wallet client is required for write operations');
1423
+ }
1424
+ return this.contract.write.setURI([newURI], options);
1425
+ }
1426
+ /**
1427
+ * transferOwnership
1428
+ * nonpayable
1429
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1430
+ */
1431
+ async transferOwnership(newOwner, options) {
1432
+ if (!this.contract.write) {
1433
+ throw new Error('Wallet client is required for write operations');
1434
+ }
1435
+ return this.contract.write.transferOwnership([newOwner], options);
1436
+ }
1437
+ /**
1438
+ * Simulate contract write operations (dry-run without sending transaction)
1439
+ *
1440
+ * @example
1441
+ * const result = await contract.simulate.transfer('0x...', 1000n);
1442
+ * console.log('Gas estimate:', result.request.gas);
1443
+ * console.log('Would succeed:', result.result);
1444
+ */
1445
+ get simulate() {
1446
+ const contract = this.contract;
1447
+ if (!contract.simulate) {
1448
+ throw new Error('Public client is required for simulation');
1449
+ }
1450
+ return {
1451
+ /**
1452
+ * Simulate acceptOwnership
1453
+ * Returns gas estimate and result without sending transaction
1454
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1455
+ */
1456
+ async acceptOwnership(options) {
1457
+ return contract.simulate.acceptOwnership(options);
1458
+ },
1459
+ /**
1460
+ * Simulate burn
1461
+ * Returns gas estimate and result without sending transaction
1462
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1463
+ */
1464
+ async burn(amount, minHuntOut, options) {
1465
+ return contract.simulate.burn([amount, minHuntOut], options);
1466
+ },
1467
+ /**
1468
+ * Simulate deposit
1469
+ * Returns gas estimate and result without sending transaction
1470
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1471
+ */
1472
+ async deposit(amount, expectedSupply, options) {
1473
+ return contract.simulate.deposit([amount, expectedSupply], options);
1474
+ },
1475
+ /**
1476
+ * Simulate mint
1477
+ * Returns gas estimate and result without sending transaction
1478
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1479
+ */
1480
+ async mint(amount, maxHuntIn, receiver, options) {
1481
+ return contract.simulate.mint([amount, maxHuntIn, receiver], options);
1482
+ },
1483
+ /**
1484
+ * Simulate renounceOwnership
1485
+ * Returns gas estimate and result without sending transaction
1486
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1487
+ */
1488
+ async renounceOwnership(options) {
1489
+ return contract.simulate.renounceOwnership(options);
1490
+ },
1491
+ /**
1492
+ * Simulate safeBatchTransferFrom
1493
+ * Returns gas estimate and result without sending transaction
1494
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1495
+ */
1496
+ async safeBatchTransferFrom(from, to, ids, values, data, options) {
1497
+ return contract.simulate.safeBatchTransferFrom([from, to, ids, values, data], options);
1498
+ },
1499
+ /**
1500
+ * Simulate safeTransferFrom
1501
+ * Returns gas estimate and result without sending transaction
1502
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1503
+ */
1504
+ async safeTransferFrom(from, to, id, value, data, options) {
1505
+ return contract.simulate.safeTransferFrom([from, to, id, value, data], options);
1506
+ },
1507
+ /**
1508
+ * Simulate setApprovalForAll
1509
+ * Returns gas estimate and result without sending transaction
1510
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1511
+ */
1512
+ async setApprovalForAll(operator, approved, options) {
1513
+ return contract.simulate.setApprovalForAll([operator, approved], options);
1514
+ },
1515
+ /**
1516
+ * Simulate setRoyaltyOperator
1517
+ * Returns gas estimate and result without sending transaction
1518
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1519
+ */
1520
+ async setRoyaltyOperator(newOperator, options) {
1521
+ return contract.simulate.setRoyaltyOperator([newOperator], options);
1522
+ },
1523
+ /**
1524
+ * Simulate setURI
1525
+ * Returns gas estimate and result without sending transaction
1526
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1527
+ */
1528
+ async setURI(newURI, options) {
1529
+ return contract.simulate.setURI([newURI], options);
1530
+ },
1531
+ /**
1532
+ * Simulate transferOwnership
1533
+ * Returns gas estimate and result without sending transaction
1534
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1535
+ */
1536
+ async transferOwnership(newOwner, options) {
1537
+ return contract.simulate.transferOwnership([newOwner], options);
1538
+ }
1539
+ };
1540
+ }
1541
+ /**
1542
+ * Watch contract events
1543
+ *
1544
+ * @example
1545
+ * // Watch all Transfer events
1546
+ * const unwatch = contract.watch.Transfer((event) => {
1547
+ * console.log('Transfer:', event);
1548
+ * });
1549
+ *
1550
+ * // Stop watching
1551
+ * unwatch();
1552
+ */
1553
+ get watch() {
1554
+ return {
1555
+ /**
1556
+ * Watch ApprovalForAll events
1557
+ * @param callback Function to call when event is emitted
1558
+ * @param filter Optional filter for indexed parameters
1559
+ * @returns Unwatch function to stop listening
1560
+ */
1561
+ ApprovalForAll: (callback, filter) => {
1562
+ return this.publicClient.watchContractEvent({
1563
+ address: this.contractAddress,
1564
+ abi: exports.FactoryNFT_jsonAbi,
1565
+ eventName: 'ApprovalForAll',
1566
+ args: filter,
1567
+ onLogs: (logs) => {
1568
+ logs.forEach((log) => {
1569
+ callback(log.args);
1570
+ });
1571
+ },
1572
+ });
1573
+ },
1574
+ /**
1575
+ * Watch Deposited events
1576
+ * @param callback Function to call when event is emitted
1577
+ * @param filter Optional filter for indexed parameters
1578
+ * @returns Unwatch function to stop listening
1579
+ */
1580
+ Deposited: (callback, filter) => {
1581
+ return this.publicClient.watchContractEvent({
1582
+ address: this.contractAddress,
1583
+ abi: exports.FactoryNFT_jsonAbi,
1584
+ eventName: 'Deposited',
1585
+ args: filter,
1586
+ onLogs: (logs) => {
1587
+ logs.forEach((log) => {
1588
+ callback(log.args);
1589
+ });
1590
+ },
1591
+ });
1592
+ },
1593
+ /**
1594
+ * Watch Minted events
1595
+ * @param callback Function to call when event is emitted
1596
+ * @param filter Optional filter for indexed parameters
1597
+ * @returns Unwatch function to stop listening
1598
+ */
1599
+ Minted: (callback, filter) => {
1600
+ return this.publicClient.watchContractEvent({
1601
+ address: this.contractAddress,
1602
+ abi: exports.FactoryNFT_jsonAbi,
1603
+ eventName: 'Minted',
1604
+ args: filter,
1605
+ onLogs: (logs) => {
1606
+ logs.forEach((log) => {
1607
+ callback(log.args);
1608
+ });
1609
+ },
1610
+ });
1611
+ },
1612
+ /**
1613
+ * Watch OwnershipTransferStarted events
1614
+ * @param callback Function to call when event is emitted
1615
+ * @param filter Optional filter for indexed parameters
1616
+ * @returns Unwatch function to stop listening
1617
+ */
1618
+ OwnershipTransferStarted: (callback, filter) => {
1619
+ return this.publicClient.watchContractEvent({
1620
+ address: this.contractAddress,
1621
+ abi: exports.FactoryNFT_jsonAbi,
1622
+ eventName: 'OwnershipTransferStarted',
1623
+ args: filter,
1624
+ onLogs: (logs) => {
1625
+ logs.forEach((log) => {
1626
+ callback(log.args);
1627
+ });
1628
+ },
1629
+ });
1630
+ },
1631
+ /**
1632
+ * Watch OwnershipTransferred events
1633
+ * @param callback Function to call when event is emitted
1634
+ * @param filter Optional filter for indexed parameters
1635
+ * @returns Unwatch function to stop listening
1636
+ */
1637
+ OwnershipTransferred: (callback, filter) => {
1638
+ return this.publicClient.watchContractEvent({
1639
+ address: this.contractAddress,
1640
+ abi: exports.FactoryNFT_jsonAbi,
1641
+ eventName: 'OwnershipTransferred',
1642
+ args: filter,
1643
+ onLogs: (logs) => {
1644
+ logs.forEach((log) => {
1645
+ callback(log.args);
1646
+ });
1647
+ },
1648
+ });
1649
+ },
1650
+ /**
1651
+ * Watch Redeemed events
1652
+ * @param callback Function to call when event is emitted
1653
+ * @param filter Optional filter for indexed parameters
1654
+ * @returns Unwatch function to stop listening
1655
+ */
1656
+ Redeemed: (callback, filter) => {
1657
+ return this.publicClient.watchContractEvent({
1658
+ address: this.contractAddress,
1659
+ abi: exports.FactoryNFT_jsonAbi,
1660
+ eventName: 'Redeemed',
1661
+ args: filter,
1662
+ onLogs: (logs) => {
1663
+ logs.forEach((log) => {
1664
+ callback(log.args);
1665
+ });
1666
+ },
1667
+ });
1668
+ },
1669
+ /**
1670
+ * Watch RoyaltyOperatorUpdated events
1671
+ * @param callback Function to call when event is emitted
1672
+ * @param filter Optional filter for indexed parameters
1673
+ * @returns Unwatch function to stop listening
1674
+ */
1675
+ RoyaltyOperatorUpdated: (callback, filter) => {
1676
+ return this.publicClient.watchContractEvent({
1677
+ address: this.contractAddress,
1678
+ abi: exports.FactoryNFT_jsonAbi,
1679
+ eventName: 'RoyaltyOperatorUpdated',
1680
+ args: filter,
1681
+ onLogs: (logs) => {
1682
+ logs.forEach((log) => {
1683
+ callback(log.args);
1684
+ });
1685
+ },
1686
+ });
1687
+ },
1688
+ /**
1689
+ * Watch TransferBatch events
1690
+ * @param callback Function to call when event is emitted
1691
+ * @param filter Optional filter for indexed parameters
1692
+ * @returns Unwatch function to stop listening
1693
+ */
1694
+ TransferBatch: (callback, filter) => {
1695
+ return this.publicClient.watchContractEvent({
1696
+ address: this.contractAddress,
1697
+ abi: exports.FactoryNFT_jsonAbi,
1698
+ eventName: 'TransferBatch',
1699
+ args: filter,
1700
+ onLogs: (logs) => {
1701
+ logs.forEach((log) => {
1702
+ callback(log.args);
1703
+ });
1704
+ },
1705
+ });
1706
+ },
1707
+ /**
1708
+ * Watch TransferSingle events
1709
+ * @param callback Function to call when event is emitted
1710
+ * @param filter Optional filter for indexed parameters
1711
+ * @returns Unwatch function to stop listening
1712
+ */
1713
+ TransferSingle: (callback, filter) => {
1714
+ return this.publicClient.watchContractEvent({
1715
+ address: this.contractAddress,
1716
+ abi: exports.FactoryNFT_jsonAbi,
1717
+ eventName: 'TransferSingle',
1718
+ args: filter,
1719
+ onLogs: (logs) => {
1720
+ logs.forEach((log) => {
1721
+ callback(log.args);
1722
+ });
1723
+ },
1724
+ });
1725
+ },
1726
+ /**
1727
+ * Watch URI events
1728
+ * @param callback Function to call when event is emitted
1729
+ * @param filter Optional filter for indexed parameters
1730
+ * @returns Unwatch function to stop listening
1731
+ */
1732
+ URI: (callback, filter) => {
1733
+ return this.publicClient.watchContractEvent({
1734
+ address: this.contractAddress,
1735
+ abi: exports.FactoryNFT_jsonAbi,
1736
+ eventName: 'URI',
1737
+ args: filter,
1738
+ onLogs: (logs) => {
1739
+ logs.forEach((log) => {
1740
+ callback(log.args);
1741
+ });
1742
+ },
1743
+ });
1744
+ }
1745
+ };
1746
+ }
1747
+ }
1748
+ exports.FactoryNFT_json = FactoryNFT_json;