use massa_models::{
address::Address,
block_id::BlockId,
clique::Clique,
prehash::{PreHashMap, PreHashSet},
slot::Slot,
};
use crate::block_status::{DiscardReason, ExportCompiledBlock};
#[derive(Debug, Clone)]
#[allow(clippy::type_complexity)]
pub struct BlockGraphExport {
pub genesis_blocks: Vec<BlockId>,
pub active_blocks: PreHashMap<BlockId, ExportCompiledBlock>,
pub discarded_blocks: PreHashMap<BlockId, (DiscardReason, (Slot, Address, Vec<BlockId>))>,
pub best_parents: Vec<(BlockId, u64)>,
pub latest_final_blocks_periods: Vec<(BlockId, u64)>,
pub gi_head: PreHashMap<BlockId, PreHashSet<BlockId>>,
pub max_cliques: Vec<Clique>,
}