@lodestar/types 1.48.0-dev.b5f4a8f2c6 → 1.48.0-dev.b62c97bb9f

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.
Files changed (46) hide show
  1. package/lib/bellatrix/sszTypes.d.ts +18 -0
  2. package/lib/bellatrix/sszTypes.d.ts.map +1 -1
  3. package/lib/bellatrix/sszTypes.js +3 -0
  4. package/lib/bellatrix/sszTypes.js.map +1 -1
  5. package/lib/bellatrix/types.d.ts +1 -0
  6. package/lib/bellatrix/types.d.ts.map +1 -1
  7. package/lib/capella/sszTypes.d.ts +24 -0
  8. package/lib/capella/sszTypes.d.ts.map +1 -1
  9. package/lib/capella/sszTypes.js +3 -0
  10. package/lib/capella/sszTypes.js.map +1 -1
  11. package/lib/capella/types.d.ts +1 -0
  12. package/lib/capella/types.d.ts.map +1 -1
  13. package/lib/deneb/sszTypes.d.ts +29 -0
  14. package/lib/deneb/sszTypes.d.ts.map +1 -1
  15. package/lib/deneb/sszTypes.js +6 -0
  16. package/lib/deneb/sszTypes.js.map +1 -1
  17. package/lib/deneb/types.d.ts +2 -0
  18. package/lib/deneb/types.d.ts.map +1 -1
  19. package/lib/electra/sszTypes.d.ts +47 -0
  20. package/lib/electra/sszTypes.d.ts.map +1 -1
  21. package/lib/electra/sszTypes.js +4 -0
  22. package/lib/electra/sszTypes.js.map +1 -1
  23. package/lib/electra/types.d.ts +1 -0
  24. package/lib/electra/types.d.ts.map +1 -1
  25. package/lib/gloas/sszTypes.d.ts +62 -1
  26. package/lib/gloas/sszTypes.d.ts.map +1 -1
  27. package/lib/gloas/sszTypes.js +70 -16
  28. package/lib/gloas/sszTypes.js.map +1 -1
  29. package/lib/gloas/types.d.ts +4 -1
  30. package/lib/gloas/types.d.ts.map +1 -1
  31. package/lib/sszTypes.d.ts +586 -4
  32. package/lib/sszTypes.d.ts.map +1 -1
  33. package/lib/types.d.ts +8 -0
  34. package/lib/types.d.ts.map +1 -1
  35. package/package.json +4 -4
  36. package/src/bellatrix/sszTypes.ts +7 -0
  37. package/src/bellatrix/types.ts +1 -0
  38. package/src/capella/sszTypes.ts +7 -0
  39. package/src/capella/types.ts +1 -0
  40. package/src/deneb/sszTypes.ts +10 -0
  41. package/src/deneb/types.ts +2 -0
  42. package/src/electra/sszTypes.ts +8 -0
  43. package/src/electra/types.ts +1 -0
  44. package/src/gloas/sszTypes.ts +94 -15
  45. package/src/gloas/types.ts +4 -1
  46. package/src/types.ts +8 -0
@@ -18,13 +18,33 @@ import {
18
18
  EXECUTION_BLOCK_HASH_DEPTH_GLOAS,
19
19
  FINALIZED_ROOT_DEPTH_GLOAS,
20
20
  HISTORICAL_ROOTS_LIMIT,
21
+ MAX_ATTESTATIONS_ELECTRA,
22
+ MAX_ATTESTER_SLASHINGS_ELECTRA,
23
+ MAX_BLOB_COMMITMENTS_PER_BLOCK,
24
+ MAX_BLS_TO_EXECUTION_CHANGES,
21
25
  MAX_BUILDER_AUTH_DATA_SIZE,
26
+ MAX_BUILDER_DEPOSIT_REQUESTS_PER_PAYLOAD,
27
+ MAX_BUILDER_EXIT_REQUESTS_PER_PAYLOAD,
28
+ MAX_BYTES_PER_TRANSACTION,
29
+ MAX_COMMITTEES_PER_SLOT,
30
+ MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD,
31
+ MAX_PAYLOAD_ATTESTATIONS,
32
+ MAX_PROPOSER_SLASHINGS,
33
+ MAX_TRANSACTIONS_PER_PAYLOAD,
34
+ MAX_VALIDATORS_PER_COMMITTEE,
35
+ MAX_VOLUNTARY_EXITS,
36
+ MAX_WITHDRAWALS_PER_PAYLOAD,
37
+ MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD,
22
38
  MIN_SEED_LOOKAHEAD,
23
39
  NEXT_SYNC_COMMITTEE_DEPTH_GLOAS,
24
40
  NUMBER_OF_COLUMNS,
41
+ PENDING_CONSOLIDATIONS_LIMIT,
42
+ PENDING_DEPOSITS_LIMIT,
43
+ PENDING_PARTIAL_WITHDRAWALS_LIMIT,
25
44
  PTC_SIZE,
26
45
  SLOTS_PER_EPOCH,
27
46
  SLOTS_PER_HISTORICAL_ROOT,
47
+ VALIDATOR_REGISTRY_LIMIT,
28
48
  } from "@lodestar/params";
29
49
  import {ssz as altairSsz} from "../altair/index.js";
30
50
  import {ssz as capellaSsz} from "../capella/index.js";
@@ -67,16 +87,35 @@ export const FinalityBranch = new VectorCompositeType(Bytes32, FINALIZED_ROOT_DE
67
87
 
68
88
  export const NextSyncCommitteeBranch = new VectorCompositeType(Bytes32, NEXT_SYNC_COMMITTEE_DEPTH_GLOAS);
69
89
 
70
- export const AggregationBits = new ProgressiveBitListType({typeName: "AggregationBits"});
71
- export const AttestingIndices = new ProgressiveListBasicType(ValidatorIndex, {typeName: "AttestingIndices"});
72
- export const Transaction = new ProgressiveByteListType({typeName: "Transaction"});
73
- export const Transactions = new ProgressiveListCompositeType(Transaction, {typeName: "Transactions"});
74
- export const Withdrawals = new ProgressiveListCompositeType(capellaSsz.Withdrawal, {typeName: "Withdrawals"});
90
+ export const AggregationBits = new ProgressiveBitListType({
91
+ typeName: "AggregationBits",
92
+ limit: MAX_VALIDATORS_PER_COMMITTEE * MAX_COMMITTEES_PER_SLOT,
93
+ });
94
+ export const AttestingIndices = new ProgressiveListBasicType(ValidatorIndex, {
95
+ typeName: "AttestingIndices",
96
+ limit: MAX_VALIDATORS_PER_COMMITTEE * MAX_COMMITTEES_PER_SLOT,
97
+ });
98
+ export const Transaction = new ProgressiveByteListType({typeName: "Transaction", limit: MAX_BYTES_PER_TRANSACTION});
99
+ export const Transactions = new ProgressiveListCompositeType(Transaction, {
100
+ typeName: "Transactions",
101
+ limit: MAX_TRANSACTIONS_PER_PAYLOAD,
102
+ });
103
+ export const Withdrawals = new ProgressiveListCompositeType(capellaSsz.Withdrawal, {
104
+ typeName: "Withdrawals",
105
+ limit: MAX_WITHDRAWALS_PER_PAYLOAD,
106
+ });
75
107
  export const BlobKzgCommitments = new ProgressiveListCompositeType(denebSsz.KZGCommitment, {
76
108
  typeName: "BlobKzgCommitments",
109
+ limit: MAX_BLOB_COMMITMENTS_PER_BLOCK,
110
+ });
111
+ export const KZGProofs = new ProgressiveListCompositeType(denebSsz.KZGProof, {
112
+ typeName: "KZGProofs",
113
+ limit: MAX_BLOB_COMMITMENTS_PER_BLOCK,
114
+ });
115
+ export const DataColumn = new ProgressiveListCompositeType(fuluSsz.Cell, {
116
+ typeName: "DataColumn",
117
+ limit: MAX_BLOB_COMMITMENTS_PER_BLOCK,
77
118
  });
78
- export const KZGProofs = new ProgressiveListCompositeType(denebSsz.KZGProof, {typeName: "KZGProofs"});
79
- export const DataColumn = new ProgressiveListCompositeType(fuluSsz.Cell, {typeName: "DataColumn"});
80
119
 
81
120
  export const Attestation = new ProgressiveContainerType(
82
121
  {
@@ -140,10 +179,12 @@ export const DepositRequests = new ProgressiveListCompositeType(DepositRequest,
140
179
  export const WithdrawalRequest = electraSsz.WithdrawalRequest;
141
180
  export const WithdrawalRequests = new ProgressiveListCompositeType(WithdrawalRequest, {
142
181
  typeName: "WithdrawalRequests",
182
+ limit: MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD,
143
183
  });
144
184
  export const ConsolidationRequest = electraSsz.ConsolidationRequest;
145
185
  export const ConsolidationRequests = new ProgressiveListCompositeType(ConsolidationRequest, {
146
186
  typeName: "ConsolidationRequests",
187
+ limit: MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD,
147
188
  });
148
189
 
149
190
  // New in GLOAS:EIP8282
@@ -158,6 +199,7 @@ export const BuilderDepositRequest = new ContainerType(
158
199
  );
159
200
  export const BuilderDepositRequests = new ProgressiveListCompositeType(BuilderDepositRequest, {
160
201
  typeName: "BuilderDepositRequests",
202
+ limit: MAX_BUILDER_DEPOSIT_REQUESTS_PER_PAYLOAD,
161
203
  });
162
204
 
163
205
  // New in GLOAS:EIP8282
@@ -170,6 +212,7 @@ export const BuilderExitRequest = new ContainerType(
170
212
  );
171
213
  export const BuilderExitRequests = new ProgressiveListCompositeType(BuilderExitRequest, {
172
214
  typeName: "BuilderExitRequests",
215
+ limit: MAX_BUILDER_EXIT_REQUESTS_PER_PAYLOAD,
173
216
  });
174
217
 
175
218
  export const ExecutionRequests = new ProgressiveContainerType(
@@ -186,33 +229,53 @@ export const ExecutionRequests = new ProgressiveContainerType(
186
229
 
187
230
  export const ProposerSlashings = new ProgressiveListCompositeType(phase0Ssz.ProposerSlashing, {
188
231
  typeName: "ProposerSlashings",
232
+ limit: MAX_PROPOSER_SLASHINGS,
189
233
  });
190
234
  export const AttesterSlashings = new ProgressiveListCompositeType(AttesterSlashing, {
191
235
  typeName: "AttesterSlashings",
236
+ limit: MAX_ATTESTER_SLASHINGS_ELECTRA,
237
+ });
238
+ export const Attestations = new ProgressiveListCompositeType(Attestation, {
239
+ typeName: "Attestations",
240
+ limit: MAX_ATTESTATIONS_ELECTRA,
192
241
  });
193
- export const Attestations = new ProgressiveListCompositeType(Attestation, {typeName: "Attestations"});
194
242
  export const Deposits = new ProgressiveListCompositeType(phase0Ssz.Deposit, {typeName: "Deposits"});
195
243
  export const VoluntaryExits = new ProgressiveListCompositeType(phase0Ssz.SignedVoluntaryExit, {
196
244
  typeName: "VoluntaryExits",
245
+ limit: MAX_VOLUNTARY_EXITS,
197
246
  });
198
247
  export const BlsToExecutionChanges = new ProgressiveListCompositeType(capellaSsz.SignedBLSToExecutionChange, {
199
248
  typeName: "BLSToExecutionChanges",
249
+ limit: MAX_BLS_TO_EXECUTION_CHANGES,
200
250
  });
201
251
 
202
- export const Validators = new ProgressiveListCompositeType(phase0Ssz.Validator, {typeName: "Validators"});
203
- export const Balances = new ProgressiveListBasicType(UintNum64, {typeName: "Balances"});
252
+ export const Validators = new ProgressiveListCompositeType(phase0Ssz.Validator, {
253
+ typeName: "Validators",
254
+ limit: VALIDATOR_REGISTRY_LIMIT,
255
+ });
256
+ export const Balances = new ProgressiveListBasicType(UintNum64, {
257
+ typeName: "Balances",
258
+ limit: VALIDATOR_REGISTRY_LIMIT,
259
+ });
204
260
  export const EpochParticipation = new ProgressiveListBasicType(ParticipationFlags, {
205
261
  typeName: "EpochParticipation",
262
+ limit: VALIDATOR_REGISTRY_LIMIT,
263
+ });
264
+ export const InactivityScores = new ProgressiveListBasicType(UintNum64, {
265
+ typeName: "InactivityScores",
266
+ limit: VALIDATOR_REGISTRY_LIMIT,
206
267
  });
207
- export const InactivityScores = new ProgressiveListBasicType(UintNum64, {typeName: "InactivityScores"});
208
268
  export const PendingDeposits = new ProgressiveListCompositeType(electraSsz.PendingDeposit, {
209
269
  typeName: "PendingDeposits",
270
+ limit: PENDING_DEPOSITS_LIMIT,
210
271
  });
211
272
  export const PendingPartialWithdrawals = new ProgressiveListCompositeType(electraSsz.PendingPartialWithdrawal, {
212
273
  typeName: "PendingPartialWithdrawals",
274
+ limit: PENDING_PARTIAL_WITHDRAWALS_LIMIT,
213
275
  });
214
276
  export const PendingConsolidations = new ProgressiveListCompositeType(electraSsz.PendingConsolidation, {
215
277
  typeName: "PendingConsolidations",
278
+ limit: PENDING_CONSOLIDATIONS_LIMIT,
216
279
  });
217
280
 
218
281
  export const Builder = new ContainerType(
@@ -238,6 +301,9 @@ export const BuilderPendingWithdrawal = new ContainerType(
238
301
 
239
302
  export const BuilderPendingPayment = new ContainerType(
240
303
  {
304
+ // weight sums attesting validators' effective balances, which are multiples of 1e9 Gwei;
305
+ // such multiples stay exactly representable as JS numbers far beyond any reachable Ethereum
306
+ // stake, so UintNum64 is safe here.
241
307
  weight: UintNum64,
242
308
  withdrawal: BuilderPendingWithdrawal,
243
309
  proposerIndex: ValidatorIndex,
@@ -251,7 +317,9 @@ export const BuilderPendingWithdrawals = new ProgressiveListCompositeType(Builde
251
317
  });
252
318
 
253
319
  export const PayloadTimelinessCommittee = new VectorBasicType(ValidatorIndex, PTC_SIZE);
254
- export const PtcWindow = new VectorCompositeType(
320
+ export const PayloadTimelinessCommitteeIndices = new ListBasicType(ValidatorIndex, PTC_SIZE);
321
+ export const PayloadTimelinessCommitteeBits = new BitVectorType(PTC_SIZE);
322
+ export const PayloadTimelinessCommitteeWindow = new VectorCompositeType(
255
323
  PayloadTimelinessCommittee,
256
324
  (2 + MIN_SEED_LOOKAHEAD) * SLOTS_PER_EPOCH
257
325
  );
@@ -268,7 +336,7 @@ export const PayloadAttestationData = new ContainerType(
268
336
 
269
337
  export const PayloadAttestation = new ProgressiveContainerType(
270
338
  {
271
- aggregationBits: new BitVectorType(PTC_SIZE),
339
+ aggregationBits: PayloadTimelinessCommitteeBits,
272
340
  data: PayloadAttestationData,
273
341
  signature: BLSSignature,
274
342
  },
@@ -278,6 +346,7 @@ export const PayloadAttestation = new ProgressiveContainerType(
278
346
 
279
347
  export const PayloadAttestations = new ProgressiveListCompositeType(PayloadAttestation, {
280
348
  typeName: "PayloadAttestations",
349
+ limit: MAX_PAYLOAD_ATTESTATIONS,
281
350
  });
282
351
 
283
352
  export const PayloadAttestationMessage = new ContainerType(
@@ -291,7 +360,7 @@ export const PayloadAttestationMessage = new ContainerType(
291
360
 
292
361
  export const IndexedPayloadAttestation = new ProgressiveContainerType(
293
362
  {
294
- attestingIndices: new ListBasicType(ValidatorIndex, PTC_SIZE),
363
+ attestingIndices: PayloadTimelinessCommitteeIndices,
295
364
  data: PayloadAttestationData,
296
365
  signature: BLSSignature,
297
366
  },
@@ -406,6 +475,16 @@ export const ExecutionPayload = new ProgressiveContainerType(
406
475
  {typeName: "ExecutionPayload", jsonCase: "eth2"}
407
476
  );
408
477
 
478
+ export const NewPayloadRequest = new ProgressiveContainerType(
479
+ {
480
+ ...electraSsz.NewPayloadRequest.fields,
481
+ executionPayload: ExecutionPayload,
482
+ executionRequests: ExecutionRequests,
483
+ },
484
+ activeFields(4),
485
+ {typeName: "NewPayloadRequest", jsonCase: "eth2"}
486
+ );
487
+
409
488
  export const ExecutionPayloadEnvelope = new ProgressiveContainerType(
410
489
  {
411
490
  payload: ExecutionPayload,
@@ -604,7 +683,7 @@ export const BeaconState = new ProgressiveContainerType(
604
683
  builderPendingWithdrawals: BuilderPendingWithdrawals, // New in GLOAS:EIP7732
605
684
  latestExecutionPayloadBid: ExecutionPayloadBid, // New in GLOAS:EIP7732
606
685
  payloadExpectedWithdrawals: Withdrawals, // New in GLOAS:EIP7732
607
- ptcWindow: PtcWindow, // New in GLOAS:EIP7732
686
+ ptcWindow: PayloadTimelinessCommitteeWindow, // New in GLOAS:EIP7732
608
687
  },
609
688
  activeFields(46),
610
689
  {typeName: "BeaconState", jsonCase: "eth2"}
@@ -34,7 +34,9 @@ export type BuilderDepositRequests = ValueOf<typeof ssz.BuilderDepositRequests>;
34
34
  export type BuilderExitRequest = ValueOf<typeof ssz.BuilderExitRequest>;
35
35
  export type BuilderExitRequests = ValueOf<typeof ssz.BuilderExitRequests>;
36
36
  export type PayloadTimelinessCommittee = ValueOf<typeof ssz.PayloadTimelinessCommittee>;
37
- export type PtcWindow = ValueOf<typeof ssz.PtcWindow>;
37
+ export type PayloadTimelinessCommitteeIndices = ValueOf<typeof ssz.PayloadTimelinessCommitteeIndices>;
38
+ export type PayloadTimelinessCommitteeBits = ValueOf<typeof ssz.PayloadTimelinessCommitteeBits>;
39
+ export type PayloadTimelinessCommitteeWindow = ValueOf<typeof ssz.PayloadTimelinessCommitteeWindow>;
38
40
  export type PayloadAttestationData = ValueOf<typeof ssz.PayloadAttestationData>;
39
41
  export type PayloadAttestation = ValueOf<typeof ssz.PayloadAttestation>;
40
42
  export type PayloadAttestationMessage = ValueOf<typeof ssz.PayloadAttestationMessage>;
@@ -42,6 +44,7 @@ export type IndexedPayloadAttestation = ValueOf<typeof ssz.IndexedPayloadAttesta
42
44
  export type ProposerPreferences = ValueOf<typeof ssz.ProposerPreferences>;
43
45
  export type SignedProposerPreferences = ValueOf<typeof ssz.SignedProposerPreferences>;
44
46
  export type ExecutionPayload = ValueOf<typeof ssz.ExecutionPayload>;
47
+ export type NewPayloadRequest = ValueOf<typeof ssz.NewPayloadRequest>;
45
48
  export type ExecutionPayloadBid = ValueOf<typeof ssz.ExecutionPayloadBid>;
46
49
  export type SignedExecutionPayloadBid = ValueOf<typeof ssz.SignedExecutionPayloadBid>;
47
50
  export type BuilderRequestAuth = ValueOf<typeof ssz.BuilderRequestAuth>;
package/src/types.ts CHANGED
@@ -121,6 +121,7 @@ type TypesByFork = {
121
121
  BlindedBeaconBlockBody: bellatrix.BlindedBeaconBlockBody;
122
122
  SignedBlindedBeaconBlock: bellatrix.SignedBlindedBeaconBlock;
123
123
  ExecutionPayload: bellatrix.ExecutionPayload;
124
+ NewPayloadRequest: bellatrix.NewPayloadRequest;
124
125
  ExecutionPayloadHeader: bellatrix.ExecutionPayloadHeader;
125
126
  BuilderBid: bellatrix.BuilderBid;
126
127
  SignedBuilderBid: bellatrix.SignedBuilderBid;
@@ -156,6 +157,7 @@ type TypesByFork = {
156
157
  BlindedBeaconBlockBody: capella.BlindedBeaconBlockBody;
157
158
  SignedBlindedBeaconBlock: capella.SignedBlindedBeaconBlock;
158
159
  ExecutionPayload: capella.ExecutionPayload;
160
+ NewPayloadRequest: capella.NewPayloadRequest;
159
161
  ExecutionPayloadHeader: capella.ExecutionPayloadHeader;
160
162
  BuilderBid: capella.BuilderBid;
161
163
  SignedBuilderBid: capella.SignedBuilderBid;
@@ -191,6 +193,7 @@ type TypesByFork = {
191
193
  BlindedBeaconBlockBody: deneb.BlindedBeaconBlockBody;
192
194
  SignedBlindedBeaconBlock: deneb.SignedBlindedBeaconBlock;
193
195
  ExecutionPayload: deneb.ExecutionPayload;
196
+ NewPayloadRequest: deneb.NewPayloadRequest;
194
197
  ExecutionPayloadHeader: deneb.ExecutionPayloadHeader;
195
198
  BuilderBid: deneb.BuilderBid;
196
199
  SignedBuilderBid: deneb.SignedBuilderBid;
@@ -228,6 +231,7 @@ type TypesByFork = {
228
231
  BlindedBeaconBlockBody: electra.BlindedBeaconBlockBody;
229
232
  SignedBlindedBeaconBlock: electra.SignedBlindedBeaconBlock;
230
233
  ExecutionPayload: deneb.ExecutionPayload;
234
+ NewPayloadRequest: electra.NewPayloadRequest;
231
235
  ExecutionPayloadHeader: deneb.ExecutionPayloadHeader;
232
236
  BuilderBid: electra.BuilderBid;
233
237
  SignedBuilderBid: electra.SignedBuilderBid;
@@ -266,6 +270,7 @@ type TypesByFork = {
266
270
  BlindedBeaconBlockBody: electra.BlindedBeaconBlockBody;
267
271
  SignedBlindedBeaconBlock: electra.SignedBlindedBeaconBlock;
268
272
  ExecutionPayload: deneb.ExecutionPayload;
273
+ NewPayloadRequest: electra.NewPayloadRequest;
269
274
  ExecutionPayloadHeader: deneb.ExecutionPayloadHeader;
270
275
  BuilderBid: electra.BuilderBid;
271
276
  SignedBuilderBid: electra.SignedBuilderBid;
@@ -306,6 +311,7 @@ type TypesByFork = {
306
311
  BlindedBeaconBlockBody: electra.BlindedBeaconBlockBody;
307
312
  SignedBlindedBeaconBlock: electra.SignedBlindedBeaconBlock;
308
313
  ExecutionPayload: gloas.ExecutionPayload;
314
+ NewPayloadRequest: gloas.NewPayloadRequest;
309
315
  ExecutionPayloadHeader: deneb.ExecutionPayloadHeader;
310
316
  BuilderBid: electra.BuilderBid;
311
317
  SignedBuilderBid: electra.SignedBuilderBid;
@@ -347,6 +353,7 @@ type TypesByFork = {
347
353
  BlindedBeaconBlockBody: electra.BlindedBeaconBlockBody;
348
354
  SignedBlindedBeaconBlock: electra.SignedBlindedBeaconBlock;
349
355
  ExecutionPayload: gloas.ExecutionPayload;
356
+ NewPayloadRequest: gloas.NewPayloadRequest;
350
357
  ExecutionPayloadHeader: deneb.ExecutionPayloadHeader;
351
358
  BuilderBid: electra.BuilderBid;
352
359
  SignedBuilderBid: electra.SignedBuilderBid;
@@ -394,6 +401,7 @@ export type SignedBlockContents<F extends ForkAll = ForkAll> = TypesByFork[F]["S
394
401
  export type SignedOrUnsignedBlockContents<F extends ForkAll = ForkAll> = BlockContents<F> | SignedBlockContents<F>;
395
402
 
396
403
  export type ExecutionPayload<F extends ForkPostBellatrix = ForkPostBellatrix> = TypesByFork[F]["ExecutionPayload"];
404
+ export type NewPayloadRequest<F extends ForkPostBellatrix = ForkPostBellatrix> = TypesByFork[F]["NewPayloadRequest"];
397
405
  export type ExecutionPayloadHeader<F extends ForkPostBellatrix = ForkPostBellatrix> =
398
406
  TypesByFork[F]["ExecutionPayloadHeader"];
399
407
  export type ExecutionRequests<F extends ForkPostElectra = ForkPostElectra> = TypesByFork[F]["ExecutionRequests"];