reth_storage_api/
chain_info.rs1use alloy_rpc_types_engine::ForkchoiceState;
2use reth_primitives_traits::SealedHeader;
3
4pub trait CanonChainTracker: Send + Sync {
6 type Header: Send + Sync;
8
9 fn on_forkchoice_update_received(&self, update: &ForkchoiceState);
11
12 #[cfg(feature = "std")]
15 fn last_received_update_timestamp(&self) -> Option<std::time::Instant>;
16
17 fn set_canonical_head(&self, header: SealedHeader<Self::Header>);
19
20 fn set_safe(&self, header: SealedHeader<Self::Header>);
22
23 fn set_finalized(&self, header: SealedHeader<Self::Header>);
25}