@gitmyabi-stg/ebtc 0.0.1

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