{ "root": true, "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaVersion": 2020, "sourceType": "module", "ecmaFeatures": { "jsx": true } }, "env": { "browser": true, "node": true, "es6": true }, "extends": [ "eslint:recommended", "plugin:@typescript-eslint/recommended", "plugin:react/recommended", "plugin:react-hooks/recommended" ], "plugins": ["@typescript-eslint", "react", "react-hooks"], "settings": { "react": { "version": "detect" } }, "ignorePatterns": [ ".next/**", "out/**", "build/**", "dist/**", "node_modules/**", "coverage/**", "scripts/**", "config/test/**" ], "globals": { "jest": "readonly" }, "rules": { "react/react-in-jsx-scope": "off", "react/no-unescaped-entities": "error", "react/jsx-no-target-blank": "error", "react/self-closing-comp": "error", "@typescript-eslint/no-unused-vars": ["error", { "argsIgnorePattern": "^_", "varsIgnorePattern": "^_" }], "@typescript-eslint/no-explicit-any": "warn", "no-console": ["warn", { "allow": ["warn", "error"] }], "prefer-const": "error", "no-var": "error", "eqeqeq": ["error", "always"], "curly": ["error", "all"], "no-throw-literal": "error", "prefer-promise-reject-errors": "error" } }