@gitmyabi/fbtc 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,1519 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * FBTC_json ABI
4
+ *
5
+ * This ABI is typed using viem's type system for full type safety.
6
+ */
7
+ export declare const FBTC_jsonAbi: readonly [{
8
+ readonly inputs: readonly [{
9
+ readonly internalType: "address";
10
+ readonly name: "_owner";
11
+ readonly type: "address";
12
+ }, {
13
+ readonly internalType: "address";
14
+ readonly name: "_bridge";
15
+ readonly type: "address";
16
+ }];
17
+ readonly stateMutability: "nonpayable";
18
+ readonly type: "constructor";
19
+ }, {
20
+ readonly inputs: readonly [{
21
+ readonly internalType: "address";
22
+ readonly name: "target";
23
+ readonly type: "address";
24
+ }];
25
+ readonly name: "AddressEmptyCode";
26
+ readonly type: "error";
27
+ }, {
28
+ readonly inputs: readonly [{
29
+ readonly internalType: "address";
30
+ readonly name: "account";
31
+ readonly type: "address";
32
+ }];
33
+ readonly name: "AddressInsufficientBalance";
34
+ readonly type: "error";
35
+ }, {
36
+ readonly inputs: readonly [{
37
+ readonly internalType: "address";
38
+ readonly name: "implementation";
39
+ readonly type: "address";
40
+ }];
41
+ readonly name: "ERC1967InvalidImplementation";
42
+ readonly type: "error";
43
+ }, {
44
+ readonly inputs: readonly [];
45
+ readonly name: "ERC1967NonPayable";
46
+ readonly type: "error";
47
+ }, {
48
+ readonly inputs: readonly [{
49
+ readonly internalType: "address";
50
+ readonly name: "spender";
51
+ readonly type: "address";
52
+ }, {
53
+ readonly internalType: "uint256";
54
+ readonly name: "allowance";
55
+ readonly type: "uint256";
56
+ }, {
57
+ readonly internalType: "uint256";
58
+ readonly name: "needed";
59
+ readonly type: "uint256";
60
+ }];
61
+ readonly name: "ERC20InsufficientAllowance";
62
+ readonly type: "error";
63
+ }, {
64
+ readonly inputs: readonly [{
65
+ readonly internalType: "address";
66
+ readonly name: "sender";
67
+ readonly type: "address";
68
+ }, {
69
+ readonly internalType: "uint256";
70
+ readonly name: "balance";
71
+ readonly type: "uint256";
72
+ }, {
73
+ readonly internalType: "uint256";
74
+ readonly name: "needed";
75
+ readonly type: "uint256";
76
+ }];
77
+ readonly name: "ERC20InsufficientBalance";
78
+ readonly type: "error";
79
+ }, {
80
+ readonly inputs: readonly [{
81
+ readonly internalType: "address";
82
+ readonly name: "approver";
83
+ readonly type: "address";
84
+ }];
85
+ readonly name: "ERC20InvalidApprover";
86
+ readonly type: "error";
87
+ }, {
88
+ readonly inputs: readonly [{
89
+ readonly internalType: "address";
90
+ readonly name: "receiver";
91
+ readonly type: "address";
92
+ }];
93
+ readonly name: "ERC20InvalidReceiver";
94
+ readonly type: "error";
95
+ }, {
96
+ readonly inputs: readonly [{
97
+ readonly internalType: "address";
98
+ readonly name: "sender";
99
+ readonly type: "address";
100
+ }];
101
+ readonly name: "ERC20InvalidSender";
102
+ readonly type: "error";
103
+ }, {
104
+ readonly inputs: readonly [{
105
+ readonly internalType: "address";
106
+ readonly name: "spender";
107
+ readonly type: "address";
108
+ }];
109
+ readonly name: "ERC20InvalidSpender";
110
+ readonly type: "error";
111
+ }, {
112
+ readonly inputs: readonly [];
113
+ readonly name: "EnforcedPause";
114
+ readonly type: "error";
115
+ }, {
116
+ readonly inputs: readonly [];
117
+ readonly name: "ExpectedPause";
118
+ readonly type: "error";
119
+ }, {
120
+ readonly inputs: readonly [];
121
+ readonly name: "FailedInnerCall";
122
+ readonly type: "error";
123
+ }, {
124
+ readonly inputs: readonly [];
125
+ readonly name: "InvalidInitialization";
126
+ readonly type: "error";
127
+ }, {
128
+ readonly inputs: readonly [];
129
+ readonly name: "NotInitializing";
130
+ readonly type: "error";
131
+ }, {
132
+ readonly inputs: readonly [{
133
+ readonly internalType: "address";
134
+ readonly name: "owner";
135
+ readonly type: "address";
136
+ }];
137
+ readonly name: "OwnableInvalidOwner";
138
+ readonly type: "error";
139
+ }, {
140
+ readonly inputs: readonly [{
141
+ readonly internalType: "address";
142
+ readonly name: "account";
143
+ readonly type: "address";
144
+ }];
145
+ readonly name: "OwnableUnauthorizedAccount";
146
+ readonly type: "error";
147
+ }, {
148
+ readonly inputs: readonly [{
149
+ readonly internalType: "address";
150
+ readonly name: "token";
151
+ readonly type: "address";
152
+ }];
153
+ readonly name: "SafeERC20FailedOperation";
154
+ readonly type: "error";
155
+ }, {
156
+ readonly inputs: readonly [];
157
+ readonly name: "UUPSUnauthorizedCallContext";
158
+ readonly type: "error";
159
+ }, {
160
+ readonly inputs: readonly [{
161
+ readonly internalType: "bytes32";
162
+ readonly name: "slot";
163
+ readonly type: "bytes32";
164
+ }];
165
+ readonly name: "UUPSUnsupportedProxiableUUID";
166
+ readonly type: "error";
167
+ }, {
168
+ readonly anonymous: false;
169
+ readonly inputs: readonly [{
170
+ readonly indexed: true;
171
+ readonly internalType: "address";
172
+ readonly name: "owner";
173
+ readonly type: "address";
174
+ }, {
175
+ readonly indexed: true;
176
+ readonly internalType: "address";
177
+ readonly name: "spender";
178
+ readonly type: "address";
179
+ }, {
180
+ readonly indexed: false;
181
+ readonly internalType: "uint256";
182
+ readonly name: "value";
183
+ readonly type: "uint256";
184
+ }];
185
+ readonly name: "Approval";
186
+ readonly type: "event";
187
+ }, {
188
+ readonly anonymous: false;
189
+ readonly inputs: readonly [{
190
+ readonly indexed: true;
191
+ readonly internalType: "address";
192
+ readonly name: "newBridge";
193
+ readonly type: "address";
194
+ }, {
195
+ readonly indexed: true;
196
+ readonly internalType: "address";
197
+ readonly name: "oldBridge";
198
+ readonly type: "address";
199
+ }];
200
+ readonly name: "BridgeUpdated";
201
+ readonly type: "event";
202
+ }, {
203
+ readonly anonymous: false;
204
+ readonly inputs: readonly [{
205
+ readonly indexed: false;
206
+ readonly internalType: "uint64";
207
+ readonly name: "version";
208
+ readonly type: "uint64";
209
+ }];
210
+ readonly name: "Initialized";
211
+ readonly type: "event";
212
+ }, {
213
+ readonly anonymous: false;
214
+ readonly inputs: readonly [{
215
+ readonly indexed: true;
216
+ readonly internalType: "address";
217
+ readonly name: "previousOwner";
218
+ readonly type: "address";
219
+ }, {
220
+ readonly indexed: true;
221
+ readonly internalType: "address";
222
+ readonly name: "newOwner";
223
+ readonly type: "address";
224
+ }];
225
+ readonly name: "OwnershipTransferStarted";
226
+ readonly type: "event";
227
+ }, {
228
+ readonly anonymous: false;
229
+ readonly inputs: readonly [{
230
+ readonly indexed: true;
231
+ readonly internalType: "address";
232
+ readonly name: "previousOwner";
233
+ readonly type: "address";
234
+ }, {
235
+ readonly indexed: true;
236
+ readonly internalType: "address";
237
+ readonly name: "newOwner";
238
+ readonly type: "address";
239
+ }];
240
+ readonly name: "OwnershipTransferred";
241
+ readonly type: "event";
242
+ }, {
243
+ readonly anonymous: false;
244
+ readonly inputs: readonly [{
245
+ readonly indexed: false;
246
+ readonly internalType: "address";
247
+ readonly name: "account";
248
+ readonly type: "address";
249
+ }];
250
+ readonly name: "Paused";
251
+ readonly type: "event";
252
+ }, {
253
+ readonly anonymous: false;
254
+ readonly inputs: readonly [{
255
+ readonly indexed: true;
256
+ readonly internalType: "address";
257
+ readonly name: "from";
258
+ readonly type: "address";
259
+ }, {
260
+ readonly indexed: true;
261
+ readonly internalType: "address";
262
+ readonly name: "to";
263
+ readonly type: "address";
264
+ }, {
265
+ readonly indexed: false;
266
+ readonly internalType: "uint256";
267
+ readonly name: "value";
268
+ readonly type: "uint256";
269
+ }];
270
+ readonly name: "Transfer";
271
+ readonly type: "event";
272
+ }, {
273
+ readonly anonymous: false;
274
+ readonly inputs: readonly [{
275
+ readonly indexed: false;
276
+ readonly internalType: "address";
277
+ readonly name: "account";
278
+ readonly type: "address";
279
+ }];
280
+ readonly name: "Unpaused";
281
+ readonly type: "event";
282
+ }, {
283
+ readonly anonymous: false;
284
+ readonly inputs: readonly [{
285
+ readonly indexed: true;
286
+ readonly internalType: "address";
287
+ readonly name: "implementation";
288
+ readonly type: "address";
289
+ }];
290
+ readonly name: "Upgraded";
291
+ readonly type: "event";
292
+ }, {
293
+ readonly anonymous: false;
294
+ readonly inputs: readonly [{
295
+ readonly indexed: true;
296
+ readonly internalType: "address";
297
+ readonly name: "user";
298
+ readonly type: "address";
299
+ }];
300
+ readonly name: "UserLocked";
301
+ readonly type: "event";
302
+ }, {
303
+ readonly anonymous: false;
304
+ readonly inputs: readonly [{
305
+ readonly indexed: true;
306
+ readonly internalType: "address";
307
+ readonly name: "user";
308
+ readonly type: "address";
309
+ }];
310
+ readonly name: "UserUnlocked";
311
+ readonly type: "event";
312
+ }, {
313
+ readonly inputs: readonly [];
314
+ readonly name: "UPGRADE_INTERFACE_VERSION";
315
+ readonly outputs: readonly [{
316
+ readonly internalType: "string";
317
+ readonly name: "";
318
+ readonly type: "string";
319
+ }];
320
+ readonly stateMutability: "view";
321
+ readonly type: "function";
322
+ }, {
323
+ readonly inputs: readonly [];
324
+ readonly name: "acceptOwnership";
325
+ readonly outputs: readonly [];
326
+ readonly stateMutability: "nonpayable";
327
+ readonly type: "function";
328
+ }, {
329
+ readonly inputs: readonly [{
330
+ readonly internalType: "address";
331
+ readonly name: "owner";
332
+ readonly type: "address";
333
+ }, {
334
+ readonly internalType: "address";
335
+ readonly name: "spender";
336
+ readonly type: "address";
337
+ }];
338
+ readonly name: "allowance";
339
+ readonly outputs: readonly [{
340
+ readonly internalType: "uint256";
341
+ readonly name: "";
342
+ readonly type: "uint256";
343
+ }];
344
+ readonly stateMutability: "view";
345
+ readonly type: "function";
346
+ }, {
347
+ readonly inputs: readonly [{
348
+ readonly internalType: "address";
349
+ readonly name: "spender";
350
+ readonly type: "address";
351
+ }, {
352
+ readonly internalType: "uint256";
353
+ readonly name: "value";
354
+ readonly type: "uint256";
355
+ }];
356
+ readonly name: "approve";
357
+ readonly outputs: readonly [{
358
+ readonly internalType: "bool";
359
+ readonly name: "";
360
+ readonly type: "bool";
361
+ }];
362
+ readonly stateMutability: "nonpayable";
363
+ readonly type: "function";
364
+ }, {
365
+ readonly inputs: readonly [{
366
+ readonly internalType: "address";
367
+ readonly name: "account";
368
+ readonly type: "address";
369
+ }];
370
+ readonly name: "balanceOf";
371
+ readonly outputs: readonly [{
372
+ readonly internalType: "uint256";
373
+ readonly name: "";
374
+ readonly type: "uint256";
375
+ }];
376
+ readonly stateMutability: "view";
377
+ readonly type: "function";
378
+ }, {
379
+ readonly inputs: readonly [];
380
+ readonly name: "bridge";
381
+ readonly outputs: readonly [{
382
+ readonly internalType: "address";
383
+ readonly name: "";
384
+ readonly type: "address";
385
+ }];
386
+ readonly stateMutability: "view";
387
+ readonly type: "function";
388
+ }, {
389
+ readonly inputs: readonly [{
390
+ readonly internalType: "address";
391
+ readonly name: "from";
392
+ readonly type: "address";
393
+ }, {
394
+ readonly internalType: "uint256";
395
+ readonly name: "amount";
396
+ readonly type: "uint256";
397
+ }];
398
+ readonly name: "burn";
399
+ readonly outputs: readonly [];
400
+ readonly stateMutability: "nonpayable";
401
+ readonly type: "function";
402
+ }, {
403
+ readonly inputs: readonly [];
404
+ readonly name: "decimals";
405
+ readonly outputs: readonly [{
406
+ readonly internalType: "uint8";
407
+ readonly name: "";
408
+ readonly type: "uint8";
409
+ }];
410
+ readonly stateMutability: "pure";
411
+ readonly type: "function";
412
+ }, {
413
+ readonly inputs: readonly [{
414
+ readonly internalType: "address";
415
+ readonly name: "_owner";
416
+ readonly type: "address";
417
+ }, {
418
+ readonly internalType: "address";
419
+ readonly name: "_bridge";
420
+ readonly type: "address";
421
+ }];
422
+ readonly name: "initialize";
423
+ readonly outputs: readonly [];
424
+ readonly stateMutability: "nonpayable";
425
+ readonly type: "function";
426
+ }, {
427
+ readonly inputs: readonly [{
428
+ readonly internalType: "address";
429
+ readonly name: "_user";
430
+ readonly type: "address";
431
+ }];
432
+ readonly name: "lockUser";
433
+ readonly outputs: readonly [];
434
+ readonly stateMutability: "nonpayable";
435
+ readonly type: "function";
436
+ }, {
437
+ readonly inputs: readonly [{
438
+ readonly internalType: "address";
439
+ readonly name: "to";
440
+ readonly type: "address";
441
+ }, {
442
+ readonly internalType: "uint256";
443
+ readonly name: "amount";
444
+ readonly type: "uint256";
445
+ }];
446
+ readonly name: "mint";
447
+ readonly outputs: readonly [];
448
+ readonly stateMutability: "nonpayable";
449
+ readonly type: "function";
450
+ }, {
451
+ readonly inputs: readonly [];
452
+ readonly name: "name";
453
+ readonly outputs: readonly [{
454
+ readonly internalType: "string";
455
+ readonly name: "";
456
+ readonly type: "string";
457
+ }];
458
+ readonly stateMutability: "view";
459
+ readonly type: "function";
460
+ }, {
461
+ readonly inputs: readonly [];
462
+ readonly name: "owner";
463
+ readonly outputs: readonly [{
464
+ readonly internalType: "address";
465
+ readonly name: "";
466
+ readonly type: "address";
467
+ }];
468
+ readonly stateMutability: "view";
469
+ readonly type: "function";
470
+ }, {
471
+ readonly inputs: readonly [];
472
+ readonly name: "pause";
473
+ readonly outputs: readonly [];
474
+ readonly stateMutability: "nonpayable";
475
+ readonly type: "function";
476
+ }, {
477
+ readonly inputs: readonly [];
478
+ readonly name: "paused";
479
+ readonly outputs: readonly [{
480
+ readonly internalType: "bool";
481
+ readonly name: "";
482
+ readonly type: "bool";
483
+ }];
484
+ readonly stateMutability: "view";
485
+ readonly type: "function";
486
+ }, {
487
+ readonly inputs: readonly [{
488
+ readonly internalType: "address";
489
+ readonly name: "payer";
490
+ readonly type: "address";
491
+ }, {
492
+ readonly internalType: "address";
493
+ readonly name: "feeRecipient";
494
+ readonly type: "address";
495
+ }, {
496
+ readonly internalType: "uint256";
497
+ readonly name: "amount";
498
+ readonly type: "uint256";
499
+ }];
500
+ readonly name: "payFee";
501
+ readonly outputs: readonly [];
502
+ readonly stateMutability: "nonpayable";
503
+ readonly type: "function";
504
+ }, {
505
+ readonly inputs: readonly [];
506
+ readonly name: "pendingOwner";
507
+ readonly outputs: readonly [{
508
+ readonly internalType: "address";
509
+ readonly name: "";
510
+ readonly type: "address";
511
+ }];
512
+ readonly stateMutability: "view";
513
+ readonly type: "function";
514
+ }, {
515
+ readonly inputs: readonly [];
516
+ readonly name: "proxiableUUID";
517
+ readonly outputs: readonly [{
518
+ readonly internalType: "bytes32";
519
+ readonly name: "";
520
+ readonly type: "bytes32";
521
+ }];
522
+ readonly stateMutability: "view";
523
+ readonly type: "function";
524
+ }, {
525
+ readonly inputs: readonly [];
526
+ readonly name: "renounceOwnership";
527
+ readonly outputs: readonly [];
528
+ readonly stateMutability: "nonpayable";
529
+ readonly type: "function";
530
+ }, {
531
+ readonly inputs: readonly [{
532
+ readonly internalType: "address";
533
+ readonly name: "token";
534
+ readonly type: "address";
535
+ }, {
536
+ readonly internalType: "address";
537
+ readonly name: "to";
538
+ readonly type: "address";
539
+ }];
540
+ readonly name: "rescue";
541
+ readonly outputs: readonly [];
542
+ readonly stateMutability: "nonpayable";
543
+ readonly type: "function";
544
+ }, {
545
+ readonly inputs: readonly [{
546
+ readonly internalType: "address";
547
+ readonly name: "_bridge";
548
+ readonly type: "address";
549
+ }];
550
+ readonly name: "setBridge";
551
+ readonly outputs: readonly [];
552
+ readonly stateMutability: "nonpayable";
553
+ readonly type: "function";
554
+ }, {
555
+ readonly inputs: readonly [];
556
+ readonly name: "symbol";
557
+ readonly outputs: readonly [{
558
+ readonly internalType: "string";
559
+ readonly name: "";
560
+ readonly type: "string";
561
+ }];
562
+ readonly stateMutability: "view";
563
+ readonly type: "function";
564
+ }, {
565
+ readonly inputs: readonly [];
566
+ readonly name: "totalSupply";
567
+ readonly outputs: readonly [{
568
+ readonly internalType: "uint256";
569
+ readonly name: "";
570
+ readonly type: "uint256";
571
+ }];
572
+ readonly stateMutability: "view";
573
+ readonly type: "function";
574
+ }, {
575
+ readonly inputs: readonly [{
576
+ readonly internalType: "address";
577
+ readonly name: "to";
578
+ readonly type: "address";
579
+ }, {
580
+ readonly internalType: "uint256";
581
+ readonly name: "value";
582
+ readonly type: "uint256";
583
+ }];
584
+ readonly name: "transfer";
585
+ readonly outputs: readonly [{
586
+ readonly internalType: "bool";
587
+ readonly name: "";
588
+ readonly type: "bool";
589
+ }];
590
+ readonly stateMutability: "nonpayable";
591
+ readonly type: "function";
592
+ }, {
593
+ readonly inputs: readonly [{
594
+ readonly internalType: "address";
595
+ readonly name: "from";
596
+ readonly type: "address";
597
+ }, {
598
+ readonly internalType: "address";
599
+ readonly name: "to";
600
+ readonly type: "address";
601
+ }, {
602
+ readonly internalType: "uint256";
603
+ readonly name: "value";
604
+ readonly type: "uint256";
605
+ }];
606
+ readonly name: "transferFrom";
607
+ readonly outputs: readonly [{
608
+ readonly internalType: "bool";
609
+ readonly name: "";
610
+ readonly type: "bool";
611
+ }];
612
+ readonly stateMutability: "nonpayable";
613
+ readonly type: "function";
614
+ }, {
615
+ readonly inputs: readonly [{
616
+ readonly internalType: "address";
617
+ readonly name: "newOwner";
618
+ readonly type: "address";
619
+ }];
620
+ readonly name: "transferOwnership";
621
+ readonly outputs: readonly [];
622
+ readonly stateMutability: "nonpayable";
623
+ readonly type: "function";
624
+ }, {
625
+ readonly inputs: readonly [{
626
+ readonly internalType: "address";
627
+ readonly name: "_user";
628
+ readonly type: "address";
629
+ }];
630
+ readonly name: "unlockUser";
631
+ readonly outputs: readonly [];
632
+ readonly stateMutability: "nonpayable";
633
+ readonly type: "function";
634
+ }, {
635
+ readonly inputs: readonly [];
636
+ readonly name: "unpause";
637
+ readonly outputs: readonly [];
638
+ readonly stateMutability: "nonpayable";
639
+ readonly type: "function";
640
+ }, {
641
+ readonly inputs: readonly [{
642
+ readonly internalType: "address";
643
+ readonly name: "newImplementation";
644
+ readonly type: "address";
645
+ }, {
646
+ readonly internalType: "bytes";
647
+ readonly name: "data";
648
+ readonly type: "bytes";
649
+ }];
650
+ readonly name: "upgradeToAndCall";
651
+ readonly outputs: readonly [];
652
+ readonly stateMutability: "payable";
653
+ readonly type: "function";
654
+ }, {
655
+ readonly inputs: readonly [{
656
+ readonly internalType: "address";
657
+ readonly name: "user";
658
+ readonly type: "address";
659
+ }];
660
+ readonly name: "userBlocked";
661
+ readonly outputs: readonly [{
662
+ readonly internalType: "bool";
663
+ readonly name: "blocked";
664
+ readonly type: "bool";
665
+ }];
666
+ readonly stateMutability: "view";
667
+ readonly type: "function";
668
+ }];
669
+ /**
670
+ * Type-safe ABI for FBTC_json
671
+ */
672
+ export type FBTC_jsonAbi = typeof FBTC_jsonAbi;
673
+ /**
674
+ * Contract instance type for FBTC_json
675
+ */
676
+ export type FBTC_jsonContract = any;
677
+ /**
678
+ * FBTC_json Contract Class
679
+ *
680
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
681
+ *
682
+ * @example
683
+ * ```typescript
684
+ * import { createPublicClient, createWalletClient, http } from 'viem';
685
+ * import { mainnet } from 'viem/chains';
686
+ * import { FBTC_json } from 'FBTC_json';
687
+ *
688
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
689
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
690
+ *
691
+ * const contract = new FBTC_json('0x...', { publicClient, walletClient });
692
+ *
693
+ * // Read functions
694
+ * const result = await contract.balanceOf('0x...');
695
+ *
696
+ * // Write functions
697
+ * const hash = await contract.transfer('0x...', 1000n);
698
+ *
699
+ * // Simulate transactions (dry-run)
700
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
701
+ * console.log('Gas estimate:', simulation.request.gas);
702
+ *
703
+ * // Watch events
704
+ * const unwatch = contract.watch.Transfer((event) => {
705
+ * console.log('Transfer event:', event);
706
+ * });
707
+ * ```
708
+ */
709
+ export declare class FBTC_json {
710
+ private contract;
711
+ private contractAddress;
712
+ private publicClient;
713
+ constructor(address: Address, clients: {
714
+ publicClient: PublicClient;
715
+ walletClient?: WalletClient;
716
+ });
717
+ /**
718
+ * Get the contract address
719
+ */
720
+ get address(): Address;
721
+ /**
722
+ * Get the underlying viem contract instance
723
+ */
724
+ getContract(): FBTC_jsonContract;
725
+ /**
726
+ * UPGRADE_INTERFACE_VERSION
727
+ * view
728
+ */
729
+ UPGRADE_INTERFACE_VERSION(): Promise<string>;
730
+ /**
731
+ * allowance
732
+ * view
733
+ */
734
+ allowance(owner: `0x${string}`, spender: `0x${string}`): Promise<bigint>;
735
+ /**
736
+ * balanceOf
737
+ * view
738
+ */
739
+ balanceOf(account: `0x${string}`): Promise<bigint>;
740
+ /**
741
+ * bridge
742
+ * view
743
+ */
744
+ bridge(): Promise<`0x${string}`>;
745
+ /**
746
+ * decimals
747
+ * pure
748
+ */
749
+ decimals(): Promise<bigint>;
750
+ /**
751
+ * name
752
+ * view
753
+ */
754
+ name(): Promise<string>;
755
+ /**
756
+ * owner
757
+ * view
758
+ */
759
+ owner(): Promise<`0x${string}`>;
760
+ /**
761
+ * paused
762
+ * view
763
+ */
764
+ paused(): Promise<boolean>;
765
+ /**
766
+ * pendingOwner
767
+ * view
768
+ */
769
+ pendingOwner(): Promise<`0x${string}`>;
770
+ /**
771
+ * proxiableUUID
772
+ * view
773
+ */
774
+ proxiableUUID(): Promise<`0x${string}`>;
775
+ /**
776
+ * symbol
777
+ * view
778
+ */
779
+ symbol(): Promise<string>;
780
+ /**
781
+ * totalSupply
782
+ * view
783
+ */
784
+ totalSupply(): Promise<bigint>;
785
+ /**
786
+ * userBlocked
787
+ * view
788
+ */
789
+ userBlocked(user: `0x${string}`): Promise<boolean>;
790
+ /**
791
+ * acceptOwnership
792
+ * nonpayable
793
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
794
+ */
795
+ acceptOwnership(options?: {
796
+ accessList?: import('viem').AccessList;
797
+ authorizationList?: import('viem').AuthorizationList;
798
+ chain?: import('viem').Chain | null;
799
+ dataSuffix?: `0x${string}`;
800
+ gas?: bigint;
801
+ gasPrice?: bigint;
802
+ maxFeePerGas?: bigint;
803
+ maxPriorityFeePerGas?: bigint;
804
+ nonce?: number;
805
+ value?: bigint;
806
+ }): Promise<`0x${string}`>;
807
+ /**
808
+ * approve
809
+ * nonpayable
810
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
811
+ */
812
+ approve(spender: `0x${string}`, value: bigint, options?: {
813
+ accessList?: import('viem').AccessList;
814
+ authorizationList?: import('viem').AuthorizationList;
815
+ chain?: import('viem').Chain | null;
816
+ dataSuffix?: `0x${string}`;
817
+ gas?: bigint;
818
+ gasPrice?: bigint;
819
+ maxFeePerGas?: bigint;
820
+ maxPriorityFeePerGas?: bigint;
821
+ nonce?: number;
822
+ value?: bigint;
823
+ }): Promise<`0x${string}`>;
824
+ /**
825
+ * burn
826
+ * nonpayable
827
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
828
+ */
829
+ burn(from: `0x${string}`, amount: bigint, options?: {
830
+ accessList?: import('viem').AccessList;
831
+ authorizationList?: import('viem').AuthorizationList;
832
+ chain?: import('viem').Chain | null;
833
+ dataSuffix?: `0x${string}`;
834
+ gas?: bigint;
835
+ gasPrice?: bigint;
836
+ maxFeePerGas?: bigint;
837
+ maxPriorityFeePerGas?: bigint;
838
+ nonce?: number;
839
+ value?: bigint;
840
+ }): Promise<`0x${string}`>;
841
+ /**
842
+ * initialize
843
+ * nonpayable
844
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
845
+ */
846
+ initialize(_owner: `0x${string}`, _bridge: `0x${string}`, options?: {
847
+ accessList?: import('viem').AccessList;
848
+ authorizationList?: import('viem').AuthorizationList;
849
+ chain?: import('viem').Chain | null;
850
+ dataSuffix?: `0x${string}`;
851
+ gas?: bigint;
852
+ gasPrice?: bigint;
853
+ maxFeePerGas?: bigint;
854
+ maxPriorityFeePerGas?: bigint;
855
+ nonce?: number;
856
+ value?: bigint;
857
+ }): Promise<`0x${string}`>;
858
+ /**
859
+ * lockUser
860
+ * nonpayable
861
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
862
+ */
863
+ lockUser(_user: `0x${string}`, options?: {
864
+ accessList?: import('viem').AccessList;
865
+ authorizationList?: import('viem').AuthorizationList;
866
+ chain?: import('viem').Chain | null;
867
+ dataSuffix?: `0x${string}`;
868
+ gas?: bigint;
869
+ gasPrice?: bigint;
870
+ maxFeePerGas?: bigint;
871
+ maxPriorityFeePerGas?: bigint;
872
+ nonce?: number;
873
+ value?: bigint;
874
+ }): Promise<`0x${string}`>;
875
+ /**
876
+ * mint
877
+ * nonpayable
878
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
879
+ */
880
+ mint(to: `0x${string}`, amount: bigint, options?: {
881
+ accessList?: import('viem').AccessList;
882
+ authorizationList?: import('viem').AuthorizationList;
883
+ chain?: import('viem').Chain | null;
884
+ dataSuffix?: `0x${string}`;
885
+ gas?: bigint;
886
+ gasPrice?: bigint;
887
+ maxFeePerGas?: bigint;
888
+ maxPriorityFeePerGas?: bigint;
889
+ nonce?: number;
890
+ value?: bigint;
891
+ }): Promise<`0x${string}`>;
892
+ /**
893
+ * pause
894
+ * nonpayable
895
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
896
+ */
897
+ pause(options?: {
898
+ accessList?: import('viem').AccessList;
899
+ authorizationList?: import('viem').AuthorizationList;
900
+ chain?: import('viem').Chain | null;
901
+ dataSuffix?: `0x${string}`;
902
+ gas?: bigint;
903
+ gasPrice?: bigint;
904
+ maxFeePerGas?: bigint;
905
+ maxPriorityFeePerGas?: bigint;
906
+ nonce?: number;
907
+ value?: bigint;
908
+ }): Promise<`0x${string}`>;
909
+ /**
910
+ * payFee
911
+ * nonpayable
912
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
913
+ */
914
+ payFee(payer: `0x${string}`, feeRecipient: `0x${string}`, amount: bigint, options?: {
915
+ accessList?: import('viem').AccessList;
916
+ authorizationList?: import('viem').AuthorizationList;
917
+ chain?: import('viem').Chain | null;
918
+ dataSuffix?: `0x${string}`;
919
+ gas?: bigint;
920
+ gasPrice?: bigint;
921
+ maxFeePerGas?: bigint;
922
+ maxPriorityFeePerGas?: bigint;
923
+ nonce?: number;
924
+ value?: bigint;
925
+ }): Promise<`0x${string}`>;
926
+ /**
927
+ * renounceOwnership
928
+ * nonpayable
929
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
930
+ */
931
+ renounceOwnership(options?: {
932
+ accessList?: import('viem').AccessList;
933
+ authorizationList?: import('viem').AuthorizationList;
934
+ chain?: import('viem').Chain | null;
935
+ dataSuffix?: `0x${string}`;
936
+ gas?: bigint;
937
+ gasPrice?: bigint;
938
+ maxFeePerGas?: bigint;
939
+ maxPriorityFeePerGas?: bigint;
940
+ nonce?: number;
941
+ value?: bigint;
942
+ }): Promise<`0x${string}`>;
943
+ /**
944
+ * rescue
945
+ * nonpayable
946
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
947
+ */
948
+ rescue(token: `0x${string}`, to: `0x${string}`, options?: {
949
+ accessList?: import('viem').AccessList;
950
+ authorizationList?: import('viem').AuthorizationList;
951
+ chain?: import('viem').Chain | null;
952
+ dataSuffix?: `0x${string}`;
953
+ gas?: bigint;
954
+ gasPrice?: bigint;
955
+ maxFeePerGas?: bigint;
956
+ maxPriorityFeePerGas?: bigint;
957
+ nonce?: number;
958
+ value?: bigint;
959
+ }): Promise<`0x${string}`>;
960
+ /**
961
+ * setBridge
962
+ * nonpayable
963
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
964
+ */
965
+ setBridge(_bridge: `0x${string}`, options?: {
966
+ accessList?: import('viem').AccessList;
967
+ authorizationList?: import('viem').AuthorizationList;
968
+ chain?: import('viem').Chain | null;
969
+ dataSuffix?: `0x${string}`;
970
+ gas?: bigint;
971
+ gasPrice?: bigint;
972
+ maxFeePerGas?: bigint;
973
+ maxPriorityFeePerGas?: bigint;
974
+ nonce?: number;
975
+ value?: bigint;
976
+ }): Promise<`0x${string}`>;
977
+ /**
978
+ * transfer
979
+ * nonpayable
980
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
981
+ */
982
+ transfer(to: `0x${string}`, value: bigint, options?: {
983
+ accessList?: import('viem').AccessList;
984
+ authorizationList?: import('viem').AuthorizationList;
985
+ chain?: import('viem').Chain | null;
986
+ dataSuffix?: `0x${string}`;
987
+ gas?: bigint;
988
+ gasPrice?: bigint;
989
+ maxFeePerGas?: bigint;
990
+ maxPriorityFeePerGas?: bigint;
991
+ nonce?: number;
992
+ value?: bigint;
993
+ }): Promise<`0x${string}`>;
994
+ /**
995
+ * transferFrom
996
+ * nonpayable
997
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
998
+ */
999
+ transferFrom(from: `0x${string}`, to: `0x${string}`, value: bigint, options?: {
1000
+ accessList?: import('viem').AccessList;
1001
+ authorizationList?: import('viem').AuthorizationList;
1002
+ chain?: import('viem').Chain | null;
1003
+ dataSuffix?: `0x${string}`;
1004
+ gas?: bigint;
1005
+ gasPrice?: bigint;
1006
+ maxFeePerGas?: bigint;
1007
+ maxPriorityFeePerGas?: bigint;
1008
+ nonce?: number;
1009
+ value?: bigint;
1010
+ }): Promise<`0x${string}`>;
1011
+ /**
1012
+ * transferOwnership
1013
+ * nonpayable
1014
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1015
+ */
1016
+ transferOwnership(newOwner: `0x${string}`, options?: {
1017
+ accessList?: import('viem').AccessList;
1018
+ authorizationList?: import('viem').AuthorizationList;
1019
+ chain?: import('viem').Chain | null;
1020
+ dataSuffix?: `0x${string}`;
1021
+ gas?: bigint;
1022
+ gasPrice?: bigint;
1023
+ maxFeePerGas?: bigint;
1024
+ maxPriorityFeePerGas?: bigint;
1025
+ nonce?: number;
1026
+ value?: bigint;
1027
+ }): Promise<`0x${string}`>;
1028
+ /**
1029
+ * unlockUser
1030
+ * nonpayable
1031
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1032
+ */
1033
+ unlockUser(_user: `0x${string}`, options?: {
1034
+ accessList?: import('viem').AccessList;
1035
+ authorizationList?: import('viem').AuthorizationList;
1036
+ chain?: import('viem').Chain | null;
1037
+ dataSuffix?: `0x${string}`;
1038
+ gas?: bigint;
1039
+ gasPrice?: bigint;
1040
+ maxFeePerGas?: bigint;
1041
+ maxPriorityFeePerGas?: bigint;
1042
+ nonce?: number;
1043
+ value?: bigint;
1044
+ }): Promise<`0x${string}`>;
1045
+ /**
1046
+ * unpause
1047
+ * nonpayable
1048
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1049
+ */
1050
+ unpause(options?: {
1051
+ accessList?: import('viem').AccessList;
1052
+ authorizationList?: import('viem').AuthorizationList;
1053
+ chain?: import('viem').Chain | null;
1054
+ dataSuffix?: `0x${string}`;
1055
+ gas?: bigint;
1056
+ gasPrice?: bigint;
1057
+ maxFeePerGas?: bigint;
1058
+ maxPriorityFeePerGas?: bigint;
1059
+ nonce?: number;
1060
+ value?: bigint;
1061
+ }): Promise<`0x${string}`>;
1062
+ /**
1063
+ * upgradeToAndCall
1064
+ * payable
1065
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1066
+ */
1067
+ upgradeToAndCall(newImplementation: `0x${string}`, data: `0x${string}`, options?: {
1068
+ accessList?: import('viem').AccessList;
1069
+ authorizationList?: import('viem').AuthorizationList;
1070
+ chain?: import('viem').Chain | null;
1071
+ dataSuffix?: `0x${string}`;
1072
+ gas?: bigint;
1073
+ gasPrice?: bigint;
1074
+ maxFeePerGas?: bigint;
1075
+ maxPriorityFeePerGas?: bigint;
1076
+ nonce?: number;
1077
+ value?: bigint;
1078
+ }): Promise<`0x${string}`>;
1079
+ /**
1080
+ * Simulate contract write operations (dry-run without sending transaction)
1081
+ *
1082
+ * @example
1083
+ * const result = await contract.simulate.transfer('0x...', 1000n);
1084
+ * console.log('Gas estimate:', result.request.gas);
1085
+ * console.log('Would succeed:', result.result);
1086
+ */
1087
+ get simulate(): {
1088
+ /**
1089
+ * Simulate acceptOwnership
1090
+ * Returns gas estimate and result without sending transaction
1091
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1092
+ */
1093
+ acceptOwnership(options?: {
1094
+ accessList?: import("viem").AccessList;
1095
+ authorizationList?: import("viem").AuthorizationList;
1096
+ chain?: import("viem").Chain | null;
1097
+ dataSuffix?: `0x${string}`;
1098
+ gas?: bigint;
1099
+ gasPrice?: bigint;
1100
+ maxFeePerGas?: bigint;
1101
+ maxPriorityFeePerGas?: bigint;
1102
+ nonce?: number;
1103
+ value?: bigint;
1104
+ }): Promise<void>;
1105
+ /**
1106
+ * Simulate approve
1107
+ * Returns gas estimate and result without sending transaction
1108
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1109
+ */
1110
+ approve(spender: `0x${string}`, value: bigint, options?: {
1111
+ accessList?: import("viem").AccessList;
1112
+ authorizationList?: import("viem").AuthorizationList;
1113
+ chain?: import("viem").Chain | null;
1114
+ dataSuffix?: `0x${string}`;
1115
+ gas?: bigint;
1116
+ gasPrice?: bigint;
1117
+ maxFeePerGas?: bigint;
1118
+ maxPriorityFeePerGas?: bigint;
1119
+ nonce?: number;
1120
+ value?: bigint;
1121
+ }): Promise<boolean>;
1122
+ /**
1123
+ * Simulate burn
1124
+ * Returns gas estimate and result without sending transaction
1125
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1126
+ */
1127
+ burn(from: `0x${string}`, amount: bigint, options?: {
1128
+ accessList?: import("viem").AccessList;
1129
+ authorizationList?: import("viem").AuthorizationList;
1130
+ chain?: import("viem").Chain | null;
1131
+ dataSuffix?: `0x${string}`;
1132
+ gas?: bigint;
1133
+ gasPrice?: bigint;
1134
+ maxFeePerGas?: bigint;
1135
+ maxPriorityFeePerGas?: bigint;
1136
+ nonce?: number;
1137
+ value?: bigint;
1138
+ }): Promise<void>;
1139
+ /**
1140
+ * Simulate initialize
1141
+ * Returns gas estimate and result without sending transaction
1142
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1143
+ */
1144
+ initialize(_owner: `0x${string}`, _bridge: `0x${string}`, options?: {
1145
+ accessList?: import("viem").AccessList;
1146
+ authorizationList?: import("viem").AuthorizationList;
1147
+ chain?: import("viem").Chain | null;
1148
+ dataSuffix?: `0x${string}`;
1149
+ gas?: bigint;
1150
+ gasPrice?: bigint;
1151
+ maxFeePerGas?: bigint;
1152
+ maxPriorityFeePerGas?: bigint;
1153
+ nonce?: number;
1154
+ value?: bigint;
1155
+ }): Promise<void>;
1156
+ /**
1157
+ * Simulate lockUser
1158
+ * Returns gas estimate and result without sending transaction
1159
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1160
+ */
1161
+ lockUser(_user: `0x${string}`, options?: {
1162
+ accessList?: import("viem").AccessList;
1163
+ authorizationList?: import("viem").AuthorizationList;
1164
+ chain?: import("viem").Chain | null;
1165
+ dataSuffix?: `0x${string}`;
1166
+ gas?: bigint;
1167
+ gasPrice?: bigint;
1168
+ maxFeePerGas?: bigint;
1169
+ maxPriorityFeePerGas?: bigint;
1170
+ nonce?: number;
1171
+ value?: bigint;
1172
+ }): Promise<void>;
1173
+ /**
1174
+ * Simulate mint
1175
+ * Returns gas estimate and result without sending transaction
1176
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1177
+ */
1178
+ mint(to: `0x${string}`, amount: bigint, options?: {
1179
+ accessList?: import("viem").AccessList;
1180
+ authorizationList?: import("viem").AuthorizationList;
1181
+ chain?: import("viem").Chain | null;
1182
+ dataSuffix?: `0x${string}`;
1183
+ gas?: bigint;
1184
+ gasPrice?: bigint;
1185
+ maxFeePerGas?: bigint;
1186
+ maxPriorityFeePerGas?: bigint;
1187
+ nonce?: number;
1188
+ value?: bigint;
1189
+ }): Promise<void>;
1190
+ /**
1191
+ * Simulate pause
1192
+ * Returns gas estimate and result without sending transaction
1193
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1194
+ */
1195
+ pause(options?: {
1196
+ accessList?: import("viem").AccessList;
1197
+ authorizationList?: import("viem").AuthorizationList;
1198
+ chain?: import("viem").Chain | null;
1199
+ dataSuffix?: `0x${string}`;
1200
+ gas?: bigint;
1201
+ gasPrice?: bigint;
1202
+ maxFeePerGas?: bigint;
1203
+ maxPriorityFeePerGas?: bigint;
1204
+ nonce?: number;
1205
+ value?: bigint;
1206
+ }): Promise<void>;
1207
+ /**
1208
+ * Simulate payFee
1209
+ * Returns gas estimate and result without sending transaction
1210
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1211
+ */
1212
+ payFee(payer: `0x${string}`, feeRecipient: `0x${string}`, amount: bigint, options?: {
1213
+ accessList?: import("viem").AccessList;
1214
+ authorizationList?: import("viem").AuthorizationList;
1215
+ chain?: import("viem").Chain | null;
1216
+ dataSuffix?: `0x${string}`;
1217
+ gas?: bigint;
1218
+ gasPrice?: bigint;
1219
+ maxFeePerGas?: bigint;
1220
+ maxPriorityFeePerGas?: bigint;
1221
+ nonce?: number;
1222
+ value?: bigint;
1223
+ }): Promise<void>;
1224
+ /**
1225
+ * Simulate renounceOwnership
1226
+ * Returns gas estimate and result without sending transaction
1227
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1228
+ */
1229
+ renounceOwnership(options?: {
1230
+ accessList?: import("viem").AccessList;
1231
+ authorizationList?: import("viem").AuthorizationList;
1232
+ chain?: import("viem").Chain | null;
1233
+ dataSuffix?: `0x${string}`;
1234
+ gas?: bigint;
1235
+ gasPrice?: bigint;
1236
+ maxFeePerGas?: bigint;
1237
+ maxPriorityFeePerGas?: bigint;
1238
+ nonce?: number;
1239
+ value?: bigint;
1240
+ }): Promise<void>;
1241
+ /**
1242
+ * Simulate rescue
1243
+ * Returns gas estimate and result without sending transaction
1244
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1245
+ */
1246
+ rescue(token: `0x${string}`, to: `0x${string}`, options?: {
1247
+ accessList?: import("viem").AccessList;
1248
+ authorizationList?: import("viem").AuthorizationList;
1249
+ chain?: import("viem").Chain | null;
1250
+ dataSuffix?: `0x${string}`;
1251
+ gas?: bigint;
1252
+ gasPrice?: bigint;
1253
+ maxFeePerGas?: bigint;
1254
+ maxPriorityFeePerGas?: bigint;
1255
+ nonce?: number;
1256
+ value?: bigint;
1257
+ }): Promise<void>;
1258
+ /**
1259
+ * Simulate setBridge
1260
+ * Returns gas estimate and result without sending transaction
1261
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1262
+ */
1263
+ setBridge(_bridge: `0x${string}`, options?: {
1264
+ accessList?: import("viem").AccessList;
1265
+ authorizationList?: import("viem").AuthorizationList;
1266
+ chain?: import("viem").Chain | null;
1267
+ dataSuffix?: `0x${string}`;
1268
+ gas?: bigint;
1269
+ gasPrice?: bigint;
1270
+ maxFeePerGas?: bigint;
1271
+ maxPriorityFeePerGas?: bigint;
1272
+ nonce?: number;
1273
+ value?: bigint;
1274
+ }): Promise<void>;
1275
+ /**
1276
+ * Simulate transfer
1277
+ * Returns gas estimate and result without sending transaction
1278
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1279
+ */
1280
+ transfer(to: `0x${string}`, value: bigint, options?: {
1281
+ accessList?: import("viem").AccessList;
1282
+ authorizationList?: import("viem").AuthorizationList;
1283
+ chain?: import("viem").Chain | null;
1284
+ dataSuffix?: `0x${string}`;
1285
+ gas?: bigint;
1286
+ gasPrice?: bigint;
1287
+ maxFeePerGas?: bigint;
1288
+ maxPriorityFeePerGas?: bigint;
1289
+ nonce?: number;
1290
+ value?: bigint;
1291
+ }): Promise<boolean>;
1292
+ /**
1293
+ * Simulate transferFrom
1294
+ * Returns gas estimate and result without sending transaction
1295
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1296
+ */
1297
+ transferFrom(from: `0x${string}`, to: `0x${string}`, value: bigint, options?: {
1298
+ accessList?: import("viem").AccessList;
1299
+ authorizationList?: import("viem").AuthorizationList;
1300
+ chain?: import("viem").Chain | null;
1301
+ dataSuffix?: `0x${string}`;
1302
+ gas?: bigint;
1303
+ gasPrice?: bigint;
1304
+ maxFeePerGas?: bigint;
1305
+ maxPriorityFeePerGas?: bigint;
1306
+ nonce?: number;
1307
+ value?: bigint;
1308
+ }): Promise<boolean>;
1309
+ /**
1310
+ * Simulate transferOwnership
1311
+ * Returns gas estimate and result without sending transaction
1312
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1313
+ */
1314
+ transferOwnership(newOwner: `0x${string}`, options?: {
1315
+ accessList?: import("viem").AccessList;
1316
+ authorizationList?: import("viem").AuthorizationList;
1317
+ chain?: import("viem").Chain | null;
1318
+ dataSuffix?: `0x${string}`;
1319
+ gas?: bigint;
1320
+ gasPrice?: bigint;
1321
+ maxFeePerGas?: bigint;
1322
+ maxPriorityFeePerGas?: bigint;
1323
+ nonce?: number;
1324
+ value?: bigint;
1325
+ }): Promise<void>;
1326
+ /**
1327
+ * Simulate unlockUser
1328
+ * Returns gas estimate and result without sending transaction
1329
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1330
+ */
1331
+ unlockUser(_user: `0x${string}`, options?: {
1332
+ accessList?: import("viem").AccessList;
1333
+ authorizationList?: import("viem").AuthorizationList;
1334
+ chain?: import("viem").Chain | null;
1335
+ dataSuffix?: `0x${string}`;
1336
+ gas?: bigint;
1337
+ gasPrice?: bigint;
1338
+ maxFeePerGas?: bigint;
1339
+ maxPriorityFeePerGas?: bigint;
1340
+ nonce?: number;
1341
+ value?: bigint;
1342
+ }): Promise<void>;
1343
+ /**
1344
+ * Simulate unpause
1345
+ * Returns gas estimate and result without sending transaction
1346
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1347
+ */
1348
+ unpause(options?: {
1349
+ accessList?: import("viem").AccessList;
1350
+ authorizationList?: import("viem").AuthorizationList;
1351
+ chain?: import("viem").Chain | null;
1352
+ dataSuffix?: `0x${string}`;
1353
+ gas?: bigint;
1354
+ gasPrice?: bigint;
1355
+ maxFeePerGas?: bigint;
1356
+ maxPriorityFeePerGas?: bigint;
1357
+ nonce?: number;
1358
+ value?: bigint;
1359
+ }): Promise<void>;
1360
+ /**
1361
+ * Simulate upgradeToAndCall
1362
+ * Returns gas estimate and result without sending transaction
1363
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1364
+ */
1365
+ upgradeToAndCall(newImplementation: `0x${string}`, data: `0x${string}`, options?: {
1366
+ accessList?: import("viem").AccessList;
1367
+ authorizationList?: import("viem").AuthorizationList;
1368
+ chain?: import("viem").Chain | null;
1369
+ dataSuffix?: `0x${string}`;
1370
+ gas?: bigint;
1371
+ gasPrice?: bigint;
1372
+ maxFeePerGas?: bigint;
1373
+ maxPriorityFeePerGas?: bigint;
1374
+ nonce?: number;
1375
+ value?: bigint;
1376
+ }): Promise<void>;
1377
+ };
1378
+ /**
1379
+ * Watch contract events
1380
+ *
1381
+ * @example
1382
+ * // Watch all Transfer events
1383
+ * const unwatch = contract.watch.Transfer((event) => {
1384
+ * console.log('Transfer:', event);
1385
+ * });
1386
+ *
1387
+ * // Stop watching
1388
+ * unwatch();
1389
+ */
1390
+ get watch(): {
1391
+ /**
1392
+ * Watch Approval events
1393
+ * @param callback Function to call when event is emitted
1394
+ * @param filter Optional filter for indexed parameters
1395
+ * @returns Unwatch function to stop listening
1396
+ */
1397
+ Approval: (callback: (event: {
1398
+ owner: `0x${string}`;
1399
+ spender: `0x${string}`;
1400
+ value: bigint;
1401
+ }) => void, filter?: {
1402
+ owner: `0x${string}`;
1403
+ spender: `0x${string}`;
1404
+ }) => () => void;
1405
+ /**
1406
+ * Watch BridgeUpdated events
1407
+ * @param callback Function to call when event is emitted
1408
+ * @param filter Optional filter for indexed parameters
1409
+ * @returns Unwatch function to stop listening
1410
+ */
1411
+ BridgeUpdated: (callback: (event: {
1412
+ newBridge: `0x${string}`;
1413
+ oldBridge: `0x${string}`;
1414
+ }) => void, filter?: {
1415
+ newBridge: `0x${string}`;
1416
+ oldBridge: `0x${string}`;
1417
+ }) => () => void;
1418
+ /**
1419
+ * Watch Initialized events
1420
+ * @param callback Function to call when event is emitted
1421
+ * @param filter Optional filter for indexed parameters
1422
+ * @returns Unwatch function to stop listening
1423
+ */
1424
+ Initialized: (callback: (event: {
1425
+ version: bigint;
1426
+ }) => void) => () => void;
1427
+ /**
1428
+ * Watch OwnershipTransferStarted events
1429
+ * @param callback Function to call when event is emitted
1430
+ * @param filter Optional filter for indexed parameters
1431
+ * @returns Unwatch function to stop listening
1432
+ */
1433
+ OwnershipTransferStarted: (callback: (event: {
1434
+ previousOwner: `0x${string}`;
1435
+ newOwner: `0x${string}`;
1436
+ }) => void, filter?: {
1437
+ previousOwner: `0x${string}`;
1438
+ newOwner: `0x${string}`;
1439
+ }) => () => void;
1440
+ /**
1441
+ * Watch OwnershipTransferred events
1442
+ * @param callback Function to call when event is emitted
1443
+ * @param filter Optional filter for indexed parameters
1444
+ * @returns Unwatch function to stop listening
1445
+ */
1446
+ OwnershipTransferred: (callback: (event: {
1447
+ previousOwner: `0x${string}`;
1448
+ newOwner: `0x${string}`;
1449
+ }) => void, filter?: {
1450
+ previousOwner: `0x${string}`;
1451
+ newOwner: `0x${string}`;
1452
+ }) => () => void;
1453
+ /**
1454
+ * Watch Paused events
1455
+ * @param callback Function to call when event is emitted
1456
+ * @param filter Optional filter for indexed parameters
1457
+ * @returns Unwatch function to stop listening
1458
+ */
1459
+ Paused: (callback: (event: {
1460
+ account: `0x${string}`;
1461
+ }) => void) => () => void;
1462
+ /**
1463
+ * Watch Transfer events
1464
+ * @param callback Function to call when event is emitted
1465
+ * @param filter Optional filter for indexed parameters
1466
+ * @returns Unwatch function to stop listening
1467
+ */
1468
+ Transfer: (callback: (event: {
1469
+ from: `0x${string}`;
1470
+ to: `0x${string}`;
1471
+ value: bigint;
1472
+ }) => void, filter?: {
1473
+ from: `0x${string}`;
1474
+ to: `0x${string}`;
1475
+ }) => () => void;
1476
+ /**
1477
+ * Watch Unpaused events
1478
+ * @param callback Function to call when event is emitted
1479
+ * @param filter Optional filter for indexed parameters
1480
+ * @returns Unwatch function to stop listening
1481
+ */
1482
+ Unpaused: (callback: (event: {
1483
+ account: `0x${string}`;
1484
+ }) => void) => () => void;
1485
+ /**
1486
+ * Watch Upgraded events
1487
+ * @param callback Function to call when event is emitted
1488
+ * @param filter Optional filter for indexed parameters
1489
+ * @returns Unwatch function to stop listening
1490
+ */
1491
+ Upgraded: (callback: (event: {
1492
+ implementation: `0x${string}`;
1493
+ }) => void, filter?: {
1494
+ implementation: `0x${string}`;
1495
+ }) => () => void;
1496
+ /**
1497
+ * Watch UserLocked events
1498
+ * @param callback Function to call when event is emitted
1499
+ * @param filter Optional filter for indexed parameters
1500
+ * @returns Unwatch function to stop listening
1501
+ */
1502
+ UserLocked: (callback: (event: {
1503
+ user: `0x${string}`;
1504
+ }) => void, filter?: {
1505
+ user: `0x${string}`;
1506
+ }) => () => void;
1507
+ /**
1508
+ * Watch UserUnlocked events
1509
+ * @param callback Function to call when event is emitted
1510
+ * @param filter Optional filter for indexed parameters
1511
+ * @returns Unwatch function to stop listening
1512
+ */
1513
+ UserUnlocked: (callback: (event: {
1514
+ user: `0x${string}`;
1515
+ }) => void, filter?: {
1516
+ user: `0x${string}`;
1517
+ }) => () => void;
1518
+ };
1519
+ }