{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$ref": "#/$defs/ConfigurationSchema",
  "$defs": {
    "ConfigurationSchema": {
      "type": "object",
      "required": [],
      "properties": {
        "$schema": {
          "type": "string"
        },
        "projectHomepage": {
          "type": "string",
          "description": "Will link to the project homepage from the Auxiliary Links of the generated documentation."
        },
        "srcDir": {
          "type": "string",
          "description": "The directory in which docgen will search for TypeScript files to parse.",
          "default": "src"
        },
        "outDir": {
          "type": "string",
          "description": "The directory to which docgen will generate its output markdown documents.",
          "default": "docs"
        },
        "theme": {
          "type": "string",
          "description": "The theme that docgen will specify should be used for GitHub Docs in the generated _config.yml file.",
          "default": "mikearnaldi/just-the-docs"
        },
        "enableSearch": {
          "type": "boolean",
          "description": "Whether or not search should be enabled for GitHub Docs in the generated _config.yml file.",
          "default": true
        },
        "enforceDescriptions": {
          "type": "boolean",
          "description": "Whether or not descriptions for each module export should be required.",
          "default": false
        },
        "enforceExamples": {
          "type": "boolean",
          "description": "Whether or not @example tags for each module export should be required. (Note: examples will not be enforced in module documentation)",
          "default": false
        },
        "enforceVersion": {
          "type": "boolean",
          "description": "Whether or not @since tags for each module export should be required.",
          "default": true
        },
        "exclude": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "An array of glob strings specifying files that should be excluded from the documentation.",
          "default": []
        },
        "parseCompilerOptions": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "object",
              "required": [],
              "properties": {},
              "patternProperties": {
                "": {
                  "$id": "/schemas/unknown",
                  "title": "unknown"
                }
              }
            }
          ],
          "description": "tsconfig for parsing options (or path to a tsconfig)",
          "default": {}
        },
        "examplesCompilerOptions": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "object",
              "required": [],
              "properties": {},
              "patternProperties": {
                "": {
                  "$id": "/schemas/unknown",
                  "title": "unknown"
                }
              }
            }
          ],
          "description": "tsconfig for the examples options (or path to a tsconfig)",
          "default": {}
        }
      },
      "additionalProperties": false
    }
  }
}