1pub mod api;
8pub mod arb_api;
9pub mod arbdebug;
10pub mod arbtimeboost;
11pub mod arbtrace;
12pub mod block_producer;
13pub mod builder;
14pub mod conditional_tx;
15pub mod error;
16pub mod header;
17pub mod nitro_execution;
18pub mod nitro_execution_handler;
19pub mod nodeinterface_rpc;
20pub mod outbox_proof;
21pub mod receipt;
22pub mod response;
23pub mod stylus_debug;
24pub mod stylus_tracer;
25pub mod transaction;
26pub mod types;
27
28use alloy_primitives::{B256, U256};
29pub use api::ArbEthApi;
30pub use arb_api::{ArbApiHandler, ArbApiServer};
31pub use block_producer::{BlockProducer, BlockProducerError, BlockProductionInput, ProducedBlock};
32pub use builder::{ArbEthApiBuilder, ArbRpcConvert};
33pub use error::{RpcError, RpcResult};
34pub use header::ArbHeaderConverter;
35pub use nitro_execution::{NitroExecutionApiServer, RpcMessageResult, RpcMessageWithMetadata};
36pub use nitro_execution_handler::NitroExecutionHandler;
37pub use receipt::ArbReceiptConverter;
38pub use response::ArbRpcTxConverter;
39use serde::{Deserialize, Serialize};
40pub use transaction::ArbTransactionRequest;
41pub use types::ArbRpcTypes;
42
43#[derive(Debug, Clone, Default, Serialize, Deserialize)]
45#[serde(rename_all = "camelCase")]
46pub struct ArbReceiptFields {
47 #[serde(skip_serializing_if = "Option::is_none")]
49 pub l1_block_number: Option<u64>,
50 #[serde(skip_serializing_if = "Option::is_none")]
52 pub gas_used_for_l1: Option<U256>,
53}
54
55#[derive(Debug, Clone, Serialize, Deserialize)]
57#[serde(rename_all = "camelCase")]
58pub struct ArbBlockInfo {
59 pub l1_block_number: u64,
61 pub arbos_format_version: u64,
63 pub send_count: u64,
65 pub send_root: B256,
67}
68
69#[derive(Debug, Clone, Default, Serialize, Deserialize)]
71#[serde(rename_all = "camelCase")]
72pub struct ArbMaintenanceStatus {
73 pub is_running: bool,
74}
75
76#[derive(Debug, Clone, Serialize, Deserialize)]
83#[serde(rename_all = "camelCase")]
84pub struct NumberAndBlockMetadata {
85 pub block_number: u64,
86 pub raw_metadata: alloy_primitives::Bytes,
87}