code: public function watch($path, array $events, callable $listener)
      {
          $fileEvents = $this->getEventMap();
          $watcher = new ResourceWatcher();
          $paths = is_array($path) ? $path : [$path];
          foreach ($paths as $path) {
              $this->trackPath($path, $events, $listener, $watcher, $fileEvents);
          }
          $watcher->start();
      }
docs: {@inheritdoc}
  
  @param $path
  @param array $events
  @param callable $listener
  @return mixed|void