use alloy_primitives::B256;
use derive_more::Display;
use kona_protocol::BlockInfo;
#[derive(Debug, Clone, Copy, Display, PartialEq, Eq)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[cfg_attr(feature = "serde", serde(rename_all = "camelCase"))]
#[display("replacement: {replacement}, invalidated: {invalidated}")]
pub struct BlockReplacement<T = BlockInfo> {
pub replacement: T,
pub invalidated: B256,
}
impl<T> BlockReplacement<T> {
pub const fn new(replacement: T, invalidated: B256) -> Self {
Self { replacement, invalidated }
}
}