The spec for this action:
https://www.adobe.com/content/dam/acom/en/devnet/pdf/pdfs/PDF32000_2008.pdf#G11.2111850
An example of a form using this action:
https://www2.illinois.gov/rev/forms/reg/Documents/reg-1-mr.pdf
const capability = createPromiseCapability();
    const nodesToVisit = [this._catDict.getRaw("Pages")];
    const visitedNodes = new RefSet();
    const xref = this.xref,
      pageKidsCountCache = this.pageKidsCountCache;
    let count,
      currentPageIndex = 0;
    function next() {
      while (nodesToVisit.length) {
        const currentNode = nodesToVisit.pop();
        if (isRef(currentNode)) {
          count = pageKidsCountCache.get(currentNode);
          
          if (count > 0 && currentPageIndex + count < pageIndex) {
            currentPageIndex += count;
            continue;
          }
          
          if (visitedNodes.has(currentNode)) {
            capability.reject(
              new FormatError("Pages tree contains circular reference.")
            );
            return;
          }
          visitedNodes.put(currentNode);
          xref.fetchAsync(currentNode).then(function (obj) {
            if (isDict(obj, "Page") || (isDict(obj) && !obj.has("Kids"))) {