pub trait ChunkStorage: Sync + Send {
    // Required methods
    fn read_chunk_content(
        &self,
        chunk: &ChunkHash,
    ) -> Result<Box<dyn Read + Send>>;
    fn write_chunk_content(
        &self,
        chunk: &ChunkHash,
        content: Box<dyn Read + Send>,
    ) -> Result<()>;
    fn delete_chunk_content(&self, chunk: &ChunkHash) -> Result<()>;
    // Provided method
    fn path_from_chunk(&self, chunk: &ChunkHash) -> PathBuf { ... }
}