@gitmyabi/trustedexecutionrouterhorizonkeystonevantage 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,616 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * TrustedExecutionRouterHorizonKeystoneVantage.Call struct type
4
+ */
5
+ export type TrustedExecutionRouterHorizonKeystoneVantage_Call = {
6
+ target: `0x${string}`;
7
+ allowFailure: boolean;
8
+ callData: `0x${string}`;
9
+ };
10
+ /**
11
+ * TrustedExecutionRouterHorizonKeystoneVantage.Result struct type
12
+ */
13
+ export type TrustedExecutionRouterHorizonKeystoneVantage_Result = {
14
+ success: boolean;
15
+ returnData: `0x${string}`;
16
+ };
17
+ /**
18
+ * TrustedExecutionRouterHorizonKeystoneVantage_json ABI
19
+ *
20
+ * This ABI is typed using viem's type system for full type safety.
21
+ */
22
+ export declare const TrustedExecutionRouterHorizonKeystoneVantage_jsonAbi: readonly [{
23
+ readonly anonymous: false;
24
+ readonly inputs: readonly [{
25
+ readonly indexed: true;
26
+ readonly internalType: "address";
27
+ readonly name: "caller";
28
+ readonly type: "address";
29
+ }, {
30
+ readonly indexed: false;
31
+ readonly internalType: "bool";
32
+ readonly name: "isAllowed";
33
+ readonly type: "bool";
34
+ }];
35
+ readonly name: "AllowedCallerChanged";
36
+ readonly type: "event";
37
+ }, {
38
+ readonly anonymous: false;
39
+ readonly inputs: readonly [{
40
+ readonly indexed: true;
41
+ readonly internalType: "address";
42
+ readonly name: "previousOwner";
43
+ readonly type: "address";
44
+ }, {
45
+ readonly indexed: true;
46
+ readonly internalType: "address";
47
+ readonly name: "newOwner";
48
+ readonly type: "address";
49
+ }];
50
+ readonly name: "OwnershipTransferred";
51
+ readonly type: "event";
52
+ }, {
53
+ readonly inputs: readonly [{
54
+ readonly internalType: "address";
55
+ readonly name: "caller";
56
+ readonly type: "address";
57
+ }];
58
+ readonly name: "addAllowedCaller";
59
+ readonly outputs: readonly [];
60
+ readonly stateMutability: "nonpayable";
61
+ readonly type: "function";
62
+ }, {
63
+ readonly inputs: readonly [{
64
+ readonly internalType: "uint256";
65
+ readonly name: "blockNumber";
66
+ readonly type: "uint256";
67
+ }];
68
+ readonly name: "getBlockHash";
69
+ readonly outputs: readonly [{
70
+ readonly internalType: "bytes32";
71
+ readonly name: "blockHash";
72
+ readonly type: "bytes32";
73
+ }];
74
+ readonly stateMutability: "view";
75
+ readonly type: "function";
76
+ }, {
77
+ readonly inputs: readonly [];
78
+ readonly name: "getBlockNumber";
79
+ readonly outputs: readonly [{
80
+ readonly internalType: "uint256";
81
+ readonly name: "blockNumber";
82
+ readonly type: "uint256";
83
+ }];
84
+ readonly stateMutability: "view";
85
+ readonly type: "function";
86
+ }, {
87
+ readonly inputs: readonly [];
88
+ readonly name: "getChainId";
89
+ readonly outputs: readonly [{
90
+ readonly internalType: "uint256";
91
+ readonly name: "chainid";
92
+ readonly type: "uint256";
93
+ }];
94
+ readonly stateMutability: "view";
95
+ readonly type: "function";
96
+ }, {
97
+ readonly inputs: readonly [];
98
+ readonly name: "getCurrentBlockTimestamp";
99
+ readonly outputs: readonly [{
100
+ readonly internalType: "uint256";
101
+ readonly name: "timestamp";
102
+ readonly type: "uint256";
103
+ }];
104
+ readonly stateMutability: "view";
105
+ readonly type: "function";
106
+ }, {
107
+ readonly inputs: readonly [{
108
+ readonly internalType: "address";
109
+ readonly name: "addr";
110
+ readonly type: "address";
111
+ }];
112
+ readonly name: "getEthBalance";
113
+ readonly outputs: readonly [{
114
+ readonly internalType: "uint256";
115
+ readonly name: "balance";
116
+ readonly type: "uint256";
117
+ }];
118
+ readonly stateMutability: "view";
119
+ readonly type: "function";
120
+ }, {
121
+ readonly inputs: readonly [{
122
+ readonly internalType: "address";
123
+ readonly name: "caller";
124
+ readonly type: "address";
125
+ }];
126
+ readonly name: "isAllowed";
127
+ readonly outputs: readonly [{
128
+ readonly internalType: "bool";
129
+ readonly name: "";
130
+ readonly type: "bool";
131
+ }];
132
+ readonly stateMutability: "view";
133
+ readonly type: "function";
134
+ }, {
135
+ readonly inputs: readonly [{
136
+ readonly components: readonly [{
137
+ readonly internalType: "address";
138
+ readonly name: "target";
139
+ readonly type: "address";
140
+ }, {
141
+ readonly internalType: "bool";
142
+ readonly name: "allowFailure";
143
+ readonly type: "bool";
144
+ }, {
145
+ readonly internalType: "bytes";
146
+ readonly name: "callData";
147
+ readonly type: "bytes";
148
+ }];
149
+ readonly internalType: "struct TrustedExecutionRouterHorizonKeystoneVantage.Call[]";
150
+ readonly name: "calls";
151
+ readonly type: "tuple[]";
152
+ }];
153
+ readonly name: "multicall";
154
+ readonly outputs: readonly [{
155
+ readonly components: readonly [{
156
+ readonly internalType: "bool";
157
+ readonly name: "success";
158
+ readonly type: "bool";
159
+ }, {
160
+ readonly internalType: "bytes";
161
+ readonly name: "returnData";
162
+ readonly type: "bytes";
163
+ }];
164
+ readonly internalType: "struct TrustedExecutionRouterHorizonKeystoneVantage.Result[]";
165
+ readonly name: "returnData";
166
+ readonly type: "tuple[]";
167
+ }];
168
+ readonly stateMutability: "payable";
169
+ readonly type: "function";
170
+ }, {
171
+ readonly inputs: readonly [];
172
+ readonly name: "owner";
173
+ readonly outputs: readonly [{
174
+ readonly internalType: "address";
175
+ readonly name: "";
176
+ readonly type: "address";
177
+ }];
178
+ readonly stateMutability: "view";
179
+ readonly type: "function";
180
+ }, {
181
+ readonly inputs: readonly [];
182
+ readonly name: "relayContextHorizonKeystoneVantage";
183
+ readonly outputs: readonly [{
184
+ readonly internalType: "bytes32";
185
+ readonly name: "profile";
186
+ readonly type: "bytes32";
187
+ }];
188
+ readonly stateMutability: "pure";
189
+ readonly type: "function";
190
+ }, {
191
+ readonly inputs: readonly [{
192
+ readonly internalType: "address";
193
+ readonly name: "caller";
194
+ readonly type: "address";
195
+ }];
196
+ readonly name: "removeAllowedCaller";
197
+ readonly outputs: readonly [];
198
+ readonly stateMutability: "nonpayable";
199
+ readonly type: "function";
200
+ }, {
201
+ readonly inputs: readonly [];
202
+ readonly name: "renounceOwnership";
203
+ readonly outputs: readonly [];
204
+ readonly stateMutability: "nonpayable";
205
+ readonly type: "function";
206
+ }, {
207
+ readonly inputs: readonly [{
208
+ readonly internalType: "address";
209
+ readonly name: "newOwner";
210
+ readonly type: "address";
211
+ }];
212
+ readonly name: "transferOwnership";
213
+ readonly outputs: readonly [];
214
+ readonly stateMutability: "nonpayable";
215
+ readonly type: "function";
216
+ }, {
217
+ readonly inputs: readonly [];
218
+ readonly name: "withdrawETH";
219
+ readonly outputs: readonly [];
220
+ readonly stateMutability: "nonpayable";
221
+ readonly type: "function";
222
+ }, {
223
+ readonly inputs: readonly [{
224
+ readonly internalType: "address";
225
+ readonly name: "tokenAddress";
226
+ readonly type: "address";
227
+ }];
228
+ readonly name: "withdrawTokens";
229
+ readonly outputs: readonly [];
230
+ readonly stateMutability: "nonpayable";
231
+ readonly type: "function";
232
+ }];
233
+ /**
234
+ * Type-safe ABI for TrustedExecutionRouterHorizonKeystoneVantage_json
235
+ */
236
+ export type TrustedExecutionRouterHorizonKeystoneVantage_jsonAbi = typeof TrustedExecutionRouterHorizonKeystoneVantage_jsonAbi;
237
+ /**
238
+ * Contract instance type for TrustedExecutionRouterHorizonKeystoneVantage_json
239
+ */
240
+ export type TrustedExecutionRouterHorizonKeystoneVantage_jsonContract = any;
241
+ /**
242
+ * TrustedExecutionRouterHorizonKeystoneVantage_json Contract Class
243
+ *
244
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
245
+ *
246
+ * @example
247
+ * ```typescript
248
+ * import { createPublicClient, createWalletClient, http } from 'viem';
249
+ * import { mainnet } from 'viem/chains';
250
+ * import { TrustedExecutionRouterHorizonKeystoneVantage_json } from 'TrustedExecutionRouterHorizonKeystoneVantage_json';
251
+ *
252
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
253
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
254
+ *
255
+ * const contract = new TrustedExecutionRouterHorizonKeystoneVantage_json('0x...', { publicClient, walletClient });
256
+ *
257
+ * // Read functions
258
+ * const result = await contract.balanceOf('0x...');
259
+ *
260
+ * // Write functions
261
+ * const hash = await contract.transfer('0x...', 1000n);
262
+ *
263
+ * // Simulate transactions (dry-run)
264
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
265
+ * console.log('Gas estimate:', simulation.request.gas);
266
+ *
267
+ * // Watch events
268
+ * const unwatch = contract.watch.Transfer((event) => {
269
+ * console.log('Transfer event:', event);
270
+ * });
271
+ * ```
272
+ */
273
+ export declare class TrustedExecutionRouterHorizonKeystoneVantage_json {
274
+ private contract;
275
+ private contractAddress;
276
+ private publicClient;
277
+ constructor(address: Address, clients: {
278
+ publicClient: PublicClient;
279
+ walletClient?: WalletClient;
280
+ });
281
+ /**
282
+ * Get the contract address
283
+ */
284
+ get address(): Address;
285
+ /**
286
+ * Get the underlying viem contract instance
287
+ */
288
+ getContract(): TrustedExecutionRouterHorizonKeystoneVantage_jsonContract;
289
+ /**
290
+ * getBlockHash
291
+ * view
292
+ */
293
+ getBlockHash(blockNumber: bigint): Promise<`0x${string}`>;
294
+ /**
295
+ * getBlockNumber
296
+ * view
297
+ */
298
+ getBlockNumber(): Promise<bigint>;
299
+ /**
300
+ * getChainId
301
+ * view
302
+ */
303
+ getChainId(): Promise<bigint>;
304
+ /**
305
+ * getCurrentBlockTimestamp
306
+ * view
307
+ */
308
+ getCurrentBlockTimestamp(): Promise<bigint>;
309
+ /**
310
+ * getEthBalance
311
+ * view
312
+ */
313
+ getEthBalance(addr: `0x${string}`): Promise<bigint>;
314
+ /**
315
+ * isAllowed
316
+ * view
317
+ */
318
+ isAllowed(caller: `0x${string}`): Promise<boolean>;
319
+ /**
320
+ * owner
321
+ * view
322
+ */
323
+ owner(): Promise<`0x${string}`>;
324
+ /**
325
+ * relayContextHorizonKeystoneVantage
326
+ * pure
327
+ */
328
+ relayContextHorizonKeystoneVantage(): Promise<`0x${string}`>;
329
+ /**
330
+ * addAllowedCaller
331
+ * nonpayable
332
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
333
+ */
334
+ addAllowedCaller(caller: `0x${string}`, options?: {
335
+ accessList?: import('viem').AccessList;
336
+ authorizationList?: import('viem').AuthorizationList;
337
+ chain?: import('viem').Chain | null;
338
+ dataSuffix?: `0x${string}`;
339
+ gas?: bigint;
340
+ gasPrice?: bigint;
341
+ maxFeePerGas?: bigint;
342
+ maxPriorityFeePerGas?: bigint;
343
+ nonce?: number;
344
+ value?: bigint;
345
+ }): Promise<`0x${string}`>;
346
+ /**
347
+ * multicall
348
+ * payable
349
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
350
+ */
351
+ multicall(calls: TrustedExecutionRouterHorizonKeystoneVantage_Call[], options?: {
352
+ accessList?: import('viem').AccessList;
353
+ authorizationList?: import('viem').AuthorizationList;
354
+ chain?: import('viem').Chain | null;
355
+ dataSuffix?: `0x${string}`;
356
+ gas?: bigint;
357
+ gasPrice?: bigint;
358
+ maxFeePerGas?: bigint;
359
+ maxPriorityFeePerGas?: bigint;
360
+ nonce?: number;
361
+ value?: bigint;
362
+ }): Promise<`0x${string}`>;
363
+ /**
364
+ * removeAllowedCaller
365
+ * nonpayable
366
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
367
+ */
368
+ removeAllowedCaller(caller: `0x${string}`, options?: {
369
+ accessList?: import('viem').AccessList;
370
+ authorizationList?: import('viem').AuthorizationList;
371
+ chain?: import('viem').Chain | null;
372
+ dataSuffix?: `0x${string}`;
373
+ gas?: bigint;
374
+ gasPrice?: bigint;
375
+ maxFeePerGas?: bigint;
376
+ maxPriorityFeePerGas?: bigint;
377
+ nonce?: number;
378
+ value?: bigint;
379
+ }): Promise<`0x${string}`>;
380
+ /**
381
+ * renounceOwnership
382
+ * nonpayable
383
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
384
+ */
385
+ renounceOwnership(options?: {
386
+ accessList?: import('viem').AccessList;
387
+ authorizationList?: import('viem').AuthorizationList;
388
+ chain?: import('viem').Chain | null;
389
+ dataSuffix?: `0x${string}`;
390
+ gas?: bigint;
391
+ gasPrice?: bigint;
392
+ maxFeePerGas?: bigint;
393
+ maxPriorityFeePerGas?: bigint;
394
+ nonce?: number;
395
+ value?: bigint;
396
+ }): Promise<`0x${string}`>;
397
+ /**
398
+ * transferOwnership
399
+ * nonpayable
400
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
401
+ */
402
+ transferOwnership(newOwner: `0x${string}`, options?: {
403
+ accessList?: import('viem').AccessList;
404
+ authorizationList?: import('viem').AuthorizationList;
405
+ chain?: import('viem').Chain | null;
406
+ dataSuffix?: `0x${string}`;
407
+ gas?: bigint;
408
+ gasPrice?: bigint;
409
+ maxFeePerGas?: bigint;
410
+ maxPriorityFeePerGas?: bigint;
411
+ nonce?: number;
412
+ value?: bigint;
413
+ }): Promise<`0x${string}`>;
414
+ /**
415
+ * withdrawETH
416
+ * nonpayable
417
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
418
+ */
419
+ withdrawETH(options?: {
420
+ accessList?: import('viem').AccessList;
421
+ authorizationList?: import('viem').AuthorizationList;
422
+ chain?: import('viem').Chain | null;
423
+ dataSuffix?: `0x${string}`;
424
+ gas?: bigint;
425
+ gasPrice?: bigint;
426
+ maxFeePerGas?: bigint;
427
+ maxPriorityFeePerGas?: bigint;
428
+ nonce?: number;
429
+ value?: bigint;
430
+ }): Promise<`0x${string}`>;
431
+ /**
432
+ * withdrawTokens
433
+ * nonpayable
434
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
435
+ */
436
+ withdrawTokens(tokenAddress: `0x${string}`, options?: {
437
+ accessList?: import('viem').AccessList;
438
+ authorizationList?: import('viem').AuthorizationList;
439
+ chain?: import('viem').Chain | null;
440
+ dataSuffix?: `0x${string}`;
441
+ gas?: bigint;
442
+ gasPrice?: bigint;
443
+ maxFeePerGas?: bigint;
444
+ maxPriorityFeePerGas?: bigint;
445
+ nonce?: number;
446
+ value?: bigint;
447
+ }): Promise<`0x${string}`>;
448
+ /**
449
+ * Simulate contract write operations (dry-run without sending transaction)
450
+ *
451
+ * @example
452
+ * const result = await contract.simulate.transfer('0x...', 1000n);
453
+ * console.log('Gas estimate:', result.request.gas);
454
+ * console.log('Would succeed:', result.result);
455
+ */
456
+ get simulate(): {
457
+ /**
458
+ * Simulate addAllowedCaller
459
+ * Returns gas estimate and result without sending transaction
460
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
461
+ */
462
+ addAllowedCaller(caller: `0x${string}`, options?: {
463
+ accessList?: import("viem").AccessList;
464
+ authorizationList?: import("viem").AuthorizationList;
465
+ chain?: import("viem").Chain | null;
466
+ dataSuffix?: `0x${string}`;
467
+ gas?: bigint;
468
+ gasPrice?: bigint;
469
+ maxFeePerGas?: bigint;
470
+ maxPriorityFeePerGas?: bigint;
471
+ nonce?: number;
472
+ value?: bigint;
473
+ }): Promise<void>;
474
+ /**
475
+ * Simulate multicall
476
+ * Returns gas estimate and result without sending transaction
477
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
478
+ */
479
+ multicall(calls: TrustedExecutionRouterHorizonKeystoneVantage_Call[], options?: {
480
+ accessList?: import("viem").AccessList;
481
+ authorizationList?: import("viem").AuthorizationList;
482
+ chain?: import("viem").Chain | null;
483
+ dataSuffix?: `0x${string}`;
484
+ gas?: bigint;
485
+ gasPrice?: bigint;
486
+ maxFeePerGas?: bigint;
487
+ maxPriorityFeePerGas?: bigint;
488
+ nonce?: number;
489
+ value?: bigint;
490
+ }): Promise<TrustedExecutionRouterHorizonKeystoneVantage_Result[]>;
491
+ /**
492
+ * Simulate removeAllowedCaller
493
+ * Returns gas estimate and result without sending transaction
494
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
495
+ */
496
+ removeAllowedCaller(caller: `0x${string}`, options?: {
497
+ accessList?: import("viem").AccessList;
498
+ authorizationList?: import("viem").AuthorizationList;
499
+ chain?: import("viem").Chain | null;
500
+ dataSuffix?: `0x${string}`;
501
+ gas?: bigint;
502
+ gasPrice?: bigint;
503
+ maxFeePerGas?: bigint;
504
+ maxPriorityFeePerGas?: bigint;
505
+ nonce?: number;
506
+ value?: bigint;
507
+ }): Promise<void>;
508
+ /**
509
+ * Simulate renounceOwnership
510
+ * Returns gas estimate and result without sending transaction
511
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
512
+ */
513
+ renounceOwnership(options?: {
514
+ accessList?: import("viem").AccessList;
515
+ authorizationList?: import("viem").AuthorizationList;
516
+ chain?: import("viem").Chain | null;
517
+ dataSuffix?: `0x${string}`;
518
+ gas?: bigint;
519
+ gasPrice?: bigint;
520
+ maxFeePerGas?: bigint;
521
+ maxPriorityFeePerGas?: bigint;
522
+ nonce?: number;
523
+ value?: bigint;
524
+ }): Promise<void>;
525
+ /**
526
+ * Simulate transferOwnership
527
+ * Returns gas estimate and result without sending transaction
528
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
529
+ */
530
+ transferOwnership(newOwner: `0x${string}`, options?: {
531
+ accessList?: import("viem").AccessList;
532
+ authorizationList?: import("viem").AuthorizationList;
533
+ chain?: import("viem").Chain | null;
534
+ dataSuffix?: `0x${string}`;
535
+ gas?: bigint;
536
+ gasPrice?: bigint;
537
+ maxFeePerGas?: bigint;
538
+ maxPriorityFeePerGas?: bigint;
539
+ nonce?: number;
540
+ value?: bigint;
541
+ }): Promise<void>;
542
+ /**
543
+ * Simulate withdrawETH
544
+ * Returns gas estimate and result without sending transaction
545
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
546
+ */
547
+ withdrawETH(options?: {
548
+ accessList?: import("viem").AccessList;
549
+ authorizationList?: import("viem").AuthorizationList;
550
+ chain?: import("viem").Chain | null;
551
+ dataSuffix?: `0x${string}`;
552
+ gas?: bigint;
553
+ gasPrice?: bigint;
554
+ maxFeePerGas?: bigint;
555
+ maxPriorityFeePerGas?: bigint;
556
+ nonce?: number;
557
+ value?: bigint;
558
+ }): Promise<void>;
559
+ /**
560
+ * Simulate withdrawTokens
561
+ * Returns gas estimate and result without sending transaction
562
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
563
+ */
564
+ withdrawTokens(tokenAddress: `0x${string}`, options?: {
565
+ accessList?: import("viem").AccessList;
566
+ authorizationList?: import("viem").AuthorizationList;
567
+ chain?: import("viem").Chain | null;
568
+ dataSuffix?: `0x${string}`;
569
+ gas?: bigint;
570
+ gasPrice?: bigint;
571
+ maxFeePerGas?: bigint;
572
+ maxPriorityFeePerGas?: bigint;
573
+ nonce?: number;
574
+ value?: bigint;
575
+ }): Promise<void>;
576
+ };
577
+ /**
578
+ * Watch contract events
579
+ *
580
+ * @example
581
+ * // Watch all Transfer events
582
+ * const unwatch = contract.watch.Transfer((event) => {
583
+ * console.log('Transfer:', event);
584
+ * });
585
+ *
586
+ * // Stop watching
587
+ * unwatch();
588
+ */
589
+ get watch(): {
590
+ /**
591
+ * Watch AllowedCallerChanged events
592
+ * @param callback Function to call when event is emitted
593
+ * @param filter Optional filter for indexed parameters
594
+ * @returns Unwatch function to stop listening
595
+ */
596
+ AllowedCallerChanged: (callback: (event: {
597
+ caller: `0x${string}`;
598
+ isAllowed: boolean;
599
+ }) => void, filter?: {
600
+ caller: `0x${string}`;
601
+ }) => () => void;
602
+ /**
603
+ * Watch OwnershipTransferred events
604
+ * @param callback Function to call when event is emitted
605
+ * @param filter Optional filter for indexed parameters
606
+ * @returns Unwatch function to stop listening
607
+ */
608
+ OwnershipTransferred: (callback: (event: {
609
+ previousOwner: `0x${string}`;
610
+ newOwner: `0x${string}`;
611
+ }) => void, filter?: {
612
+ previousOwner: `0x${string}`;
613
+ newOwner: `0x${string}`;
614
+ }) => () => void;
615
+ };
616
+ }