{
  "parser": "@typescript-eslint/parser",
  "plugins": ["@typescript-eslint", "react", "typescript"],
  "extends": [
    "standard",
    "standard-react",
    "plugin:prettier/recommended",
    "prettier/standard",
    "prettier/react",
    "plugin:@typescript-eslint/recommended"
  ],
  "env": {
    "node": true
  },
  "parserOptions": {
    "ecmaVersion": 2020,
    "ecmaFeatures": {
      "legacyDecorators": true,
      "jsx": true
    }
  },
  "settings": {
    "react": {
      "version": "16"
    }
  },
  "rules": {
    "space-before-function-paren": 0,
    "react/prop-types": 0,
    "react/jsx-handler-names": 0,
    "react/jsx-fragments": 0,
    "react/no-unused-prop-types": 0,
    "react/react-in-jsx-scope": 0,
    "import/export": 0,
    "@typescript-eslint/no-explicit-any": 0, // TODO(ts): Turn this back on after typing complete
    "@typescript-eslint/no-empty-function": 0,
    "@typescript-eslint/ban-ts-comment": [
      "error",
      {
        "ts-expect-error": false,
        "ts-ignore": false,
        "ts-nocheck": true,
        "ts-check": true
      }
    ],
    "no-restricted-globals": [
      "error",
      {
        "name": "document",
        "message": "Use featheryDoc() instead - for SSR purposes."
      },
      {
        "name": "window",
        "message": "Use featheryWindow() instead - for SSR purposes."
      }
    ]
  },
  "overrides": [
    {
      "files": ["webpack.*.js"],
      "rules": {
        "@typescript-eslint/no-var-requires": 0
      }
    }
  ]
}
