mirror of
https://github.com/paradigmxyz/reth.git
synced 2026-02-11 07:25:09 -05:00
41 lines
1.5 KiB
Rust
41 lines
1.5 KiB
Rust
//! API for block submission validation.
|
|
|
|
use alloy_rpc_types_beacon::relay::{
|
|
BuilderBlockValidationRequest, BuilderBlockValidationRequestV2,
|
|
BuilderBlockValidationRequestV3, BuilderBlockValidationRequestV4,
|
|
};
|
|
use jsonrpsee::proc_macros::rpc;
|
|
|
|
/// Block validation rpc interface.
|
|
#[cfg_attr(not(feature = "client"), rpc(server, namespace = "flashbots"))]
|
|
#[cfg_attr(feature = "client", rpc(server, client, namespace = "flashbots"))]
|
|
pub trait BlockSubmissionValidationApi {
|
|
/// A Request to validate a block submission.
|
|
#[method(name = "validateBuilderSubmissionV1")]
|
|
async fn validate_builder_submission_v1(
|
|
&self,
|
|
request: BuilderBlockValidationRequest,
|
|
) -> jsonrpsee::core::RpcResult<()>;
|
|
|
|
/// A Request to validate a block submission.
|
|
#[method(name = "validateBuilderSubmissionV2")]
|
|
async fn validate_builder_submission_v2(
|
|
&self,
|
|
request: BuilderBlockValidationRequestV2,
|
|
) -> jsonrpsee::core::RpcResult<()>;
|
|
|
|
/// A Request to validate a block submission.
|
|
#[method(name = "validateBuilderSubmissionV3")]
|
|
async fn validate_builder_submission_v3(
|
|
&self,
|
|
request: BuilderBlockValidationRequestV3,
|
|
) -> jsonrpsee::core::RpcResult<()>;
|
|
|
|
/// A Request to validate a block submission.
|
|
#[method(name = "validateBuilderSubmissionV4")]
|
|
async fn validate_builder_submission_v4(
|
|
&self,
|
|
request: BuilderBlockValidationRequestV4,
|
|
) -> jsonrpsee::core::RpcResult<()>;
|
|
}
|