@gitmyabi/kernel 1.0.2 → 1.0.3

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