@gitmyabi/mic 1.0.0 → 1.0.1

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,2992 @@
1
+ import type { Abi, Address, PublicClient, WalletClient, GetContractReturnType } from 'viem';
2
+ import { getContract } from 'viem';
3
+
4
+ /**
5
+ * MIC_json ABI
6
+ *
7
+ * This ABI is typed using viem's type system for full type safety.
8
+ */
9
+ export const MIC_jsonAbi = [
10
+ {
11
+ "inputs": [],
12
+ "stateMutability": "nonpayable",
13
+ "type": "constructor"
14
+ },
15
+ {
16
+ "anonymous": false,
17
+ "inputs": [
18
+ {
19
+ "indexed": true,
20
+ "internalType": "address",
21
+ "name": "owner",
22
+ "type": "address"
23
+ },
24
+ {
25
+ "indexed": true,
26
+ "internalType": "address",
27
+ "name": "spender",
28
+ "type": "address"
29
+ },
30
+ {
31
+ "indexed": false,
32
+ "internalType": "uint256",
33
+ "name": "value",
34
+ "type": "uint256"
35
+ }
36
+ ],
37
+ "name": "Approval",
38
+ "type": "event"
39
+ },
40
+ {
41
+ "anonymous": false,
42
+ "inputs": [],
43
+ "name": "AutoNukeLP",
44
+ "type": "event"
45
+ },
46
+ {
47
+ "anonymous": false,
48
+ "inputs": [
49
+ {
50
+ "indexed": true,
51
+ "internalType": "address",
52
+ "name": "sniper",
53
+ "type": "address"
54
+ }
55
+ ],
56
+ "name": "BoughtEarly",
57
+ "type": "event"
58
+ },
59
+ {
60
+ "anonymous": false,
61
+ "inputs": [
62
+ {
63
+ "indexed": true,
64
+ "internalType": "address",
65
+ "name": "account",
66
+ "type": "address"
67
+ },
68
+ {
69
+ "indexed": false,
70
+ "internalType": "bool",
71
+ "name": "isExcluded",
72
+ "type": "bool"
73
+ }
74
+ ],
75
+ "name": "ExcludeFromFees",
76
+ "type": "event"
77
+ },
78
+ {
79
+ "anonymous": false,
80
+ "inputs": [],
81
+ "name": "ManualNukeLP",
82
+ "type": "event"
83
+ },
84
+ {
85
+ "anonymous": false,
86
+ "inputs": [
87
+ {
88
+ "indexed": true,
89
+ "internalType": "address",
90
+ "name": "previousOwner",
91
+ "type": "address"
92
+ },
93
+ {
94
+ "indexed": true,
95
+ "internalType": "address",
96
+ "name": "newOwner",
97
+ "type": "address"
98
+ }
99
+ ],
100
+ "name": "OwnershipTransferred",
101
+ "type": "event"
102
+ },
103
+ {
104
+ "anonymous": false,
105
+ "inputs": [
106
+ {
107
+ "indexed": true,
108
+ "internalType": "address",
109
+ "name": "pair",
110
+ "type": "address"
111
+ },
112
+ {
113
+ "indexed": true,
114
+ "internalType": "bool",
115
+ "name": "value",
116
+ "type": "bool"
117
+ }
118
+ ],
119
+ "name": "SetAutomatedMarketMakerPair",
120
+ "type": "event"
121
+ },
122
+ {
123
+ "anonymous": false,
124
+ "inputs": [
125
+ {
126
+ "indexed": false,
127
+ "internalType": "uint256",
128
+ "name": "tokensSwapped",
129
+ "type": "uint256"
130
+ },
131
+ {
132
+ "indexed": false,
133
+ "internalType": "uint256",
134
+ "name": "ethReceived",
135
+ "type": "uint256"
136
+ },
137
+ {
138
+ "indexed": false,
139
+ "internalType": "uint256",
140
+ "name": "tokensIntoLiquidity",
141
+ "type": "uint256"
142
+ }
143
+ ],
144
+ "name": "SwapAndLiquify",
145
+ "type": "event"
146
+ },
147
+ {
148
+ "anonymous": false,
149
+ "inputs": [
150
+ {
151
+ "indexed": true,
152
+ "internalType": "address",
153
+ "name": "from",
154
+ "type": "address"
155
+ },
156
+ {
157
+ "indexed": true,
158
+ "internalType": "address",
159
+ "name": "to",
160
+ "type": "address"
161
+ },
162
+ {
163
+ "indexed": false,
164
+ "internalType": "uint256",
165
+ "name": "value",
166
+ "type": "uint256"
167
+ }
168
+ ],
169
+ "name": "Transfer",
170
+ "type": "event"
171
+ },
172
+ {
173
+ "anonymous": false,
174
+ "inputs": [
175
+ {
176
+ "indexed": true,
177
+ "internalType": "address",
178
+ "name": "newAddress",
179
+ "type": "address"
180
+ },
181
+ {
182
+ "indexed": true,
183
+ "internalType": "address",
184
+ "name": "oldAddress",
185
+ "type": "address"
186
+ }
187
+ ],
188
+ "name": "UpdateUniswapV2Router",
189
+ "type": "event"
190
+ },
191
+ {
192
+ "anonymous": false,
193
+ "inputs": [
194
+ {
195
+ "indexed": true,
196
+ "internalType": "address",
197
+ "name": "newWallet",
198
+ "type": "address"
199
+ },
200
+ {
201
+ "indexed": true,
202
+ "internalType": "address",
203
+ "name": "oldWallet",
204
+ "type": "address"
205
+ }
206
+ ],
207
+ "name": "devWalletUpdated",
208
+ "type": "event"
209
+ },
210
+ {
211
+ "anonymous": false,
212
+ "inputs": [
213
+ {
214
+ "indexed": true,
215
+ "internalType": "address",
216
+ "name": "newWallet",
217
+ "type": "address"
218
+ },
219
+ {
220
+ "indexed": true,
221
+ "internalType": "address",
222
+ "name": "oldWallet",
223
+ "type": "address"
224
+ }
225
+ ],
226
+ "name": "marketingWalletUpdated",
227
+ "type": "event"
228
+ },
229
+ {
230
+ "inputs": [
231
+ {
232
+ "internalType": "address",
233
+ "name": "",
234
+ "type": "address"
235
+ }
236
+ ],
237
+ "name": "_isExcludedMaxTransactionAmount",
238
+ "outputs": [
239
+ {
240
+ "internalType": "bool",
241
+ "name": "",
242
+ "type": "bool"
243
+ }
244
+ ],
245
+ "stateMutability": "view",
246
+ "type": "function"
247
+ },
248
+ {
249
+ "inputs": [
250
+ {
251
+ "internalType": "address",
252
+ "name": "owner",
253
+ "type": "address"
254
+ },
255
+ {
256
+ "internalType": "address",
257
+ "name": "spender",
258
+ "type": "address"
259
+ }
260
+ ],
261
+ "name": "allowance",
262
+ "outputs": [
263
+ {
264
+ "internalType": "uint256",
265
+ "name": "",
266
+ "type": "uint256"
267
+ }
268
+ ],
269
+ "stateMutability": "view",
270
+ "type": "function"
271
+ },
272
+ {
273
+ "inputs": [
274
+ {
275
+ "internalType": "address",
276
+ "name": "spender",
277
+ "type": "address"
278
+ },
279
+ {
280
+ "internalType": "uint256",
281
+ "name": "amount",
282
+ "type": "uint256"
283
+ }
284
+ ],
285
+ "name": "approve",
286
+ "outputs": [
287
+ {
288
+ "internalType": "bool",
289
+ "name": "",
290
+ "type": "bool"
291
+ }
292
+ ],
293
+ "stateMutability": "nonpayable",
294
+ "type": "function"
295
+ },
296
+ {
297
+ "inputs": [
298
+ {
299
+ "internalType": "address",
300
+ "name": "",
301
+ "type": "address"
302
+ }
303
+ ],
304
+ "name": "automatedMarketMakerPairs",
305
+ "outputs": [
306
+ {
307
+ "internalType": "bool",
308
+ "name": "",
309
+ "type": "bool"
310
+ }
311
+ ],
312
+ "stateMutability": "view",
313
+ "type": "function"
314
+ },
315
+ {
316
+ "inputs": [
317
+ {
318
+ "internalType": "address",
319
+ "name": "account",
320
+ "type": "address"
321
+ }
322
+ ],
323
+ "name": "balanceOf",
324
+ "outputs": [
325
+ {
326
+ "internalType": "uint256",
327
+ "name": "",
328
+ "type": "uint256"
329
+ }
330
+ ],
331
+ "stateMutability": "view",
332
+ "type": "function"
333
+ },
334
+ {
335
+ "inputs": [
336
+ {
337
+ "internalType": "address",
338
+ "name": "account",
339
+ "type": "address"
340
+ },
341
+ {
342
+ "internalType": "bool",
343
+ "name": "isBlacklisted",
344
+ "type": "bool"
345
+ }
346
+ ],
347
+ "name": "blacklistAccount",
348
+ "outputs": [],
349
+ "stateMutability": "nonpayable",
350
+ "type": "function"
351
+ },
352
+ {
353
+ "inputs": [],
354
+ "name": "buyDevFee",
355
+ "outputs": [
356
+ {
357
+ "internalType": "uint256",
358
+ "name": "",
359
+ "type": "uint256"
360
+ }
361
+ ],
362
+ "stateMutability": "view",
363
+ "type": "function"
364
+ },
365
+ {
366
+ "inputs": [],
367
+ "name": "buyLiquidityFee",
368
+ "outputs": [
369
+ {
370
+ "internalType": "uint256",
371
+ "name": "",
372
+ "type": "uint256"
373
+ }
374
+ ],
375
+ "stateMutability": "view",
376
+ "type": "function"
377
+ },
378
+ {
379
+ "inputs": [],
380
+ "name": "buyMarketingFee",
381
+ "outputs": [
382
+ {
383
+ "internalType": "uint256",
384
+ "name": "",
385
+ "type": "uint256"
386
+ }
387
+ ],
388
+ "stateMutability": "view",
389
+ "type": "function"
390
+ },
391
+ {
392
+ "inputs": [],
393
+ "name": "buyTotalFees",
394
+ "outputs": [
395
+ {
396
+ "internalType": "uint256",
397
+ "name": "",
398
+ "type": "uint256"
399
+ }
400
+ ],
401
+ "stateMutability": "view",
402
+ "type": "function"
403
+ },
404
+ {
405
+ "inputs": [],
406
+ "name": "deadAddress",
407
+ "outputs": [
408
+ {
409
+ "internalType": "address",
410
+ "name": "",
411
+ "type": "address"
412
+ }
413
+ ],
414
+ "stateMutability": "view",
415
+ "type": "function"
416
+ },
417
+ {
418
+ "inputs": [],
419
+ "name": "decimals",
420
+ "outputs": [
421
+ {
422
+ "internalType": "uint8",
423
+ "name": "",
424
+ "type": "uint8"
425
+ }
426
+ ],
427
+ "stateMutability": "view",
428
+ "type": "function"
429
+ },
430
+ {
431
+ "inputs": [
432
+ {
433
+ "internalType": "address",
434
+ "name": "spender",
435
+ "type": "address"
436
+ },
437
+ {
438
+ "internalType": "uint256",
439
+ "name": "subtractedValue",
440
+ "type": "uint256"
441
+ }
442
+ ],
443
+ "name": "decreaseAllowance",
444
+ "outputs": [
445
+ {
446
+ "internalType": "bool",
447
+ "name": "",
448
+ "type": "bool"
449
+ }
450
+ ],
451
+ "stateMutability": "nonpayable",
452
+ "type": "function"
453
+ },
454
+ {
455
+ "inputs": [],
456
+ "name": "devWallet",
457
+ "outputs": [
458
+ {
459
+ "internalType": "address",
460
+ "name": "",
461
+ "type": "address"
462
+ }
463
+ ],
464
+ "stateMutability": "view",
465
+ "type": "function"
466
+ },
467
+ {
468
+ "inputs": [],
469
+ "name": "disableTransferDelay",
470
+ "outputs": [
471
+ {
472
+ "internalType": "bool",
473
+ "name": "",
474
+ "type": "bool"
475
+ }
476
+ ],
477
+ "stateMutability": "nonpayable",
478
+ "type": "function"
479
+ },
480
+ {
481
+ "inputs": [],
482
+ "name": "earlySellLiquidityFee",
483
+ "outputs": [
484
+ {
485
+ "internalType": "uint256",
486
+ "name": "",
487
+ "type": "uint256"
488
+ }
489
+ ],
490
+ "stateMutability": "view",
491
+ "type": "function"
492
+ },
493
+ {
494
+ "inputs": [],
495
+ "name": "earlySellMarketingFee",
496
+ "outputs": [
497
+ {
498
+ "internalType": "uint256",
499
+ "name": "",
500
+ "type": "uint256"
501
+ }
502
+ ],
503
+ "stateMutability": "view",
504
+ "type": "function"
505
+ },
506
+ {
507
+ "inputs": [],
508
+ "name": "enableEarlySellTax",
509
+ "outputs": [
510
+ {
511
+ "internalType": "bool",
512
+ "name": "",
513
+ "type": "bool"
514
+ }
515
+ ],
516
+ "stateMutability": "view",
517
+ "type": "function"
518
+ },
519
+ {
520
+ "inputs": [],
521
+ "name": "enableTrading",
522
+ "outputs": [],
523
+ "stateMutability": "nonpayable",
524
+ "type": "function"
525
+ },
526
+ {
527
+ "inputs": [
528
+ {
529
+ "internalType": "address",
530
+ "name": "account",
531
+ "type": "address"
532
+ },
533
+ {
534
+ "internalType": "bool",
535
+ "name": "excluded",
536
+ "type": "bool"
537
+ }
538
+ ],
539
+ "name": "excludeFromFees",
540
+ "outputs": [],
541
+ "stateMutability": "nonpayable",
542
+ "type": "function"
543
+ },
544
+ {
545
+ "inputs": [
546
+ {
547
+ "internalType": "address",
548
+ "name": "updAds",
549
+ "type": "address"
550
+ },
551
+ {
552
+ "internalType": "bool",
553
+ "name": "isEx",
554
+ "type": "bool"
555
+ }
556
+ ],
557
+ "name": "excludeFromMaxTransaction",
558
+ "outputs": [],
559
+ "stateMutability": "nonpayable",
560
+ "type": "function"
561
+ },
562
+ {
563
+ "inputs": [
564
+ {
565
+ "internalType": "address",
566
+ "name": "spender",
567
+ "type": "address"
568
+ },
569
+ {
570
+ "internalType": "uint256",
571
+ "name": "addedValue",
572
+ "type": "uint256"
573
+ }
574
+ ],
575
+ "name": "increaseAllowance",
576
+ "outputs": [
577
+ {
578
+ "internalType": "bool",
579
+ "name": "",
580
+ "type": "bool"
581
+ }
582
+ ],
583
+ "stateMutability": "nonpayable",
584
+ "type": "function"
585
+ },
586
+ {
587
+ "inputs": [
588
+ {
589
+ "internalType": "address",
590
+ "name": "account",
591
+ "type": "address"
592
+ }
593
+ ],
594
+ "name": "isExcludedFromFees",
595
+ "outputs": [
596
+ {
597
+ "internalType": "bool",
598
+ "name": "",
599
+ "type": "bool"
600
+ }
601
+ ],
602
+ "stateMutability": "view",
603
+ "type": "function"
604
+ },
605
+ {
606
+ "inputs": [],
607
+ "name": "lastLpBurnTime",
608
+ "outputs": [
609
+ {
610
+ "internalType": "uint256",
611
+ "name": "",
612
+ "type": "uint256"
613
+ }
614
+ ],
615
+ "stateMutability": "view",
616
+ "type": "function"
617
+ },
618
+ {
619
+ "inputs": [],
620
+ "name": "lastManualLpBurnTime",
621
+ "outputs": [
622
+ {
623
+ "internalType": "uint256",
624
+ "name": "",
625
+ "type": "uint256"
626
+ }
627
+ ],
628
+ "stateMutability": "view",
629
+ "type": "function"
630
+ },
631
+ {
632
+ "inputs": [],
633
+ "name": "limitsInEffect",
634
+ "outputs": [
635
+ {
636
+ "internalType": "bool",
637
+ "name": "",
638
+ "type": "bool"
639
+ }
640
+ ],
641
+ "stateMutability": "view",
642
+ "type": "function"
643
+ },
644
+ {
645
+ "inputs": [],
646
+ "name": "lpBurnEnabled",
647
+ "outputs": [
648
+ {
649
+ "internalType": "bool",
650
+ "name": "",
651
+ "type": "bool"
652
+ }
653
+ ],
654
+ "stateMutability": "view",
655
+ "type": "function"
656
+ },
657
+ {
658
+ "inputs": [],
659
+ "name": "lpBurnFrequency",
660
+ "outputs": [
661
+ {
662
+ "internalType": "uint256",
663
+ "name": "",
664
+ "type": "uint256"
665
+ }
666
+ ],
667
+ "stateMutability": "view",
668
+ "type": "function"
669
+ },
670
+ {
671
+ "inputs": [],
672
+ "name": "manualBurnFrequency",
673
+ "outputs": [
674
+ {
675
+ "internalType": "uint256",
676
+ "name": "",
677
+ "type": "uint256"
678
+ }
679
+ ],
680
+ "stateMutability": "view",
681
+ "type": "function"
682
+ },
683
+ {
684
+ "inputs": [
685
+ {
686
+ "internalType": "uint256",
687
+ "name": "percent",
688
+ "type": "uint256"
689
+ }
690
+ ],
691
+ "name": "manualBurnLiquidityPairTokens",
692
+ "outputs": [
693
+ {
694
+ "internalType": "bool",
695
+ "name": "",
696
+ "type": "bool"
697
+ }
698
+ ],
699
+ "stateMutability": "nonpayable",
700
+ "type": "function"
701
+ },
702
+ {
703
+ "inputs": [],
704
+ "name": "marketingWallet",
705
+ "outputs": [
706
+ {
707
+ "internalType": "address",
708
+ "name": "",
709
+ "type": "address"
710
+ }
711
+ ],
712
+ "stateMutability": "view",
713
+ "type": "function"
714
+ },
715
+ {
716
+ "inputs": [],
717
+ "name": "maxTransactionAmount",
718
+ "outputs": [
719
+ {
720
+ "internalType": "uint256",
721
+ "name": "",
722
+ "type": "uint256"
723
+ }
724
+ ],
725
+ "stateMutability": "view",
726
+ "type": "function"
727
+ },
728
+ {
729
+ "inputs": [],
730
+ "name": "maxWallet",
731
+ "outputs": [
732
+ {
733
+ "internalType": "uint256",
734
+ "name": "",
735
+ "type": "uint256"
736
+ }
737
+ ],
738
+ "stateMutability": "view",
739
+ "type": "function"
740
+ },
741
+ {
742
+ "inputs": [],
743
+ "name": "name",
744
+ "outputs": [
745
+ {
746
+ "internalType": "string",
747
+ "name": "",
748
+ "type": "string"
749
+ }
750
+ ],
751
+ "stateMutability": "view",
752
+ "type": "function"
753
+ },
754
+ {
755
+ "inputs": [],
756
+ "name": "owner",
757
+ "outputs": [
758
+ {
759
+ "internalType": "address",
760
+ "name": "",
761
+ "type": "address"
762
+ }
763
+ ],
764
+ "stateMutability": "view",
765
+ "type": "function"
766
+ },
767
+ {
768
+ "inputs": [],
769
+ "name": "percentForLPBurn",
770
+ "outputs": [
771
+ {
772
+ "internalType": "uint256",
773
+ "name": "",
774
+ "type": "uint256"
775
+ }
776
+ ],
777
+ "stateMutability": "view",
778
+ "type": "function"
779
+ },
780
+ {
781
+ "inputs": [],
782
+ "name": "removeLimits",
783
+ "outputs": [
784
+ {
785
+ "internalType": "bool",
786
+ "name": "",
787
+ "type": "bool"
788
+ }
789
+ ],
790
+ "stateMutability": "nonpayable",
791
+ "type": "function"
792
+ },
793
+ {
794
+ "inputs": [],
795
+ "name": "renounceOwnership",
796
+ "outputs": [],
797
+ "stateMutability": "nonpayable",
798
+ "type": "function"
799
+ },
800
+ {
801
+ "inputs": [],
802
+ "name": "sellDevFee",
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": "sellLiquidityFee",
816
+ "outputs": [
817
+ {
818
+ "internalType": "uint256",
819
+ "name": "",
820
+ "type": "uint256"
821
+ }
822
+ ],
823
+ "stateMutability": "view",
824
+ "type": "function"
825
+ },
826
+ {
827
+ "inputs": [],
828
+ "name": "sellMarketingFee",
829
+ "outputs": [
830
+ {
831
+ "internalType": "uint256",
832
+ "name": "",
833
+ "type": "uint256"
834
+ }
835
+ ],
836
+ "stateMutability": "view",
837
+ "type": "function"
838
+ },
839
+ {
840
+ "inputs": [],
841
+ "name": "sellTotalFees",
842
+ "outputs": [
843
+ {
844
+ "internalType": "uint256",
845
+ "name": "",
846
+ "type": "uint256"
847
+ }
848
+ ],
849
+ "stateMutability": "view",
850
+ "type": "function"
851
+ },
852
+ {
853
+ "inputs": [
854
+ {
855
+ "internalType": "uint256",
856
+ "name": "_frequencyInSeconds",
857
+ "type": "uint256"
858
+ },
859
+ {
860
+ "internalType": "uint256",
861
+ "name": "_percent",
862
+ "type": "uint256"
863
+ },
864
+ {
865
+ "internalType": "bool",
866
+ "name": "_Enabled",
867
+ "type": "bool"
868
+ }
869
+ ],
870
+ "name": "setAutoLPBurnSettings",
871
+ "outputs": [],
872
+ "stateMutability": "nonpayable",
873
+ "type": "function"
874
+ },
875
+ {
876
+ "inputs": [
877
+ {
878
+ "internalType": "address",
879
+ "name": "pair",
880
+ "type": "address"
881
+ },
882
+ {
883
+ "internalType": "bool",
884
+ "name": "value",
885
+ "type": "bool"
886
+ }
887
+ ],
888
+ "name": "setAutomatedMarketMakerPair",
889
+ "outputs": [],
890
+ "stateMutability": "nonpayable",
891
+ "type": "function"
892
+ },
893
+ {
894
+ "inputs": [
895
+ {
896
+ "internalType": "bool",
897
+ "name": "onoff",
898
+ "type": "bool"
899
+ }
900
+ ],
901
+ "name": "setEarlySellTax",
902
+ "outputs": [],
903
+ "stateMutability": "nonpayable",
904
+ "type": "function"
905
+ },
906
+ {
907
+ "inputs": [],
908
+ "name": "swapEnabled",
909
+ "outputs": [
910
+ {
911
+ "internalType": "bool",
912
+ "name": "",
913
+ "type": "bool"
914
+ }
915
+ ],
916
+ "stateMutability": "view",
917
+ "type": "function"
918
+ },
919
+ {
920
+ "inputs": [],
921
+ "name": "swapTokensAtAmount",
922
+ "outputs": [
923
+ {
924
+ "internalType": "uint256",
925
+ "name": "",
926
+ "type": "uint256"
927
+ }
928
+ ],
929
+ "stateMutability": "view",
930
+ "type": "function"
931
+ },
932
+ {
933
+ "inputs": [],
934
+ "name": "symbol",
935
+ "outputs": [
936
+ {
937
+ "internalType": "string",
938
+ "name": "",
939
+ "type": "string"
940
+ }
941
+ ],
942
+ "stateMutability": "view",
943
+ "type": "function"
944
+ },
945
+ {
946
+ "inputs": [],
947
+ "name": "tokensForDev",
948
+ "outputs": [
949
+ {
950
+ "internalType": "uint256",
951
+ "name": "",
952
+ "type": "uint256"
953
+ }
954
+ ],
955
+ "stateMutability": "view",
956
+ "type": "function"
957
+ },
958
+ {
959
+ "inputs": [],
960
+ "name": "tokensForLiquidity",
961
+ "outputs": [
962
+ {
963
+ "internalType": "uint256",
964
+ "name": "",
965
+ "type": "uint256"
966
+ }
967
+ ],
968
+ "stateMutability": "view",
969
+ "type": "function"
970
+ },
971
+ {
972
+ "inputs": [],
973
+ "name": "tokensForMarketing",
974
+ "outputs": [
975
+ {
976
+ "internalType": "uint256",
977
+ "name": "",
978
+ "type": "uint256"
979
+ }
980
+ ],
981
+ "stateMutability": "view",
982
+ "type": "function"
983
+ },
984
+ {
985
+ "inputs": [],
986
+ "name": "totalSupply",
987
+ "outputs": [
988
+ {
989
+ "internalType": "uint256",
990
+ "name": "",
991
+ "type": "uint256"
992
+ }
993
+ ],
994
+ "stateMutability": "view",
995
+ "type": "function"
996
+ },
997
+ {
998
+ "inputs": [],
999
+ "name": "tradingActive",
1000
+ "outputs": [
1001
+ {
1002
+ "internalType": "bool",
1003
+ "name": "",
1004
+ "type": "bool"
1005
+ }
1006
+ ],
1007
+ "stateMutability": "view",
1008
+ "type": "function"
1009
+ },
1010
+ {
1011
+ "inputs": [
1012
+ {
1013
+ "internalType": "address",
1014
+ "name": "recipient",
1015
+ "type": "address"
1016
+ },
1017
+ {
1018
+ "internalType": "uint256",
1019
+ "name": "amount",
1020
+ "type": "uint256"
1021
+ }
1022
+ ],
1023
+ "name": "transfer",
1024
+ "outputs": [
1025
+ {
1026
+ "internalType": "bool",
1027
+ "name": "",
1028
+ "type": "bool"
1029
+ }
1030
+ ],
1031
+ "stateMutability": "nonpayable",
1032
+ "type": "function"
1033
+ },
1034
+ {
1035
+ "inputs": [],
1036
+ "name": "transferDelayEnabled",
1037
+ "outputs": [
1038
+ {
1039
+ "internalType": "bool",
1040
+ "name": "",
1041
+ "type": "bool"
1042
+ }
1043
+ ],
1044
+ "stateMutability": "view",
1045
+ "type": "function"
1046
+ },
1047
+ {
1048
+ "inputs": [
1049
+ {
1050
+ "internalType": "address",
1051
+ "name": "sender",
1052
+ "type": "address"
1053
+ },
1054
+ {
1055
+ "internalType": "address",
1056
+ "name": "recipient",
1057
+ "type": "address"
1058
+ },
1059
+ {
1060
+ "internalType": "uint256",
1061
+ "name": "amount",
1062
+ "type": "uint256"
1063
+ }
1064
+ ],
1065
+ "name": "transferFrom",
1066
+ "outputs": [
1067
+ {
1068
+ "internalType": "bool",
1069
+ "name": "",
1070
+ "type": "bool"
1071
+ }
1072
+ ],
1073
+ "stateMutability": "nonpayable",
1074
+ "type": "function"
1075
+ },
1076
+ {
1077
+ "inputs": [
1078
+ {
1079
+ "internalType": "address",
1080
+ "name": "newOwner",
1081
+ "type": "address"
1082
+ }
1083
+ ],
1084
+ "name": "transferOwnership",
1085
+ "outputs": [],
1086
+ "stateMutability": "nonpayable",
1087
+ "type": "function"
1088
+ },
1089
+ {
1090
+ "inputs": [],
1091
+ "name": "uniswapV2Pair",
1092
+ "outputs": [
1093
+ {
1094
+ "internalType": "address",
1095
+ "name": "",
1096
+ "type": "address"
1097
+ }
1098
+ ],
1099
+ "stateMutability": "view",
1100
+ "type": "function"
1101
+ },
1102
+ {
1103
+ "inputs": [],
1104
+ "name": "uniswapV2Router",
1105
+ "outputs": [
1106
+ {
1107
+ "internalType": "contract IUniswapV2Router02",
1108
+ "name": "",
1109
+ "type": "address"
1110
+ }
1111
+ ],
1112
+ "stateMutability": "view",
1113
+ "type": "function"
1114
+ },
1115
+ {
1116
+ "inputs": [
1117
+ {
1118
+ "internalType": "uint256",
1119
+ "name": "_marketingFee",
1120
+ "type": "uint256"
1121
+ },
1122
+ {
1123
+ "internalType": "uint256",
1124
+ "name": "_liquidityFee",
1125
+ "type": "uint256"
1126
+ },
1127
+ {
1128
+ "internalType": "uint256",
1129
+ "name": "_devFee",
1130
+ "type": "uint256"
1131
+ }
1132
+ ],
1133
+ "name": "updateBuyFees",
1134
+ "outputs": [],
1135
+ "stateMutability": "nonpayable",
1136
+ "type": "function"
1137
+ },
1138
+ {
1139
+ "inputs": [
1140
+ {
1141
+ "internalType": "address",
1142
+ "name": "newWallet",
1143
+ "type": "address"
1144
+ }
1145
+ ],
1146
+ "name": "updateDevWallet",
1147
+ "outputs": [],
1148
+ "stateMutability": "nonpayable",
1149
+ "type": "function"
1150
+ },
1151
+ {
1152
+ "inputs": [
1153
+ {
1154
+ "internalType": "address",
1155
+ "name": "newMarketingWallet",
1156
+ "type": "address"
1157
+ }
1158
+ ],
1159
+ "name": "updateMarketingWallet",
1160
+ "outputs": [],
1161
+ "stateMutability": "nonpayable",
1162
+ "type": "function"
1163
+ },
1164
+ {
1165
+ "inputs": [
1166
+ {
1167
+ "internalType": "uint256",
1168
+ "name": "newNum",
1169
+ "type": "uint256"
1170
+ }
1171
+ ],
1172
+ "name": "updateMaxTxnAmount",
1173
+ "outputs": [],
1174
+ "stateMutability": "nonpayable",
1175
+ "type": "function"
1176
+ },
1177
+ {
1178
+ "inputs": [
1179
+ {
1180
+ "internalType": "uint256",
1181
+ "name": "newNum",
1182
+ "type": "uint256"
1183
+ }
1184
+ ],
1185
+ "name": "updateMaxWalletAmount",
1186
+ "outputs": [],
1187
+ "stateMutability": "nonpayable",
1188
+ "type": "function"
1189
+ },
1190
+ {
1191
+ "inputs": [
1192
+ {
1193
+ "internalType": "uint256",
1194
+ "name": "_marketingFee",
1195
+ "type": "uint256"
1196
+ },
1197
+ {
1198
+ "internalType": "uint256",
1199
+ "name": "_liquidityFee",
1200
+ "type": "uint256"
1201
+ },
1202
+ {
1203
+ "internalType": "uint256",
1204
+ "name": "_devFee",
1205
+ "type": "uint256"
1206
+ },
1207
+ {
1208
+ "internalType": "uint256",
1209
+ "name": "_earlySellLiquidityFee",
1210
+ "type": "uint256"
1211
+ },
1212
+ {
1213
+ "internalType": "uint256",
1214
+ "name": "_earlySellMarketingFee",
1215
+ "type": "uint256"
1216
+ }
1217
+ ],
1218
+ "name": "updateSellFees",
1219
+ "outputs": [],
1220
+ "stateMutability": "nonpayable",
1221
+ "type": "function"
1222
+ },
1223
+ {
1224
+ "inputs": [
1225
+ {
1226
+ "internalType": "bool",
1227
+ "name": "enabled",
1228
+ "type": "bool"
1229
+ }
1230
+ ],
1231
+ "name": "updateSwapEnabled",
1232
+ "outputs": [],
1233
+ "stateMutability": "nonpayable",
1234
+ "type": "function"
1235
+ },
1236
+ {
1237
+ "inputs": [
1238
+ {
1239
+ "internalType": "uint256",
1240
+ "name": "newAmount",
1241
+ "type": "uint256"
1242
+ }
1243
+ ],
1244
+ "name": "updateSwapTokensAtAmount",
1245
+ "outputs": [
1246
+ {
1247
+ "internalType": "bool",
1248
+ "name": "",
1249
+ "type": "bool"
1250
+ }
1251
+ ],
1252
+ "stateMutability": "nonpayable",
1253
+ "type": "function"
1254
+ },
1255
+ {
1256
+ "stateMutability": "payable",
1257
+ "type": "receive"
1258
+ }
1259
+ ] as const satisfies Abi;
1260
+
1261
+ /**
1262
+ * Type-safe ABI for MIC_json
1263
+ */
1264
+ export type MIC_jsonAbi = typeof MIC_jsonAbi;
1265
+
1266
+ /**
1267
+ * Contract instance type for MIC_json
1268
+ */
1269
+ // Use any for contract type to avoid complex viem type issues
1270
+ // The runtime behavior is type-safe through viem's ABI typing
1271
+ export type MIC_jsonContract = any;
1272
+
1273
+ /**
1274
+ * MIC_json Contract Class
1275
+ *
1276
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
1277
+ *
1278
+ * @example
1279
+ * ```typescript
1280
+ * import { createPublicClient, createWalletClient, http } from 'viem';
1281
+ * import { mainnet } from 'viem/chains';
1282
+ * import { MIC_json } from 'MIC_json';
1283
+ *
1284
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
1285
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
1286
+ *
1287
+ * const contract = new MIC_json('0x...', { publicClient, walletClient });
1288
+ *
1289
+ * // Read functions
1290
+ * const result = await contract.balanceOf('0x...');
1291
+ *
1292
+ * // Write functions
1293
+ * const hash = await contract.transfer('0x...', 1000n);
1294
+ *
1295
+ * // Simulate transactions (dry-run)
1296
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
1297
+ * console.log('Gas estimate:', simulation.request.gas);
1298
+ *
1299
+ * // Watch events
1300
+ * const unwatch = contract.watch.Transfer((event) => {
1301
+ * console.log('Transfer event:', event);
1302
+ * });
1303
+ * ```
1304
+ */
1305
+ export class MIC_json {
1306
+ private contract: MIC_jsonContract;
1307
+ private contractAddress: Address;
1308
+ private publicClient: PublicClient;
1309
+
1310
+ constructor(
1311
+ address: Address,
1312
+ clients: {
1313
+ publicClient: PublicClient;
1314
+ walletClient?: WalletClient;
1315
+ }
1316
+ ) {
1317
+ this.contractAddress = address;
1318
+ this.publicClient = clients.publicClient;
1319
+ this.contract = getContract({
1320
+ address,
1321
+ abi: MIC_jsonAbi,
1322
+ client: {
1323
+ public: clients.publicClient,
1324
+ wallet: clients.walletClient,
1325
+ },
1326
+ });
1327
+ }
1328
+
1329
+ /**
1330
+ * Get the contract address
1331
+ */
1332
+ get address(): Address {
1333
+ return this.contractAddress;
1334
+ }
1335
+
1336
+ /**
1337
+ * Get the underlying viem contract instance
1338
+ */
1339
+ getContract(): MIC_jsonContract {
1340
+ return this.contract;
1341
+ }
1342
+
1343
+ /**
1344
+ * _isExcludedMaxTransactionAmount
1345
+ * view
1346
+ */
1347
+ async _isExcludedMaxTransactionAmount(arg0: `0x${string}`): Promise<boolean> {
1348
+ return this.contract.read._isExcludedMaxTransactionAmount([arg0] as const) as Promise<boolean>;
1349
+ }
1350
+
1351
+ /**
1352
+ * allowance
1353
+ * view
1354
+ */
1355
+ async allowance(owner: `0x${string}`, spender: `0x${string}`): Promise<bigint> {
1356
+ return this.contract.read.allowance([owner, spender] as const) as Promise<bigint>;
1357
+ }
1358
+
1359
+ /**
1360
+ * automatedMarketMakerPairs
1361
+ * view
1362
+ */
1363
+ async automatedMarketMakerPairs(arg0: `0x${string}`): Promise<boolean> {
1364
+ return this.contract.read.automatedMarketMakerPairs([arg0] as const) as Promise<boolean>;
1365
+ }
1366
+
1367
+ /**
1368
+ * balanceOf
1369
+ * view
1370
+ */
1371
+ async balanceOf(account: `0x${string}`): Promise<bigint> {
1372
+ return this.contract.read.balanceOf([account] as const) as Promise<bigint>;
1373
+ }
1374
+
1375
+ /**
1376
+ * buyDevFee
1377
+ * view
1378
+ */
1379
+ async buyDevFee(): Promise<bigint> {
1380
+ return this.contract.read.buyDevFee() as Promise<bigint>;
1381
+ }
1382
+
1383
+ /**
1384
+ * buyLiquidityFee
1385
+ * view
1386
+ */
1387
+ async buyLiquidityFee(): Promise<bigint> {
1388
+ return this.contract.read.buyLiquidityFee() as Promise<bigint>;
1389
+ }
1390
+
1391
+ /**
1392
+ * buyMarketingFee
1393
+ * view
1394
+ */
1395
+ async buyMarketingFee(): Promise<bigint> {
1396
+ return this.contract.read.buyMarketingFee() as Promise<bigint>;
1397
+ }
1398
+
1399
+ /**
1400
+ * buyTotalFees
1401
+ * view
1402
+ */
1403
+ async buyTotalFees(): Promise<bigint> {
1404
+ return this.contract.read.buyTotalFees() as Promise<bigint>;
1405
+ }
1406
+
1407
+ /**
1408
+ * deadAddress
1409
+ * view
1410
+ */
1411
+ async deadAddress(): Promise<`0x${string}`> {
1412
+ return this.contract.read.deadAddress() as Promise<`0x${string}`>;
1413
+ }
1414
+
1415
+ /**
1416
+ * decimals
1417
+ * view
1418
+ */
1419
+ async decimals(): Promise<bigint> {
1420
+ return this.contract.read.decimals() as Promise<bigint>;
1421
+ }
1422
+
1423
+ /**
1424
+ * devWallet
1425
+ * view
1426
+ */
1427
+ async devWallet(): Promise<`0x${string}`> {
1428
+ return this.contract.read.devWallet() as Promise<`0x${string}`>;
1429
+ }
1430
+
1431
+ /**
1432
+ * earlySellLiquidityFee
1433
+ * view
1434
+ */
1435
+ async earlySellLiquidityFee(): Promise<bigint> {
1436
+ return this.contract.read.earlySellLiquidityFee() as Promise<bigint>;
1437
+ }
1438
+
1439
+ /**
1440
+ * earlySellMarketingFee
1441
+ * view
1442
+ */
1443
+ async earlySellMarketingFee(): Promise<bigint> {
1444
+ return this.contract.read.earlySellMarketingFee() as Promise<bigint>;
1445
+ }
1446
+
1447
+ /**
1448
+ * enableEarlySellTax
1449
+ * view
1450
+ */
1451
+ async enableEarlySellTax(): Promise<boolean> {
1452
+ return this.contract.read.enableEarlySellTax() as Promise<boolean>;
1453
+ }
1454
+
1455
+ /**
1456
+ * isExcludedFromFees
1457
+ * view
1458
+ */
1459
+ async isExcludedFromFees(account: `0x${string}`): Promise<boolean> {
1460
+ return this.contract.read.isExcludedFromFees([account] as const) as Promise<boolean>;
1461
+ }
1462
+
1463
+ /**
1464
+ * lastLpBurnTime
1465
+ * view
1466
+ */
1467
+ async lastLpBurnTime(): Promise<bigint> {
1468
+ return this.contract.read.lastLpBurnTime() as Promise<bigint>;
1469
+ }
1470
+
1471
+ /**
1472
+ * lastManualLpBurnTime
1473
+ * view
1474
+ */
1475
+ async lastManualLpBurnTime(): Promise<bigint> {
1476
+ return this.contract.read.lastManualLpBurnTime() as Promise<bigint>;
1477
+ }
1478
+
1479
+ /**
1480
+ * limitsInEffect
1481
+ * view
1482
+ */
1483
+ async limitsInEffect(): Promise<boolean> {
1484
+ return this.contract.read.limitsInEffect() as Promise<boolean>;
1485
+ }
1486
+
1487
+ /**
1488
+ * lpBurnEnabled
1489
+ * view
1490
+ */
1491
+ async lpBurnEnabled(): Promise<boolean> {
1492
+ return this.contract.read.lpBurnEnabled() as Promise<boolean>;
1493
+ }
1494
+
1495
+ /**
1496
+ * lpBurnFrequency
1497
+ * view
1498
+ */
1499
+ async lpBurnFrequency(): Promise<bigint> {
1500
+ return this.contract.read.lpBurnFrequency() as Promise<bigint>;
1501
+ }
1502
+
1503
+ /**
1504
+ * manualBurnFrequency
1505
+ * view
1506
+ */
1507
+ async manualBurnFrequency(): Promise<bigint> {
1508
+ return this.contract.read.manualBurnFrequency() as Promise<bigint>;
1509
+ }
1510
+
1511
+ /**
1512
+ * marketingWallet
1513
+ * view
1514
+ */
1515
+ async marketingWallet(): Promise<`0x${string}`> {
1516
+ return this.contract.read.marketingWallet() as Promise<`0x${string}`>;
1517
+ }
1518
+
1519
+ /**
1520
+ * maxTransactionAmount
1521
+ * view
1522
+ */
1523
+ async maxTransactionAmount(): Promise<bigint> {
1524
+ return this.contract.read.maxTransactionAmount() as Promise<bigint>;
1525
+ }
1526
+
1527
+ /**
1528
+ * maxWallet
1529
+ * view
1530
+ */
1531
+ async maxWallet(): Promise<bigint> {
1532
+ return this.contract.read.maxWallet() as Promise<bigint>;
1533
+ }
1534
+
1535
+ /**
1536
+ * name
1537
+ * view
1538
+ */
1539
+ async name(): Promise<string> {
1540
+ return this.contract.read.name() as Promise<string>;
1541
+ }
1542
+
1543
+ /**
1544
+ * owner
1545
+ * view
1546
+ */
1547
+ async owner(): Promise<`0x${string}`> {
1548
+ return this.contract.read.owner() as Promise<`0x${string}`>;
1549
+ }
1550
+
1551
+ /**
1552
+ * percentForLPBurn
1553
+ * view
1554
+ */
1555
+ async percentForLPBurn(): Promise<bigint> {
1556
+ return this.contract.read.percentForLPBurn() as Promise<bigint>;
1557
+ }
1558
+
1559
+ /**
1560
+ * sellDevFee
1561
+ * view
1562
+ */
1563
+ async sellDevFee(): Promise<bigint> {
1564
+ return this.contract.read.sellDevFee() as Promise<bigint>;
1565
+ }
1566
+
1567
+ /**
1568
+ * sellLiquidityFee
1569
+ * view
1570
+ */
1571
+ async sellLiquidityFee(): Promise<bigint> {
1572
+ return this.contract.read.sellLiquidityFee() as Promise<bigint>;
1573
+ }
1574
+
1575
+ /**
1576
+ * sellMarketingFee
1577
+ * view
1578
+ */
1579
+ async sellMarketingFee(): Promise<bigint> {
1580
+ return this.contract.read.sellMarketingFee() as Promise<bigint>;
1581
+ }
1582
+
1583
+ /**
1584
+ * sellTotalFees
1585
+ * view
1586
+ */
1587
+ async sellTotalFees(): Promise<bigint> {
1588
+ return this.contract.read.sellTotalFees() as Promise<bigint>;
1589
+ }
1590
+
1591
+ /**
1592
+ * swapEnabled
1593
+ * view
1594
+ */
1595
+ async swapEnabled(): Promise<boolean> {
1596
+ return this.contract.read.swapEnabled() as Promise<boolean>;
1597
+ }
1598
+
1599
+ /**
1600
+ * swapTokensAtAmount
1601
+ * view
1602
+ */
1603
+ async swapTokensAtAmount(): Promise<bigint> {
1604
+ return this.contract.read.swapTokensAtAmount() as Promise<bigint>;
1605
+ }
1606
+
1607
+ /**
1608
+ * symbol
1609
+ * view
1610
+ */
1611
+ async symbol(): Promise<string> {
1612
+ return this.contract.read.symbol() as Promise<string>;
1613
+ }
1614
+
1615
+ /**
1616
+ * tokensForDev
1617
+ * view
1618
+ */
1619
+ async tokensForDev(): Promise<bigint> {
1620
+ return this.contract.read.tokensForDev() as Promise<bigint>;
1621
+ }
1622
+
1623
+ /**
1624
+ * tokensForLiquidity
1625
+ * view
1626
+ */
1627
+ async tokensForLiquidity(): Promise<bigint> {
1628
+ return this.contract.read.tokensForLiquidity() as Promise<bigint>;
1629
+ }
1630
+
1631
+ /**
1632
+ * tokensForMarketing
1633
+ * view
1634
+ */
1635
+ async tokensForMarketing(): Promise<bigint> {
1636
+ return this.contract.read.tokensForMarketing() as Promise<bigint>;
1637
+ }
1638
+
1639
+ /**
1640
+ * totalSupply
1641
+ * view
1642
+ */
1643
+ async totalSupply(): Promise<bigint> {
1644
+ return this.contract.read.totalSupply() as Promise<bigint>;
1645
+ }
1646
+
1647
+ /**
1648
+ * tradingActive
1649
+ * view
1650
+ */
1651
+ async tradingActive(): Promise<boolean> {
1652
+ return this.contract.read.tradingActive() as Promise<boolean>;
1653
+ }
1654
+
1655
+ /**
1656
+ * transferDelayEnabled
1657
+ * view
1658
+ */
1659
+ async transferDelayEnabled(): Promise<boolean> {
1660
+ return this.contract.read.transferDelayEnabled() as Promise<boolean>;
1661
+ }
1662
+
1663
+ /**
1664
+ * uniswapV2Pair
1665
+ * view
1666
+ */
1667
+ async uniswapV2Pair(): Promise<`0x${string}`> {
1668
+ return this.contract.read.uniswapV2Pair() as Promise<`0x${string}`>;
1669
+ }
1670
+
1671
+ /**
1672
+ * uniswapV2Router
1673
+ * view
1674
+ */
1675
+ async uniswapV2Router(): Promise<`0x${string}`> {
1676
+ return this.contract.read.uniswapV2Router() as Promise<`0x${string}`>;
1677
+ }
1678
+
1679
+ /**
1680
+ * approve
1681
+ * nonpayable
1682
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1683
+ */
1684
+ async approve(spender: `0x${string}`, amount: bigint, options?: {
1685
+ accessList?: import('viem').AccessList;
1686
+ authorizationList?: import('viem').AuthorizationList;
1687
+ chain?: import('viem').Chain | null;
1688
+ dataSuffix?: `0x${string}`;
1689
+ gas?: bigint;
1690
+ gasPrice?: bigint;
1691
+ maxFeePerGas?: bigint;
1692
+ maxPriorityFeePerGas?: bigint;
1693
+ nonce?: number;
1694
+ value?: bigint;
1695
+ }): Promise<`0x${string}`> {
1696
+ if (!this.contract.write) {
1697
+ throw new Error('Wallet client is required for write operations');
1698
+ }
1699
+ return this.contract.write.approve([spender, amount] as const, options) as Promise<`0x${string}`>;
1700
+ }
1701
+
1702
+ /**
1703
+ * blacklistAccount
1704
+ * nonpayable
1705
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1706
+ */
1707
+ async blacklistAccount(account: `0x${string}`, isBlacklisted: boolean, options?: {
1708
+ accessList?: import('viem').AccessList;
1709
+ authorizationList?: import('viem').AuthorizationList;
1710
+ chain?: import('viem').Chain | null;
1711
+ dataSuffix?: `0x${string}`;
1712
+ gas?: bigint;
1713
+ gasPrice?: bigint;
1714
+ maxFeePerGas?: bigint;
1715
+ maxPriorityFeePerGas?: bigint;
1716
+ nonce?: number;
1717
+ value?: bigint;
1718
+ }): Promise<`0x${string}`> {
1719
+ if (!this.contract.write) {
1720
+ throw new Error('Wallet client is required for write operations');
1721
+ }
1722
+ return this.contract.write.blacklistAccount([account, isBlacklisted] as const, options) as Promise<`0x${string}`>;
1723
+ }
1724
+
1725
+ /**
1726
+ * decreaseAllowance
1727
+ * nonpayable
1728
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1729
+ */
1730
+ async decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
1731
+ accessList?: import('viem').AccessList;
1732
+ authorizationList?: import('viem').AuthorizationList;
1733
+ chain?: import('viem').Chain | null;
1734
+ dataSuffix?: `0x${string}`;
1735
+ gas?: bigint;
1736
+ gasPrice?: bigint;
1737
+ maxFeePerGas?: bigint;
1738
+ maxPriorityFeePerGas?: bigint;
1739
+ nonce?: number;
1740
+ value?: bigint;
1741
+ }): Promise<`0x${string}`> {
1742
+ if (!this.contract.write) {
1743
+ throw new Error('Wallet client is required for write operations');
1744
+ }
1745
+ return this.contract.write.decreaseAllowance([spender, subtractedValue] as const, options) as Promise<`0x${string}`>;
1746
+ }
1747
+
1748
+ /**
1749
+ * disableTransferDelay
1750
+ * nonpayable
1751
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1752
+ */
1753
+ async disableTransferDelay(options?: {
1754
+ accessList?: import('viem').AccessList;
1755
+ authorizationList?: import('viem').AuthorizationList;
1756
+ chain?: import('viem').Chain | null;
1757
+ dataSuffix?: `0x${string}`;
1758
+ gas?: bigint;
1759
+ gasPrice?: bigint;
1760
+ maxFeePerGas?: bigint;
1761
+ maxPriorityFeePerGas?: bigint;
1762
+ nonce?: number;
1763
+ value?: bigint;
1764
+ }): Promise<`0x${string}`> {
1765
+ if (!this.contract.write) {
1766
+ throw new Error('Wallet client is required for write operations');
1767
+ }
1768
+ return this.contract.write.disableTransferDelay(options) as Promise<`0x${string}`>;
1769
+ }
1770
+
1771
+ /**
1772
+ * enableTrading
1773
+ * nonpayable
1774
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1775
+ */
1776
+ async enableTrading(options?: {
1777
+ accessList?: import('viem').AccessList;
1778
+ authorizationList?: import('viem').AuthorizationList;
1779
+ chain?: import('viem').Chain | null;
1780
+ dataSuffix?: `0x${string}`;
1781
+ gas?: bigint;
1782
+ gasPrice?: bigint;
1783
+ maxFeePerGas?: bigint;
1784
+ maxPriorityFeePerGas?: bigint;
1785
+ nonce?: number;
1786
+ value?: bigint;
1787
+ }): Promise<`0x${string}`> {
1788
+ if (!this.contract.write) {
1789
+ throw new Error('Wallet client is required for write operations');
1790
+ }
1791
+ return this.contract.write.enableTrading(options) as Promise<`0x${string}`>;
1792
+ }
1793
+
1794
+ /**
1795
+ * excludeFromFees
1796
+ * nonpayable
1797
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1798
+ */
1799
+ async excludeFromFees(account: `0x${string}`, excluded: boolean, options?: {
1800
+ accessList?: import('viem').AccessList;
1801
+ authorizationList?: import('viem').AuthorizationList;
1802
+ chain?: import('viem').Chain | null;
1803
+ dataSuffix?: `0x${string}`;
1804
+ gas?: bigint;
1805
+ gasPrice?: bigint;
1806
+ maxFeePerGas?: bigint;
1807
+ maxPriorityFeePerGas?: bigint;
1808
+ nonce?: number;
1809
+ value?: bigint;
1810
+ }): Promise<`0x${string}`> {
1811
+ if (!this.contract.write) {
1812
+ throw new Error('Wallet client is required for write operations');
1813
+ }
1814
+ return this.contract.write.excludeFromFees([account, excluded] as const, options) as Promise<`0x${string}`>;
1815
+ }
1816
+
1817
+ /**
1818
+ * excludeFromMaxTransaction
1819
+ * nonpayable
1820
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1821
+ */
1822
+ async excludeFromMaxTransaction(updAds: `0x${string}`, isEx: boolean, options?: {
1823
+ accessList?: import('viem').AccessList;
1824
+ authorizationList?: import('viem').AuthorizationList;
1825
+ chain?: import('viem').Chain | null;
1826
+ dataSuffix?: `0x${string}`;
1827
+ gas?: bigint;
1828
+ gasPrice?: bigint;
1829
+ maxFeePerGas?: bigint;
1830
+ maxPriorityFeePerGas?: bigint;
1831
+ nonce?: number;
1832
+ value?: bigint;
1833
+ }): Promise<`0x${string}`> {
1834
+ if (!this.contract.write) {
1835
+ throw new Error('Wallet client is required for write operations');
1836
+ }
1837
+ return this.contract.write.excludeFromMaxTransaction([updAds, isEx] as const, options) as Promise<`0x${string}`>;
1838
+ }
1839
+
1840
+ /**
1841
+ * increaseAllowance
1842
+ * nonpayable
1843
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1844
+ */
1845
+ async increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
1846
+ accessList?: import('viem').AccessList;
1847
+ authorizationList?: import('viem').AuthorizationList;
1848
+ chain?: import('viem').Chain | null;
1849
+ dataSuffix?: `0x${string}`;
1850
+ gas?: bigint;
1851
+ gasPrice?: bigint;
1852
+ maxFeePerGas?: bigint;
1853
+ maxPriorityFeePerGas?: bigint;
1854
+ nonce?: number;
1855
+ value?: bigint;
1856
+ }): Promise<`0x${string}`> {
1857
+ if (!this.contract.write) {
1858
+ throw new Error('Wallet client is required for write operations');
1859
+ }
1860
+ return this.contract.write.increaseAllowance([spender, addedValue] as const, options) as Promise<`0x${string}`>;
1861
+ }
1862
+
1863
+ /**
1864
+ * manualBurnLiquidityPairTokens
1865
+ * nonpayable
1866
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1867
+ */
1868
+ async manualBurnLiquidityPairTokens(percent: bigint, options?: {
1869
+ accessList?: import('viem').AccessList;
1870
+ authorizationList?: import('viem').AuthorizationList;
1871
+ chain?: import('viem').Chain | null;
1872
+ dataSuffix?: `0x${string}`;
1873
+ gas?: bigint;
1874
+ gasPrice?: bigint;
1875
+ maxFeePerGas?: bigint;
1876
+ maxPriorityFeePerGas?: bigint;
1877
+ nonce?: number;
1878
+ value?: bigint;
1879
+ }): Promise<`0x${string}`> {
1880
+ if (!this.contract.write) {
1881
+ throw new Error('Wallet client is required for write operations');
1882
+ }
1883
+ return this.contract.write.manualBurnLiquidityPairTokens([percent] as const, options) as Promise<`0x${string}`>;
1884
+ }
1885
+
1886
+ /**
1887
+ * removeLimits
1888
+ * nonpayable
1889
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1890
+ */
1891
+ async removeLimits(options?: {
1892
+ accessList?: import('viem').AccessList;
1893
+ authorizationList?: import('viem').AuthorizationList;
1894
+ chain?: import('viem').Chain | null;
1895
+ dataSuffix?: `0x${string}`;
1896
+ gas?: bigint;
1897
+ gasPrice?: bigint;
1898
+ maxFeePerGas?: bigint;
1899
+ maxPriorityFeePerGas?: bigint;
1900
+ nonce?: number;
1901
+ value?: bigint;
1902
+ }): Promise<`0x${string}`> {
1903
+ if (!this.contract.write) {
1904
+ throw new Error('Wallet client is required for write operations');
1905
+ }
1906
+ return this.contract.write.removeLimits(options) as Promise<`0x${string}`>;
1907
+ }
1908
+
1909
+ /**
1910
+ * renounceOwnership
1911
+ * nonpayable
1912
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1913
+ */
1914
+ async renounceOwnership(options?: {
1915
+ accessList?: import('viem').AccessList;
1916
+ authorizationList?: import('viem').AuthorizationList;
1917
+ chain?: import('viem').Chain | null;
1918
+ dataSuffix?: `0x${string}`;
1919
+ gas?: bigint;
1920
+ gasPrice?: bigint;
1921
+ maxFeePerGas?: bigint;
1922
+ maxPriorityFeePerGas?: bigint;
1923
+ nonce?: number;
1924
+ value?: bigint;
1925
+ }): Promise<`0x${string}`> {
1926
+ if (!this.contract.write) {
1927
+ throw new Error('Wallet client is required for write operations');
1928
+ }
1929
+ return this.contract.write.renounceOwnership(options) as Promise<`0x${string}`>;
1930
+ }
1931
+
1932
+ /**
1933
+ * setAutoLPBurnSettings
1934
+ * nonpayable
1935
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1936
+ */
1937
+ async setAutoLPBurnSettings(_frequencyInSeconds: bigint, _percent: bigint, _Enabled: boolean, options?: {
1938
+ accessList?: import('viem').AccessList;
1939
+ authorizationList?: import('viem').AuthorizationList;
1940
+ chain?: import('viem').Chain | null;
1941
+ dataSuffix?: `0x${string}`;
1942
+ gas?: bigint;
1943
+ gasPrice?: bigint;
1944
+ maxFeePerGas?: bigint;
1945
+ maxPriorityFeePerGas?: bigint;
1946
+ nonce?: number;
1947
+ value?: bigint;
1948
+ }): Promise<`0x${string}`> {
1949
+ if (!this.contract.write) {
1950
+ throw new Error('Wallet client is required for write operations');
1951
+ }
1952
+ return this.contract.write.setAutoLPBurnSettings([_frequencyInSeconds, _percent, _Enabled] as const, options) as Promise<`0x${string}`>;
1953
+ }
1954
+
1955
+ /**
1956
+ * setAutomatedMarketMakerPair
1957
+ * nonpayable
1958
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1959
+ */
1960
+ async setAutomatedMarketMakerPair(pair: `0x${string}`, value: boolean, options?: {
1961
+ accessList?: import('viem').AccessList;
1962
+ authorizationList?: import('viem').AuthorizationList;
1963
+ chain?: import('viem').Chain | null;
1964
+ dataSuffix?: `0x${string}`;
1965
+ gas?: bigint;
1966
+ gasPrice?: bigint;
1967
+ maxFeePerGas?: bigint;
1968
+ maxPriorityFeePerGas?: bigint;
1969
+ nonce?: number;
1970
+ value?: bigint;
1971
+ }): Promise<`0x${string}`> {
1972
+ if (!this.contract.write) {
1973
+ throw new Error('Wallet client is required for write operations');
1974
+ }
1975
+ return this.contract.write.setAutomatedMarketMakerPair([pair, value] as const, options) as Promise<`0x${string}`>;
1976
+ }
1977
+
1978
+ /**
1979
+ * setEarlySellTax
1980
+ * nonpayable
1981
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1982
+ */
1983
+ async setEarlySellTax(onoff: boolean, options?: {
1984
+ accessList?: import('viem').AccessList;
1985
+ authorizationList?: import('viem').AuthorizationList;
1986
+ chain?: import('viem').Chain | null;
1987
+ dataSuffix?: `0x${string}`;
1988
+ gas?: bigint;
1989
+ gasPrice?: bigint;
1990
+ maxFeePerGas?: bigint;
1991
+ maxPriorityFeePerGas?: bigint;
1992
+ nonce?: number;
1993
+ value?: bigint;
1994
+ }): Promise<`0x${string}`> {
1995
+ if (!this.contract.write) {
1996
+ throw new Error('Wallet client is required for write operations');
1997
+ }
1998
+ return this.contract.write.setEarlySellTax([onoff] as const, options) as Promise<`0x${string}`>;
1999
+ }
2000
+
2001
+ /**
2002
+ * transfer
2003
+ * nonpayable
2004
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2005
+ */
2006
+ async transfer(recipient: `0x${string}`, amount: bigint, options?: {
2007
+ accessList?: import('viem').AccessList;
2008
+ authorizationList?: import('viem').AuthorizationList;
2009
+ chain?: import('viem').Chain | null;
2010
+ dataSuffix?: `0x${string}`;
2011
+ gas?: bigint;
2012
+ gasPrice?: bigint;
2013
+ maxFeePerGas?: bigint;
2014
+ maxPriorityFeePerGas?: bigint;
2015
+ nonce?: number;
2016
+ value?: bigint;
2017
+ }): Promise<`0x${string}`> {
2018
+ if (!this.contract.write) {
2019
+ throw new Error('Wallet client is required for write operations');
2020
+ }
2021
+ return this.contract.write.transfer([recipient, amount] as const, options) as Promise<`0x${string}`>;
2022
+ }
2023
+
2024
+ /**
2025
+ * transferFrom
2026
+ * nonpayable
2027
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2028
+ */
2029
+ async transferFrom(sender: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
2030
+ accessList?: import('viem').AccessList;
2031
+ authorizationList?: import('viem').AuthorizationList;
2032
+ chain?: import('viem').Chain | null;
2033
+ dataSuffix?: `0x${string}`;
2034
+ gas?: bigint;
2035
+ gasPrice?: bigint;
2036
+ maxFeePerGas?: bigint;
2037
+ maxPriorityFeePerGas?: bigint;
2038
+ nonce?: number;
2039
+ value?: bigint;
2040
+ }): Promise<`0x${string}`> {
2041
+ if (!this.contract.write) {
2042
+ throw new Error('Wallet client is required for write operations');
2043
+ }
2044
+ return this.contract.write.transferFrom([sender, recipient, amount] as const, options) as Promise<`0x${string}`>;
2045
+ }
2046
+
2047
+ /**
2048
+ * transferOwnership
2049
+ * nonpayable
2050
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2051
+ */
2052
+ async transferOwnership(newOwner: `0x${string}`, options?: {
2053
+ accessList?: import('viem').AccessList;
2054
+ authorizationList?: import('viem').AuthorizationList;
2055
+ chain?: import('viem').Chain | null;
2056
+ dataSuffix?: `0x${string}`;
2057
+ gas?: bigint;
2058
+ gasPrice?: bigint;
2059
+ maxFeePerGas?: bigint;
2060
+ maxPriorityFeePerGas?: bigint;
2061
+ nonce?: number;
2062
+ value?: bigint;
2063
+ }): Promise<`0x${string}`> {
2064
+ if (!this.contract.write) {
2065
+ throw new Error('Wallet client is required for write operations');
2066
+ }
2067
+ return this.contract.write.transferOwnership([newOwner] as const, options) as Promise<`0x${string}`>;
2068
+ }
2069
+
2070
+ /**
2071
+ * updateBuyFees
2072
+ * nonpayable
2073
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2074
+ */
2075
+ async updateBuyFees(_marketingFee: bigint, _liquidityFee: bigint, _devFee: bigint, options?: {
2076
+ accessList?: import('viem').AccessList;
2077
+ authorizationList?: import('viem').AuthorizationList;
2078
+ chain?: import('viem').Chain | null;
2079
+ dataSuffix?: `0x${string}`;
2080
+ gas?: bigint;
2081
+ gasPrice?: bigint;
2082
+ maxFeePerGas?: bigint;
2083
+ maxPriorityFeePerGas?: bigint;
2084
+ nonce?: number;
2085
+ value?: bigint;
2086
+ }): Promise<`0x${string}`> {
2087
+ if (!this.contract.write) {
2088
+ throw new Error('Wallet client is required for write operations');
2089
+ }
2090
+ return this.contract.write.updateBuyFees([_marketingFee, _liquidityFee, _devFee] as const, options) as Promise<`0x${string}`>;
2091
+ }
2092
+
2093
+ /**
2094
+ * updateDevWallet
2095
+ * nonpayable
2096
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2097
+ */
2098
+ async updateDevWallet(newWallet: `0x${string}`, options?: {
2099
+ accessList?: import('viem').AccessList;
2100
+ authorizationList?: import('viem').AuthorizationList;
2101
+ chain?: import('viem').Chain | null;
2102
+ dataSuffix?: `0x${string}`;
2103
+ gas?: bigint;
2104
+ gasPrice?: bigint;
2105
+ maxFeePerGas?: bigint;
2106
+ maxPriorityFeePerGas?: bigint;
2107
+ nonce?: number;
2108
+ value?: bigint;
2109
+ }): Promise<`0x${string}`> {
2110
+ if (!this.contract.write) {
2111
+ throw new Error('Wallet client is required for write operations');
2112
+ }
2113
+ return this.contract.write.updateDevWallet([newWallet] as const, options) as Promise<`0x${string}`>;
2114
+ }
2115
+
2116
+ /**
2117
+ * updateMarketingWallet
2118
+ * nonpayable
2119
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2120
+ */
2121
+ async updateMarketingWallet(newMarketingWallet: `0x${string}`, options?: {
2122
+ accessList?: import('viem').AccessList;
2123
+ authorizationList?: import('viem').AuthorizationList;
2124
+ chain?: import('viem').Chain | null;
2125
+ dataSuffix?: `0x${string}`;
2126
+ gas?: bigint;
2127
+ gasPrice?: bigint;
2128
+ maxFeePerGas?: bigint;
2129
+ maxPriorityFeePerGas?: bigint;
2130
+ nonce?: number;
2131
+ value?: bigint;
2132
+ }): Promise<`0x${string}`> {
2133
+ if (!this.contract.write) {
2134
+ throw new Error('Wallet client is required for write operations');
2135
+ }
2136
+ return this.contract.write.updateMarketingWallet([newMarketingWallet] as const, options) as Promise<`0x${string}`>;
2137
+ }
2138
+
2139
+ /**
2140
+ * updateMaxTxnAmount
2141
+ * nonpayable
2142
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2143
+ */
2144
+ async updateMaxTxnAmount(newNum: bigint, options?: {
2145
+ accessList?: import('viem').AccessList;
2146
+ authorizationList?: import('viem').AuthorizationList;
2147
+ chain?: import('viem').Chain | null;
2148
+ dataSuffix?: `0x${string}`;
2149
+ gas?: bigint;
2150
+ gasPrice?: bigint;
2151
+ maxFeePerGas?: bigint;
2152
+ maxPriorityFeePerGas?: bigint;
2153
+ nonce?: number;
2154
+ value?: bigint;
2155
+ }): Promise<`0x${string}`> {
2156
+ if (!this.contract.write) {
2157
+ throw new Error('Wallet client is required for write operations');
2158
+ }
2159
+ return this.contract.write.updateMaxTxnAmount([newNum] as const, options) as Promise<`0x${string}`>;
2160
+ }
2161
+
2162
+ /**
2163
+ * updateMaxWalletAmount
2164
+ * nonpayable
2165
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2166
+ */
2167
+ async updateMaxWalletAmount(newNum: 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<`0x${string}`> {
2179
+ if (!this.contract.write) {
2180
+ throw new Error('Wallet client is required for write operations');
2181
+ }
2182
+ return this.contract.write.updateMaxWalletAmount([newNum] as const, options) as Promise<`0x${string}`>;
2183
+ }
2184
+
2185
+ /**
2186
+ * updateSellFees
2187
+ * nonpayable
2188
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2189
+ */
2190
+ async updateSellFees(_marketingFee: bigint, _liquidityFee: bigint, _devFee: bigint, _earlySellLiquidityFee: bigint, _earlySellMarketingFee: bigint, options?: {
2191
+ accessList?: import('viem').AccessList;
2192
+ authorizationList?: import('viem').AuthorizationList;
2193
+ chain?: import('viem').Chain | null;
2194
+ dataSuffix?: `0x${string}`;
2195
+ gas?: bigint;
2196
+ gasPrice?: bigint;
2197
+ maxFeePerGas?: bigint;
2198
+ maxPriorityFeePerGas?: bigint;
2199
+ nonce?: number;
2200
+ value?: bigint;
2201
+ }): Promise<`0x${string}`> {
2202
+ if (!this.contract.write) {
2203
+ throw new Error('Wallet client is required for write operations');
2204
+ }
2205
+ return this.contract.write.updateSellFees([_marketingFee, _liquidityFee, _devFee, _earlySellLiquidityFee, _earlySellMarketingFee] as const, options) as Promise<`0x${string}`>;
2206
+ }
2207
+
2208
+ /**
2209
+ * updateSwapEnabled
2210
+ * nonpayable
2211
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2212
+ */
2213
+ async updateSwapEnabled(enabled: boolean, options?: {
2214
+ accessList?: import('viem').AccessList;
2215
+ authorizationList?: import('viem').AuthorizationList;
2216
+ chain?: import('viem').Chain | null;
2217
+ dataSuffix?: `0x${string}`;
2218
+ gas?: bigint;
2219
+ gasPrice?: bigint;
2220
+ maxFeePerGas?: bigint;
2221
+ maxPriorityFeePerGas?: bigint;
2222
+ nonce?: number;
2223
+ value?: bigint;
2224
+ }): Promise<`0x${string}`> {
2225
+ if (!this.contract.write) {
2226
+ throw new Error('Wallet client is required for write operations');
2227
+ }
2228
+ return this.contract.write.updateSwapEnabled([enabled] as const, options) as Promise<`0x${string}`>;
2229
+ }
2230
+
2231
+ /**
2232
+ * updateSwapTokensAtAmount
2233
+ * nonpayable
2234
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2235
+ */
2236
+ async updateSwapTokensAtAmount(newAmount: bigint, options?: {
2237
+ accessList?: import('viem').AccessList;
2238
+ authorizationList?: import('viem').AuthorizationList;
2239
+ chain?: import('viem').Chain | null;
2240
+ dataSuffix?: `0x${string}`;
2241
+ gas?: bigint;
2242
+ gasPrice?: bigint;
2243
+ maxFeePerGas?: bigint;
2244
+ maxPriorityFeePerGas?: bigint;
2245
+ nonce?: number;
2246
+ value?: bigint;
2247
+ }): Promise<`0x${string}`> {
2248
+ if (!this.contract.write) {
2249
+ throw new Error('Wallet client is required for write operations');
2250
+ }
2251
+ return this.contract.write.updateSwapTokensAtAmount([newAmount] as const, options) as Promise<`0x${string}`>;
2252
+ }
2253
+
2254
+
2255
+
2256
+ /**
2257
+ * Simulate contract write operations (dry-run without sending transaction)
2258
+ *
2259
+ * @example
2260
+ * const result = await contract.simulate.transfer('0x...', 1000n);
2261
+ * console.log('Gas estimate:', result.request.gas);
2262
+ * console.log('Would succeed:', result.result);
2263
+ */
2264
+ get simulate() {
2265
+ const contract = this.contract;
2266
+ if (!contract.simulate) {
2267
+ throw new Error('Public client is required for simulation');
2268
+ }
2269
+ return {
2270
+ /**
2271
+ * Simulate approve
2272
+ * Returns gas estimate and result without sending transaction
2273
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2274
+ */
2275
+ async approve(spender: `0x${string}`, amount: bigint, options?: {
2276
+ accessList?: import('viem').AccessList;
2277
+ authorizationList?: import('viem').AuthorizationList;
2278
+ chain?: import('viem').Chain | null;
2279
+ dataSuffix?: `0x${string}`;
2280
+ gas?: bigint;
2281
+ gasPrice?: bigint;
2282
+ maxFeePerGas?: bigint;
2283
+ maxPriorityFeePerGas?: bigint;
2284
+ nonce?: number;
2285
+ value?: bigint;
2286
+ }): Promise<boolean> {
2287
+ return contract.simulate.approve([spender, amount] as const, options) as Promise<boolean>;
2288
+ },
2289
+ /**
2290
+ * Simulate blacklistAccount
2291
+ * Returns gas estimate and result without sending transaction
2292
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2293
+ */
2294
+ async blacklistAccount(account: `0x${string}`, isBlacklisted: boolean, options?: {
2295
+ accessList?: import('viem').AccessList;
2296
+ authorizationList?: import('viem').AuthorizationList;
2297
+ chain?: import('viem').Chain | null;
2298
+ dataSuffix?: `0x${string}`;
2299
+ gas?: bigint;
2300
+ gasPrice?: bigint;
2301
+ maxFeePerGas?: bigint;
2302
+ maxPriorityFeePerGas?: bigint;
2303
+ nonce?: number;
2304
+ value?: bigint;
2305
+ }): Promise<void> {
2306
+ return contract.simulate.blacklistAccount([account, isBlacklisted] as const, options) as Promise<void>;
2307
+ },
2308
+ /**
2309
+ * Simulate decreaseAllowance
2310
+ * Returns gas estimate and result without sending transaction
2311
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2312
+ */
2313
+ async decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
2314
+ accessList?: import('viem').AccessList;
2315
+ authorizationList?: import('viem').AuthorizationList;
2316
+ chain?: import('viem').Chain | null;
2317
+ dataSuffix?: `0x${string}`;
2318
+ gas?: bigint;
2319
+ gasPrice?: bigint;
2320
+ maxFeePerGas?: bigint;
2321
+ maxPriorityFeePerGas?: bigint;
2322
+ nonce?: number;
2323
+ value?: bigint;
2324
+ }): Promise<boolean> {
2325
+ return contract.simulate.decreaseAllowance([spender, subtractedValue] as const, options) as Promise<boolean>;
2326
+ },
2327
+ /**
2328
+ * Simulate disableTransferDelay
2329
+ * Returns gas estimate and result without sending transaction
2330
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2331
+ */
2332
+ async disableTransferDelay(options?: {
2333
+ accessList?: import('viem').AccessList;
2334
+ authorizationList?: import('viem').AuthorizationList;
2335
+ chain?: import('viem').Chain | null;
2336
+ dataSuffix?: `0x${string}`;
2337
+ gas?: bigint;
2338
+ gasPrice?: bigint;
2339
+ maxFeePerGas?: bigint;
2340
+ maxPriorityFeePerGas?: bigint;
2341
+ nonce?: number;
2342
+ value?: bigint;
2343
+ }): Promise<boolean> {
2344
+ return contract.simulate.disableTransferDelay(options) as Promise<boolean>;
2345
+ },
2346
+ /**
2347
+ * Simulate enableTrading
2348
+ * Returns gas estimate and result without sending transaction
2349
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2350
+ */
2351
+ async enableTrading(options?: {
2352
+ accessList?: import('viem').AccessList;
2353
+ authorizationList?: import('viem').AuthorizationList;
2354
+ chain?: import('viem').Chain | null;
2355
+ dataSuffix?: `0x${string}`;
2356
+ gas?: bigint;
2357
+ gasPrice?: bigint;
2358
+ maxFeePerGas?: bigint;
2359
+ maxPriorityFeePerGas?: bigint;
2360
+ nonce?: number;
2361
+ value?: bigint;
2362
+ }): Promise<void> {
2363
+ return contract.simulate.enableTrading(options) as Promise<void>;
2364
+ },
2365
+ /**
2366
+ * Simulate excludeFromFees
2367
+ * Returns gas estimate and result without sending transaction
2368
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2369
+ */
2370
+ async excludeFromFees(account: `0x${string}`, excluded: boolean, options?: {
2371
+ accessList?: import('viem').AccessList;
2372
+ authorizationList?: import('viem').AuthorizationList;
2373
+ chain?: import('viem').Chain | null;
2374
+ dataSuffix?: `0x${string}`;
2375
+ gas?: bigint;
2376
+ gasPrice?: bigint;
2377
+ maxFeePerGas?: bigint;
2378
+ maxPriorityFeePerGas?: bigint;
2379
+ nonce?: number;
2380
+ value?: bigint;
2381
+ }): Promise<void> {
2382
+ return contract.simulate.excludeFromFees([account, excluded] as const, options) as Promise<void>;
2383
+ },
2384
+ /**
2385
+ * Simulate excludeFromMaxTransaction
2386
+ * Returns gas estimate and result without sending transaction
2387
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2388
+ */
2389
+ async excludeFromMaxTransaction(updAds: `0x${string}`, isEx: boolean, options?: {
2390
+ accessList?: import('viem').AccessList;
2391
+ authorizationList?: import('viem').AuthorizationList;
2392
+ chain?: import('viem').Chain | null;
2393
+ dataSuffix?: `0x${string}`;
2394
+ gas?: bigint;
2395
+ gasPrice?: bigint;
2396
+ maxFeePerGas?: bigint;
2397
+ maxPriorityFeePerGas?: bigint;
2398
+ nonce?: number;
2399
+ value?: bigint;
2400
+ }): Promise<void> {
2401
+ return contract.simulate.excludeFromMaxTransaction([updAds, isEx] as const, options) as Promise<void>;
2402
+ },
2403
+ /**
2404
+ * Simulate increaseAllowance
2405
+ * Returns gas estimate and result without sending transaction
2406
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2407
+ */
2408
+ async increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
2409
+ accessList?: import('viem').AccessList;
2410
+ authorizationList?: import('viem').AuthorizationList;
2411
+ chain?: import('viem').Chain | null;
2412
+ dataSuffix?: `0x${string}`;
2413
+ gas?: bigint;
2414
+ gasPrice?: bigint;
2415
+ maxFeePerGas?: bigint;
2416
+ maxPriorityFeePerGas?: bigint;
2417
+ nonce?: number;
2418
+ value?: bigint;
2419
+ }): Promise<boolean> {
2420
+ return contract.simulate.increaseAllowance([spender, addedValue] as const, options) as Promise<boolean>;
2421
+ },
2422
+ /**
2423
+ * Simulate manualBurnLiquidityPairTokens
2424
+ * Returns gas estimate and result without sending transaction
2425
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2426
+ */
2427
+ async manualBurnLiquidityPairTokens(percent: bigint, options?: {
2428
+ accessList?: import('viem').AccessList;
2429
+ authorizationList?: import('viem').AuthorizationList;
2430
+ chain?: import('viem').Chain | null;
2431
+ dataSuffix?: `0x${string}`;
2432
+ gas?: bigint;
2433
+ gasPrice?: bigint;
2434
+ maxFeePerGas?: bigint;
2435
+ maxPriorityFeePerGas?: bigint;
2436
+ nonce?: number;
2437
+ value?: bigint;
2438
+ }): Promise<boolean> {
2439
+ return contract.simulate.manualBurnLiquidityPairTokens([percent] as const, options) as Promise<boolean>;
2440
+ },
2441
+ /**
2442
+ * Simulate removeLimits
2443
+ * Returns gas estimate and result without sending transaction
2444
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2445
+ */
2446
+ async removeLimits(options?: {
2447
+ accessList?: import('viem').AccessList;
2448
+ authorizationList?: import('viem').AuthorizationList;
2449
+ chain?: import('viem').Chain | null;
2450
+ dataSuffix?: `0x${string}`;
2451
+ gas?: bigint;
2452
+ gasPrice?: bigint;
2453
+ maxFeePerGas?: bigint;
2454
+ maxPriorityFeePerGas?: bigint;
2455
+ nonce?: number;
2456
+ value?: bigint;
2457
+ }): Promise<boolean> {
2458
+ return contract.simulate.removeLimits(options) as Promise<boolean>;
2459
+ },
2460
+ /**
2461
+ * Simulate renounceOwnership
2462
+ * Returns gas estimate and result without sending transaction
2463
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2464
+ */
2465
+ async renounceOwnership(options?: {
2466
+ accessList?: import('viem').AccessList;
2467
+ authorizationList?: import('viem').AuthorizationList;
2468
+ chain?: import('viem').Chain | null;
2469
+ dataSuffix?: `0x${string}`;
2470
+ gas?: bigint;
2471
+ gasPrice?: bigint;
2472
+ maxFeePerGas?: bigint;
2473
+ maxPriorityFeePerGas?: bigint;
2474
+ nonce?: number;
2475
+ value?: bigint;
2476
+ }): Promise<void> {
2477
+ return contract.simulate.renounceOwnership(options) as Promise<void>;
2478
+ },
2479
+ /**
2480
+ * Simulate setAutoLPBurnSettings
2481
+ * Returns gas estimate and result without sending transaction
2482
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2483
+ */
2484
+ async setAutoLPBurnSettings(_frequencyInSeconds: bigint, _percent: bigint, _Enabled: boolean, options?: {
2485
+ accessList?: import('viem').AccessList;
2486
+ authorizationList?: import('viem').AuthorizationList;
2487
+ chain?: import('viem').Chain | null;
2488
+ dataSuffix?: `0x${string}`;
2489
+ gas?: bigint;
2490
+ gasPrice?: bigint;
2491
+ maxFeePerGas?: bigint;
2492
+ maxPriorityFeePerGas?: bigint;
2493
+ nonce?: number;
2494
+ value?: bigint;
2495
+ }): Promise<void> {
2496
+ return contract.simulate.setAutoLPBurnSettings([_frequencyInSeconds, _percent, _Enabled] as const, options) as Promise<void>;
2497
+ },
2498
+ /**
2499
+ * Simulate setAutomatedMarketMakerPair
2500
+ * Returns gas estimate and result without sending transaction
2501
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2502
+ */
2503
+ async setAutomatedMarketMakerPair(pair: `0x${string}`, value: boolean, options?: {
2504
+ accessList?: import('viem').AccessList;
2505
+ authorizationList?: import('viem').AuthorizationList;
2506
+ chain?: import('viem').Chain | null;
2507
+ dataSuffix?: `0x${string}`;
2508
+ gas?: bigint;
2509
+ gasPrice?: bigint;
2510
+ maxFeePerGas?: bigint;
2511
+ maxPriorityFeePerGas?: bigint;
2512
+ nonce?: number;
2513
+ value?: bigint;
2514
+ }): Promise<void> {
2515
+ return contract.simulate.setAutomatedMarketMakerPair([pair, value] as const, options) as Promise<void>;
2516
+ },
2517
+ /**
2518
+ * Simulate setEarlySellTax
2519
+ * Returns gas estimate and result without sending transaction
2520
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2521
+ */
2522
+ async setEarlySellTax(onoff: boolean, options?: {
2523
+ accessList?: import('viem').AccessList;
2524
+ authorizationList?: import('viem').AuthorizationList;
2525
+ chain?: import('viem').Chain | null;
2526
+ dataSuffix?: `0x${string}`;
2527
+ gas?: bigint;
2528
+ gasPrice?: bigint;
2529
+ maxFeePerGas?: bigint;
2530
+ maxPriorityFeePerGas?: bigint;
2531
+ nonce?: number;
2532
+ value?: bigint;
2533
+ }): Promise<void> {
2534
+ return contract.simulate.setEarlySellTax([onoff] as const, options) as Promise<void>;
2535
+ },
2536
+ /**
2537
+ * Simulate transfer
2538
+ * Returns gas estimate and result without sending transaction
2539
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2540
+ */
2541
+ async transfer(recipient: `0x${string}`, amount: bigint, options?: {
2542
+ accessList?: import('viem').AccessList;
2543
+ authorizationList?: import('viem').AuthorizationList;
2544
+ chain?: import('viem').Chain | null;
2545
+ dataSuffix?: `0x${string}`;
2546
+ gas?: bigint;
2547
+ gasPrice?: bigint;
2548
+ maxFeePerGas?: bigint;
2549
+ maxPriorityFeePerGas?: bigint;
2550
+ nonce?: number;
2551
+ value?: bigint;
2552
+ }): Promise<boolean> {
2553
+ return contract.simulate.transfer([recipient, amount] as const, options) as Promise<boolean>;
2554
+ },
2555
+ /**
2556
+ * Simulate transferFrom
2557
+ * Returns gas estimate and result without sending transaction
2558
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2559
+ */
2560
+ async transferFrom(sender: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
2561
+ accessList?: import('viem').AccessList;
2562
+ authorizationList?: import('viem').AuthorizationList;
2563
+ chain?: import('viem').Chain | null;
2564
+ dataSuffix?: `0x${string}`;
2565
+ gas?: bigint;
2566
+ gasPrice?: bigint;
2567
+ maxFeePerGas?: bigint;
2568
+ maxPriorityFeePerGas?: bigint;
2569
+ nonce?: number;
2570
+ value?: bigint;
2571
+ }): Promise<boolean> {
2572
+ return contract.simulate.transferFrom([sender, recipient, amount] as const, options) as Promise<boolean>;
2573
+ },
2574
+ /**
2575
+ * Simulate transferOwnership
2576
+ * Returns gas estimate and result without sending transaction
2577
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2578
+ */
2579
+ async transferOwnership(newOwner: `0x${string}`, options?: {
2580
+ accessList?: import('viem').AccessList;
2581
+ authorizationList?: import('viem').AuthorizationList;
2582
+ chain?: import('viem').Chain | null;
2583
+ dataSuffix?: `0x${string}`;
2584
+ gas?: bigint;
2585
+ gasPrice?: bigint;
2586
+ maxFeePerGas?: bigint;
2587
+ maxPriorityFeePerGas?: bigint;
2588
+ nonce?: number;
2589
+ value?: bigint;
2590
+ }): Promise<void> {
2591
+ return contract.simulate.transferOwnership([newOwner] as const, options) as Promise<void>;
2592
+ },
2593
+ /**
2594
+ * Simulate updateBuyFees
2595
+ * Returns gas estimate and result without sending transaction
2596
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2597
+ */
2598
+ async updateBuyFees(_marketingFee: bigint, _liquidityFee: bigint, _devFee: bigint, options?: {
2599
+ accessList?: import('viem').AccessList;
2600
+ authorizationList?: import('viem').AuthorizationList;
2601
+ chain?: import('viem').Chain | null;
2602
+ dataSuffix?: `0x${string}`;
2603
+ gas?: bigint;
2604
+ gasPrice?: bigint;
2605
+ maxFeePerGas?: bigint;
2606
+ maxPriorityFeePerGas?: bigint;
2607
+ nonce?: number;
2608
+ value?: bigint;
2609
+ }): Promise<void> {
2610
+ return contract.simulate.updateBuyFees([_marketingFee, _liquidityFee, _devFee] as const, options) as Promise<void>;
2611
+ },
2612
+ /**
2613
+ * Simulate updateDevWallet
2614
+ * Returns gas estimate and result without sending transaction
2615
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2616
+ */
2617
+ async updateDevWallet(newWallet: `0x${string}`, options?: {
2618
+ accessList?: import('viem').AccessList;
2619
+ authorizationList?: import('viem').AuthorizationList;
2620
+ chain?: import('viem').Chain | null;
2621
+ dataSuffix?: `0x${string}`;
2622
+ gas?: bigint;
2623
+ gasPrice?: bigint;
2624
+ maxFeePerGas?: bigint;
2625
+ maxPriorityFeePerGas?: bigint;
2626
+ nonce?: number;
2627
+ value?: bigint;
2628
+ }): Promise<void> {
2629
+ return contract.simulate.updateDevWallet([newWallet] as const, options) as Promise<void>;
2630
+ },
2631
+ /**
2632
+ * Simulate updateMarketingWallet
2633
+ * Returns gas estimate and result without sending transaction
2634
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2635
+ */
2636
+ async updateMarketingWallet(newMarketingWallet: `0x${string}`, options?: {
2637
+ accessList?: import('viem').AccessList;
2638
+ authorizationList?: import('viem').AuthorizationList;
2639
+ chain?: import('viem').Chain | null;
2640
+ dataSuffix?: `0x${string}`;
2641
+ gas?: bigint;
2642
+ gasPrice?: bigint;
2643
+ maxFeePerGas?: bigint;
2644
+ maxPriorityFeePerGas?: bigint;
2645
+ nonce?: number;
2646
+ value?: bigint;
2647
+ }): Promise<void> {
2648
+ return contract.simulate.updateMarketingWallet([newMarketingWallet] as const, options) as Promise<void>;
2649
+ },
2650
+ /**
2651
+ * Simulate updateMaxTxnAmount
2652
+ * Returns gas estimate and result without sending transaction
2653
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2654
+ */
2655
+ async updateMaxTxnAmount(newNum: bigint, options?: {
2656
+ accessList?: import('viem').AccessList;
2657
+ authorizationList?: import('viem').AuthorizationList;
2658
+ chain?: import('viem').Chain | null;
2659
+ dataSuffix?: `0x${string}`;
2660
+ gas?: bigint;
2661
+ gasPrice?: bigint;
2662
+ maxFeePerGas?: bigint;
2663
+ maxPriorityFeePerGas?: bigint;
2664
+ nonce?: number;
2665
+ value?: bigint;
2666
+ }): Promise<void> {
2667
+ return contract.simulate.updateMaxTxnAmount([newNum] as const, options) as Promise<void>;
2668
+ },
2669
+ /**
2670
+ * Simulate updateMaxWalletAmount
2671
+ * Returns gas estimate and result without sending transaction
2672
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2673
+ */
2674
+ async updateMaxWalletAmount(newNum: bigint, options?: {
2675
+ accessList?: import('viem').AccessList;
2676
+ authorizationList?: import('viem').AuthorizationList;
2677
+ chain?: import('viem').Chain | null;
2678
+ dataSuffix?: `0x${string}`;
2679
+ gas?: bigint;
2680
+ gasPrice?: bigint;
2681
+ maxFeePerGas?: bigint;
2682
+ maxPriorityFeePerGas?: bigint;
2683
+ nonce?: number;
2684
+ value?: bigint;
2685
+ }): Promise<void> {
2686
+ return contract.simulate.updateMaxWalletAmount([newNum] as const, options) as Promise<void>;
2687
+ },
2688
+ /**
2689
+ * Simulate updateSellFees
2690
+ * Returns gas estimate and result without sending transaction
2691
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2692
+ */
2693
+ async updateSellFees(_marketingFee: bigint, _liquidityFee: bigint, _devFee: bigint, _earlySellLiquidityFee: bigint, _earlySellMarketingFee: bigint, options?: {
2694
+ accessList?: import('viem').AccessList;
2695
+ authorizationList?: import('viem').AuthorizationList;
2696
+ chain?: import('viem').Chain | null;
2697
+ dataSuffix?: `0x${string}`;
2698
+ gas?: bigint;
2699
+ gasPrice?: bigint;
2700
+ maxFeePerGas?: bigint;
2701
+ maxPriorityFeePerGas?: bigint;
2702
+ nonce?: number;
2703
+ value?: bigint;
2704
+ }): Promise<void> {
2705
+ return contract.simulate.updateSellFees([_marketingFee, _liquidityFee, _devFee, _earlySellLiquidityFee, _earlySellMarketingFee] as const, options) as Promise<void>;
2706
+ },
2707
+ /**
2708
+ * Simulate updateSwapEnabled
2709
+ * Returns gas estimate and result without sending transaction
2710
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2711
+ */
2712
+ async updateSwapEnabled(enabled: boolean, options?: {
2713
+ accessList?: import('viem').AccessList;
2714
+ authorizationList?: import('viem').AuthorizationList;
2715
+ chain?: import('viem').Chain | null;
2716
+ dataSuffix?: `0x${string}`;
2717
+ gas?: bigint;
2718
+ gasPrice?: bigint;
2719
+ maxFeePerGas?: bigint;
2720
+ maxPriorityFeePerGas?: bigint;
2721
+ nonce?: number;
2722
+ value?: bigint;
2723
+ }): Promise<void> {
2724
+ return contract.simulate.updateSwapEnabled([enabled] as const, options) as Promise<void>;
2725
+ },
2726
+ /**
2727
+ * Simulate updateSwapTokensAtAmount
2728
+ * Returns gas estimate and result without sending transaction
2729
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2730
+ */
2731
+ async updateSwapTokensAtAmount(newAmount: bigint, options?: {
2732
+ accessList?: import('viem').AccessList;
2733
+ authorizationList?: import('viem').AuthorizationList;
2734
+ chain?: import('viem').Chain | null;
2735
+ dataSuffix?: `0x${string}`;
2736
+ gas?: bigint;
2737
+ gasPrice?: bigint;
2738
+ maxFeePerGas?: bigint;
2739
+ maxPriorityFeePerGas?: bigint;
2740
+ nonce?: number;
2741
+ value?: bigint;
2742
+ }): Promise<boolean> {
2743
+ return contract.simulate.updateSwapTokensAtAmount([newAmount] as const, options) as Promise<boolean>;
2744
+ }
2745
+ };
2746
+ }
2747
+
2748
+ /**
2749
+ * Watch contract events
2750
+ *
2751
+ * @example
2752
+ * // Watch all Transfer events
2753
+ * const unwatch = contract.watch.Transfer((event) => {
2754
+ * console.log('Transfer:', event);
2755
+ * });
2756
+ *
2757
+ * // Stop watching
2758
+ * unwatch();
2759
+ */
2760
+ get watch() {
2761
+ return {
2762
+ /**
2763
+ * Watch Approval events
2764
+ * @param callback Function to call when event is emitted
2765
+ * @param filter Optional filter for indexed parameters
2766
+ * @returns Unwatch function to stop listening
2767
+ */
2768
+ Approval: (callback: (event: { owner: `0x${string}`; spender: `0x${string}`; value: bigint }) => void, filter?: { owner: `0x${string}`; spender: `0x${string}` }) => {
2769
+ return this.publicClient.watchContractEvent({
2770
+ address: this.contractAddress,
2771
+ abi: MIC_jsonAbi,
2772
+ eventName: 'Approval',
2773
+ args: filter,
2774
+ onLogs: (logs: any[]) => {
2775
+ logs.forEach((log: any) => {
2776
+ callback(log.args as any);
2777
+ });
2778
+ },
2779
+ }) as () => void;
2780
+ },
2781
+ /**
2782
+ * Watch AutoNukeLP events
2783
+ * @param callback Function to call when event is emitted
2784
+ * @param filter Optional filter for indexed parameters
2785
+ * @returns Unwatch function to stop listening
2786
+ */
2787
+ AutoNukeLP: (callback: (event: { }) => void) => {
2788
+ return this.publicClient.watchContractEvent({
2789
+ address: this.contractAddress,
2790
+ abi: MIC_jsonAbi,
2791
+ eventName: 'AutoNukeLP',
2792
+
2793
+ onLogs: (logs: any[]) => {
2794
+ logs.forEach((log: any) => {
2795
+ callback(log.args as any);
2796
+ });
2797
+ },
2798
+ }) as () => void;
2799
+ },
2800
+ /**
2801
+ * Watch BoughtEarly events
2802
+ * @param callback Function to call when event is emitted
2803
+ * @param filter Optional filter for indexed parameters
2804
+ * @returns Unwatch function to stop listening
2805
+ */
2806
+ BoughtEarly: (callback: (event: { sniper: `0x${string}` }) => void, filter?: { sniper: `0x${string}` }) => {
2807
+ return this.publicClient.watchContractEvent({
2808
+ address: this.contractAddress,
2809
+ abi: MIC_jsonAbi,
2810
+ eventName: 'BoughtEarly',
2811
+ args: filter,
2812
+ onLogs: (logs: any[]) => {
2813
+ logs.forEach((log: any) => {
2814
+ callback(log.args as any);
2815
+ });
2816
+ },
2817
+ }) as () => void;
2818
+ },
2819
+ /**
2820
+ * Watch ExcludeFromFees events
2821
+ * @param callback Function to call when event is emitted
2822
+ * @param filter Optional filter for indexed parameters
2823
+ * @returns Unwatch function to stop listening
2824
+ */
2825
+ ExcludeFromFees: (callback: (event: { account: `0x${string}`; isExcluded: boolean }) => void, filter?: { account: `0x${string}` }) => {
2826
+ return this.publicClient.watchContractEvent({
2827
+ address: this.contractAddress,
2828
+ abi: MIC_jsonAbi,
2829
+ eventName: 'ExcludeFromFees',
2830
+ args: filter,
2831
+ onLogs: (logs: any[]) => {
2832
+ logs.forEach((log: any) => {
2833
+ callback(log.args as any);
2834
+ });
2835
+ },
2836
+ }) as () => void;
2837
+ },
2838
+ /**
2839
+ * Watch ManualNukeLP events
2840
+ * @param callback Function to call when event is emitted
2841
+ * @param filter Optional filter for indexed parameters
2842
+ * @returns Unwatch function to stop listening
2843
+ */
2844
+ ManualNukeLP: (callback: (event: { }) => void) => {
2845
+ return this.publicClient.watchContractEvent({
2846
+ address: this.contractAddress,
2847
+ abi: MIC_jsonAbi,
2848
+ eventName: 'ManualNukeLP',
2849
+
2850
+ onLogs: (logs: any[]) => {
2851
+ logs.forEach((log: any) => {
2852
+ callback(log.args as any);
2853
+ });
2854
+ },
2855
+ }) as () => void;
2856
+ },
2857
+ /**
2858
+ * Watch OwnershipTransferred events
2859
+ * @param callback Function to call when event is emitted
2860
+ * @param filter Optional filter for indexed parameters
2861
+ * @returns Unwatch function to stop listening
2862
+ */
2863
+ OwnershipTransferred: (callback: (event: { previousOwner: `0x${string}`; newOwner: `0x${string}` }) => void, filter?: { previousOwner: `0x${string}`; newOwner: `0x${string}` }) => {
2864
+ return this.publicClient.watchContractEvent({
2865
+ address: this.contractAddress,
2866
+ abi: MIC_jsonAbi,
2867
+ eventName: 'OwnershipTransferred',
2868
+ args: filter,
2869
+ onLogs: (logs: any[]) => {
2870
+ logs.forEach((log: any) => {
2871
+ callback(log.args as any);
2872
+ });
2873
+ },
2874
+ }) as () => void;
2875
+ },
2876
+ /**
2877
+ * Watch SetAutomatedMarketMakerPair events
2878
+ * @param callback Function to call when event is emitted
2879
+ * @param filter Optional filter for indexed parameters
2880
+ * @returns Unwatch function to stop listening
2881
+ */
2882
+ SetAutomatedMarketMakerPair: (callback: (event: { pair: `0x${string}`; value: boolean }) => void, filter?: { pair: `0x${string}`; value: boolean }) => {
2883
+ return this.publicClient.watchContractEvent({
2884
+ address: this.contractAddress,
2885
+ abi: MIC_jsonAbi,
2886
+ eventName: 'SetAutomatedMarketMakerPair',
2887
+ args: filter,
2888
+ onLogs: (logs: any[]) => {
2889
+ logs.forEach((log: any) => {
2890
+ callback(log.args as any);
2891
+ });
2892
+ },
2893
+ }) as () => void;
2894
+ },
2895
+ /**
2896
+ * Watch SwapAndLiquify events
2897
+ * @param callback Function to call when event is emitted
2898
+ * @param filter Optional filter for indexed parameters
2899
+ * @returns Unwatch function to stop listening
2900
+ */
2901
+ SwapAndLiquify: (callback: (event: { tokensSwapped: bigint; ethReceived: bigint; tokensIntoLiquidity: bigint }) => void) => {
2902
+ return this.publicClient.watchContractEvent({
2903
+ address: this.contractAddress,
2904
+ abi: MIC_jsonAbi,
2905
+ eventName: 'SwapAndLiquify',
2906
+
2907
+ onLogs: (logs: any[]) => {
2908
+ logs.forEach((log: any) => {
2909
+ callback(log.args as any);
2910
+ });
2911
+ },
2912
+ }) as () => void;
2913
+ },
2914
+ /**
2915
+ * Watch Transfer events
2916
+ * @param callback Function to call when event is emitted
2917
+ * @param filter Optional filter for indexed parameters
2918
+ * @returns Unwatch function to stop listening
2919
+ */
2920
+ Transfer: (callback: (event: { from: `0x${string}`; to: `0x${string}`; value: bigint }) => void, filter?: { from: `0x${string}`; to: `0x${string}` }) => {
2921
+ return this.publicClient.watchContractEvent({
2922
+ address: this.contractAddress,
2923
+ abi: MIC_jsonAbi,
2924
+ eventName: 'Transfer',
2925
+ args: filter,
2926
+ onLogs: (logs: any[]) => {
2927
+ logs.forEach((log: any) => {
2928
+ callback(log.args as any);
2929
+ });
2930
+ },
2931
+ }) as () => void;
2932
+ },
2933
+ /**
2934
+ * Watch UpdateUniswapV2Router events
2935
+ * @param callback Function to call when event is emitted
2936
+ * @param filter Optional filter for indexed parameters
2937
+ * @returns Unwatch function to stop listening
2938
+ */
2939
+ UpdateUniswapV2Router: (callback: (event: { newAddress: `0x${string}`; oldAddress: `0x${string}` }) => void, filter?: { newAddress: `0x${string}`; oldAddress: `0x${string}` }) => {
2940
+ return this.publicClient.watchContractEvent({
2941
+ address: this.contractAddress,
2942
+ abi: MIC_jsonAbi,
2943
+ eventName: 'UpdateUniswapV2Router',
2944
+ args: filter,
2945
+ onLogs: (logs: any[]) => {
2946
+ logs.forEach((log: any) => {
2947
+ callback(log.args as any);
2948
+ });
2949
+ },
2950
+ }) as () => void;
2951
+ },
2952
+ /**
2953
+ * Watch devWalletUpdated events
2954
+ * @param callback Function to call when event is emitted
2955
+ * @param filter Optional filter for indexed parameters
2956
+ * @returns Unwatch function to stop listening
2957
+ */
2958
+ devWalletUpdated: (callback: (event: { newWallet: `0x${string}`; oldWallet: `0x${string}` }) => void, filter?: { newWallet: `0x${string}`; oldWallet: `0x${string}` }) => {
2959
+ return this.publicClient.watchContractEvent({
2960
+ address: this.contractAddress,
2961
+ abi: MIC_jsonAbi,
2962
+ eventName: 'devWalletUpdated',
2963
+ args: filter,
2964
+ onLogs: (logs: any[]) => {
2965
+ logs.forEach((log: any) => {
2966
+ callback(log.args as any);
2967
+ });
2968
+ },
2969
+ }) as () => void;
2970
+ },
2971
+ /**
2972
+ * Watch marketingWalletUpdated events
2973
+ * @param callback Function to call when event is emitted
2974
+ * @param filter Optional filter for indexed parameters
2975
+ * @returns Unwatch function to stop listening
2976
+ */
2977
+ marketingWalletUpdated: (callback: (event: { newWallet: `0x${string}`; oldWallet: `0x${string}` }) => void, filter?: { newWallet: `0x${string}`; oldWallet: `0x${string}` }) => {
2978
+ return this.publicClient.watchContractEvent({
2979
+ address: this.contractAddress,
2980
+ abi: MIC_jsonAbi,
2981
+ eventName: 'marketingWalletUpdated',
2982
+ args: filter,
2983
+ onLogs: (logs: any[]) => {
2984
+ logs.forEach((log: any) => {
2985
+ callback(log.args as any);
2986
+ });
2987
+ },
2988
+ }) as () => void;
2989
+ }
2990
+ };
2991
+ }
2992
+ }