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