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