@gitmyabi/bax 1.0.0

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