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