@gitmyabi/weth 1.0.5 → 1.0.7

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