{
  "ignorePatterns": [
    "**/*.png",
    "**/*.svg",
    "src/Common/theming/fonts/",
    "src/Common/theming/icons/",
    "src/Common/theming/materialinear/fonts/"
  ],
  "env": {
    "browser": true,
    "es2021": true,
    "jest": true
  },
  "extends": [
    "eslint:recommended",
    "plugin:react/recommended",
    "plugin:@typescript-eslint/recommended",
    "plugin:react/jsx-runtime",
    "plugin:prettier/recommended", // Enables eslint-plugin-prettier and eslint-config-prettier. This will display prettier errors as ESLint errors. Make sure this is always the last configuration in the extends array.
    "prettier"
  ],
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaFeatures": {
      "jsx": true
    },
    "ecmaVersion": 13,
    "sourceType": "module"
  },
  "plugins": ["react", "prettier", "@typescript-eslint"],
  "rules": {
    "react/prop-types": "off",
    "react/jsx-uses-react": "off",
    "react/react-in-jsx-scope": "off",
    "@typescript-eslint/no-inferrable-types": ["warn"],
    "@typescript-eslint/ban-types": ["warn"],
    "@typescript-eslint/no-empty-interface": "warn",
    "react/display-name": "off",
    "@typescript-eslint/explicit-function-return-type": "warn",
    "@typescript-eslint/ban-ts-comment": "warn",
    "@typescript-eslint/no-explicit-any": "warn",
    "@typescript-eslint/no-empty-function": "warn",
    "no-prototype-builtins": "warn",
    "react/no-unescaped-entities": "warn",
    "react/no-string-refs": "warn",
    "@typescript-eslint/no-this-alias": "warn",
    "react/no-deprecated": "warn",
    "no-empty": ["error", { "allowEmptyCatch": true }],
    "prettier/prettier": [
      "error",
      {
        "endOfLine": "auto"
      }
    ]
  },
  "settings": {
    "react": {
      "version": "detect"
    }
  }
}
