{
  "type": "Program",
  "start": 0,
  "end": 1554,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 51,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [],
  "leadingComments": [
    {
      "type": "Block",
      "value": "*\n * Roc builder object.\n *\n * @typedef {Object} rocBuilder\n * @property {object} buildConfig - Webpack config object, can be used to extend the configuration.\n * @property {object} builder - Webpack instance.\n * @see https://webpack.github.io/\n ",
      "start": 0,
      "end": 250,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 8,
          "column": 3
        }
      },
      "range": [
        0,
        250
      ]
    },
    {
      "type": "Block",
      "value": "*\n * Output path object.\n *\n * @typedef {Object} outputPath\n * @property {!string} absolute - Absolute path to where the build should be saved on disk.\n * @property {!string} relative - Relative path to where the build should be saved on disk, based on from where the\n * command is run from.\n ",
      "start": 252,
      "end": 549,
      "loc": {
        "start": {
          "line": 10,
          "column": 0
        },
        "end": {
          "line": 17,
          "column": 3
        }
      },
      "range": [
        252,
        549
      ]
    },
    {
      "type": "Block",
      "value": "*\n * Roc server.\n *\n * @typedef {Object} rocServer\n * @property {object} server - Koa instance.\n * @property {startServer} start - Starts the server.\n ",
      "start": 551,
      "end": 706,
      "loc": {
        "start": {
          "line": 19,
          "column": 0
        },
        "end": {
          "line": 25,
          "column": 3
        }
      },
      "range": [
        551,
        706
      ]
    },
    {
      "type": "Block",
      "value": "*\n * Starts a server.\n *\n * The port for the server to start on can be selected in 3 ways and has priority in the same order.\n * 1. The param for the function, `port`\n * 2. Environment variable, `PORT`\n * 3. The port from `roc.config.js`\n *\n * @typedef {function} startServer\n * @param {number} [port=PORT/roc.config.js] - the port to start the server on.\n ",
      "start": 709,
      "end": 1070,
      "loc": {
        "start": {
          "line": 27,
          "column": 1
        },
        "end": {
          "line": 37,
          "column": 3
        }
      },
      "range": [
        709,
        1070
      ]
    },
    {
      "type": "Block",
      "value": "*\n * Roc server options.\n *\n * Used in {@link createServer}.\n *\n * Both of these options can also be set in `roc.config.js` however these values will override them if provided.\n *\n * @typedef {Object} rocServerOptions\n * @property {string|string[]} [serve] - The folders to serve from the server. Paths will be based from where the\n * application is started.\n * @property {string} [favicon] - The path to the favicon. This file will be handled in the server in a special way.\n ",
      "start": 1072,
      "end": 1553,
      "loc": {
        "start": {
          "line": 39,
          "column": 0
        },
        "end": {
          "line": 50,
          "column": 3
        }
      },
      "range": [
        1072,
        1553
      ]
    }
  ],
  "innerComments": [
    {
      "type": "Block",
      "value": "*\n * Roc builder object.\n *\n * @typedef {Object} rocBuilder\n * @property {object} buildConfig - Webpack config object, can be used to extend the configuration.\n * @property {object} builder - Webpack instance.\n * @see https://webpack.github.io/\n ",
      "start": 0,
      "end": 250,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 8,
          "column": 3
        }
      },
      "range": [
        0,
        250
      ]
    },
    {
      "type": "Block",
      "value": "*\n * Output path object.\n *\n * @typedef {Object} outputPath\n * @property {!string} absolute - Absolute path to where the build should be saved on disk.\n * @property {!string} relative - Relative path to where the build should be saved on disk, based on from where the\n * command is run from.\n ",
      "start": 252,
      "end": 549,
      "loc": {
        "start": {
          "line": 10,
          "column": 0
        },
        "end": {
          "line": 17,
          "column": 3
        }
      },
      "range": [
        252,
        549
      ]
    },
    {
      "type": "Block",
      "value": "*\n * Roc server.\n *\n * @typedef {Object} rocServer\n * @property {object} server - Koa instance.\n * @property {startServer} start - Starts the server.\n ",
      "start": 551,
      "end": 706,
      "loc": {
        "start": {
          "line": 19,
          "column": 0
        },
        "end": {
          "line": 25,
          "column": 3
        }
      },
      "range": [
        551,
        706
      ]
    },
    {
      "type": "Block",
      "value": "*\n * Starts a server.\n *\n * The port for the server to start on can be selected in 3 ways and has priority in the same order.\n * 1. The param for the function, `port`\n * 2. Environment variable, `PORT`\n * 3. The port from `roc.config.js`\n *\n * @typedef {function} startServer\n * @param {number} [port=PORT/roc.config.js] - the port to start the server on.\n ",
      "start": 709,
      "end": 1070,
      "loc": {
        "start": {
          "line": 27,
          "column": 1
        },
        "end": {
          "line": 37,
          "column": 3
        }
      },
      "range": [
        709,
        1070
      ]
    },
    {
      "type": "Block",
      "value": "*\n * Roc server options.\n *\n * Used in {@link createServer}.\n *\n * Both of these options can also be set in `roc.config.js` however these values will override them if provided.\n *\n * @typedef {Object} rocServerOptions\n * @property {string|string[]} [serve] - The folders to serve from the server. Paths will be based from where the\n * application is started.\n * @property {string} [favicon] - The path to the favicon. This file will be handled in the server in a special way.\n ",
      "start": 1072,
      "end": 1553,
      "loc": {
        "start": {
          "line": 39,
          "column": 0
        },
        "end": {
          "line": 50,
          "column": 3
        }
      },
      "range": [
        1072,
        1553
      ]
    }
  ]
}