pub async fn watch<T>( query: &str, handler: Box<dyn Fn(Vec<Event<T>>) + Sync + Send + 'static>, ) -> JoinHandle<()>where T: Debug + Send + Sync + 'static + DeserializeOwned,