{
  "extends": ["eslint:recommended", "prettier"],
  "env": { "es6": true, "browser": true, "node": true, "jest": true },
  "settings": {
    "react": {
      "version": "detect"
    }
  },
  "overrides": [
    {
      "files": ["**/*.ts", "**/*.test.ts", "**/*.tsx"],
      "parser": "@typescript-eslint/parser",
      "parserOptions": {
        "project": ["./tsconfig.json"]
      },
      "extends": [
        "plugin:@typescript-eslint/eslint-recommended",
        "plugin:@typescript-eslint/recommended",
        "plugin:prettier/recommended",
        "prettier"
      ],
      "plugins": ["@typescript-eslint", "prettier"],
      "rules": {
        "react/prop-types": "off",
        "react/no-unused-prop-types": "off",
        "@typescript-eslint/explicit-function-return-type": "off",
        "no-use-before-define": "off",
        "@typescript-eslint/no-use-before-define": "error"
      }
    }
  ]
}