docs: function defer() /*: { promise: Promise, resolve: resolveHandler, reject: rejectHandler }*/ {
      let resolve, reject;
      const promise = new Promise((...args) => [ resolve, reject ] = args);
      return { promise, resolve, reject };
  }