@gitmyabi/usdt 1.0.19 → 1.0.21

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