toJSON(_, ctx, Type) {
      const map = Type ? new Type() : ctx && ctx.mapAsMap ? new Map() : {};
      if (ctx && ctx.onCreate) ctx.onCreate(map);

      for (const item of this.items) item.addToJSMap(ctx, map);

      return map;
    }
@param {*} arg ignored
@param {*} ctx Conversion context, originally set in Document#toJSON()
@param {Class} Type If set, forces the returned collection type
@returns {*} Instance of Type, Map, or Object