@lodestar/beacon-node
Version:
A Typescript implementation of the beacon chain
24 lines • 1.54 kB
TypeScript
import { BeaconConfig } from "@lodestar/config";
import { type IBeaconStateViewGloas, type PubkeyCache } from "@lodestar/state-transition";
import { gloas } from "@lodestar/types";
import { IBlsVerifier } from "../bls/index.js";
export type VerifyExecutionPayloadEnvelopeOpts = {
verifyExecutionRequestsRoot?: boolean;
};
/**
* Verify execution payload envelope fields against the post-block state.
*
* Signature verification and the execution engine call (`verify_and_notify_new_payload`) are
* performed outside this function, see `verifyExecutionPayloadEnvelopeSignature` and
* `importExecutionPayload` which run both in parallel with this check.
*
* Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.6/specs/gloas/fork-choice.md#new-verify_execution_payload_envelope
*/
export declare function verifyExecutionPayloadEnvelope(config: BeaconConfig, state: IBeaconStateViewGloas, envelope: gloas.ExecutionPayloadEnvelope, opts?: VerifyExecutionPayloadEnvelopeOpts): void;
/**
* Verify the BLS signature of an execution payload envelope.
*
* Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.6/specs/gloas/fork-choice.md#new-verify_execution_payload_envelope_signature
*/
export declare function verifyExecutionPayloadEnvelopeSignature(config: BeaconConfig, state: IBeaconStateViewGloas, pubkeyCache: PubkeyCache, signedEnvelope: gloas.SignedExecutionPayloadEnvelope, proposerIndex: number, bls: IBlsVerifier): Promise<boolean>;
//# sourceMappingURL=verifyExecutionPayloadEnvelope.d.ts.map