@gitmyabi/rage 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,931 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * RageToken_json ABI
4
+ *
5
+ * This ABI is typed using viem's type system for full type safety.
6
+ */
7
+ export declare const RageToken_jsonAbi: readonly [{
8
+ readonly inputs: readonly [];
9
+ readonly stateMutability: "nonpayable";
10
+ readonly type: "constructor";
11
+ }, {
12
+ readonly anonymous: false;
13
+ readonly inputs: readonly [{
14
+ readonly indexed: true;
15
+ readonly internalType: "address";
16
+ readonly name: "owner";
17
+ readonly type: "address";
18
+ }, {
19
+ readonly indexed: true;
20
+ readonly internalType: "address";
21
+ readonly name: "spender";
22
+ readonly type: "address";
23
+ }, {
24
+ readonly indexed: false;
25
+ readonly internalType: "uint256";
26
+ readonly name: "value";
27
+ readonly type: "uint256";
28
+ }];
29
+ readonly name: "Approval";
30
+ readonly type: "event";
31
+ }, {
32
+ readonly anonymous: false;
33
+ readonly inputs: readonly [{
34
+ readonly indexed: true;
35
+ readonly internalType: "address";
36
+ readonly name: "previousOwner";
37
+ readonly type: "address";
38
+ }, {
39
+ readonly indexed: true;
40
+ readonly internalType: "address";
41
+ readonly name: "newOwner";
42
+ readonly type: "address";
43
+ }];
44
+ readonly name: "OwnershipTransferred";
45
+ readonly type: "event";
46
+ }, {
47
+ readonly anonymous: false;
48
+ readonly inputs: readonly [{
49
+ readonly indexed: true;
50
+ readonly internalType: "address";
51
+ readonly name: "token";
52
+ readonly type: "address";
53
+ }, {
54
+ readonly indexed: true;
55
+ readonly internalType: "address";
56
+ readonly name: "destination";
57
+ readonly type: "address";
58
+ }, {
59
+ readonly indexed: true;
60
+ readonly internalType: "uint256";
61
+ readonly name: "amount";
62
+ readonly type: "uint256";
63
+ }];
64
+ readonly name: "RecoverToken";
65
+ readonly type: "event";
66
+ }, {
67
+ readonly anonymous: false;
68
+ readonly inputs: readonly [{
69
+ readonly indexed: true;
70
+ readonly internalType: "address";
71
+ readonly name: "from";
72
+ readonly type: "address";
73
+ }, {
74
+ readonly indexed: true;
75
+ readonly internalType: "address";
76
+ readonly name: "to";
77
+ readonly type: "address";
78
+ }, {
79
+ readonly indexed: false;
80
+ readonly internalType: "uint256";
81
+ readonly name: "value";
82
+ readonly type: "uint256";
83
+ }];
84
+ readonly name: "Transfer";
85
+ readonly type: "event";
86
+ }, {
87
+ readonly inputs: readonly [];
88
+ readonly name: "DOMAIN_SEPARATOR";
89
+ readonly outputs: readonly [{
90
+ readonly internalType: "bytes32";
91
+ readonly name: "";
92
+ readonly type: "bytes32";
93
+ }];
94
+ readonly stateMutability: "view";
95
+ readonly type: "function";
96
+ }, {
97
+ readonly inputs: readonly [];
98
+ readonly name: "MAX_CAP";
99
+ readonly outputs: readonly [{
100
+ readonly internalType: "uint256";
101
+ readonly name: "";
102
+ readonly type: "uint256";
103
+ }];
104
+ readonly stateMutability: "view";
105
+ readonly type: "function";
106
+ }, {
107
+ readonly inputs: readonly [];
108
+ readonly name: "PERMIT_TYPEHASH";
109
+ readonly outputs: readonly [{
110
+ readonly internalType: "bytes32";
111
+ readonly name: "";
112
+ readonly type: "bytes32";
113
+ }];
114
+ readonly stateMutability: "view";
115
+ readonly type: "function";
116
+ }, {
117
+ readonly inputs: readonly [{
118
+ readonly internalType: "address";
119
+ readonly name: "owner";
120
+ readonly type: "address";
121
+ }, {
122
+ readonly internalType: "address";
123
+ readonly name: "spender";
124
+ readonly type: "address";
125
+ }];
126
+ readonly name: "allowance";
127
+ readonly outputs: readonly [{
128
+ readonly internalType: "uint256";
129
+ readonly name: "";
130
+ readonly type: "uint256";
131
+ }];
132
+ readonly stateMutability: "view";
133
+ readonly type: "function";
134
+ }, {
135
+ readonly inputs: readonly [{
136
+ readonly internalType: "address";
137
+ readonly name: "spender";
138
+ readonly type: "address";
139
+ }, {
140
+ readonly internalType: "uint256";
141
+ readonly name: "amount";
142
+ readonly type: "uint256";
143
+ }];
144
+ readonly name: "approve";
145
+ readonly outputs: readonly [{
146
+ readonly internalType: "bool";
147
+ readonly name: "";
148
+ readonly type: "bool";
149
+ }];
150
+ readonly stateMutability: "nonpayable";
151
+ readonly type: "function";
152
+ }, {
153
+ readonly inputs: readonly [{
154
+ readonly internalType: "address";
155
+ readonly name: "account";
156
+ readonly type: "address";
157
+ }];
158
+ readonly name: "balanceOf";
159
+ readonly outputs: readonly [{
160
+ readonly internalType: "uint256";
161
+ readonly name: "";
162
+ readonly type: "uint256";
163
+ }];
164
+ readonly stateMutability: "view";
165
+ readonly type: "function";
166
+ }, {
167
+ readonly inputs: readonly [];
168
+ readonly name: "decimals";
169
+ readonly outputs: readonly [{
170
+ readonly internalType: "uint8";
171
+ readonly name: "";
172
+ readonly type: "uint8";
173
+ }];
174
+ readonly stateMutability: "view";
175
+ readonly type: "function";
176
+ }, {
177
+ readonly inputs: readonly [{
178
+ readonly internalType: "address";
179
+ readonly name: "spender";
180
+ readonly type: "address";
181
+ }, {
182
+ readonly internalType: "uint256";
183
+ readonly name: "subtractedValue";
184
+ readonly type: "uint256";
185
+ }];
186
+ readonly name: "decreaseAllowance";
187
+ readonly outputs: readonly [{
188
+ readonly internalType: "bool";
189
+ readonly name: "";
190
+ readonly type: "bool";
191
+ }];
192
+ readonly stateMutability: "nonpayable";
193
+ readonly type: "function";
194
+ }, {
195
+ readonly inputs: readonly [];
196
+ readonly name: "governance";
197
+ readonly outputs: readonly [{
198
+ readonly internalType: "address";
199
+ readonly name: "";
200
+ readonly type: "address";
201
+ }];
202
+ readonly stateMutability: "view";
203
+ readonly type: "function";
204
+ }, {
205
+ readonly inputs: readonly [{
206
+ readonly internalType: "address";
207
+ readonly name: "spender";
208
+ readonly type: "address";
209
+ }, {
210
+ readonly internalType: "uint256";
211
+ readonly name: "addedValue";
212
+ readonly type: "uint256";
213
+ }];
214
+ readonly name: "increaseAllowance";
215
+ readonly outputs: readonly [{
216
+ readonly internalType: "bool";
217
+ readonly name: "";
218
+ readonly type: "bool";
219
+ }];
220
+ readonly stateMutability: "nonpayable";
221
+ readonly type: "function";
222
+ }, {
223
+ readonly inputs: readonly [];
224
+ readonly name: "name";
225
+ readonly outputs: readonly [{
226
+ readonly internalType: "string";
227
+ readonly name: "";
228
+ readonly type: "string";
229
+ }];
230
+ readonly stateMutability: "view";
231
+ readonly type: "function";
232
+ }, {
233
+ readonly inputs: readonly [{
234
+ readonly internalType: "address";
235
+ readonly name: "owner";
236
+ readonly type: "address";
237
+ }];
238
+ readonly name: "nonces";
239
+ readonly outputs: readonly [{
240
+ readonly internalType: "uint256";
241
+ readonly name: "";
242
+ readonly type: "uint256";
243
+ }];
244
+ readonly stateMutability: "view";
245
+ readonly type: "function";
246
+ }, {
247
+ readonly inputs: readonly [];
248
+ readonly name: "owner";
249
+ readonly outputs: readonly [{
250
+ readonly internalType: "address";
251
+ readonly name: "";
252
+ readonly type: "address";
253
+ }];
254
+ readonly stateMutability: "view";
255
+ readonly type: "function";
256
+ }, {
257
+ readonly inputs: readonly [{
258
+ readonly internalType: "address";
259
+ readonly name: "owner";
260
+ readonly type: "address";
261
+ }, {
262
+ readonly internalType: "address";
263
+ readonly name: "spender";
264
+ readonly type: "address";
265
+ }, {
266
+ readonly internalType: "uint256";
267
+ readonly name: "amount";
268
+ readonly type: "uint256";
269
+ }, {
270
+ readonly internalType: "uint256";
271
+ readonly name: "deadline";
272
+ readonly type: "uint256";
273
+ }, {
274
+ readonly internalType: "uint8";
275
+ readonly name: "v";
276
+ readonly type: "uint8";
277
+ }, {
278
+ readonly internalType: "bytes32";
279
+ readonly name: "r";
280
+ readonly type: "bytes32";
281
+ }, {
282
+ readonly internalType: "bytes32";
283
+ readonly name: "s";
284
+ readonly type: "bytes32";
285
+ }];
286
+ readonly name: "permit";
287
+ readonly outputs: readonly [];
288
+ readonly stateMutability: "nonpayable";
289
+ readonly type: "function";
290
+ }, {
291
+ readonly inputs: readonly [{
292
+ readonly internalType: "address";
293
+ readonly name: "token";
294
+ readonly type: "address";
295
+ }, {
296
+ readonly internalType: "address";
297
+ readonly name: "destination";
298
+ readonly type: "address";
299
+ }, {
300
+ readonly internalType: "uint256";
301
+ readonly name: "amount";
302
+ readonly type: "uint256";
303
+ }];
304
+ readonly name: "recoverToken";
305
+ readonly outputs: readonly [];
306
+ readonly stateMutability: "nonpayable";
307
+ readonly type: "function";
308
+ }, {
309
+ readonly inputs: readonly [];
310
+ readonly name: "renounceOwnership";
311
+ readonly outputs: readonly [];
312
+ readonly stateMutability: "nonpayable";
313
+ readonly type: "function";
314
+ }, {
315
+ readonly inputs: readonly [{
316
+ readonly internalType: "address";
317
+ readonly name: "_governance";
318
+ readonly type: "address";
319
+ }];
320
+ readonly name: "setGovernance";
321
+ readonly outputs: readonly [];
322
+ readonly stateMutability: "nonpayable";
323
+ readonly type: "function";
324
+ }, {
325
+ readonly inputs: readonly [];
326
+ readonly name: "symbol";
327
+ readonly outputs: readonly [{
328
+ readonly internalType: "string";
329
+ readonly name: "";
330
+ readonly type: "string";
331
+ }];
332
+ readonly stateMutability: "view";
333
+ readonly type: "function";
334
+ }, {
335
+ readonly inputs: readonly [];
336
+ readonly name: "totalSupply";
337
+ readonly outputs: readonly [{
338
+ readonly internalType: "uint256";
339
+ readonly name: "";
340
+ readonly type: "uint256";
341
+ }];
342
+ readonly stateMutability: "view";
343
+ readonly type: "function";
344
+ }, {
345
+ readonly inputs: readonly [{
346
+ readonly internalType: "address";
347
+ readonly name: "recipient";
348
+ readonly type: "address";
349
+ }, {
350
+ readonly internalType: "uint256";
351
+ readonly name: "amount";
352
+ readonly type: "uint256";
353
+ }];
354
+ readonly name: "transfer";
355
+ readonly outputs: readonly [{
356
+ readonly internalType: "bool";
357
+ readonly name: "";
358
+ readonly type: "bool";
359
+ }];
360
+ readonly stateMutability: "nonpayable";
361
+ readonly type: "function";
362
+ }, {
363
+ readonly inputs: readonly [{
364
+ readonly internalType: "address";
365
+ readonly name: "sender";
366
+ readonly type: "address";
367
+ }, {
368
+ readonly internalType: "address";
369
+ readonly name: "recipient";
370
+ readonly type: "address";
371
+ }, {
372
+ readonly internalType: "uint256";
373
+ readonly name: "amount";
374
+ readonly type: "uint256";
375
+ }];
376
+ readonly name: "transferFrom";
377
+ readonly outputs: readonly [{
378
+ readonly internalType: "bool";
379
+ readonly name: "";
380
+ readonly type: "bool";
381
+ }];
382
+ readonly stateMutability: "nonpayable";
383
+ readonly type: "function";
384
+ }, {
385
+ readonly inputs: readonly [{
386
+ readonly internalType: "address";
387
+ readonly name: "newOwner";
388
+ readonly type: "address";
389
+ }];
390
+ readonly name: "transferOwnership";
391
+ readonly outputs: readonly [];
392
+ readonly stateMutability: "nonpayable";
393
+ readonly type: "function";
394
+ }];
395
+ /**
396
+ * Type-safe ABI for RageToken_json
397
+ */
398
+ export type RageToken_jsonAbi = typeof RageToken_jsonAbi;
399
+ /**
400
+ * Contract instance type for RageToken_json
401
+ */
402
+ export type RageToken_jsonContract = any;
403
+ /**
404
+ * RageToken_json Contract Class
405
+ *
406
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
407
+ *
408
+ * @example
409
+ * ```typescript
410
+ * import { createPublicClient, createWalletClient, http } from 'viem';
411
+ * import { mainnet } from 'viem/chains';
412
+ * import { RageToken_json } from 'RageToken_json';
413
+ *
414
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
415
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
416
+ *
417
+ * const contract = new RageToken_json('0x...', { publicClient, walletClient });
418
+ *
419
+ * // Read functions
420
+ * const result = await contract.balanceOf('0x...');
421
+ *
422
+ * // Write functions
423
+ * const hash = await contract.transfer('0x...', 1000n);
424
+ *
425
+ * // Simulate transactions (dry-run)
426
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
427
+ * console.log('Gas estimate:', simulation.request.gas);
428
+ *
429
+ * // Watch events
430
+ * const unwatch = contract.watch.Transfer((event) => {
431
+ * console.log('Transfer event:', event);
432
+ * });
433
+ * ```
434
+ */
435
+ export declare class RageToken_json {
436
+ private contract;
437
+ private contractAddress;
438
+ private publicClient;
439
+ constructor(address: Address, clients: {
440
+ publicClient: PublicClient;
441
+ walletClient?: WalletClient;
442
+ });
443
+ /**
444
+ * Get the contract address
445
+ */
446
+ get address(): Address;
447
+ /**
448
+ * Get the underlying viem contract instance
449
+ */
450
+ getContract(): RageToken_jsonContract;
451
+ /**
452
+ * DOMAIN_SEPARATOR
453
+ * view
454
+ */
455
+ DOMAIN_SEPARATOR(): Promise<`0x${string}`>;
456
+ /**
457
+ * MAX_CAP
458
+ * view
459
+ */
460
+ MAX_CAP(): Promise<bigint>;
461
+ /**
462
+ * PERMIT_TYPEHASH
463
+ * view
464
+ */
465
+ PERMIT_TYPEHASH(): Promise<`0x${string}`>;
466
+ /**
467
+ * allowance
468
+ * view
469
+ */
470
+ allowance(owner: `0x${string}`, spender: `0x${string}`): Promise<bigint>;
471
+ /**
472
+ * balanceOf
473
+ * view
474
+ */
475
+ balanceOf(account: `0x${string}`): Promise<bigint>;
476
+ /**
477
+ * decimals
478
+ * view
479
+ */
480
+ decimals(): Promise<bigint>;
481
+ /**
482
+ * governance
483
+ * view
484
+ */
485
+ governance(): Promise<`0x${string}`>;
486
+ /**
487
+ * name
488
+ * view
489
+ */
490
+ name(): Promise<string>;
491
+ /**
492
+ * nonces
493
+ * view
494
+ */
495
+ nonces(owner: `0x${string}`): Promise<bigint>;
496
+ /**
497
+ * owner
498
+ * view
499
+ */
500
+ owner(): Promise<`0x${string}`>;
501
+ /**
502
+ * symbol
503
+ * view
504
+ */
505
+ symbol(): Promise<string>;
506
+ /**
507
+ * totalSupply
508
+ * view
509
+ */
510
+ totalSupply(): Promise<bigint>;
511
+ /**
512
+ * approve
513
+ * nonpayable
514
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
515
+ */
516
+ approve(spender: `0x${string}`, amount: bigint, options?: {
517
+ accessList?: import('viem').AccessList;
518
+ authorizationList?: import('viem').AuthorizationList;
519
+ chain?: import('viem').Chain | null;
520
+ dataSuffix?: `0x${string}`;
521
+ gas?: bigint;
522
+ gasPrice?: bigint;
523
+ maxFeePerGas?: bigint;
524
+ maxPriorityFeePerGas?: bigint;
525
+ nonce?: number;
526
+ value?: bigint;
527
+ }): Promise<`0x${string}`>;
528
+ /**
529
+ * decreaseAllowance
530
+ * nonpayable
531
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
532
+ */
533
+ decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
534
+ accessList?: import('viem').AccessList;
535
+ authorizationList?: import('viem').AuthorizationList;
536
+ chain?: import('viem').Chain | null;
537
+ dataSuffix?: `0x${string}`;
538
+ gas?: bigint;
539
+ gasPrice?: bigint;
540
+ maxFeePerGas?: bigint;
541
+ maxPriorityFeePerGas?: bigint;
542
+ nonce?: number;
543
+ value?: bigint;
544
+ }): Promise<`0x${string}`>;
545
+ /**
546
+ * increaseAllowance
547
+ * nonpayable
548
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
549
+ */
550
+ increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
551
+ accessList?: import('viem').AccessList;
552
+ authorizationList?: import('viem').AuthorizationList;
553
+ chain?: import('viem').Chain | null;
554
+ dataSuffix?: `0x${string}`;
555
+ gas?: bigint;
556
+ gasPrice?: bigint;
557
+ maxFeePerGas?: bigint;
558
+ maxPriorityFeePerGas?: bigint;
559
+ nonce?: number;
560
+ value?: bigint;
561
+ }): Promise<`0x${string}`>;
562
+ /**
563
+ * permit
564
+ * nonpayable
565
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
566
+ */
567
+ permit(owner: `0x${string}`, spender: `0x${string}`, amount: bigint, deadline: bigint, v: bigint, r: `0x${string}`, s: `0x${string}`, options?: {
568
+ accessList?: import('viem').AccessList;
569
+ authorizationList?: import('viem').AuthorizationList;
570
+ chain?: import('viem').Chain | null;
571
+ dataSuffix?: `0x${string}`;
572
+ gas?: bigint;
573
+ gasPrice?: bigint;
574
+ maxFeePerGas?: bigint;
575
+ maxPriorityFeePerGas?: bigint;
576
+ nonce?: number;
577
+ value?: bigint;
578
+ }): Promise<`0x${string}`>;
579
+ /**
580
+ * recoverToken
581
+ * nonpayable
582
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
583
+ */
584
+ recoverToken(token: `0x${string}`, destination: `0x${string}`, amount: bigint, options?: {
585
+ accessList?: import('viem').AccessList;
586
+ authorizationList?: import('viem').AuthorizationList;
587
+ chain?: import('viem').Chain | null;
588
+ dataSuffix?: `0x${string}`;
589
+ gas?: bigint;
590
+ gasPrice?: bigint;
591
+ maxFeePerGas?: bigint;
592
+ maxPriorityFeePerGas?: bigint;
593
+ nonce?: number;
594
+ value?: bigint;
595
+ }): Promise<`0x${string}`>;
596
+ /**
597
+ * renounceOwnership
598
+ * nonpayable
599
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
600
+ */
601
+ renounceOwnership(options?: {
602
+ accessList?: import('viem').AccessList;
603
+ authorizationList?: import('viem').AuthorizationList;
604
+ chain?: import('viem').Chain | null;
605
+ dataSuffix?: `0x${string}`;
606
+ gas?: bigint;
607
+ gasPrice?: bigint;
608
+ maxFeePerGas?: bigint;
609
+ maxPriorityFeePerGas?: bigint;
610
+ nonce?: number;
611
+ value?: bigint;
612
+ }): Promise<`0x${string}`>;
613
+ /**
614
+ * setGovernance
615
+ * nonpayable
616
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
617
+ */
618
+ setGovernance(_governance: `0x${string}`, options?: {
619
+ accessList?: import('viem').AccessList;
620
+ authorizationList?: import('viem').AuthorizationList;
621
+ chain?: import('viem').Chain | null;
622
+ dataSuffix?: `0x${string}`;
623
+ gas?: bigint;
624
+ gasPrice?: bigint;
625
+ maxFeePerGas?: bigint;
626
+ maxPriorityFeePerGas?: bigint;
627
+ nonce?: number;
628
+ value?: bigint;
629
+ }): Promise<`0x${string}`>;
630
+ /**
631
+ * transfer
632
+ * nonpayable
633
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
634
+ */
635
+ transfer(recipient: `0x${string}`, amount: bigint, options?: {
636
+ accessList?: import('viem').AccessList;
637
+ authorizationList?: import('viem').AuthorizationList;
638
+ chain?: import('viem').Chain | null;
639
+ dataSuffix?: `0x${string}`;
640
+ gas?: bigint;
641
+ gasPrice?: bigint;
642
+ maxFeePerGas?: bigint;
643
+ maxPriorityFeePerGas?: bigint;
644
+ nonce?: number;
645
+ value?: bigint;
646
+ }): Promise<`0x${string}`>;
647
+ /**
648
+ * transferFrom
649
+ * nonpayable
650
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
651
+ */
652
+ transferFrom(sender: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
653
+ accessList?: import('viem').AccessList;
654
+ authorizationList?: import('viem').AuthorizationList;
655
+ chain?: import('viem').Chain | null;
656
+ dataSuffix?: `0x${string}`;
657
+ gas?: bigint;
658
+ gasPrice?: bigint;
659
+ maxFeePerGas?: bigint;
660
+ maxPriorityFeePerGas?: bigint;
661
+ nonce?: number;
662
+ value?: bigint;
663
+ }): Promise<`0x${string}`>;
664
+ /**
665
+ * transferOwnership
666
+ * nonpayable
667
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
668
+ */
669
+ transferOwnership(newOwner: `0x${string}`, options?: {
670
+ accessList?: import('viem').AccessList;
671
+ authorizationList?: import('viem').AuthorizationList;
672
+ chain?: import('viem').Chain | null;
673
+ dataSuffix?: `0x${string}`;
674
+ gas?: bigint;
675
+ gasPrice?: bigint;
676
+ maxFeePerGas?: bigint;
677
+ maxPriorityFeePerGas?: bigint;
678
+ nonce?: number;
679
+ value?: bigint;
680
+ }): Promise<`0x${string}`>;
681
+ /**
682
+ * Simulate contract write operations (dry-run without sending transaction)
683
+ *
684
+ * @example
685
+ * const result = await contract.simulate.transfer('0x...', 1000n);
686
+ * console.log('Gas estimate:', result.request.gas);
687
+ * console.log('Would succeed:', result.result);
688
+ */
689
+ get simulate(): {
690
+ /**
691
+ * Simulate approve
692
+ * Returns gas estimate and result without sending transaction
693
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
694
+ */
695
+ approve(spender: `0x${string}`, amount: bigint, options?: {
696
+ accessList?: import("viem").AccessList;
697
+ authorizationList?: import("viem").AuthorizationList;
698
+ chain?: import("viem").Chain | null;
699
+ dataSuffix?: `0x${string}`;
700
+ gas?: bigint;
701
+ gasPrice?: bigint;
702
+ maxFeePerGas?: bigint;
703
+ maxPriorityFeePerGas?: bigint;
704
+ nonce?: number;
705
+ value?: bigint;
706
+ }): Promise<boolean>;
707
+ /**
708
+ * Simulate decreaseAllowance
709
+ * Returns gas estimate and result without sending transaction
710
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
711
+ */
712
+ decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
713
+ accessList?: import("viem").AccessList;
714
+ authorizationList?: import("viem").AuthorizationList;
715
+ chain?: import("viem").Chain | null;
716
+ dataSuffix?: `0x${string}`;
717
+ gas?: bigint;
718
+ gasPrice?: bigint;
719
+ maxFeePerGas?: bigint;
720
+ maxPriorityFeePerGas?: bigint;
721
+ nonce?: number;
722
+ value?: bigint;
723
+ }): Promise<boolean>;
724
+ /**
725
+ * Simulate increaseAllowance
726
+ * Returns gas estimate and result without sending transaction
727
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
728
+ */
729
+ increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
730
+ accessList?: import("viem").AccessList;
731
+ authorizationList?: import("viem").AuthorizationList;
732
+ chain?: import("viem").Chain | null;
733
+ dataSuffix?: `0x${string}`;
734
+ gas?: bigint;
735
+ gasPrice?: bigint;
736
+ maxFeePerGas?: bigint;
737
+ maxPriorityFeePerGas?: bigint;
738
+ nonce?: number;
739
+ value?: bigint;
740
+ }): Promise<boolean>;
741
+ /**
742
+ * Simulate permit
743
+ * Returns gas estimate and result without sending transaction
744
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
745
+ */
746
+ permit(owner: `0x${string}`, spender: `0x${string}`, amount: bigint, deadline: bigint, v: bigint, r: `0x${string}`, s: `0x${string}`, options?: {
747
+ accessList?: import("viem").AccessList;
748
+ authorizationList?: import("viem").AuthorizationList;
749
+ chain?: import("viem").Chain | null;
750
+ dataSuffix?: `0x${string}`;
751
+ gas?: bigint;
752
+ gasPrice?: bigint;
753
+ maxFeePerGas?: bigint;
754
+ maxPriorityFeePerGas?: bigint;
755
+ nonce?: number;
756
+ value?: bigint;
757
+ }): Promise<void>;
758
+ /**
759
+ * Simulate recoverToken
760
+ * Returns gas estimate and result without sending transaction
761
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
762
+ */
763
+ recoverToken(token: `0x${string}`, destination: `0x${string}`, amount: bigint, options?: {
764
+ accessList?: import("viem").AccessList;
765
+ authorizationList?: import("viem").AuthorizationList;
766
+ chain?: import("viem").Chain | null;
767
+ dataSuffix?: `0x${string}`;
768
+ gas?: bigint;
769
+ gasPrice?: bigint;
770
+ maxFeePerGas?: bigint;
771
+ maxPriorityFeePerGas?: bigint;
772
+ nonce?: number;
773
+ value?: bigint;
774
+ }): Promise<void>;
775
+ /**
776
+ * Simulate renounceOwnership
777
+ * Returns gas estimate and result without sending transaction
778
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
779
+ */
780
+ renounceOwnership(options?: {
781
+ accessList?: import("viem").AccessList;
782
+ authorizationList?: import("viem").AuthorizationList;
783
+ chain?: import("viem").Chain | null;
784
+ dataSuffix?: `0x${string}`;
785
+ gas?: bigint;
786
+ gasPrice?: bigint;
787
+ maxFeePerGas?: bigint;
788
+ maxPriorityFeePerGas?: bigint;
789
+ nonce?: number;
790
+ value?: bigint;
791
+ }): Promise<void>;
792
+ /**
793
+ * Simulate setGovernance
794
+ * Returns gas estimate and result without sending transaction
795
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
796
+ */
797
+ setGovernance(_governance: `0x${string}`, options?: {
798
+ accessList?: import("viem").AccessList;
799
+ authorizationList?: import("viem").AuthorizationList;
800
+ chain?: import("viem").Chain | null;
801
+ dataSuffix?: `0x${string}`;
802
+ gas?: bigint;
803
+ gasPrice?: bigint;
804
+ maxFeePerGas?: bigint;
805
+ maxPriorityFeePerGas?: bigint;
806
+ nonce?: number;
807
+ value?: bigint;
808
+ }): Promise<void>;
809
+ /**
810
+ * Simulate transfer
811
+ * Returns gas estimate and result without sending transaction
812
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
813
+ */
814
+ transfer(recipient: `0x${string}`, amount: bigint, options?: {
815
+ accessList?: import("viem").AccessList;
816
+ authorizationList?: import("viem").AuthorizationList;
817
+ chain?: import("viem").Chain | null;
818
+ dataSuffix?: `0x${string}`;
819
+ gas?: bigint;
820
+ gasPrice?: bigint;
821
+ maxFeePerGas?: bigint;
822
+ maxPriorityFeePerGas?: bigint;
823
+ nonce?: number;
824
+ value?: bigint;
825
+ }): Promise<boolean>;
826
+ /**
827
+ * Simulate transferFrom
828
+ * Returns gas estimate and result without sending transaction
829
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
830
+ */
831
+ transferFrom(sender: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
832
+ accessList?: import("viem").AccessList;
833
+ authorizationList?: import("viem").AuthorizationList;
834
+ chain?: import("viem").Chain | null;
835
+ dataSuffix?: `0x${string}`;
836
+ gas?: bigint;
837
+ gasPrice?: bigint;
838
+ maxFeePerGas?: bigint;
839
+ maxPriorityFeePerGas?: bigint;
840
+ nonce?: number;
841
+ value?: bigint;
842
+ }): Promise<boolean>;
843
+ /**
844
+ * Simulate transferOwnership
845
+ * Returns gas estimate and result without sending transaction
846
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
847
+ */
848
+ transferOwnership(newOwner: `0x${string}`, options?: {
849
+ accessList?: import("viem").AccessList;
850
+ authorizationList?: import("viem").AuthorizationList;
851
+ chain?: import("viem").Chain | null;
852
+ dataSuffix?: `0x${string}`;
853
+ gas?: bigint;
854
+ gasPrice?: bigint;
855
+ maxFeePerGas?: bigint;
856
+ maxPriorityFeePerGas?: bigint;
857
+ nonce?: number;
858
+ value?: bigint;
859
+ }): Promise<void>;
860
+ };
861
+ /**
862
+ * Watch contract events
863
+ *
864
+ * @example
865
+ * // Watch all Transfer events
866
+ * const unwatch = contract.watch.Transfer((event) => {
867
+ * console.log('Transfer:', event);
868
+ * });
869
+ *
870
+ * // Stop watching
871
+ * unwatch();
872
+ */
873
+ get watch(): {
874
+ /**
875
+ * Watch Approval events
876
+ * @param callback Function to call when event is emitted
877
+ * @param filter Optional filter for indexed parameters
878
+ * @returns Unwatch function to stop listening
879
+ */
880
+ Approval: (callback: (event: {
881
+ owner: `0x${string}`;
882
+ spender: `0x${string}`;
883
+ value: bigint;
884
+ }) => void, filter?: {
885
+ owner: `0x${string}`;
886
+ spender: `0x${string}`;
887
+ }) => () => void;
888
+ /**
889
+ * Watch OwnershipTransferred events
890
+ * @param callback Function to call when event is emitted
891
+ * @param filter Optional filter for indexed parameters
892
+ * @returns Unwatch function to stop listening
893
+ */
894
+ OwnershipTransferred: (callback: (event: {
895
+ previousOwner: `0x${string}`;
896
+ newOwner: `0x${string}`;
897
+ }) => void, filter?: {
898
+ previousOwner: `0x${string}`;
899
+ newOwner: `0x${string}`;
900
+ }) => () => void;
901
+ /**
902
+ * Watch RecoverToken events
903
+ * @param callback Function to call when event is emitted
904
+ * @param filter Optional filter for indexed parameters
905
+ * @returns Unwatch function to stop listening
906
+ */
907
+ RecoverToken: (callback: (event: {
908
+ token: `0x${string}`;
909
+ destination: `0x${string}`;
910
+ amount: bigint;
911
+ }) => void, filter?: {
912
+ token: `0x${string}`;
913
+ destination: `0x${string}`;
914
+ amount: bigint;
915
+ }) => () => void;
916
+ /**
917
+ * Watch Transfer events
918
+ * @param callback Function to call when event is emitted
919
+ * @param filter Optional filter for indexed parameters
920
+ * @returns Unwatch function to stop listening
921
+ */
922
+ Transfer: (callback: (event: {
923
+ from: `0x${string}`;
924
+ to: `0x${string}`;
925
+ value: bigint;
926
+ }) => void, filter?: {
927
+ from: `0x${string}`;
928
+ to: `0x${string}`;
929
+ }) => () => void;
930
+ };
931
+ }