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