openzeppelin_relayer/models/rpc/evm/
mod.rs

1use alloy::network::{AnyRpcBlock, AnyTransactionReceipt};
2use serde::{Deserialize, Serialize};
3use utoipa::ToSchema;
4
5#[derive(Debug, Serialize, Deserialize, ToSchema, PartialEq)]
6#[serde(untagged)]
7pub enum EvmRpcResult {
8    /// Raw JSON-RPC response value. Covers string, array or object results.
9    RawRpcResult(serde_json::Value),
10}
11
12#[derive(Debug, Serialize, Deserialize, ToSchema, PartialEq)]
13#[serde(untagged)]
14pub enum EvmRpcRequest {
15    /// Unified raw request variant where params may be a JSON string or structured JSON value.
16    RawRpcRequest {
17        method: String,
18        params: serde_json::Value,
19    },
20}
21
22pub type BlockResponse = AnyRpcBlock;
23pub type TransactionReceipt = AnyTransactionReceipt;