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