use crate::base::block::Block;
use std::time::Duration;
#[allow(async_fn_in_trait)]
pub trait InputReader: Block {
async fn read_inputs(&mut self) -> Option<usize>;
async fn read_inputs_until_ready(&mut self) -> Option<usize>;
async fn wait_on_inputs(&mut self, timeout: Duration) -> Option<usize>;
}