{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "extends",
    "parser",
    "ecmaFeatures",
    "plugins",
    "env",
    "rules"
  ],
  "properties": {
    "extends": {
      "type": "string"
    },
    "parser": {
      "type": "string"
    },
    "ecmaFeatures": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "jsx"
      ],
      "properties": {
        "jsx": {
          "type": "boolean"
        }
      }
    },
    "plugins": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "env": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "browser",
        "node",
        "es6"
      ],
      "properties": {
        "browser": {
          "type": "boolean"
        },
        "node": {
          "type": "boolean"
        },
        "es6": {
          "type": "boolean"
        }
      }
    },
    "rules": {
      "type": "object",
      "additionalProperties": {
        "type": "integer",
        "minimum": 0,
        "maximum": 2
      },
      "required": [
        "eqeqeq",
        "comma-dangle",
        "no-console",
        "no-debugger",
        "no-extra-semi",
        "no-extra-parens",
        "no-irregular-whitespace",
        "no-undef",
        "no-unused-vars",
        "semi",
        "semi-spacing",
        "valid-jsdoc",
        "react/display-name",
        "react/forbid-prop-types",
        "react/jsx-boolean-value",
        "react/jsx-closing-bracket-location",
        "react/jsx-curly-spacing",
        "react/jsx-indent-props",
        "react/jsx-max-props-per-line",
        "react/jsx-no-duplicate-props",
        "react/jsx-no-literals",
        "react/jsx-no-undef",
        "react/jsx-sort-prop-types",
        "react/jsx-sort-props",
        "react/jsx-uses-react",
        "react/jsx-uses-vars",
        "react/no-danger",
        "react/no-did-mount-set-state",
        "react/no-did-update-set-state",
        "react/no-direct-mutation-state",
        "react/no-multi-comp",
        "react/no-set-state",
        "react/no-unknown-property",
        "react/prop-types",
        "react/react-in-jsx-scope",
        "react/require-extension",
        "react/self-closing-comp",
        "react/sort-comp",
        "react/wrap-multilines"
      ],
      "properties": {
        "valid-jsdoc": {
          "type": "array",
          "maxItems": 2,
          "minItems": 2,
          "prefixItems": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 2
            },
            {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "requireReturn"
              ],
              "properties": {
                "requireReturn": {
                  "type": "boolean"
                }
              }
            }
          ]
        }
      },
      "maxProperties": 39
    }
  }
}
