@gitmyabi/eigenpod 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.
- package/README.md +108 -0
- package/contracts/BeaconProxy_json.d.ts +169 -0
- package/contracts/BeaconProxy_json.js +221 -0
- package/contracts/BeaconProxy_json.ts +251 -0
- package/contracts/EigenPod_json.d.ts +1603 -0
- package/contracts/EigenPod_json.js +1774 -0
- package/contracts/EigenPod_json.ts +2148 -0
- package/contracts/index.d.ts +4 -0
- package/contracts/index.js +10 -0
- package/contracts/index.ts +5 -0
- package/index.d.ts +1 -0
- package/index.js +19 -0
- package/package.json +43 -0
|
@@ -0,0 +1,1603 @@
|
|
|
1
|
+
import type { Address, PublicClient, WalletClient } from 'viem';
|
|
2
|
+
/**
|
|
3
|
+
* IEigenPodTypes.Checkpoint struct type
|
|
4
|
+
*/
|
|
5
|
+
export type IEigenPodTypes_Checkpoint = {
|
|
6
|
+
beaconBlockRoot: `0x${string}`;
|
|
7
|
+
proofsRemaining: bigint;
|
|
8
|
+
podBalanceGwei: bigint;
|
|
9
|
+
balanceDeltasGwei: bigint;
|
|
10
|
+
prevBeaconBalanceGwei: bigint;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* IEigenPodTypes.ConsolidationRequest struct type
|
|
14
|
+
*/
|
|
15
|
+
export type IEigenPodTypes_ConsolidationRequest = {
|
|
16
|
+
srcPubkey: `0x${string}`;
|
|
17
|
+
targetPubkey: `0x${string}`;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* IEigenPodTypes.WithdrawalRequest struct type
|
|
21
|
+
*/
|
|
22
|
+
export type IEigenPodTypes_WithdrawalRequest = {
|
|
23
|
+
pubkey: `0x${string}`;
|
|
24
|
+
amountGwei: bigint;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* IEigenPodTypes.ValidatorInfo struct type
|
|
28
|
+
*/
|
|
29
|
+
export type IEigenPodTypes_ValidatorInfo = {
|
|
30
|
+
validatorIndex: bigint;
|
|
31
|
+
restakedBalanceGwei: bigint;
|
|
32
|
+
lastCheckpointedAt: bigint;
|
|
33
|
+
status: bigint;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* BeaconChainProofs.BalanceContainerProof struct type
|
|
37
|
+
*/
|
|
38
|
+
export type BeaconChainProofs_BalanceContainerProof = {
|
|
39
|
+
balanceContainerRoot: `0x${string}`;
|
|
40
|
+
proof: `0x${string}`;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* BeaconChainProofs.BalanceProof struct type
|
|
44
|
+
*/
|
|
45
|
+
export type BeaconChainProofs_BalanceProof = {
|
|
46
|
+
pubkeyHash: `0x${string}`;
|
|
47
|
+
balanceRoot: `0x${string}`;
|
|
48
|
+
proof: `0x${string}`;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* BeaconChainProofs.StateRootProof struct type
|
|
52
|
+
*/
|
|
53
|
+
export type BeaconChainProofs_StateRootProof = {
|
|
54
|
+
beaconStateRoot: `0x${string}`;
|
|
55
|
+
proof: `0x${string}`;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* BeaconChainProofs.ValidatorProof struct type
|
|
59
|
+
*/
|
|
60
|
+
export type BeaconChainProofs_ValidatorProof = {
|
|
61
|
+
validatorFields: `0x${string}`[];
|
|
62
|
+
proof: `0x${string}`;
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* EigenPod_json ABI
|
|
66
|
+
*
|
|
67
|
+
* This ABI is typed using viem's type system for full type safety.
|
|
68
|
+
*/
|
|
69
|
+
export declare const EigenPod_jsonAbi: readonly [{
|
|
70
|
+
readonly inputs: readonly [{
|
|
71
|
+
readonly internalType: "contract IETHPOSDeposit";
|
|
72
|
+
readonly name: "_ethPOS";
|
|
73
|
+
readonly type: "address";
|
|
74
|
+
}, {
|
|
75
|
+
readonly internalType: "contract IEigenPodManager";
|
|
76
|
+
readonly name: "_eigenPodManager";
|
|
77
|
+
readonly type: "address";
|
|
78
|
+
}];
|
|
79
|
+
readonly stateMutability: "nonpayable";
|
|
80
|
+
readonly type: "constructor";
|
|
81
|
+
}, {
|
|
82
|
+
readonly inputs: readonly [];
|
|
83
|
+
readonly name: "BeaconTimestampBeforeLatestCheckpoint";
|
|
84
|
+
readonly type: "error";
|
|
85
|
+
}, {
|
|
86
|
+
readonly inputs: readonly [];
|
|
87
|
+
readonly name: "BeaconTimestampTooFarInPast";
|
|
88
|
+
readonly type: "error";
|
|
89
|
+
}, {
|
|
90
|
+
readonly inputs: readonly [];
|
|
91
|
+
readonly name: "CannotCheckpointTwiceInSingleBlock";
|
|
92
|
+
readonly type: "error";
|
|
93
|
+
}, {
|
|
94
|
+
readonly inputs: readonly [];
|
|
95
|
+
readonly name: "CheckpointAlreadyActive";
|
|
96
|
+
readonly type: "error";
|
|
97
|
+
}, {
|
|
98
|
+
readonly inputs: readonly [];
|
|
99
|
+
readonly name: "CredentialsAlreadyVerified";
|
|
100
|
+
readonly type: "error";
|
|
101
|
+
}, {
|
|
102
|
+
readonly inputs: readonly [];
|
|
103
|
+
readonly name: "CurrentlyPaused";
|
|
104
|
+
readonly type: "error";
|
|
105
|
+
}, {
|
|
106
|
+
readonly inputs: readonly [];
|
|
107
|
+
readonly name: "EmptyRoot";
|
|
108
|
+
readonly type: "error";
|
|
109
|
+
}, {
|
|
110
|
+
readonly inputs: readonly [];
|
|
111
|
+
readonly name: "FeeQueryFailed";
|
|
112
|
+
readonly type: "error";
|
|
113
|
+
}, {
|
|
114
|
+
readonly inputs: readonly [];
|
|
115
|
+
readonly name: "ForkTimestampZero";
|
|
116
|
+
readonly type: "error";
|
|
117
|
+
}, {
|
|
118
|
+
readonly inputs: readonly [];
|
|
119
|
+
readonly name: "InputAddressZero";
|
|
120
|
+
readonly type: "error";
|
|
121
|
+
}, {
|
|
122
|
+
readonly inputs: readonly [];
|
|
123
|
+
readonly name: "InputArrayLengthMismatch";
|
|
124
|
+
readonly type: "error";
|
|
125
|
+
}, {
|
|
126
|
+
readonly inputs: readonly [];
|
|
127
|
+
readonly name: "InsufficientFunds";
|
|
128
|
+
readonly type: "error";
|
|
129
|
+
}, {
|
|
130
|
+
readonly inputs: readonly [];
|
|
131
|
+
readonly name: "InsufficientWithdrawableBalance";
|
|
132
|
+
readonly type: "error";
|
|
133
|
+
}, {
|
|
134
|
+
readonly inputs: readonly [];
|
|
135
|
+
readonly name: "InvalidEIP4788Response";
|
|
136
|
+
readonly type: "error";
|
|
137
|
+
}, {
|
|
138
|
+
readonly inputs: readonly [];
|
|
139
|
+
readonly name: "InvalidIndex";
|
|
140
|
+
readonly type: "error";
|
|
141
|
+
}, {
|
|
142
|
+
readonly inputs: readonly [];
|
|
143
|
+
readonly name: "InvalidProof";
|
|
144
|
+
readonly type: "error";
|
|
145
|
+
}, {
|
|
146
|
+
readonly inputs: readonly [];
|
|
147
|
+
readonly name: "InvalidProofLength";
|
|
148
|
+
readonly type: "error";
|
|
149
|
+
}, {
|
|
150
|
+
readonly inputs: readonly [];
|
|
151
|
+
readonly name: "InvalidProofLength";
|
|
152
|
+
readonly type: "error";
|
|
153
|
+
}, {
|
|
154
|
+
readonly inputs: readonly [];
|
|
155
|
+
readonly name: "InvalidPubKeyLength";
|
|
156
|
+
readonly type: "error";
|
|
157
|
+
}, {
|
|
158
|
+
readonly inputs: readonly [];
|
|
159
|
+
readonly name: "InvalidValidatorFieldsLength";
|
|
160
|
+
readonly type: "error";
|
|
161
|
+
}, {
|
|
162
|
+
readonly inputs: readonly [];
|
|
163
|
+
readonly name: "LeavesNotPowerOfTwo";
|
|
164
|
+
readonly type: "error";
|
|
165
|
+
}, {
|
|
166
|
+
readonly inputs: readonly [];
|
|
167
|
+
readonly name: "MsgValueNot32ETH";
|
|
168
|
+
readonly type: "error";
|
|
169
|
+
}, {
|
|
170
|
+
readonly inputs: readonly [];
|
|
171
|
+
readonly name: "NoActiveCheckpoint";
|
|
172
|
+
readonly type: "error";
|
|
173
|
+
}, {
|
|
174
|
+
readonly inputs: readonly [];
|
|
175
|
+
readonly name: "NoBalanceToCheckpoint";
|
|
176
|
+
readonly type: "error";
|
|
177
|
+
}, {
|
|
178
|
+
readonly inputs: readonly [];
|
|
179
|
+
readonly name: "NotEnoughLeaves";
|
|
180
|
+
readonly type: "error";
|
|
181
|
+
}, {
|
|
182
|
+
readonly inputs: readonly [];
|
|
183
|
+
readonly name: "OnlyEigenPodManager";
|
|
184
|
+
readonly type: "error";
|
|
185
|
+
}, {
|
|
186
|
+
readonly inputs: readonly [];
|
|
187
|
+
readonly name: "OnlyEigenPodOwner";
|
|
188
|
+
readonly type: "error";
|
|
189
|
+
}, {
|
|
190
|
+
readonly inputs: readonly [];
|
|
191
|
+
readonly name: "OnlyEigenPodOwnerOrProofSubmitter";
|
|
192
|
+
readonly type: "error";
|
|
193
|
+
}, {
|
|
194
|
+
readonly inputs: readonly [];
|
|
195
|
+
readonly name: "PredeployFailed";
|
|
196
|
+
readonly type: "error";
|
|
197
|
+
}, {
|
|
198
|
+
readonly inputs: readonly [];
|
|
199
|
+
readonly name: "TimestampOutOfRange";
|
|
200
|
+
readonly type: "error";
|
|
201
|
+
}, {
|
|
202
|
+
readonly inputs: readonly [];
|
|
203
|
+
readonly name: "ValidatorInactiveOnBeaconChain";
|
|
204
|
+
readonly type: "error";
|
|
205
|
+
}, {
|
|
206
|
+
readonly inputs: readonly [];
|
|
207
|
+
readonly name: "ValidatorIsExitingBeaconChain";
|
|
208
|
+
readonly type: "error";
|
|
209
|
+
}, {
|
|
210
|
+
readonly inputs: readonly [];
|
|
211
|
+
readonly name: "ValidatorNotActiveInPod";
|
|
212
|
+
readonly type: "error";
|
|
213
|
+
}, {
|
|
214
|
+
readonly inputs: readonly [];
|
|
215
|
+
readonly name: "ValidatorNotSlashedOnBeaconChain";
|
|
216
|
+
readonly type: "error";
|
|
217
|
+
}, {
|
|
218
|
+
readonly inputs: readonly [];
|
|
219
|
+
readonly name: "WithdrawalCredentialsNotForEigenPod";
|
|
220
|
+
readonly type: "error";
|
|
221
|
+
}, {
|
|
222
|
+
readonly anonymous: false;
|
|
223
|
+
readonly inputs: readonly [{
|
|
224
|
+
readonly indexed: true;
|
|
225
|
+
readonly internalType: "uint64";
|
|
226
|
+
readonly name: "checkpointTimestamp";
|
|
227
|
+
readonly type: "uint64";
|
|
228
|
+
}, {
|
|
229
|
+
readonly indexed: true;
|
|
230
|
+
readonly internalType: "bytes32";
|
|
231
|
+
readonly name: "beaconBlockRoot";
|
|
232
|
+
readonly type: "bytes32";
|
|
233
|
+
}, {
|
|
234
|
+
readonly indexed: false;
|
|
235
|
+
readonly internalType: "uint256";
|
|
236
|
+
readonly name: "validatorCount";
|
|
237
|
+
readonly type: "uint256";
|
|
238
|
+
}];
|
|
239
|
+
readonly name: "CheckpointCreated";
|
|
240
|
+
readonly type: "event";
|
|
241
|
+
}, {
|
|
242
|
+
readonly anonymous: false;
|
|
243
|
+
readonly inputs: readonly [{
|
|
244
|
+
readonly indexed: true;
|
|
245
|
+
readonly internalType: "uint64";
|
|
246
|
+
readonly name: "checkpointTimestamp";
|
|
247
|
+
readonly type: "uint64";
|
|
248
|
+
}, {
|
|
249
|
+
readonly indexed: false;
|
|
250
|
+
readonly internalType: "int256";
|
|
251
|
+
readonly name: "totalShareDeltaWei";
|
|
252
|
+
readonly type: "int256";
|
|
253
|
+
}];
|
|
254
|
+
readonly name: "CheckpointFinalized";
|
|
255
|
+
readonly type: "event";
|
|
256
|
+
}, {
|
|
257
|
+
readonly anonymous: false;
|
|
258
|
+
readonly inputs: readonly [{
|
|
259
|
+
readonly indexed: true;
|
|
260
|
+
readonly internalType: "bytes32";
|
|
261
|
+
readonly name: "sourcePubkeyHash";
|
|
262
|
+
readonly type: "bytes32";
|
|
263
|
+
}, {
|
|
264
|
+
readonly indexed: true;
|
|
265
|
+
readonly internalType: "bytes32";
|
|
266
|
+
readonly name: "targetPubkeyHash";
|
|
267
|
+
readonly type: "bytes32";
|
|
268
|
+
}];
|
|
269
|
+
readonly name: "ConsolidationRequested";
|
|
270
|
+
readonly type: "event";
|
|
271
|
+
}, {
|
|
272
|
+
readonly anonymous: false;
|
|
273
|
+
readonly inputs: readonly [{
|
|
274
|
+
readonly indexed: false;
|
|
275
|
+
readonly internalType: "bytes32";
|
|
276
|
+
readonly name: "pubkeyHash";
|
|
277
|
+
readonly type: "bytes32";
|
|
278
|
+
}];
|
|
279
|
+
readonly name: "EigenPodStaked";
|
|
280
|
+
readonly type: "event";
|
|
281
|
+
}, {
|
|
282
|
+
readonly anonymous: false;
|
|
283
|
+
readonly inputs: readonly [{
|
|
284
|
+
readonly indexed: true;
|
|
285
|
+
readonly internalType: "bytes32";
|
|
286
|
+
readonly name: "validatorPubkeyHash";
|
|
287
|
+
readonly type: "bytes32";
|
|
288
|
+
}];
|
|
289
|
+
readonly name: "ExitRequested";
|
|
290
|
+
readonly type: "event";
|
|
291
|
+
}, {
|
|
292
|
+
readonly anonymous: false;
|
|
293
|
+
readonly inputs: readonly [{
|
|
294
|
+
readonly indexed: false;
|
|
295
|
+
readonly internalType: "uint8";
|
|
296
|
+
readonly name: "version";
|
|
297
|
+
readonly type: "uint8";
|
|
298
|
+
}];
|
|
299
|
+
readonly name: "Initialized";
|
|
300
|
+
readonly type: "event";
|
|
301
|
+
}, {
|
|
302
|
+
readonly anonymous: false;
|
|
303
|
+
readonly inputs: readonly [{
|
|
304
|
+
readonly indexed: false;
|
|
305
|
+
readonly internalType: "uint256";
|
|
306
|
+
readonly name: "amountReceived";
|
|
307
|
+
readonly type: "uint256";
|
|
308
|
+
}];
|
|
309
|
+
readonly name: "NonBeaconChainETHReceived";
|
|
310
|
+
readonly type: "event";
|
|
311
|
+
}, {
|
|
312
|
+
readonly anonymous: false;
|
|
313
|
+
readonly inputs: readonly [{
|
|
314
|
+
readonly indexed: false;
|
|
315
|
+
readonly internalType: "address";
|
|
316
|
+
readonly name: "prevProofSubmitter";
|
|
317
|
+
readonly type: "address";
|
|
318
|
+
}, {
|
|
319
|
+
readonly indexed: false;
|
|
320
|
+
readonly internalType: "address";
|
|
321
|
+
readonly name: "newProofSubmitter";
|
|
322
|
+
readonly type: "address";
|
|
323
|
+
}];
|
|
324
|
+
readonly name: "ProofSubmitterUpdated";
|
|
325
|
+
readonly type: "event";
|
|
326
|
+
}, {
|
|
327
|
+
readonly anonymous: false;
|
|
328
|
+
readonly inputs: readonly [{
|
|
329
|
+
readonly indexed: true;
|
|
330
|
+
readonly internalType: "address";
|
|
331
|
+
readonly name: "recipient";
|
|
332
|
+
readonly type: "address";
|
|
333
|
+
}, {
|
|
334
|
+
readonly indexed: false;
|
|
335
|
+
readonly internalType: "uint256";
|
|
336
|
+
readonly name: "amount";
|
|
337
|
+
readonly type: "uint256";
|
|
338
|
+
}];
|
|
339
|
+
readonly name: "RestakedBeaconChainETHWithdrawn";
|
|
340
|
+
readonly type: "event";
|
|
341
|
+
}, {
|
|
342
|
+
readonly anonymous: false;
|
|
343
|
+
readonly inputs: readonly [{
|
|
344
|
+
readonly indexed: true;
|
|
345
|
+
readonly internalType: "bytes32";
|
|
346
|
+
readonly name: "validatorPubkeyHash";
|
|
347
|
+
readonly type: "bytes32";
|
|
348
|
+
}];
|
|
349
|
+
readonly name: "SwitchToCompoundingRequested";
|
|
350
|
+
readonly type: "event";
|
|
351
|
+
}, {
|
|
352
|
+
readonly anonymous: false;
|
|
353
|
+
readonly inputs: readonly [{
|
|
354
|
+
readonly indexed: false;
|
|
355
|
+
readonly internalType: "bytes32";
|
|
356
|
+
readonly name: "pubkeyHash";
|
|
357
|
+
readonly type: "bytes32";
|
|
358
|
+
}, {
|
|
359
|
+
readonly indexed: false;
|
|
360
|
+
readonly internalType: "uint64";
|
|
361
|
+
readonly name: "balanceTimestamp";
|
|
362
|
+
readonly type: "uint64";
|
|
363
|
+
}, {
|
|
364
|
+
readonly indexed: false;
|
|
365
|
+
readonly internalType: "uint64";
|
|
366
|
+
readonly name: "newValidatorBalanceGwei";
|
|
367
|
+
readonly type: "uint64";
|
|
368
|
+
}];
|
|
369
|
+
readonly name: "ValidatorBalanceUpdated";
|
|
370
|
+
readonly type: "event";
|
|
371
|
+
}, {
|
|
372
|
+
readonly anonymous: false;
|
|
373
|
+
readonly inputs: readonly [{
|
|
374
|
+
readonly indexed: true;
|
|
375
|
+
readonly internalType: "uint64";
|
|
376
|
+
readonly name: "checkpointTimestamp";
|
|
377
|
+
readonly type: "uint64";
|
|
378
|
+
}, {
|
|
379
|
+
readonly indexed: true;
|
|
380
|
+
readonly internalType: "bytes32";
|
|
381
|
+
readonly name: "pubkeyHash";
|
|
382
|
+
readonly type: "bytes32";
|
|
383
|
+
}];
|
|
384
|
+
readonly name: "ValidatorCheckpointed";
|
|
385
|
+
readonly type: "event";
|
|
386
|
+
}, {
|
|
387
|
+
readonly anonymous: false;
|
|
388
|
+
readonly inputs: readonly [{
|
|
389
|
+
readonly indexed: false;
|
|
390
|
+
readonly internalType: "bytes32";
|
|
391
|
+
readonly name: "pubkeyHash";
|
|
392
|
+
readonly type: "bytes32";
|
|
393
|
+
}];
|
|
394
|
+
readonly name: "ValidatorRestaked";
|
|
395
|
+
readonly type: "event";
|
|
396
|
+
}, {
|
|
397
|
+
readonly anonymous: false;
|
|
398
|
+
readonly inputs: readonly [{
|
|
399
|
+
readonly indexed: true;
|
|
400
|
+
readonly internalType: "uint64";
|
|
401
|
+
readonly name: "checkpointTimestamp";
|
|
402
|
+
readonly type: "uint64";
|
|
403
|
+
}, {
|
|
404
|
+
readonly indexed: true;
|
|
405
|
+
readonly internalType: "bytes32";
|
|
406
|
+
readonly name: "pubkeyHash";
|
|
407
|
+
readonly type: "bytes32";
|
|
408
|
+
}];
|
|
409
|
+
readonly name: "ValidatorWithdrawn";
|
|
410
|
+
readonly type: "event";
|
|
411
|
+
}, {
|
|
412
|
+
readonly anonymous: false;
|
|
413
|
+
readonly inputs: readonly [{
|
|
414
|
+
readonly indexed: true;
|
|
415
|
+
readonly internalType: "bytes32";
|
|
416
|
+
readonly name: "validatorPubkeyHash";
|
|
417
|
+
readonly type: "bytes32";
|
|
418
|
+
}, {
|
|
419
|
+
readonly indexed: false;
|
|
420
|
+
readonly internalType: "uint64";
|
|
421
|
+
readonly name: "withdrawalAmountGwei";
|
|
422
|
+
readonly type: "uint64";
|
|
423
|
+
}];
|
|
424
|
+
readonly name: "WithdrawalRequested";
|
|
425
|
+
readonly type: "event";
|
|
426
|
+
}, {
|
|
427
|
+
readonly inputs: readonly [];
|
|
428
|
+
readonly name: "activeValidatorCount";
|
|
429
|
+
readonly outputs: readonly [{
|
|
430
|
+
readonly internalType: "uint256";
|
|
431
|
+
readonly name: "";
|
|
432
|
+
readonly type: "uint256";
|
|
433
|
+
}];
|
|
434
|
+
readonly stateMutability: "view";
|
|
435
|
+
readonly type: "function";
|
|
436
|
+
}, {
|
|
437
|
+
readonly inputs: readonly [{
|
|
438
|
+
readonly internalType: "uint64";
|
|
439
|
+
readonly name: "";
|
|
440
|
+
readonly type: "uint64";
|
|
441
|
+
}];
|
|
442
|
+
readonly name: "checkpointBalanceExitedGwei";
|
|
443
|
+
readonly outputs: readonly [{
|
|
444
|
+
readonly internalType: "uint64";
|
|
445
|
+
readonly name: "";
|
|
446
|
+
readonly type: "uint64";
|
|
447
|
+
}];
|
|
448
|
+
readonly stateMutability: "view";
|
|
449
|
+
readonly type: "function";
|
|
450
|
+
}, {
|
|
451
|
+
readonly inputs: readonly [];
|
|
452
|
+
readonly name: "currentCheckpoint";
|
|
453
|
+
readonly outputs: readonly [{
|
|
454
|
+
readonly components: readonly [{
|
|
455
|
+
readonly internalType: "bytes32";
|
|
456
|
+
readonly name: "beaconBlockRoot";
|
|
457
|
+
readonly type: "bytes32";
|
|
458
|
+
}, {
|
|
459
|
+
readonly internalType: "uint24";
|
|
460
|
+
readonly name: "proofsRemaining";
|
|
461
|
+
readonly type: "uint24";
|
|
462
|
+
}, {
|
|
463
|
+
readonly internalType: "uint64";
|
|
464
|
+
readonly name: "podBalanceGwei";
|
|
465
|
+
readonly type: "uint64";
|
|
466
|
+
}, {
|
|
467
|
+
readonly internalType: "int64";
|
|
468
|
+
readonly name: "balanceDeltasGwei";
|
|
469
|
+
readonly type: "int64";
|
|
470
|
+
}, {
|
|
471
|
+
readonly internalType: "uint64";
|
|
472
|
+
readonly name: "prevBeaconBalanceGwei";
|
|
473
|
+
readonly type: "uint64";
|
|
474
|
+
}];
|
|
475
|
+
readonly internalType: "struct IEigenPodTypes.Checkpoint";
|
|
476
|
+
readonly name: "";
|
|
477
|
+
readonly type: "tuple";
|
|
478
|
+
}];
|
|
479
|
+
readonly stateMutability: "view";
|
|
480
|
+
readonly type: "function";
|
|
481
|
+
}, {
|
|
482
|
+
readonly inputs: readonly [];
|
|
483
|
+
readonly name: "currentCheckpointTimestamp";
|
|
484
|
+
readonly outputs: readonly [{
|
|
485
|
+
readonly internalType: "uint64";
|
|
486
|
+
readonly name: "";
|
|
487
|
+
readonly type: "uint64";
|
|
488
|
+
}];
|
|
489
|
+
readonly stateMutability: "view";
|
|
490
|
+
readonly type: "function";
|
|
491
|
+
}, {
|
|
492
|
+
readonly inputs: readonly [];
|
|
493
|
+
readonly name: "eigenPodManager";
|
|
494
|
+
readonly outputs: readonly [{
|
|
495
|
+
readonly internalType: "contract IEigenPodManager";
|
|
496
|
+
readonly name: "";
|
|
497
|
+
readonly type: "address";
|
|
498
|
+
}];
|
|
499
|
+
readonly stateMutability: "view";
|
|
500
|
+
readonly type: "function";
|
|
501
|
+
}, {
|
|
502
|
+
readonly inputs: readonly [];
|
|
503
|
+
readonly name: "ethPOS";
|
|
504
|
+
readonly outputs: readonly [{
|
|
505
|
+
readonly internalType: "contract IETHPOSDeposit";
|
|
506
|
+
readonly name: "";
|
|
507
|
+
readonly type: "address";
|
|
508
|
+
}];
|
|
509
|
+
readonly stateMutability: "view";
|
|
510
|
+
readonly type: "function";
|
|
511
|
+
}, {
|
|
512
|
+
readonly inputs: readonly [];
|
|
513
|
+
readonly name: "getConsolidationRequestFee";
|
|
514
|
+
readonly outputs: readonly [{
|
|
515
|
+
readonly internalType: "uint256";
|
|
516
|
+
readonly name: "";
|
|
517
|
+
readonly type: "uint256";
|
|
518
|
+
}];
|
|
519
|
+
readonly stateMutability: "view";
|
|
520
|
+
readonly type: "function";
|
|
521
|
+
}, {
|
|
522
|
+
readonly inputs: readonly [{
|
|
523
|
+
readonly internalType: "uint64";
|
|
524
|
+
readonly name: "timestamp";
|
|
525
|
+
readonly type: "uint64";
|
|
526
|
+
}];
|
|
527
|
+
readonly name: "getParentBlockRoot";
|
|
528
|
+
readonly outputs: readonly [{
|
|
529
|
+
readonly internalType: "bytes32";
|
|
530
|
+
readonly name: "";
|
|
531
|
+
readonly type: "bytes32";
|
|
532
|
+
}];
|
|
533
|
+
readonly stateMutability: "view";
|
|
534
|
+
readonly type: "function";
|
|
535
|
+
}, {
|
|
536
|
+
readonly inputs: readonly [];
|
|
537
|
+
readonly name: "getWithdrawalRequestFee";
|
|
538
|
+
readonly outputs: readonly [{
|
|
539
|
+
readonly internalType: "uint256";
|
|
540
|
+
readonly name: "";
|
|
541
|
+
readonly type: "uint256";
|
|
542
|
+
}];
|
|
543
|
+
readonly stateMutability: "view";
|
|
544
|
+
readonly type: "function";
|
|
545
|
+
}, {
|
|
546
|
+
readonly inputs: readonly [{
|
|
547
|
+
readonly internalType: "address";
|
|
548
|
+
readonly name: "_podOwner";
|
|
549
|
+
readonly type: "address";
|
|
550
|
+
}];
|
|
551
|
+
readonly name: "initialize";
|
|
552
|
+
readonly outputs: readonly [];
|
|
553
|
+
readonly stateMutability: "nonpayable";
|
|
554
|
+
readonly type: "function";
|
|
555
|
+
}, {
|
|
556
|
+
readonly inputs: readonly [];
|
|
557
|
+
readonly name: "lastCheckpointTimestamp";
|
|
558
|
+
readonly outputs: readonly [{
|
|
559
|
+
readonly internalType: "uint64";
|
|
560
|
+
readonly name: "";
|
|
561
|
+
readonly type: "uint64";
|
|
562
|
+
}];
|
|
563
|
+
readonly stateMutability: "view";
|
|
564
|
+
readonly type: "function";
|
|
565
|
+
}, {
|
|
566
|
+
readonly inputs: readonly [];
|
|
567
|
+
readonly name: "podOwner";
|
|
568
|
+
readonly outputs: readonly [{
|
|
569
|
+
readonly internalType: "address";
|
|
570
|
+
readonly name: "";
|
|
571
|
+
readonly type: "address";
|
|
572
|
+
}];
|
|
573
|
+
readonly stateMutability: "view";
|
|
574
|
+
readonly type: "function";
|
|
575
|
+
}, {
|
|
576
|
+
readonly inputs: readonly [];
|
|
577
|
+
readonly name: "proofSubmitter";
|
|
578
|
+
readonly outputs: readonly [{
|
|
579
|
+
readonly internalType: "address";
|
|
580
|
+
readonly name: "";
|
|
581
|
+
readonly type: "address";
|
|
582
|
+
}];
|
|
583
|
+
readonly stateMutability: "view";
|
|
584
|
+
readonly type: "function";
|
|
585
|
+
}, {
|
|
586
|
+
readonly inputs: readonly [{
|
|
587
|
+
readonly internalType: "contract IERC20[]";
|
|
588
|
+
readonly name: "tokenList";
|
|
589
|
+
readonly type: "address[]";
|
|
590
|
+
}, {
|
|
591
|
+
readonly internalType: "uint256[]";
|
|
592
|
+
readonly name: "amountsToWithdraw";
|
|
593
|
+
readonly type: "uint256[]";
|
|
594
|
+
}, {
|
|
595
|
+
readonly internalType: "address";
|
|
596
|
+
readonly name: "recipient";
|
|
597
|
+
readonly type: "address";
|
|
598
|
+
}];
|
|
599
|
+
readonly name: "recoverTokens";
|
|
600
|
+
readonly outputs: readonly [];
|
|
601
|
+
readonly stateMutability: "nonpayable";
|
|
602
|
+
readonly type: "function";
|
|
603
|
+
}, {
|
|
604
|
+
readonly inputs: readonly [{
|
|
605
|
+
readonly components: readonly [{
|
|
606
|
+
readonly internalType: "bytes";
|
|
607
|
+
readonly name: "srcPubkey";
|
|
608
|
+
readonly type: "bytes";
|
|
609
|
+
}, {
|
|
610
|
+
readonly internalType: "bytes";
|
|
611
|
+
readonly name: "targetPubkey";
|
|
612
|
+
readonly type: "bytes";
|
|
613
|
+
}];
|
|
614
|
+
readonly internalType: "struct IEigenPodTypes.ConsolidationRequest[]";
|
|
615
|
+
readonly name: "requests";
|
|
616
|
+
readonly type: "tuple[]";
|
|
617
|
+
}];
|
|
618
|
+
readonly name: "requestConsolidation";
|
|
619
|
+
readonly outputs: readonly [];
|
|
620
|
+
readonly stateMutability: "payable";
|
|
621
|
+
readonly type: "function";
|
|
622
|
+
}, {
|
|
623
|
+
readonly inputs: readonly [{
|
|
624
|
+
readonly components: readonly [{
|
|
625
|
+
readonly internalType: "bytes";
|
|
626
|
+
readonly name: "pubkey";
|
|
627
|
+
readonly type: "bytes";
|
|
628
|
+
}, {
|
|
629
|
+
readonly internalType: "uint64";
|
|
630
|
+
readonly name: "amountGwei";
|
|
631
|
+
readonly type: "uint64";
|
|
632
|
+
}];
|
|
633
|
+
readonly internalType: "struct IEigenPodTypes.WithdrawalRequest[]";
|
|
634
|
+
readonly name: "requests";
|
|
635
|
+
readonly type: "tuple[]";
|
|
636
|
+
}];
|
|
637
|
+
readonly name: "requestWithdrawal";
|
|
638
|
+
readonly outputs: readonly [];
|
|
639
|
+
readonly stateMutability: "payable";
|
|
640
|
+
readonly type: "function";
|
|
641
|
+
}, {
|
|
642
|
+
readonly inputs: readonly [{
|
|
643
|
+
readonly internalType: "address";
|
|
644
|
+
readonly name: "newProofSubmitter";
|
|
645
|
+
readonly type: "address";
|
|
646
|
+
}];
|
|
647
|
+
readonly name: "setProofSubmitter";
|
|
648
|
+
readonly outputs: readonly [];
|
|
649
|
+
readonly stateMutability: "nonpayable";
|
|
650
|
+
readonly type: "function";
|
|
651
|
+
}, {
|
|
652
|
+
readonly inputs: readonly [{
|
|
653
|
+
readonly internalType: "bytes";
|
|
654
|
+
readonly name: "pubkey";
|
|
655
|
+
readonly type: "bytes";
|
|
656
|
+
}, {
|
|
657
|
+
readonly internalType: "bytes";
|
|
658
|
+
readonly name: "signature";
|
|
659
|
+
readonly type: "bytes";
|
|
660
|
+
}, {
|
|
661
|
+
readonly internalType: "bytes32";
|
|
662
|
+
readonly name: "depositDataRoot";
|
|
663
|
+
readonly type: "bytes32";
|
|
664
|
+
}];
|
|
665
|
+
readonly name: "stake";
|
|
666
|
+
readonly outputs: readonly [];
|
|
667
|
+
readonly stateMutability: "payable";
|
|
668
|
+
readonly type: "function";
|
|
669
|
+
}, {
|
|
670
|
+
readonly inputs: readonly [{
|
|
671
|
+
readonly internalType: "bool";
|
|
672
|
+
readonly name: "revertIfNoBalance";
|
|
673
|
+
readonly type: "bool";
|
|
674
|
+
}];
|
|
675
|
+
readonly name: "startCheckpoint";
|
|
676
|
+
readonly outputs: readonly [];
|
|
677
|
+
readonly stateMutability: "nonpayable";
|
|
678
|
+
readonly type: "function";
|
|
679
|
+
}, {
|
|
680
|
+
readonly inputs: readonly [{
|
|
681
|
+
readonly internalType: "bytes32";
|
|
682
|
+
readonly name: "validatorPubkeyHash";
|
|
683
|
+
readonly type: "bytes32";
|
|
684
|
+
}];
|
|
685
|
+
readonly name: "validatorPubkeyHashToInfo";
|
|
686
|
+
readonly outputs: readonly [{
|
|
687
|
+
readonly components: readonly [{
|
|
688
|
+
readonly internalType: "uint64";
|
|
689
|
+
readonly name: "validatorIndex";
|
|
690
|
+
readonly type: "uint64";
|
|
691
|
+
}, {
|
|
692
|
+
readonly internalType: "uint64";
|
|
693
|
+
readonly name: "restakedBalanceGwei";
|
|
694
|
+
readonly type: "uint64";
|
|
695
|
+
}, {
|
|
696
|
+
readonly internalType: "uint64";
|
|
697
|
+
readonly name: "lastCheckpointedAt";
|
|
698
|
+
readonly type: "uint64";
|
|
699
|
+
}, {
|
|
700
|
+
readonly internalType: "enum IEigenPodTypes.VALIDATOR_STATUS";
|
|
701
|
+
readonly name: "status";
|
|
702
|
+
readonly type: "uint8";
|
|
703
|
+
}];
|
|
704
|
+
readonly internalType: "struct IEigenPodTypes.ValidatorInfo";
|
|
705
|
+
readonly name: "";
|
|
706
|
+
readonly type: "tuple";
|
|
707
|
+
}];
|
|
708
|
+
readonly stateMutability: "view";
|
|
709
|
+
readonly type: "function";
|
|
710
|
+
}, {
|
|
711
|
+
readonly inputs: readonly [{
|
|
712
|
+
readonly internalType: "bytes";
|
|
713
|
+
readonly name: "validatorPubkey";
|
|
714
|
+
readonly type: "bytes";
|
|
715
|
+
}];
|
|
716
|
+
readonly name: "validatorPubkeyToInfo";
|
|
717
|
+
readonly outputs: readonly [{
|
|
718
|
+
readonly components: readonly [{
|
|
719
|
+
readonly internalType: "uint64";
|
|
720
|
+
readonly name: "validatorIndex";
|
|
721
|
+
readonly type: "uint64";
|
|
722
|
+
}, {
|
|
723
|
+
readonly internalType: "uint64";
|
|
724
|
+
readonly name: "restakedBalanceGwei";
|
|
725
|
+
readonly type: "uint64";
|
|
726
|
+
}, {
|
|
727
|
+
readonly internalType: "uint64";
|
|
728
|
+
readonly name: "lastCheckpointedAt";
|
|
729
|
+
readonly type: "uint64";
|
|
730
|
+
}, {
|
|
731
|
+
readonly internalType: "enum IEigenPodTypes.VALIDATOR_STATUS";
|
|
732
|
+
readonly name: "status";
|
|
733
|
+
readonly type: "uint8";
|
|
734
|
+
}];
|
|
735
|
+
readonly internalType: "struct IEigenPodTypes.ValidatorInfo";
|
|
736
|
+
readonly name: "";
|
|
737
|
+
readonly type: "tuple";
|
|
738
|
+
}];
|
|
739
|
+
readonly stateMutability: "view";
|
|
740
|
+
readonly type: "function";
|
|
741
|
+
}, {
|
|
742
|
+
readonly inputs: readonly [{
|
|
743
|
+
readonly internalType: "bytes";
|
|
744
|
+
readonly name: "validatorPubkey";
|
|
745
|
+
readonly type: "bytes";
|
|
746
|
+
}];
|
|
747
|
+
readonly name: "validatorStatus";
|
|
748
|
+
readonly outputs: readonly [{
|
|
749
|
+
readonly internalType: "enum IEigenPodTypes.VALIDATOR_STATUS";
|
|
750
|
+
readonly name: "";
|
|
751
|
+
readonly type: "uint8";
|
|
752
|
+
}];
|
|
753
|
+
readonly stateMutability: "view";
|
|
754
|
+
readonly type: "function";
|
|
755
|
+
}, {
|
|
756
|
+
readonly inputs: readonly [{
|
|
757
|
+
readonly internalType: "bytes32";
|
|
758
|
+
readonly name: "pubkeyHash";
|
|
759
|
+
readonly type: "bytes32";
|
|
760
|
+
}];
|
|
761
|
+
readonly name: "validatorStatus";
|
|
762
|
+
readonly outputs: readonly [{
|
|
763
|
+
readonly internalType: "enum IEigenPodTypes.VALIDATOR_STATUS";
|
|
764
|
+
readonly name: "";
|
|
765
|
+
readonly type: "uint8";
|
|
766
|
+
}];
|
|
767
|
+
readonly stateMutability: "view";
|
|
768
|
+
readonly type: "function";
|
|
769
|
+
}, {
|
|
770
|
+
readonly inputs: readonly [{
|
|
771
|
+
readonly components: readonly [{
|
|
772
|
+
readonly internalType: "bytes32";
|
|
773
|
+
readonly name: "balanceContainerRoot";
|
|
774
|
+
readonly type: "bytes32";
|
|
775
|
+
}, {
|
|
776
|
+
readonly internalType: "bytes";
|
|
777
|
+
readonly name: "proof";
|
|
778
|
+
readonly type: "bytes";
|
|
779
|
+
}];
|
|
780
|
+
readonly internalType: "struct BeaconChainProofs.BalanceContainerProof";
|
|
781
|
+
readonly name: "balanceContainerProof";
|
|
782
|
+
readonly type: "tuple";
|
|
783
|
+
}, {
|
|
784
|
+
readonly components: readonly [{
|
|
785
|
+
readonly internalType: "bytes32";
|
|
786
|
+
readonly name: "pubkeyHash";
|
|
787
|
+
readonly type: "bytes32";
|
|
788
|
+
}, {
|
|
789
|
+
readonly internalType: "bytes32";
|
|
790
|
+
readonly name: "balanceRoot";
|
|
791
|
+
readonly type: "bytes32";
|
|
792
|
+
}, {
|
|
793
|
+
readonly internalType: "bytes";
|
|
794
|
+
readonly name: "proof";
|
|
795
|
+
readonly type: "bytes";
|
|
796
|
+
}];
|
|
797
|
+
readonly internalType: "struct BeaconChainProofs.BalanceProof[]";
|
|
798
|
+
readonly name: "proofs";
|
|
799
|
+
readonly type: "tuple[]";
|
|
800
|
+
}];
|
|
801
|
+
readonly name: "verifyCheckpointProofs";
|
|
802
|
+
readonly outputs: readonly [];
|
|
803
|
+
readonly stateMutability: "nonpayable";
|
|
804
|
+
readonly type: "function";
|
|
805
|
+
}, {
|
|
806
|
+
readonly inputs: readonly [{
|
|
807
|
+
readonly internalType: "uint64";
|
|
808
|
+
readonly name: "beaconTimestamp";
|
|
809
|
+
readonly type: "uint64";
|
|
810
|
+
}, {
|
|
811
|
+
readonly components: readonly [{
|
|
812
|
+
readonly internalType: "bytes32";
|
|
813
|
+
readonly name: "beaconStateRoot";
|
|
814
|
+
readonly type: "bytes32";
|
|
815
|
+
}, {
|
|
816
|
+
readonly internalType: "bytes";
|
|
817
|
+
readonly name: "proof";
|
|
818
|
+
readonly type: "bytes";
|
|
819
|
+
}];
|
|
820
|
+
readonly internalType: "struct BeaconChainProofs.StateRootProof";
|
|
821
|
+
readonly name: "stateRootProof";
|
|
822
|
+
readonly type: "tuple";
|
|
823
|
+
}, {
|
|
824
|
+
readonly components: readonly [{
|
|
825
|
+
readonly internalType: "bytes32[]";
|
|
826
|
+
readonly name: "validatorFields";
|
|
827
|
+
readonly type: "bytes32[]";
|
|
828
|
+
}, {
|
|
829
|
+
readonly internalType: "bytes";
|
|
830
|
+
readonly name: "proof";
|
|
831
|
+
readonly type: "bytes";
|
|
832
|
+
}];
|
|
833
|
+
readonly internalType: "struct BeaconChainProofs.ValidatorProof";
|
|
834
|
+
readonly name: "proof";
|
|
835
|
+
readonly type: "tuple";
|
|
836
|
+
}];
|
|
837
|
+
readonly name: "verifyStaleBalance";
|
|
838
|
+
readonly outputs: readonly [];
|
|
839
|
+
readonly stateMutability: "nonpayable";
|
|
840
|
+
readonly type: "function";
|
|
841
|
+
}, {
|
|
842
|
+
readonly inputs: readonly [{
|
|
843
|
+
readonly internalType: "uint64";
|
|
844
|
+
readonly name: "beaconTimestamp";
|
|
845
|
+
readonly type: "uint64";
|
|
846
|
+
}, {
|
|
847
|
+
readonly components: readonly [{
|
|
848
|
+
readonly internalType: "bytes32";
|
|
849
|
+
readonly name: "beaconStateRoot";
|
|
850
|
+
readonly type: "bytes32";
|
|
851
|
+
}, {
|
|
852
|
+
readonly internalType: "bytes";
|
|
853
|
+
readonly name: "proof";
|
|
854
|
+
readonly type: "bytes";
|
|
855
|
+
}];
|
|
856
|
+
readonly internalType: "struct BeaconChainProofs.StateRootProof";
|
|
857
|
+
readonly name: "stateRootProof";
|
|
858
|
+
readonly type: "tuple";
|
|
859
|
+
}, {
|
|
860
|
+
readonly internalType: "uint40[]";
|
|
861
|
+
readonly name: "validatorIndices";
|
|
862
|
+
readonly type: "uint40[]";
|
|
863
|
+
}, {
|
|
864
|
+
readonly internalType: "bytes[]";
|
|
865
|
+
readonly name: "validatorFieldsProofs";
|
|
866
|
+
readonly type: "bytes[]";
|
|
867
|
+
}, {
|
|
868
|
+
readonly internalType: "bytes32[][]";
|
|
869
|
+
readonly name: "validatorFields";
|
|
870
|
+
readonly type: "bytes32[][]";
|
|
871
|
+
}];
|
|
872
|
+
readonly name: "verifyWithdrawalCredentials";
|
|
873
|
+
readonly outputs: readonly [];
|
|
874
|
+
readonly stateMutability: "nonpayable";
|
|
875
|
+
readonly type: "function";
|
|
876
|
+
}, {
|
|
877
|
+
readonly inputs: readonly [{
|
|
878
|
+
readonly internalType: "address";
|
|
879
|
+
readonly name: "recipient";
|
|
880
|
+
readonly type: "address";
|
|
881
|
+
}, {
|
|
882
|
+
readonly internalType: "uint256";
|
|
883
|
+
readonly name: "amountWei";
|
|
884
|
+
readonly type: "uint256";
|
|
885
|
+
}];
|
|
886
|
+
readonly name: "withdrawRestakedBeaconChainETH";
|
|
887
|
+
readonly outputs: readonly [];
|
|
888
|
+
readonly stateMutability: "nonpayable";
|
|
889
|
+
readonly type: "function";
|
|
890
|
+
}, {
|
|
891
|
+
readonly inputs: readonly [];
|
|
892
|
+
readonly name: "withdrawableRestakedExecutionLayerGwei";
|
|
893
|
+
readonly outputs: readonly [{
|
|
894
|
+
readonly internalType: "uint64";
|
|
895
|
+
readonly name: "";
|
|
896
|
+
readonly type: "uint64";
|
|
897
|
+
}];
|
|
898
|
+
readonly stateMutability: "view";
|
|
899
|
+
readonly type: "function";
|
|
900
|
+
}, {
|
|
901
|
+
readonly stateMutability: "payable";
|
|
902
|
+
readonly type: "receive";
|
|
903
|
+
}];
|
|
904
|
+
/**
|
|
905
|
+
* Type-safe ABI for EigenPod_json
|
|
906
|
+
*/
|
|
907
|
+
export type EigenPod_jsonAbi = typeof EigenPod_jsonAbi;
|
|
908
|
+
/**
|
|
909
|
+
* Contract instance type for EigenPod_json
|
|
910
|
+
*/
|
|
911
|
+
export type EigenPod_jsonContract = any;
|
|
912
|
+
/**
|
|
913
|
+
* EigenPod_json Contract Class
|
|
914
|
+
*
|
|
915
|
+
* Provides a class-based API similar to TypeChain for interacting with the contract.
|
|
916
|
+
*
|
|
917
|
+
* @example
|
|
918
|
+
* ```typescript
|
|
919
|
+
* import { createPublicClient, createWalletClient, http } from 'viem';
|
|
920
|
+
* import { mainnet } from 'viem/chains';
|
|
921
|
+
* import { EigenPod_json } from 'EigenPod_json';
|
|
922
|
+
*
|
|
923
|
+
* const publicClient = createPublicClient({ chain: mainnet, transport: http() });
|
|
924
|
+
* const walletClient = createWalletClient({ chain: mainnet, transport: http() });
|
|
925
|
+
*
|
|
926
|
+
* const contract = new EigenPod_json('0x...', { publicClient, walletClient });
|
|
927
|
+
*
|
|
928
|
+
* // Read functions
|
|
929
|
+
* const result = await contract.balanceOf('0x...');
|
|
930
|
+
*
|
|
931
|
+
* // Write functions
|
|
932
|
+
* const hash = await contract.transfer('0x...', 1000n);
|
|
933
|
+
*
|
|
934
|
+
* // Simulate transactions (dry-run)
|
|
935
|
+
* const simulation = await contract.simulate.transfer('0x...', 1000n);
|
|
936
|
+
* console.log('Gas estimate:', simulation.request.gas);
|
|
937
|
+
*
|
|
938
|
+
* // Watch events
|
|
939
|
+
* const unwatch = contract.watch.Transfer((event) => {
|
|
940
|
+
* console.log('Transfer event:', event);
|
|
941
|
+
* });
|
|
942
|
+
* ```
|
|
943
|
+
*/
|
|
944
|
+
export declare class EigenPod_json {
|
|
945
|
+
private contract;
|
|
946
|
+
private contractAddress;
|
|
947
|
+
private publicClient;
|
|
948
|
+
constructor(address: Address, clients: {
|
|
949
|
+
publicClient: PublicClient;
|
|
950
|
+
walletClient?: WalletClient;
|
|
951
|
+
});
|
|
952
|
+
/**
|
|
953
|
+
* Get the contract address
|
|
954
|
+
*/
|
|
955
|
+
get address(): Address;
|
|
956
|
+
/**
|
|
957
|
+
* Get the underlying viem contract instance
|
|
958
|
+
*/
|
|
959
|
+
getContract(): EigenPod_jsonContract;
|
|
960
|
+
/**
|
|
961
|
+
* activeValidatorCount
|
|
962
|
+
* view
|
|
963
|
+
*/
|
|
964
|
+
activeValidatorCount(): Promise<bigint>;
|
|
965
|
+
/**
|
|
966
|
+
* checkpointBalanceExitedGwei
|
|
967
|
+
* view
|
|
968
|
+
*/
|
|
969
|
+
checkpointBalanceExitedGwei(arg0: bigint): Promise<bigint>;
|
|
970
|
+
/**
|
|
971
|
+
* currentCheckpoint
|
|
972
|
+
* view
|
|
973
|
+
*/
|
|
974
|
+
currentCheckpoint(): Promise<IEigenPodTypes_Checkpoint>;
|
|
975
|
+
/**
|
|
976
|
+
* currentCheckpointTimestamp
|
|
977
|
+
* view
|
|
978
|
+
*/
|
|
979
|
+
currentCheckpointTimestamp(): Promise<bigint>;
|
|
980
|
+
/**
|
|
981
|
+
* eigenPodManager
|
|
982
|
+
* view
|
|
983
|
+
*/
|
|
984
|
+
eigenPodManager(): Promise<`0x${string}`>;
|
|
985
|
+
/**
|
|
986
|
+
* ethPOS
|
|
987
|
+
* view
|
|
988
|
+
*/
|
|
989
|
+
ethPOS(): Promise<`0x${string}`>;
|
|
990
|
+
/**
|
|
991
|
+
* getConsolidationRequestFee
|
|
992
|
+
* view
|
|
993
|
+
*/
|
|
994
|
+
getConsolidationRequestFee(): Promise<bigint>;
|
|
995
|
+
/**
|
|
996
|
+
* getParentBlockRoot
|
|
997
|
+
* view
|
|
998
|
+
*/
|
|
999
|
+
getParentBlockRoot(timestamp: bigint): Promise<`0x${string}`>;
|
|
1000
|
+
/**
|
|
1001
|
+
* getWithdrawalRequestFee
|
|
1002
|
+
* view
|
|
1003
|
+
*/
|
|
1004
|
+
getWithdrawalRequestFee(): Promise<bigint>;
|
|
1005
|
+
/**
|
|
1006
|
+
* lastCheckpointTimestamp
|
|
1007
|
+
* view
|
|
1008
|
+
*/
|
|
1009
|
+
lastCheckpointTimestamp(): Promise<bigint>;
|
|
1010
|
+
/**
|
|
1011
|
+
* podOwner
|
|
1012
|
+
* view
|
|
1013
|
+
*/
|
|
1014
|
+
podOwner(): Promise<`0x${string}`>;
|
|
1015
|
+
/**
|
|
1016
|
+
* proofSubmitter
|
|
1017
|
+
* view
|
|
1018
|
+
*/
|
|
1019
|
+
proofSubmitter(): Promise<`0x${string}`>;
|
|
1020
|
+
/**
|
|
1021
|
+
* validatorPubkeyHashToInfo
|
|
1022
|
+
* view
|
|
1023
|
+
*/
|
|
1024
|
+
validatorPubkeyHashToInfo(validatorPubkeyHash: `0x${string}`): Promise<IEigenPodTypes_ValidatorInfo>;
|
|
1025
|
+
/**
|
|
1026
|
+
* validatorPubkeyToInfo
|
|
1027
|
+
* view
|
|
1028
|
+
*/
|
|
1029
|
+
validatorPubkeyToInfo(validatorPubkey: `0x${string}`): Promise<IEigenPodTypes_ValidatorInfo>;
|
|
1030
|
+
validatorStatus(validatorPubkey: `0x${string}`): Promise<bigint>;
|
|
1031
|
+
validatorStatus(pubkeyHash: `0x${string}`): Promise<bigint>;
|
|
1032
|
+
/**
|
|
1033
|
+
* withdrawableRestakedExecutionLayerGwei
|
|
1034
|
+
* view
|
|
1035
|
+
*/
|
|
1036
|
+
withdrawableRestakedExecutionLayerGwei(): Promise<bigint>;
|
|
1037
|
+
/**
|
|
1038
|
+
* initialize
|
|
1039
|
+
* nonpayable
|
|
1040
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1041
|
+
*/
|
|
1042
|
+
initialize(_podOwner: `0x${string}`, options?: {
|
|
1043
|
+
accessList?: import('viem').AccessList;
|
|
1044
|
+
authorizationList?: import('viem').AuthorizationList;
|
|
1045
|
+
chain?: import('viem').Chain | null;
|
|
1046
|
+
dataSuffix?: `0x${string}`;
|
|
1047
|
+
gas?: bigint;
|
|
1048
|
+
gasPrice?: bigint;
|
|
1049
|
+
maxFeePerGas?: bigint;
|
|
1050
|
+
maxPriorityFeePerGas?: bigint;
|
|
1051
|
+
nonce?: number;
|
|
1052
|
+
value?: bigint;
|
|
1053
|
+
}): Promise<`0x${string}`>;
|
|
1054
|
+
/**
|
|
1055
|
+
* recoverTokens
|
|
1056
|
+
* nonpayable
|
|
1057
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1058
|
+
*/
|
|
1059
|
+
recoverTokens(tokenList: `0x${string}`[], amountsToWithdraw: bigint[], recipient: `0x${string}`, options?: {
|
|
1060
|
+
accessList?: import('viem').AccessList;
|
|
1061
|
+
authorizationList?: import('viem').AuthorizationList;
|
|
1062
|
+
chain?: import('viem').Chain | null;
|
|
1063
|
+
dataSuffix?: `0x${string}`;
|
|
1064
|
+
gas?: bigint;
|
|
1065
|
+
gasPrice?: bigint;
|
|
1066
|
+
maxFeePerGas?: bigint;
|
|
1067
|
+
maxPriorityFeePerGas?: bigint;
|
|
1068
|
+
nonce?: number;
|
|
1069
|
+
value?: bigint;
|
|
1070
|
+
}): Promise<`0x${string}`>;
|
|
1071
|
+
/**
|
|
1072
|
+
* requestConsolidation
|
|
1073
|
+
* payable
|
|
1074
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1075
|
+
*/
|
|
1076
|
+
requestConsolidation(requests: IEigenPodTypes_ConsolidationRequest[], options?: {
|
|
1077
|
+
accessList?: import('viem').AccessList;
|
|
1078
|
+
authorizationList?: import('viem').AuthorizationList;
|
|
1079
|
+
chain?: import('viem').Chain | null;
|
|
1080
|
+
dataSuffix?: `0x${string}`;
|
|
1081
|
+
gas?: bigint;
|
|
1082
|
+
gasPrice?: bigint;
|
|
1083
|
+
maxFeePerGas?: bigint;
|
|
1084
|
+
maxPriorityFeePerGas?: bigint;
|
|
1085
|
+
nonce?: number;
|
|
1086
|
+
value?: bigint;
|
|
1087
|
+
}): Promise<`0x${string}`>;
|
|
1088
|
+
/**
|
|
1089
|
+
* requestWithdrawal
|
|
1090
|
+
* payable
|
|
1091
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1092
|
+
*/
|
|
1093
|
+
requestWithdrawal(requests: IEigenPodTypes_WithdrawalRequest[], 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<`0x${string}`>;
|
|
1105
|
+
/**
|
|
1106
|
+
* setProofSubmitter
|
|
1107
|
+
* nonpayable
|
|
1108
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1109
|
+
*/
|
|
1110
|
+
setProofSubmitter(newProofSubmitter: `0x${string}`, 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<`0x${string}`>;
|
|
1122
|
+
/**
|
|
1123
|
+
* stake
|
|
1124
|
+
* payable
|
|
1125
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1126
|
+
*/
|
|
1127
|
+
stake(pubkey: `0x${string}`, signature: `0x${string}`, depositDataRoot: `0x${string}`, 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<`0x${string}`>;
|
|
1139
|
+
/**
|
|
1140
|
+
* startCheckpoint
|
|
1141
|
+
* nonpayable
|
|
1142
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1143
|
+
*/
|
|
1144
|
+
startCheckpoint(revertIfNoBalance: boolean, 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<`0x${string}`>;
|
|
1156
|
+
/**
|
|
1157
|
+
* verifyCheckpointProofs
|
|
1158
|
+
* nonpayable
|
|
1159
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1160
|
+
*/
|
|
1161
|
+
verifyCheckpointProofs(balanceContainerProof: BeaconChainProofs_BalanceContainerProof, proofs: BeaconChainProofs_BalanceProof[], 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<`0x${string}`>;
|
|
1173
|
+
/**
|
|
1174
|
+
* verifyStaleBalance
|
|
1175
|
+
* nonpayable
|
|
1176
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1177
|
+
*/
|
|
1178
|
+
verifyStaleBalance(beaconTimestamp: bigint, stateRootProof: BeaconChainProofs_StateRootProof, proof: BeaconChainProofs_ValidatorProof, 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<`0x${string}`>;
|
|
1190
|
+
/**
|
|
1191
|
+
* verifyWithdrawalCredentials
|
|
1192
|
+
* nonpayable
|
|
1193
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1194
|
+
*/
|
|
1195
|
+
verifyWithdrawalCredentials(beaconTimestamp: bigint, stateRootProof: BeaconChainProofs_StateRootProof, validatorIndices: bigint[], validatorFieldsProofs: `0x${string}`[], validatorFields: `0x${string}`[][], 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<`0x${string}`>;
|
|
1207
|
+
/**
|
|
1208
|
+
* withdrawRestakedBeaconChainETH
|
|
1209
|
+
* nonpayable
|
|
1210
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1211
|
+
*/
|
|
1212
|
+
withdrawRestakedBeaconChainETH(recipient: `0x${string}`, amountWei: 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<`0x${string}`>;
|
|
1224
|
+
/**
|
|
1225
|
+
* Simulate contract write operations (dry-run without sending transaction)
|
|
1226
|
+
*
|
|
1227
|
+
* @example
|
|
1228
|
+
* const result = await contract.simulate.transfer('0x...', 1000n);
|
|
1229
|
+
* console.log('Gas estimate:', result.request.gas);
|
|
1230
|
+
* console.log('Would succeed:', result.result);
|
|
1231
|
+
*/
|
|
1232
|
+
get simulate(): {
|
|
1233
|
+
/**
|
|
1234
|
+
* Simulate initialize
|
|
1235
|
+
* Returns gas estimate and result without sending transaction
|
|
1236
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1237
|
+
*/
|
|
1238
|
+
initialize(_podOwner: `0x${string}`, options?: {
|
|
1239
|
+
accessList?: import("viem").AccessList;
|
|
1240
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1241
|
+
chain?: import("viem").Chain | null;
|
|
1242
|
+
dataSuffix?: `0x${string}`;
|
|
1243
|
+
gas?: bigint;
|
|
1244
|
+
gasPrice?: bigint;
|
|
1245
|
+
maxFeePerGas?: bigint;
|
|
1246
|
+
maxPriorityFeePerGas?: bigint;
|
|
1247
|
+
nonce?: number;
|
|
1248
|
+
value?: bigint;
|
|
1249
|
+
}): Promise<void>;
|
|
1250
|
+
/**
|
|
1251
|
+
* Simulate recoverTokens
|
|
1252
|
+
* Returns gas estimate and result without sending transaction
|
|
1253
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1254
|
+
*/
|
|
1255
|
+
recoverTokens(tokenList: `0x${string}`[], amountsToWithdraw: bigint[], recipient: `0x${string}`, options?: {
|
|
1256
|
+
accessList?: import("viem").AccessList;
|
|
1257
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1258
|
+
chain?: import("viem").Chain | null;
|
|
1259
|
+
dataSuffix?: `0x${string}`;
|
|
1260
|
+
gas?: bigint;
|
|
1261
|
+
gasPrice?: bigint;
|
|
1262
|
+
maxFeePerGas?: bigint;
|
|
1263
|
+
maxPriorityFeePerGas?: bigint;
|
|
1264
|
+
nonce?: number;
|
|
1265
|
+
value?: bigint;
|
|
1266
|
+
}): Promise<void>;
|
|
1267
|
+
/**
|
|
1268
|
+
* Simulate requestConsolidation
|
|
1269
|
+
* Returns gas estimate and result without sending transaction
|
|
1270
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1271
|
+
*/
|
|
1272
|
+
requestConsolidation(requests: IEigenPodTypes_ConsolidationRequest[], options?: {
|
|
1273
|
+
accessList?: import("viem").AccessList;
|
|
1274
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1275
|
+
chain?: import("viem").Chain | null;
|
|
1276
|
+
dataSuffix?: `0x${string}`;
|
|
1277
|
+
gas?: bigint;
|
|
1278
|
+
gasPrice?: bigint;
|
|
1279
|
+
maxFeePerGas?: bigint;
|
|
1280
|
+
maxPriorityFeePerGas?: bigint;
|
|
1281
|
+
nonce?: number;
|
|
1282
|
+
value?: bigint;
|
|
1283
|
+
}): Promise<void>;
|
|
1284
|
+
/**
|
|
1285
|
+
* Simulate requestWithdrawal
|
|
1286
|
+
* Returns gas estimate and result without sending transaction
|
|
1287
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1288
|
+
*/
|
|
1289
|
+
requestWithdrawal(requests: IEigenPodTypes_WithdrawalRequest[], options?: {
|
|
1290
|
+
accessList?: import("viem").AccessList;
|
|
1291
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1292
|
+
chain?: import("viem").Chain | null;
|
|
1293
|
+
dataSuffix?: `0x${string}`;
|
|
1294
|
+
gas?: bigint;
|
|
1295
|
+
gasPrice?: bigint;
|
|
1296
|
+
maxFeePerGas?: bigint;
|
|
1297
|
+
maxPriorityFeePerGas?: bigint;
|
|
1298
|
+
nonce?: number;
|
|
1299
|
+
value?: bigint;
|
|
1300
|
+
}): Promise<void>;
|
|
1301
|
+
/**
|
|
1302
|
+
* Simulate setProofSubmitter
|
|
1303
|
+
* Returns gas estimate and result without sending transaction
|
|
1304
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1305
|
+
*/
|
|
1306
|
+
setProofSubmitter(newProofSubmitter: `0x${string}`, options?: {
|
|
1307
|
+
accessList?: import("viem").AccessList;
|
|
1308
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1309
|
+
chain?: import("viem").Chain | null;
|
|
1310
|
+
dataSuffix?: `0x${string}`;
|
|
1311
|
+
gas?: bigint;
|
|
1312
|
+
gasPrice?: bigint;
|
|
1313
|
+
maxFeePerGas?: bigint;
|
|
1314
|
+
maxPriorityFeePerGas?: bigint;
|
|
1315
|
+
nonce?: number;
|
|
1316
|
+
value?: bigint;
|
|
1317
|
+
}): Promise<void>;
|
|
1318
|
+
/**
|
|
1319
|
+
* Simulate stake
|
|
1320
|
+
* Returns gas estimate and result without sending transaction
|
|
1321
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1322
|
+
*/
|
|
1323
|
+
stake(pubkey: `0x${string}`, signature: `0x${string}`, depositDataRoot: `0x${string}`, options?: {
|
|
1324
|
+
accessList?: import("viem").AccessList;
|
|
1325
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1326
|
+
chain?: import("viem").Chain | null;
|
|
1327
|
+
dataSuffix?: `0x${string}`;
|
|
1328
|
+
gas?: bigint;
|
|
1329
|
+
gasPrice?: bigint;
|
|
1330
|
+
maxFeePerGas?: bigint;
|
|
1331
|
+
maxPriorityFeePerGas?: bigint;
|
|
1332
|
+
nonce?: number;
|
|
1333
|
+
value?: bigint;
|
|
1334
|
+
}): Promise<void>;
|
|
1335
|
+
/**
|
|
1336
|
+
* Simulate startCheckpoint
|
|
1337
|
+
* Returns gas estimate and result without sending transaction
|
|
1338
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1339
|
+
*/
|
|
1340
|
+
startCheckpoint(revertIfNoBalance: boolean, options?: {
|
|
1341
|
+
accessList?: import("viem").AccessList;
|
|
1342
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1343
|
+
chain?: import("viem").Chain | null;
|
|
1344
|
+
dataSuffix?: `0x${string}`;
|
|
1345
|
+
gas?: bigint;
|
|
1346
|
+
gasPrice?: bigint;
|
|
1347
|
+
maxFeePerGas?: bigint;
|
|
1348
|
+
maxPriorityFeePerGas?: bigint;
|
|
1349
|
+
nonce?: number;
|
|
1350
|
+
value?: bigint;
|
|
1351
|
+
}): Promise<void>;
|
|
1352
|
+
/**
|
|
1353
|
+
* Simulate verifyCheckpointProofs
|
|
1354
|
+
* Returns gas estimate and result without sending transaction
|
|
1355
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1356
|
+
*/
|
|
1357
|
+
verifyCheckpointProofs(balanceContainerProof: BeaconChainProofs_BalanceContainerProof, proofs: BeaconChainProofs_BalanceProof[], options?: {
|
|
1358
|
+
accessList?: import("viem").AccessList;
|
|
1359
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1360
|
+
chain?: import("viem").Chain | null;
|
|
1361
|
+
dataSuffix?: `0x${string}`;
|
|
1362
|
+
gas?: bigint;
|
|
1363
|
+
gasPrice?: bigint;
|
|
1364
|
+
maxFeePerGas?: bigint;
|
|
1365
|
+
maxPriorityFeePerGas?: bigint;
|
|
1366
|
+
nonce?: number;
|
|
1367
|
+
value?: bigint;
|
|
1368
|
+
}): Promise<void>;
|
|
1369
|
+
/**
|
|
1370
|
+
* Simulate verifyStaleBalance
|
|
1371
|
+
* Returns gas estimate and result without sending transaction
|
|
1372
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1373
|
+
*/
|
|
1374
|
+
verifyStaleBalance(beaconTimestamp: bigint, stateRootProof: BeaconChainProofs_StateRootProof, proof: BeaconChainProofs_ValidatorProof, options?: {
|
|
1375
|
+
accessList?: import("viem").AccessList;
|
|
1376
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1377
|
+
chain?: import("viem").Chain | null;
|
|
1378
|
+
dataSuffix?: `0x${string}`;
|
|
1379
|
+
gas?: bigint;
|
|
1380
|
+
gasPrice?: bigint;
|
|
1381
|
+
maxFeePerGas?: bigint;
|
|
1382
|
+
maxPriorityFeePerGas?: bigint;
|
|
1383
|
+
nonce?: number;
|
|
1384
|
+
value?: bigint;
|
|
1385
|
+
}): Promise<void>;
|
|
1386
|
+
/**
|
|
1387
|
+
* Simulate verifyWithdrawalCredentials
|
|
1388
|
+
* Returns gas estimate and result without sending transaction
|
|
1389
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1390
|
+
*/
|
|
1391
|
+
verifyWithdrawalCredentials(beaconTimestamp: bigint, stateRootProof: BeaconChainProofs_StateRootProof, validatorIndices: bigint[], validatorFieldsProofs: `0x${string}`[], validatorFields: `0x${string}`[][], options?: {
|
|
1392
|
+
accessList?: import("viem").AccessList;
|
|
1393
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1394
|
+
chain?: import("viem").Chain | null;
|
|
1395
|
+
dataSuffix?: `0x${string}`;
|
|
1396
|
+
gas?: bigint;
|
|
1397
|
+
gasPrice?: bigint;
|
|
1398
|
+
maxFeePerGas?: bigint;
|
|
1399
|
+
maxPriorityFeePerGas?: bigint;
|
|
1400
|
+
nonce?: number;
|
|
1401
|
+
value?: bigint;
|
|
1402
|
+
}): Promise<void>;
|
|
1403
|
+
/**
|
|
1404
|
+
* Simulate withdrawRestakedBeaconChainETH
|
|
1405
|
+
* Returns gas estimate and result without sending transaction
|
|
1406
|
+
* @param options Optional transaction parameters (value, gas, nonce, etc.)
|
|
1407
|
+
*/
|
|
1408
|
+
withdrawRestakedBeaconChainETH(recipient: `0x${string}`, amountWei: bigint, options?: {
|
|
1409
|
+
accessList?: import("viem").AccessList;
|
|
1410
|
+
authorizationList?: import("viem").AuthorizationList;
|
|
1411
|
+
chain?: import("viem").Chain | null;
|
|
1412
|
+
dataSuffix?: `0x${string}`;
|
|
1413
|
+
gas?: bigint;
|
|
1414
|
+
gasPrice?: bigint;
|
|
1415
|
+
maxFeePerGas?: bigint;
|
|
1416
|
+
maxPriorityFeePerGas?: bigint;
|
|
1417
|
+
nonce?: number;
|
|
1418
|
+
value?: bigint;
|
|
1419
|
+
}): Promise<void>;
|
|
1420
|
+
};
|
|
1421
|
+
/**
|
|
1422
|
+
* Watch contract events
|
|
1423
|
+
*
|
|
1424
|
+
* @example
|
|
1425
|
+
* // Watch all Transfer events
|
|
1426
|
+
* const unwatch = contract.watch.Transfer((event) => {
|
|
1427
|
+
* console.log('Transfer:', event);
|
|
1428
|
+
* });
|
|
1429
|
+
*
|
|
1430
|
+
* // Stop watching
|
|
1431
|
+
* unwatch();
|
|
1432
|
+
*/
|
|
1433
|
+
get watch(): {
|
|
1434
|
+
/**
|
|
1435
|
+
* Watch CheckpointCreated events
|
|
1436
|
+
* @param callback Function to call when event is emitted
|
|
1437
|
+
* @param filter Optional filter for indexed parameters
|
|
1438
|
+
* @returns Unwatch function to stop listening
|
|
1439
|
+
*/
|
|
1440
|
+
CheckpointCreated: (callback: (event: {
|
|
1441
|
+
checkpointTimestamp: bigint;
|
|
1442
|
+
beaconBlockRoot: `0x${string}`;
|
|
1443
|
+
validatorCount: bigint;
|
|
1444
|
+
}) => void, filter?: {
|
|
1445
|
+
checkpointTimestamp: bigint;
|
|
1446
|
+
beaconBlockRoot: `0x${string}`;
|
|
1447
|
+
}) => () => void;
|
|
1448
|
+
/**
|
|
1449
|
+
* Watch CheckpointFinalized events
|
|
1450
|
+
* @param callback Function to call when event is emitted
|
|
1451
|
+
* @param filter Optional filter for indexed parameters
|
|
1452
|
+
* @returns Unwatch function to stop listening
|
|
1453
|
+
*/
|
|
1454
|
+
CheckpointFinalized: (callback: (event: {
|
|
1455
|
+
checkpointTimestamp: bigint;
|
|
1456
|
+
totalShareDeltaWei: bigint;
|
|
1457
|
+
}) => void, filter?: {
|
|
1458
|
+
checkpointTimestamp: bigint;
|
|
1459
|
+
}) => () => void;
|
|
1460
|
+
/**
|
|
1461
|
+
* Watch ConsolidationRequested events
|
|
1462
|
+
* @param callback Function to call when event is emitted
|
|
1463
|
+
* @param filter Optional filter for indexed parameters
|
|
1464
|
+
* @returns Unwatch function to stop listening
|
|
1465
|
+
*/
|
|
1466
|
+
ConsolidationRequested: (callback: (event: {
|
|
1467
|
+
sourcePubkeyHash: `0x${string}`;
|
|
1468
|
+
targetPubkeyHash: `0x${string}`;
|
|
1469
|
+
}) => void, filter?: {
|
|
1470
|
+
sourcePubkeyHash: `0x${string}`;
|
|
1471
|
+
targetPubkeyHash: `0x${string}`;
|
|
1472
|
+
}) => () => void;
|
|
1473
|
+
/**
|
|
1474
|
+
* Watch EigenPodStaked events
|
|
1475
|
+
* @param callback Function to call when event is emitted
|
|
1476
|
+
* @param filter Optional filter for indexed parameters
|
|
1477
|
+
* @returns Unwatch function to stop listening
|
|
1478
|
+
*/
|
|
1479
|
+
EigenPodStaked: (callback: (event: {
|
|
1480
|
+
pubkeyHash: `0x${string}`;
|
|
1481
|
+
}) => void) => () => void;
|
|
1482
|
+
/**
|
|
1483
|
+
* Watch ExitRequested events
|
|
1484
|
+
* @param callback Function to call when event is emitted
|
|
1485
|
+
* @param filter Optional filter for indexed parameters
|
|
1486
|
+
* @returns Unwatch function to stop listening
|
|
1487
|
+
*/
|
|
1488
|
+
ExitRequested: (callback: (event: {
|
|
1489
|
+
validatorPubkeyHash: `0x${string}`;
|
|
1490
|
+
}) => void, filter?: {
|
|
1491
|
+
validatorPubkeyHash: `0x${string}`;
|
|
1492
|
+
}) => () => void;
|
|
1493
|
+
/**
|
|
1494
|
+
* Watch Initialized events
|
|
1495
|
+
* @param callback Function to call when event is emitted
|
|
1496
|
+
* @param filter Optional filter for indexed parameters
|
|
1497
|
+
* @returns Unwatch function to stop listening
|
|
1498
|
+
*/
|
|
1499
|
+
Initialized: (callback: (event: {
|
|
1500
|
+
version: bigint;
|
|
1501
|
+
}) => void) => () => void;
|
|
1502
|
+
/**
|
|
1503
|
+
* Watch NonBeaconChainETHReceived events
|
|
1504
|
+
* @param callback Function to call when event is emitted
|
|
1505
|
+
* @param filter Optional filter for indexed parameters
|
|
1506
|
+
* @returns Unwatch function to stop listening
|
|
1507
|
+
*/
|
|
1508
|
+
NonBeaconChainETHReceived: (callback: (event: {
|
|
1509
|
+
amountReceived: bigint;
|
|
1510
|
+
}) => void) => () => void;
|
|
1511
|
+
/**
|
|
1512
|
+
* Watch ProofSubmitterUpdated events
|
|
1513
|
+
* @param callback Function to call when event is emitted
|
|
1514
|
+
* @param filter Optional filter for indexed parameters
|
|
1515
|
+
* @returns Unwatch function to stop listening
|
|
1516
|
+
*/
|
|
1517
|
+
ProofSubmitterUpdated: (callback: (event: {
|
|
1518
|
+
prevProofSubmitter: `0x${string}`;
|
|
1519
|
+
newProofSubmitter: `0x${string}`;
|
|
1520
|
+
}) => void) => () => void;
|
|
1521
|
+
/**
|
|
1522
|
+
* Watch RestakedBeaconChainETHWithdrawn events
|
|
1523
|
+
* @param callback Function to call when event is emitted
|
|
1524
|
+
* @param filter Optional filter for indexed parameters
|
|
1525
|
+
* @returns Unwatch function to stop listening
|
|
1526
|
+
*/
|
|
1527
|
+
RestakedBeaconChainETHWithdrawn: (callback: (event: {
|
|
1528
|
+
recipient: `0x${string}`;
|
|
1529
|
+
amount: bigint;
|
|
1530
|
+
}) => void, filter?: {
|
|
1531
|
+
recipient: `0x${string}`;
|
|
1532
|
+
}) => () => void;
|
|
1533
|
+
/**
|
|
1534
|
+
* Watch SwitchToCompoundingRequested events
|
|
1535
|
+
* @param callback Function to call when event is emitted
|
|
1536
|
+
* @param filter Optional filter for indexed parameters
|
|
1537
|
+
* @returns Unwatch function to stop listening
|
|
1538
|
+
*/
|
|
1539
|
+
SwitchToCompoundingRequested: (callback: (event: {
|
|
1540
|
+
validatorPubkeyHash: `0x${string}`;
|
|
1541
|
+
}) => void, filter?: {
|
|
1542
|
+
validatorPubkeyHash: `0x${string}`;
|
|
1543
|
+
}) => () => void;
|
|
1544
|
+
/**
|
|
1545
|
+
* Watch ValidatorBalanceUpdated events
|
|
1546
|
+
* @param callback Function to call when event is emitted
|
|
1547
|
+
* @param filter Optional filter for indexed parameters
|
|
1548
|
+
* @returns Unwatch function to stop listening
|
|
1549
|
+
*/
|
|
1550
|
+
ValidatorBalanceUpdated: (callback: (event: {
|
|
1551
|
+
pubkeyHash: `0x${string}`;
|
|
1552
|
+
balanceTimestamp: bigint;
|
|
1553
|
+
newValidatorBalanceGwei: bigint;
|
|
1554
|
+
}) => void) => () => void;
|
|
1555
|
+
/**
|
|
1556
|
+
* Watch ValidatorCheckpointed events
|
|
1557
|
+
* @param callback Function to call when event is emitted
|
|
1558
|
+
* @param filter Optional filter for indexed parameters
|
|
1559
|
+
* @returns Unwatch function to stop listening
|
|
1560
|
+
*/
|
|
1561
|
+
ValidatorCheckpointed: (callback: (event: {
|
|
1562
|
+
checkpointTimestamp: bigint;
|
|
1563
|
+
pubkeyHash: `0x${string}`;
|
|
1564
|
+
}) => void, filter?: {
|
|
1565
|
+
checkpointTimestamp: bigint;
|
|
1566
|
+
pubkeyHash: `0x${string}`;
|
|
1567
|
+
}) => () => void;
|
|
1568
|
+
/**
|
|
1569
|
+
* Watch ValidatorRestaked events
|
|
1570
|
+
* @param callback Function to call when event is emitted
|
|
1571
|
+
* @param filter Optional filter for indexed parameters
|
|
1572
|
+
* @returns Unwatch function to stop listening
|
|
1573
|
+
*/
|
|
1574
|
+
ValidatorRestaked: (callback: (event: {
|
|
1575
|
+
pubkeyHash: `0x${string}`;
|
|
1576
|
+
}) => void) => () => void;
|
|
1577
|
+
/**
|
|
1578
|
+
* Watch ValidatorWithdrawn events
|
|
1579
|
+
* @param callback Function to call when event is emitted
|
|
1580
|
+
* @param filter Optional filter for indexed parameters
|
|
1581
|
+
* @returns Unwatch function to stop listening
|
|
1582
|
+
*/
|
|
1583
|
+
ValidatorWithdrawn: (callback: (event: {
|
|
1584
|
+
checkpointTimestamp: bigint;
|
|
1585
|
+
pubkeyHash: `0x${string}`;
|
|
1586
|
+
}) => void, filter?: {
|
|
1587
|
+
checkpointTimestamp: bigint;
|
|
1588
|
+
pubkeyHash: `0x${string}`;
|
|
1589
|
+
}) => () => void;
|
|
1590
|
+
/**
|
|
1591
|
+
* Watch WithdrawalRequested events
|
|
1592
|
+
* @param callback Function to call when event is emitted
|
|
1593
|
+
* @param filter Optional filter for indexed parameters
|
|
1594
|
+
* @returns Unwatch function to stop listening
|
|
1595
|
+
*/
|
|
1596
|
+
WithdrawalRequested: (callback: (event: {
|
|
1597
|
+
validatorPubkeyHash: `0x${string}`;
|
|
1598
|
+
withdrawalAmountGwei: bigint;
|
|
1599
|
+
}) => void, filter?: {
|
|
1600
|
+
validatorPubkeyHash: `0x${string}`;
|
|
1601
|
+
}) => () => void;
|
|
1602
|
+
};
|
|
1603
|
+
}
|