reth_rpc_eth_api/
ext.rs

1//! `eth_` Extension traits.
2
3use alloy_primitives::{Bytes, B256};
4use alloy_rpc_types_eth::erc4337::TransactionConditional;
5use jsonrpsee::{core::RpcResult, proc_macros::rpc};
6
7/// Extension trait for `eth_` namespace for L2s.
8#[cfg_attr(not(feature = "client"), rpc(server, namespace = "eth"))]
9#[cfg_attr(feature = "client", rpc(server, client, namespace = "eth"))]
10pub trait L2EthApiExt {
11    /// Sends signed transaction with the given condition.
12    #[method(name = "sendRawTransactionConditional")]
13    async fn send_raw_transaction_conditional(
14        &self,
15        bytes: Bytes,
16        condition: TransactionConditional,
17    ) -> RpcResult<B256>;
18}