lib/index.js
function watchPath (rootPath, options, eventCallback) {
  const watcher = PathWatcherManager.instance().createWatcher(rootPath, options, eventCallback)
  return watcher.getStartPromise().then(() => watcher)
}
function watchPath (rootPath, options, eventCallback) {
  const watcher = PathWatcherManager.instance().createWatcher(rootPath, options, eventCallback)
  return watcher.getStartPromise().then(() => watcher)
}
function watchPath ( rootPath , options , eventCallback ) { const watcher = PathWatcherManager . instance ( ) . createWatcher ( rootPath , options , eventCallback ) return watcher . getStartPromise ( ) . then ( ( ) => watcher ) }
Extended: Invoke a callback with each filesystem event that occurs beneath a specified path.  watchPath handles the efficient re-use of operating system resources across living watchers. Watching the same path more than once, or the child of a watched path, will re-use the existing native watcher.  * `rootPath` {String} specifies the absolute path to the root of the filesystem content to watch. * `options` Control the watcher's behavior. * `eventCallback` {Function} or other callable to be called each time a batch of filesystem events is observed. * `events` {Array} of objects that describe the events that have occurred. * `action` {String} describing the filesystem action that occurred. One of `"created"`, `"modified"`, `"deleted"`, or `"renamed"`. * `kind` {String} distinguishing the type of filesystem entry that was acted upon, when available. One of `"file"`, `"directory"`, or `"unknown"`. * `path` {String} containing the absolute path to the filesystem entry that was acted upon. * `oldPath` For rename events, {String} containing the filesystem entry's former absolute path.  Returns a {Promise} that will resolve to a {PathWatcher} once it has started. Note that every {PathWatcher} is a {Disposable}, so they can be managed by a {CompositeDisposable} if desired.  ```js const {watchPath} = require('@atom/watcher')  const disposable = await watchPath('/var/log', {}, events => { console.log(`Received batch of ${events.length} events.`) for (const event of events) { // "created", "modified", "deleted", "renamed" console.log(`Event action: ${event.action}`)  // absolute path to the filesystem entry that was touched console.log(`Event path: ${event.path}`)  // "file", "directory", or "unknown" console.log(`Event kind: ${event.kind}`)  if (event.action === 'renamed') { console.log(`.. renamed from: ${event.oldPath}`) } } })  // Immediately stop receiving filesystem events. If this is the last // watcher, asynchronously release any OS resources required to // subscribe to these events. disposable.dispose() ```
Extended : Invoke a callback with each filesystem event that occurs beneath a specified path . watchPath handles the efficient re - use of operating system resources across living watchers . Watching the same path more than once or the child of a watched path will re - use the existing native watcher . * rootPath { String } specifies the absolute path to the root of the filesystem content to watch . * options Control the watcher s behavior . * eventCallback { Function } or other callable to be called each time a batch of filesystem events is observed . * events { Array } of objects that describe the events that have occurred . * action { String } describing the filesystem action that occurred . One of created modified deleted or renamed . * kind { String } distinguishing the type of filesystem entry that was acted upon when available . One of file directory or unknown . * path { String } containing the absolute path to the filesystem entry that was acted upon . * oldPath For rename events { String } containing the filesystem entry s former absolute path . Returns a { Promise } that will resolve to a { PathWatcher } once it has started . Note that every { PathWatcher } is a { Disposable } so they can be managed by a { CompositeDisposable } if desired . js const { watchPath } = require (