{
  "$schema": "http://json-schema.org/draft-07/schema",
  "title": "JSONConfig",
  "type": "object",
  "definitions": {
    "SupportedPackageManagerOrAuto": {
      "enum": ["auto", "npm", "yarn", "pnpm"]
    },
    "SupportedReportFormat": {
      "enum": ["summary", "tables", "paths", "json"]
    }
  },
  "properties": {
    "$schema": { "type": "string" },
    "debug": { "type": "boolean" },
    "directory": { "type": "string" },
    "output": { "$ref": "#/definitions/SupportedReportFormat" },
    "packageManager": { "$ref": "#/definitions/SupportedPackageManagerOrAuto" },
    "ignore": {
      "description": "Array of vulnerabilities to ignore when auditing",
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[\\w-]+\\|((?:@[a-z\\d*~-][a-z\\d*._~-]*/)?[a-z\\d~-][a-z\\d._~-]*>)*?((?:@[a-z\\d*~-][a-z\\d*._~-]*/)?[a-z\\d~-][a-z\\d._~-]*)$"
      }
    }
  },
  "required": [],
  "additionalProperties": false
}
