{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://json.schemastore.org/license-report-config.json",
  "properties": {
    "output": {
      "default": "json",
      "description": "license report output format",
      "enum": ["json", "table", "csv", "html"],
      "type": "string"
    },
    "html": {
      "type": "object",
      "description": "HTML output format",
      "properties": {
        "cssFile": {
          "default": "path.resolve(__dirname, '..', 'defaultHtmlStyle.css')",
          "type": "string"
        },
        "tableify": {
          "description": "passed directly to tableify (see: https://github.com/kessler/node-tableify)",
          "type": "object"
        }
      }
    },
    "delimiter": {
      "default": ",",
      "description": "CSV output format",
      "type": "string"
    },
    "escapeCsvFields": {
      "default": "false",
      "description": "CSV output format: escape fields containing delimiter character",
      "type": "boolean"
    },
    "only": {
      "default": "null",
      "description": "export deps. or deps/dev-/opt-/peer- deps. falsey -> output everything",
      "type": "object"
    },
    "registry": {
      "default": "https://registry.npmjs.org/",
      "description": "NPM registry URL",
      "type": "string"
    },
    "exclude": {
      "description": "package names that will be excluded from the report",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "fields": {
      "description": "fields participating in the report and their order",
      "items": {
        "enum": [
          "department",
          "relatedTo",
          "name",
          "licensePeriod",
          "material",
          "licenseType",
          "link",
          "remoteVersion",
          "installedVersion",
          "author"
        ],
        "type": "string"
      },
      "type": "array"
    },
    "comment": {
      "description": "export deps. or deps/dev-/opt-/peer- deps. falsey -> output everything",
      "properties": {
        "label": {
          "type": "string",
          "default": "comment"
        },
        "value": {
          "type": "string",
          "default": ""
        }
      },
      "type": "object"
    },
    "httpRetryOptions": {
      "properties": {
        "delay": {
          "type": "number",
          "default": 1000
        },
        "maxAttempts": {
          "type": "number",
          "default": 5
        }
      },
      "type": "object"
    },
    "package": {
      "description": "path to the package.json",
      "default": "./package.json",
      "type": "string"
    }
  },
  "title": "JSON schema for license report tool configuration file",
  "type": "object"
}
