@gitmyabi/nounsdaoexecutor 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,1125 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * NounsDAOExecutorV2_json ABI
4
+ *
5
+ * This ABI is typed using viem's type system for full type safety.
6
+ */
7
+ export declare const NounsDAOExecutorV2_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: false;
15
+ readonly internalType: "address";
16
+ readonly name: "previousAdmin";
17
+ readonly type: "address";
18
+ }, {
19
+ readonly indexed: false;
20
+ readonly internalType: "address";
21
+ readonly name: "newAdmin";
22
+ readonly type: "address";
23
+ }];
24
+ readonly name: "AdminChanged";
25
+ readonly type: "event";
26
+ }, {
27
+ readonly anonymous: false;
28
+ readonly inputs: readonly [{
29
+ readonly indexed: true;
30
+ readonly internalType: "address";
31
+ readonly name: "beacon";
32
+ readonly type: "address";
33
+ }];
34
+ readonly name: "BeaconUpgraded";
35
+ readonly type: "event";
36
+ }, {
37
+ readonly anonymous: false;
38
+ readonly inputs: readonly [{
39
+ readonly indexed: true;
40
+ readonly internalType: "bytes32";
41
+ readonly name: "txHash";
42
+ readonly type: "bytes32";
43
+ }, {
44
+ readonly indexed: true;
45
+ readonly internalType: "address";
46
+ readonly name: "target";
47
+ readonly type: "address";
48
+ }, {
49
+ readonly indexed: false;
50
+ readonly internalType: "uint256";
51
+ readonly name: "value";
52
+ readonly type: "uint256";
53
+ }, {
54
+ readonly indexed: false;
55
+ readonly internalType: "string";
56
+ readonly name: "signature";
57
+ readonly type: "string";
58
+ }, {
59
+ readonly indexed: false;
60
+ readonly internalType: "bytes";
61
+ readonly name: "data";
62
+ readonly type: "bytes";
63
+ }, {
64
+ readonly indexed: false;
65
+ readonly internalType: "uint256";
66
+ readonly name: "eta";
67
+ readonly type: "uint256";
68
+ }];
69
+ readonly name: "CancelTransaction";
70
+ readonly type: "event";
71
+ }, {
72
+ readonly anonymous: false;
73
+ readonly inputs: readonly [{
74
+ readonly indexed: true;
75
+ readonly internalType: "address";
76
+ readonly name: "to";
77
+ readonly type: "address";
78
+ }, {
79
+ readonly indexed: true;
80
+ readonly internalType: "address";
81
+ readonly name: "erc20Token";
82
+ readonly type: "address";
83
+ }, {
84
+ readonly indexed: false;
85
+ readonly internalType: "uint256";
86
+ readonly name: "amount";
87
+ readonly type: "uint256";
88
+ }];
89
+ readonly name: "ERC20Sent";
90
+ readonly type: "event";
91
+ }, {
92
+ readonly anonymous: false;
93
+ readonly inputs: readonly [{
94
+ readonly indexed: true;
95
+ readonly internalType: "address";
96
+ readonly name: "to";
97
+ readonly type: "address";
98
+ }, {
99
+ readonly indexed: false;
100
+ readonly internalType: "uint256";
101
+ readonly name: "amount";
102
+ readonly type: "uint256";
103
+ }];
104
+ readonly name: "ETHSent";
105
+ readonly type: "event";
106
+ }, {
107
+ readonly anonymous: false;
108
+ readonly inputs: readonly [{
109
+ readonly indexed: true;
110
+ readonly internalType: "bytes32";
111
+ readonly name: "txHash";
112
+ readonly type: "bytes32";
113
+ }, {
114
+ readonly indexed: true;
115
+ readonly internalType: "address";
116
+ readonly name: "target";
117
+ readonly type: "address";
118
+ }, {
119
+ readonly indexed: false;
120
+ readonly internalType: "uint256";
121
+ readonly name: "value";
122
+ readonly type: "uint256";
123
+ }, {
124
+ readonly indexed: false;
125
+ readonly internalType: "string";
126
+ readonly name: "signature";
127
+ readonly type: "string";
128
+ }, {
129
+ readonly indexed: false;
130
+ readonly internalType: "bytes";
131
+ readonly name: "data";
132
+ readonly type: "bytes";
133
+ }, {
134
+ readonly indexed: false;
135
+ readonly internalType: "uint256";
136
+ readonly name: "eta";
137
+ readonly type: "uint256";
138
+ }];
139
+ readonly name: "ExecuteTransaction";
140
+ readonly type: "event";
141
+ }, {
142
+ readonly anonymous: false;
143
+ readonly inputs: readonly [{
144
+ readonly indexed: true;
145
+ readonly internalType: "address";
146
+ readonly name: "newAdmin";
147
+ readonly type: "address";
148
+ }];
149
+ readonly name: "NewAdmin";
150
+ readonly type: "event";
151
+ }, {
152
+ readonly anonymous: false;
153
+ readonly inputs: readonly [{
154
+ readonly indexed: true;
155
+ readonly internalType: "uint256";
156
+ readonly name: "newDelay";
157
+ readonly type: "uint256";
158
+ }];
159
+ readonly name: "NewDelay";
160
+ readonly type: "event";
161
+ }, {
162
+ readonly anonymous: false;
163
+ readonly inputs: readonly [{
164
+ readonly indexed: true;
165
+ readonly internalType: "address";
166
+ readonly name: "newPendingAdmin";
167
+ readonly type: "address";
168
+ }];
169
+ readonly name: "NewPendingAdmin";
170
+ readonly type: "event";
171
+ }, {
172
+ readonly anonymous: false;
173
+ readonly inputs: readonly [{
174
+ readonly indexed: true;
175
+ readonly internalType: "bytes32";
176
+ readonly name: "txHash";
177
+ readonly type: "bytes32";
178
+ }, {
179
+ readonly indexed: true;
180
+ readonly internalType: "address";
181
+ readonly name: "target";
182
+ readonly type: "address";
183
+ }, {
184
+ readonly indexed: false;
185
+ readonly internalType: "uint256";
186
+ readonly name: "value";
187
+ readonly type: "uint256";
188
+ }, {
189
+ readonly indexed: false;
190
+ readonly internalType: "string";
191
+ readonly name: "signature";
192
+ readonly type: "string";
193
+ }, {
194
+ readonly indexed: false;
195
+ readonly internalType: "bytes";
196
+ readonly name: "data";
197
+ readonly type: "bytes";
198
+ }, {
199
+ readonly indexed: false;
200
+ readonly internalType: "uint256";
201
+ readonly name: "eta";
202
+ readonly type: "uint256";
203
+ }];
204
+ readonly name: "QueueTransaction";
205
+ readonly type: "event";
206
+ }, {
207
+ readonly anonymous: false;
208
+ readonly inputs: readonly [{
209
+ readonly indexed: true;
210
+ readonly internalType: "address";
211
+ readonly name: "implementation";
212
+ readonly type: "address";
213
+ }];
214
+ readonly name: "Upgraded";
215
+ readonly type: "event";
216
+ }, {
217
+ readonly stateMutability: "payable";
218
+ readonly type: "fallback";
219
+ }, {
220
+ readonly inputs: readonly [];
221
+ readonly name: "GRACE_PERIOD";
222
+ readonly outputs: readonly [{
223
+ readonly internalType: "uint256";
224
+ readonly name: "";
225
+ readonly type: "uint256";
226
+ }];
227
+ readonly stateMutability: "view";
228
+ readonly type: "function";
229
+ }, {
230
+ readonly inputs: readonly [];
231
+ readonly name: "MAXIMUM_DELAY";
232
+ readonly outputs: readonly [{
233
+ readonly internalType: "uint256";
234
+ readonly name: "";
235
+ readonly type: "uint256";
236
+ }];
237
+ readonly stateMutability: "view";
238
+ readonly type: "function";
239
+ }, {
240
+ readonly inputs: readonly [];
241
+ readonly name: "MINIMUM_DELAY";
242
+ readonly outputs: readonly [{
243
+ readonly internalType: "uint256";
244
+ readonly name: "";
245
+ readonly type: "uint256";
246
+ }];
247
+ readonly stateMutability: "view";
248
+ readonly type: "function";
249
+ }, {
250
+ readonly inputs: readonly [];
251
+ readonly name: "NAME";
252
+ readonly outputs: readonly [{
253
+ readonly internalType: "string";
254
+ readonly name: "";
255
+ readonly type: "string";
256
+ }];
257
+ readonly stateMutability: "view";
258
+ readonly type: "function";
259
+ }, {
260
+ readonly inputs: readonly [];
261
+ readonly name: "acceptAdmin";
262
+ readonly outputs: readonly [];
263
+ readonly stateMutability: "nonpayable";
264
+ readonly type: "function";
265
+ }, {
266
+ readonly inputs: readonly [];
267
+ readonly name: "admin";
268
+ readonly outputs: readonly [{
269
+ readonly internalType: "address";
270
+ readonly name: "";
271
+ readonly type: "address";
272
+ }];
273
+ readonly stateMutability: "view";
274
+ readonly type: "function";
275
+ }, {
276
+ readonly inputs: readonly [{
277
+ readonly internalType: "address";
278
+ readonly name: "target";
279
+ readonly type: "address";
280
+ }, {
281
+ readonly internalType: "uint256";
282
+ readonly name: "value";
283
+ readonly type: "uint256";
284
+ }, {
285
+ readonly internalType: "string";
286
+ readonly name: "signature";
287
+ readonly type: "string";
288
+ }, {
289
+ readonly internalType: "bytes";
290
+ readonly name: "data";
291
+ readonly type: "bytes";
292
+ }, {
293
+ readonly internalType: "uint256";
294
+ readonly name: "eta";
295
+ readonly type: "uint256";
296
+ }];
297
+ readonly name: "cancelTransaction";
298
+ readonly outputs: readonly [];
299
+ readonly stateMutability: "nonpayable";
300
+ readonly type: "function";
301
+ }, {
302
+ readonly inputs: readonly [];
303
+ readonly name: "delay";
304
+ readonly outputs: readonly [{
305
+ readonly internalType: "uint256";
306
+ readonly name: "";
307
+ readonly type: "uint256";
308
+ }];
309
+ readonly stateMutability: "view";
310
+ readonly type: "function";
311
+ }, {
312
+ readonly inputs: readonly [{
313
+ readonly internalType: "address";
314
+ readonly name: "target";
315
+ readonly type: "address";
316
+ }, {
317
+ readonly internalType: "uint256";
318
+ readonly name: "value";
319
+ readonly type: "uint256";
320
+ }, {
321
+ readonly internalType: "string";
322
+ readonly name: "signature";
323
+ readonly type: "string";
324
+ }, {
325
+ readonly internalType: "bytes";
326
+ readonly name: "data";
327
+ readonly type: "bytes";
328
+ }, {
329
+ readonly internalType: "uint256";
330
+ readonly name: "eta";
331
+ readonly type: "uint256";
332
+ }];
333
+ readonly name: "executeTransaction";
334
+ readonly outputs: readonly [{
335
+ readonly internalType: "bytes";
336
+ readonly name: "";
337
+ readonly type: "bytes";
338
+ }];
339
+ readonly stateMutability: "nonpayable";
340
+ readonly type: "function";
341
+ }, {
342
+ readonly inputs: readonly [{
343
+ readonly internalType: "address";
344
+ readonly name: "admin_";
345
+ readonly type: "address";
346
+ }, {
347
+ readonly internalType: "uint256";
348
+ readonly name: "delay_";
349
+ readonly type: "uint256";
350
+ }];
351
+ readonly name: "initialize";
352
+ readonly outputs: readonly [];
353
+ readonly stateMutability: "nonpayable";
354
+ readonly type: "function";
355
+ }, {
356
+ readonly inputs: readonly [];
357
+ readonly name: "pendingAdmin";
358
+ readonly outputs: readonly [{
359
+ readonly internalType: "address";
360
+ readonly name: "";
361
+ readonly type: "address";
362
+ }];
363
+ readonly stateMutability: "view";
364
+ readonly type: "function";
365
+ }, {
366
+ readonly inputs: readonly [{
367
+ readonly internalType: "address";
368
+ readonly name: "target";
369
+ readonly type: "address";
370
+ }, {
371
+ readonly internalType: "uint256";
372
+ readonly name: "value";
373
+ readonly type: "uint256";
374
+ }, {
375
+ readonly internalType: "string";
376
+ readonly name: "signature";
377
+ readonly type: "string";
378
+ }, {
379
+ readonly internalType: "bytes";
380
+ readonly name: "data";
381
+ readonly type: "bytes";
382
+ }, {
383
+ readonly internalType: "uint256";
384
+ readonly name: "eta";
385
+ readonly type: "uint256";
386
+ }];
387
+ readonly name: "queueTransaction";
388
+ readonly outputs: readonly [{
389
+ readonly internalType: "bytes32";
390
+ readonly name: "";
391
+ readonly type: "bytes32";
392
+ }];
393
+ readonly stateMutability: "nonpayable";
394
+ readonly type: "function";
395
+ }, {
396
+ readonly inputs: readonly [{
397
+ readonly internalType: "bytes32";
398
+ readonly name: "";
399
+ readonly type: "bytes32";
400
+ }];
401
+ readonly name: "queuedTransactions";
402
+ readonly outputs: readonly [{
403
+ readonly internalType: "bool";
404
+ readonly name: "";
405
+ readonly type: "bool";
406
+ }];
407
+ readonly stateMutability: "view";
408
+ readonly type: "function";
409
+ }, {
410
+ readonly inputs: readonly [{
411
+ readonly internalType: "address";
412
+ readonly name: "recipient";
413
+ readonly type: "address";
414
+ }, {
415
+ readonly internalType: "address";
416
+ readonly name: "erc20Token";
417
+ readonly type: "address";
418
+ }, {
419
+ readonly internalType: "uint256";
420
+ readonly name: "tokensToSend";
421
+ readonly type: "uint256";
422
+ }];
423
+ readonly name: "sendERC20";
424
+ readonly outputs: readonly [];
425
+ readonly stateMutability: "nonpayable";
426
+ readonly type: "function";
427
+ }, {
428
+ readonly inputs: readonly [{
429
+ readonly internalType: "address payable";
430
+ readonly name: "recipient";
431
+ readonly type: "address";
432
+ }, {
433
+ readonly internalType: "uint256";
434
+ readonly name: "ethToSend";
435
+ readonly type: "uint256";
436
+ }];
437
+ readonly name: "sendETH";
438
+ readonly outputs: readonly [];
439
+ readonly stateMutability: "nonpayable";
440
+ readonly type: "function";
441
+ }, {
442
+ readonly inputs: readonly [{
443
+ readonly internalType: "uint256";
444
+ readonly name: "delay_";
445
+ readonly type: "uint256";
446
+ }];
447
+ readonly name: "setDelay";
448
+ readonly outputs: readonly [];
449
+ readonly stateMutability: "nonpayable";
450
+ readonly type: "function";
451
+ }, {
452
+ readonly inputs: readonly [{
453
+ readonly internalType: "address";
454
+ readonly name: "pendingAdmin_";
455
+ readonly type: "address";
456
+ }];
457
+ readonly name: "setPendingAdmin";
458
+ readonly outputs: readonly [];
459
+ readonly stateMutability: "nonpayable";
460
+ readonly type: "function";
461
+ }, {
462
+ readonly inputs: readonly [{
463
+ readonly internalType: "address";
464
+ readonly name: "newImplementation";
465
+ readonly type: "address";
466
+ }];
467
+ readonly name: "upgradeTo";
468
+ readonly outputs: readonly [];
469
+ readonly stateMutability: "nonpayable";
470
+ readonly type: "function";
471
+ }, {
472
+ readonly inputs: readonly [{
473
+ readonly internalType: "address";
474
+ readonly name: "newImplementation";
475
+ readonly type: "address";
476
+ }, {
477
+ readonly internalType: "bytes";
478
+ readonly name: "data";
479
+ readonly type: "bytes";
480
+ }];
481
+ readonly name: "upgradeToAndCall";
482
+ readonly outputs: readonly [];
483
+ readonly stateMutability: "payable";
484
+ readonly type: "function";
485
+ }, {
486
+ readonly stateMutability: "payable";
487
+ readonly type: "receive";
488
+ }];
489
+ /**
490
+ * Type-safe ABI for NounsDAOExecutorV2_json
491
+ */
492
+ export type NounsDAOExecutorV2_jsonAbi = typeof NounsDAOExecutorV2_jsonAbi;
493
+ /**
494
+ * Contract instance type for NounsDAOExecutorV2_json
495
+ */
496
+ export type NounsDAOExecutorV2_jsonContract = any;
497
+ /**
498
+ * NounsDAOExecutorV2_json Contract Class
499
+ *
500
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
501
+ *
502
+ * @example
503
+ * ```typescript
504
+ * import { createPublicClient, createWalletClient, http } from 'viem';
505
+ * import { mainnet } from 'viem/chains';
506
+ * import { NounsDAOExecutorV2_json } from 'NounsDAOExecutorV2_json';
507
+ *
508
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
509
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
510
+ *
511
+ * const contract = new NounsDAOExecutorV2_json('0x...', { publicClient, walletClient });
512
+ *
513
+ * // Read functions
514
+ * const result = await contract.balanceOf('0x...');
515
+ *
516
+ * // Write functions
517
+ * const hash = await contract.transfer('0x...', 1000n);
518
+ *
519
+ * // Simulate transactions (dry-run)
520
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
521
+ * console.log('Gas estimate:', simulation.request.gas);
522
+ *
523
+ * // Watch events
524
+ * const unwatch = contract.watch.Transfer((event) => {
525
+ * console.log('Transfer event:', event);
526
+ * });
527
+ * ```
528
+ */
529
+ export declare class NounsDAOExecutorV2_json {
530
+ private contract;
531
+ private contractAddress;
532
+ private publicClient;
533
+ constructor(address: Address, clients: {
534
+ publicClient: PublicClient;
535
+ walletClient?: WalletClient;
536
+ });
537
+ /**
538
+ * Get the contract address
539
+ */
540
+ get address(): Address;
541
+ /**
542
+ * Get the underlying viem contract instance
543
+ */
544
+ getContract(): NounsDAOExecutorV2_jsonContract;
545
+ /**
546
+ * GRACE_PERIOD
547
+ * view
548
+ */
549
+ GRACE_PERIOD(): Promise<bigint>;
550
+ /**
551
+ * MAXIMUM_DELAY
552
+ * view
553
+ */
554
+ MAXIMUM_DELAY(): Promise<bigint>;
555
+ /**
556
+ * MINIMUM_DELAY
557
+ * view
558
+ */
559
+ MINIMUM_DELAY(): Promise<bigint>;
560
+ /**
561
+ * NAME
562
+ * view
563
+ */
564
+ NAME(): Promise<string>;
565
+ /**
566
+ * admin
567
+ * view
568
+ */
569
+ admin(): Promise<`0x${string}`>;
570
+ /**
571
+ * delay
572
+ * view
573
+ */
574
+ delay(): Promise<bigint>;
575
+ /**
576
+ * pendingAdmin
577
+ * view
578
+ */
579
+ pendingAdmin(): Promise<`0x${string}`>;
580
+ /**
581
+ * queuedTransactions
582
+ * view
583
+ */
584
+ queuedTransactions(arg0: `0x${string}`): Promise<boolean>;
585
+ /**
586
+ * acceptAdmin
587
+ * nonpayable
588
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
589
+ */
590
+ acceptAdmin(options?: {
591
+ accessList?: import('viem').AccessList;
592
+ authorizationList?: import('viem').AuthorizationList;
593
+ chain?: import('viem').Chain | null;
594
+ dataSuffix?: `0x${string}`;
595
+ gas?: bigint;
596
+ gasPrice?: bigint;
597
+ maxFeePerGas?: bigint;
598
+ maxPriorityFeePerGas?: bigint;
599
+ nonce?: number;
600
+ value?: bigint;
601
+ }): Promise<`0x${string}`>;
602
+ /**
603
+ * cancelTransaction
604
+ * nonpayable
605
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
606
+ */
607
+ cancelTransaction(target: `0x${string}`, value: bigint, signature: string, data: `0x${string}`, eta: bigint, options?: {
608
+ accessList?: import('viem').AccessList;
609
+ authorizationList?: import('viem').AuthorizationList;
610
+ chain?: import('viem').Chain | null;
611
+ dataSuffix?: `0x${string}`;
612
+ gas?: bigint;
613
+ gasPrice?: bigint;
614
+ maxFeePerGas?: bigint;
615
+ maxPriorityFeePerGas?: bigint;
616
+ nonce?: number;
617
+ value?: bigint;
618
+ }): Promise<`0x${string}`>;
619
+ /**
620
+ * executeTransaction
621
+ * nonpayable
622
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
623
+ */
624
+ executeTransaction(target: `0x${string}`, value: bigint, signature: string, data: `0x${string}`, eta: bigint, options?: {
625
+ accessList?: import('viem').AccessList;
626
+ authorizationList?: import('viem').AuthorizationList;
627
+ chain?: import('viem').Chain | null;
628
+ dataSuffix?: `0x${string}`;
629
+ gas?: bigint;
630
+ gasPrice?: bigint;
631
+ maxFeePerGas?: bigint;
632
+ maxPriorityFeePerGas?: bigint;
633
+ nonce?: number;
634
+ value?: bigint;
635
+ }): Promise<`0x${string}`>;
636
+ /**
637
+ * initialize
638
+ * nonpayable
639
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
640
+ */
641
+ initialize(admin_: `0x${string}`, delay_: bigint, options?: {
642
+ accessList?: import('viem').AccessList;
643
+ authorizationList?: import('viem').AuthorizationList;
644
+ chain?: import('viem').Chain | null;
645
+ dataSuffix?: `0x${string}`;
646
+ gas?: bigint;
647
+ gasPrice?: bigint;
648
+ maxFeePerGas?: bigint;
649
+ maxPriorityFeePerGas?: bigint;
650
+ nonce?: number;
651
+ value?: bigint;
652
+ }): Promise<`0x${string}`>;
653
+ /**
654
+ * queueTransaction
655
+ * nonpayable
656
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
657
+ */
658
+ queueTransaction(target: `0x${string}`, value: bigint, signature: string, data: `0x${string}`, eta: bigint, options?: {
659
+ accessList?: import('viem').AccessList;
660
+ authorizationList?: import('viem').AuthorizationList;
661
+ chain?: import('viem').Chain | null;
662
+ dataSuffix?: `0x${string}`;
663
+ gas?: bigint;
664
+ gasPrice?: bigint;
665
+ maxFeePerGas?: bigint;
666
+ maxPriorityFeePerGas?: bigint;
667
+ nonce?: number;
668
+ value?: bigint;
669
+ }): Promise<`0x${string}`>;
670
+ /**
671
+ * sendERC20
672
+ * nonpayable
673
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
674
+ */
675
+ sendERC20(recipient: `0x${string}`, erc20Token: `0x${string}`, tokensToSend: bigint, options?: {
676
+ accessList?: import('viem').AccessList;
677
+ authorizationList?: import('viem').AuthorizationList;
678
+ chain?: import('viem').Chain | null;
679
+ dataSuffix?: `0x${string}`;
680
+ gas?: bigint;
681
+ gasPrice?: bigint;
682
+ maxFeePerGas?: bigint;
683
+ maxPriorityFeePerGas?: bigint;
684
+ nonce?: number;
685
+ value?: bigint;
686
+ }): Promise<`0x${string}`>;
687
+ /**
688
+ * sendETH
689
+ * nonpayable
690
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
691
+ */
692
+ sendETH(recipient: `0x${string}`, ethToSend: bigint, options?: {
693
+ accessList?: import('viem').AccessList;
694
+ authorizationList?: import('viem').AuthorizationList;
695
+ chain?: import('viem').Chain | null;
696
+ dataSuffix?: `0x${string}`;
697
+ gas?: bigint;
698
+ gasPrice?: bigint;
699
+ maxFeePerGas?: bigint;
700
+ maxPriorityFeePerGas?: bigint;
701
+ nonce?: number;
702
+ value?: bigint;
703
+ }): Promise<`0x${string}`>;
704
+ /**
705
+ * setDelay
706
+ * nonpayable
707
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
708
+ */
709
+ setDelay(delay_: 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
+ /**
722
+ * setPendingAdmin
723
+ * nonpayable
724
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
725
+ */
726
+ setPendingAdmin(pendingAdmin_: `0x${string}`, options?: {
727
+ accessList?: import('viem').AccessList;
728
+ authorizationList?: import('viem').AuthorizationList;
729
+ chain?: import('viem').Chain | null;
730
+ dataSuffix?: `0x${string}`;
731
+ gas?: bigint;
732
+ gasPrice?: bigint;
733
+ maxFeePerGas?: bigint;
734
+ maxPriorityFeePerGas?: bigint;
735
+ nonce?: number;
736
+ value?: bigint;
737
+ }): Promise<`0x${string}`>;
738
+ /**
739
+ * upgradeTo
740
+ * nonpayable
741
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
742
+ */
743
+ upgradeTo(newImplementation: `0x${string}`, options?: {
744
+ accessList?: import('viem').AccessList;
745
+ authorizationList?: import('viem').AuthorizationList;
746
+ chain?: import('viem').Chain | null;
747
+ dataSuffix?: `0x${string}`;
748
+ gas?: bigint;
749
+ gasPrice?: bigint;
750
+ maxFeePerGas?: bigint;
751
+ maxPriorityFeePerGas?: bigint;
752
+ nonce?: number;
753
+ value?: bigint;
754
+ }): Promise<`0x${string}`>;
755
+ /**
756
+ * upgradeToAndCall
757
+ * payable
758
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
759
+ */
760
+ upgradeToAndCall(newImplementation: `0x${string}`, data: `0x${string}`, options?: {
761
+ accessList?: import('viem').AccessList;
762
+ authorizationList?: import('viem').AuthorizationList;
763
+ chain?: import('viem').Chain | null;
764
+ dataSuffix?: `0x${string}`;
765
+ gas?: bigint;
766
+ gasPrice?: bigint;
767
+ maxFeePerGas?: bigint;
768
+ maxPriorityFeePerGas?: bigint;
769
+ nonce?: number;
770
+ value?: bigint;
771
+ }): Promise<`0x${string}`>;
772
+ /**
773
+ * Simulate contract write operations (dry-run without sending transaction)
774
+ *
775
+ * @example
776
+ * const result = await contract.simulate.transfer('0x...', 1000n);
777
+ * console.log('Gas estimate:', result.request.gas);
778
+ * console.log('Would succeed:', result.result);
779
+ */
780
+ get simulate(): {
781
+ /**
782
+ * Simulate acceptAdmin
783
+ * Returns gas estimate and result without sending transaction
784
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
785
+ */
786
+ acceptAdmin(options?: {
787
+ accessList?: import("viem").AccessList;
788
+ authorizationList?: import("viem").AuthorizationList;
789
+ chain?: import("viem").Chain | null;
790
+ dataSuffix?: `0x${string}`;
791
+ gas?: bigint;
792
+ gasPrice?: bigint;
793
+ maxFeePerGas?: bigint;
794
+ maxPriorityFeePerGas?: bigint;
795
+ nonce?: number;
796
+ value?: bigint;
797
+ }): Promise<void>;
798
+ /**
799
+ * Simulate cancelTransaction
800
+ * Returns gas estimate and result without sending transaction
801
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
802
+ */
803
+ cancelTransaction(target: `0x${string}`, value: bigint, signature: string, data: `0x${string}`, eta: bigint, options?: {
804
+ accessList?: import("viem").AccessList;
805
+ authorizationList?: import("viem").AuthorizationList;
806
+ chain?: import("viem").Chain | null;
807
+ dataSuffix?: `0x${string}`;
808
+ gas?: bigint;
809
+ gasPrice?: bigint;
810
+ maxFeePerGas?: bigint;
811
+ maxPriorityFeePerGas?: bigint;
812
+ nonce?: number;
813
+ value?: bigint;
814
+ }): Promise<void>;
815
+ /**
816
+ * Simulate executeTransaction
817
+ * Returns gas estimate and result without sending transaction
818
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
819
+ */
820
+ executeTransaction(target: `0x${string}`, value: bigint, signature: string, data: `0x${string}`, eta: bigint, options?: {
821
+ accessList?: import("viem").AccessList;
822
+ authorizationList?: import("viem").AuthorizationList;
823
+ chain?: import("viem").Chain | null;
824
+ dataSuffix?: `0x${string}`;
825
+ gas?: bigint;
826
+ gasPrice?: bigint;
827
+ maxFeePerGas?: bigint;
828
+ maxPriorityFeePerGas?: bigint;
829
+ nonce?: number;
830
+ value?: bigint;
831
+ }): Promise<`0x${string}`>;
832
+ /**
833
+ * Simulate initialize
834
+ * Returns gas estimate and result without sending transaction
835
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
836
+ */
837
+ initialize(admin_: `0x${string}`, delay_: bigint, options?: {
838
+ accessList?: import("viem").AccessList;
839
+ authorizationList?: import("viem").AuthorizationList;
840
+ chain?: import("viem").Chain | null;
841
+ dataSuffix?: `0x${string}`;
842
+ gas?: bigint;
843
+ gasPrice?: bigint;
844
+ maxFeePerGas?: bigint;
845
+ maxPriorityFeePerGas?: bigint;
846
+ nonce?: number;
847
+ value?: bigint;
848
+ }): Promise<void>;
849
+ /**
850
+ * Simulate queueTransaction
851
+ * Returns gas estimate and result without sending transaction
852
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
853
+ */
854
+ queueTransaction(target: `0x${string}`, value: bigint, signature: string, data: `0x${string}`, eta: bigint, options?: {
855
+ accessList?: import("viem").AccessList;
856
+ authorizationList?: import("viem").AuthorizationList;
857
+ chain?: import("viem").Chain | null;
858
+ dataSuffix?: `0x${string}`;
859
+ gas?: bigint;
860
+ gasPrice?: bigint;
861
+ maxFeePerGas?: bigint;
862
+ maxPriorityFeePerGas?: bigint;
863
+ nonce?: number;
864
+ value?: bigint;
865
+ }): Promise<`0x${string}`>;
866
+ /**
867
+ * Simulate sendERC20
868
+ * Returns gas estimate and result without sending transaction
869
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
870
+ */
871
+ sendERC20(recipient: `0x${string}`, erc20Token: `0x${string}`, tokensToSend: bigint, options?: {
872
+ accessList?: import("viem").AccessList;
873
+ authorizationList?: import("viem").AuthorizationList;
874
+ chain?: import("viem").Chain | null;
875
+ dataSuffix?: `0x${string}`;
876
+ gas?: bigint;
877
+ gasPrice?: bigint;
878
+ maxFeePerGas?: bigint;
879
+ maxPriorityFeePerGas?: bigint;
880
+ nonce?: number;
881
+ value?: bigint;
882
+ }): Promise<void>;
883
+ /**
884
+ * Simulate sendETH
885
+ * Returns gas estimate and result without sending transaction
886
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
887
+ */
888
+ sendETH(recipient: `0x${string}`, ethToSend: bigint, options?: {
889
+ accessList?: import("viem").AccessList;
890
+ authorizationList?: import("viem").AuthorizationList;
891
+ chain?: import("viem").Chain | null;
892
+ dataSuffix?: `0x${string}`;
893
+ gas?: bigint;
894
+ gasPrice?: bigint;
895
+ maxFeePerGas?: bigint;
896
+ maxPriorityFeePerGas?: bigint;
897
+ nonce?: number;
898
+ value?: bigint;
899
+ }): Promise<void>;
900
+ /**
901
+ * Simulate setDelay
902
+ * Returns gas estimate and result without sending transaction
903
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
904
+ */
905
+ setDelay(delay_: bigint, options?: {
906
+ accessList?: import("viem").AccessList;
907
+ authorizationList?: import("viem").AuthorizationList;
908
+ chain?: import("viem").Chain | null;
909
+ dataSuffix?: `0x${string}`;
910
+ gas?: bigint;
911
+ gasPrice?: bigint;
912
+ maxFeePerGas?: bigint;
913
+ maxPriorityFeePerGas?: bigint;
914
+ nonce?: number;
915
+ value?: bigint;
916
+ }): Promise<void>;
917
+ /**
918
+ * Simulate setPendingAdmin
919
+ * Returns gas estimate and result without sending transaction
920
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
921
+ */
922
+ setPendingAdmin(pendingAdmin_: `0x${string}`, options?: {
923
+ accessList?: import("viem").AccessList;
924
+ authorizationList?: import("viem").AuthorizationList;
925
+ chain?: import("viem").Chain | null;
926
+ dataSuffix?: `0x${string}`;
927
+ gas?: bigint;
928
+ gasPrice?: bigint;
929
+ maxFeePerGas?: bigint;
930
+ maxPriorityFeePerGas?: bigint;
931
+ nonce?: number;
932
+ value?: bigint;
933
+ }): Promise<void>;
934
+ /**
935
+ * Simulate upgradeTo
936
+ * Returns gas estimate and result without sending transaction
937
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
938
+ */
939
+ upgradeTo(newImplementation: `0x${string}`, options?: {
940
+ accessList?: import("viem").AccessList;
941
+ authorizationList?: import("viem").AuthorizationList;
942
+ chain?: import("viem").Chain | null;
943
+ dataSuffix?: `0x${string}`;
944
+ gas?: bigint;
945
+ gasPrice?: bigint;
946
+ maxFeePerGas?: bigint;
947
+ maxPriorityFeePerGas?: bigint;
948
+ nonce?: number;
949
+ value?: bigint;
950
+ }): Promise<void>;
951
+ /**
952
+ * Simulate upgradeToAndCall
953
+ * Returns gas estimate and result without sending transaction
954
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
955
+ */
956
+ upgradeToAndCall(newImplementation: `0x${string}`, data: `0x${string}`, options?: {
957
+ accessList?: import("viem").AccessList;
958
+ authorizationList?: import("viem").AuthorizationList;
959
+ chain?: import("viem").Chain | null;
960
+ dataSuffix?: `0x${string}`;
961
+ gas?: bigint;
962
+ gasPrice?: bigint;
963
+ maxFeePerGas?: bigint;
964
+ maxPriorityFeePerGas?: bigint;
965
+ nonce?: number;
966
+ value?: bigint;
967
+ }): Promise<void>;
968
+ };
969
+ /**
970
+ * Watch contract events
971
+ *
972
+ * @example
973
+ * // Watch all Transfer events
974
+ * const unwatch = contract.watch.Transfer((event) => {
975
+ * console.log('Transfer:', event);
976
+ * });
977
+ *
978
+ * // Stop watching
979
+ * unwatch();
980
+ */
981
+ get watch(): {
982
+ /**
983
+ * Watch AdminChanged events
984
+ * @param callback Function to call when event is emitted
985
+ * @param filter Optional filter for indexed parameters
986
+ * @returns Unwatch function to stop listening
987
+ */
988
+ AdminChanged: (callback: (event: {
989
+ previousAdmin: `0x${string}`;
990
+ newAdmin: `0x${string}`;
991
+ }) => void) => () => void;
992
+ /**
993
+ * Watch BeaconUpgraded events
994
+ * @param callback Function to call when event is emitted
995
+ * @param filter Optional filter for indexed parameters
996
+ * @returns Unwatch function to stop listening
997
+ */
998
+ BeaconUpgraded: (callback: (event: {
999
+ beacon: `0x${string}`;
1000
+ }) => void, filter?: {
1001
+ beacon: `0x${string}`;
1002
+ }) => () => void;
1003
+ /**
1004
+ * Watch CancelTransaction events
1005
+ * @param callback Function to call when event is emitted
1006
+ * @param filter Optional filter for indexed parameters
1007
+ * @returns Unwatch function to stop listening
1008
+ */
1009
+ CancelTransaction: (callback: (event: {
1010
+ txHash: `0x${string}`;
1011
+ target: `0x${string}`;
1012
+ value: bigint;
1013
+ signature: string;
1014
+ data: `0x${string}`;
1015
+ eta: bigint;
1016
+ }) => void, filter?: {
1017
+ txHash: `0x${string}`;
1018
+ target: `0x${string}`;
1019
+ }) => () => void;
1020
+ /**
1021
+ * Watch ERC20Sent events
1022
+ * @param callback Function to call when event is emitted
1023
+ * @param filter Optional filter for indexed parameters
1024
+ * @returns Unwatch function to stop listening
1025
+ */
1026
+ ERC20Sent: (callback: (event: {
1027
+ to: `0x${string}`;
1028
+ erc20Token: `0x${string}`;
1029
+ amount: bigint;
1030
+ }) => void, filter?: {
1031
+ to: `0x${string}`;
1032
+ erc20Token: `0x${string}`;
1033
+ }) => () => void;
1034
+ /**
1035
+ * Watch ETHSent events
1036
+ * @param callback Function to call when event is emitted
1037
+ * @param filter Optional filter for indexed parameters
1038
+ * @returns Unwatch function to stop listening
1039
+ */
1040
+ ETHSent: (callback: (event: {
1041
+ to: `0x${string}`;
1042
+ amount: bigint;
1043
+ }) => void, filter?: {
1044
+ to: `0x${string}`;
1045
+ }) => () => void;
1046
+ /**
1047
+ * Watch ExecuteTransaction events
1048
+ * @param callback Function to call when event is emitted
1049
+ * @param filter Optional filter for indexed parameters
1050
+ * @returns Unwatch function to stop listening
1051
+ */
1052
+ ExecuteTransaction: (callback: (event: {
1053
+ txHash: `0x${string}`;
1054
+ target: `0x${string}`;
1055
+ value: bigint;
1056
+ signature: string;
1057
+ data: `0x${string}`;
1058
+ eta: bigint;
1059
+ }) => void, filter?: {
1060
+ txHash: `0x${string}`;
1061
+ target: `0x${string}`;
1062
+ }) => () => void;
1063
+ /**
1064
+ * Watch NewAdmin events
1065
+ * @param callback Function to call when event is emitted
1066
+ * @param filter Optional filter for indexed parameters
1067
+ * @returns Unwatch function to stop listening
1068
+ */
1069
+ NewAdmin: (callback: (event: {
1070
+ newAdmin: `0x${string}`;
1071
+ }) => void, filter?: {
1072
+ newAdmin: `0x${string}`;
1073
+ }) => () => void;
1074
+ /**
1075
+ * Watch NewDelay events
1076
+ * @param callback Function to call when event is emitted
1077
+ * @param filter Optional filter for indexed parameters
1078
+ * @returns Unwatch function to stop listening
1079
+ */
1080
+ NewDelay: (callback: (event: {
1081
+ newDelay: bigint;
1082
+ }) => void, filter?: {
1083
+ newDelay: bigint;
1084
+ }) => () => void;
1085
+ /**
1086
+ * Watch NewPendingAdmin events
1087
+ * @param callback Function to call when event is emitted
1088
+ * @param filter Optional filter for indexed parameters
1089
+ * @returns Unwatch function to stop listening
1090
+ */
1091
+ NewPendingAdmin: (callback: (event: {
1092
+ newPendingAdmin: `0x${string}`;
1093
+ }) => void, filter?: {
1094
+ newPendingAdmin: `0x${string}`;
1095
+ }) => () => void;
1096
+ /**
1097
+ * Watch QueueTransaction events
1098
+ * @param callback Function to call when event is emitted
1099
+ * @param filter Optional filter for indexed parameters
1100
+ * @returns Unwatch function to stop listening
1101
+ */
1102
+ QueueTransaction: (callback: (event: {
1103
+ txHash: `0x${string}`;
1104
+ target: `0x${string}`;
1105
+ value: bigint;
1106
+ signature: string;
1107
+ data: `0x${string}`;
1108
+ eta: bigint;
1109
+ }) => void, filter?: {
1110
+ txHash: `0x${string}`;
1111
+ target: `0x${string}`;
1112
+ }) => () => void;
1113
+ /**
1114
+ * Watch Upgraded events
1115
+ * @param callback Function to call when event is emitted
1116
+ * @param filter Optional filter for indexed parameters
1117
+ * @returns Unwatch function to stop listening
1118
+ */
1119
+ Upgraded: (callback: (event: {
1120
+ implementation: `0x${string}`;
1121
+ }) => void, filter?: {
1122
+ implementation: `0x${string}`;
1123
+ }) => () => void;
1124
+ };
1125
+ }