root: true
parser: "@typescript-eslint/parser"
plugins:
  - "@typescript-eslint"
  - "prettier"
extends:
  - react-app
  - react-app/jest
  - "plugin:@typescript-eslint/recommended"
  - "prettier/@typescript-eslint"
  - "plugin:prettier/recommended"
settings:
  react:
    version: detect
rules:
  "react/prop-types": off
  "react/display-name": off
  "@typescript-eslint/no-empty-function": off
  # noisy
  "@typescript-eslint/explicit-function-return-type": off
  #   # https://github.com/typescript-eslint/typescript-eslint/issues/2502
  "@typescript-eslint/no-use-before-define": off
overrides:
  - files:
      - "**/__mocks__/*.ts"
      - "**/__mocks__/**/*.ts"
      - "**/*.test.ts"
      - "**/*.test.tsx"
    rules:
      "@typescript-eslint/no-var-requires": off
      "@typescript-eslint/no-empty-function": off
      "@typescript-eslint/explicit-module-boundary-types": off
      "@typescript-eslint/no-explicit-any": off
