getWatchedPaths() {
    const rawPaths = Object.keys(this.mapping)
      .map(k => {
        const v = this.mapping[k];

        // Watcher mappings can accept a cursor
        if (v instanceof Cursor)
          return v.solvedPath;

        return this.mapping[k];
      });

    return rawPaths.reduce((cp, p) => {

      // Handling path polymorphisms
      p = [].concat(p);

      // Dynamic path?
      if (type.dynamicPath(p))
        p = getIn(this.tree._data, p).solvedPath;

      if (!p)
        return cp;

      // Facet path?
      const monkeyPath = type.monkeyPath(this.tree._monkeys, p);

      if (monkeyPath)
        return cp.concat(
          getIn(this.tree._monkeys, monkeyPath).data.relatedPaths()
        );

      return cp.concat([p]);
    }, []);
  }
Method used to get the current watched paths.

@return {array} - The array of watched paths.