[refactor] removed generic parameter from Watcher