pub type ToolFuture<'a, T> = Pin<Box<dyn Future<Output = Result<T, ToolError>> + Send + 'a>>;
pub struct ToolFuture<'a, T> { /* private fields */ }