pub mod merkle_hash;
pub mod merkle_reader;
pub mod merkle_transport;
pub mod merkle_writer;
pub mod node;
pub mod node_type;
use std::fmt::Debug;
pub use crate::model::merkle_tree::merkle_hash::MerkleHash;
pub use crate::model::merkle_tree::merkle_reader::MerkleReader;
pub use crate::model::merkle_tree::merkle_transport::{
MerklePacker, MerkleTransport, MerkleUnpacker, PackOptions, UnpackOptions,
};
pub use crate::model::merkle_tree::merkle_writer::MerkleWriter;
pub use crate::model::merkle_tree::node::merkle_tree_node_cache;
pub use crate::model::merkle_tree::node_type::{
MerkleTreeNodeIdType, MerkleTreeNodeType, TMerkleTreeNode,
};
pub trait MerkleStore: MerkleReader + MerkleWriter {}
impl<T: MerkleReader + MerkleWriter + ?Sized> MerkleStore for T {}
pub trait TransportableMerkleStore: MerkleStore + MerkleTransport + Debug {}
impl<T: MerkleStore + MerkleTransport + ?Sized + Debug> TransportableMerkleStore for T {}