{ "env": { "browser": true, "es6": true }, "extends": [ "eslint:recommended", // "airbnb/hooks", // "airbnb-typescript", "plugin:react/recommended", "plugin:react/jsx-runtime", "plugin:@typescript-eslint/recommended", "plugin:@typescript-eslint/recommended-requiring-type-checking", "plugin:prettier/recommended", "plugin:import/recommended" ], "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaFeatures": { "jsx": true }, "ecmaVersion": "latest", "sourceType": "module", "tsconfigRootDir": ".", "project": ["tsconfig.json"] }, "plugins": ["react", "@typescript-eslint", "autofix", "react-hooks"], "settings": { "import/resolver": { "typescript": { "project": "./tsconfig.json" } }, "react": { "version": "18.x" } }, "rules": { "object-shorthand": "error", "no-console": "warn", "@typescript-eslint/consistent-type-definitions": ["off", "type"], "@typescript-eslint/explicit-function-return-type": "off", "@typescript-eslint/no-unsafe-call": "off", "@typescript-eslint/no-unsafe-enum-comparison": "off", "@typescript-eslint/no-unsafe-assignment": "off", "@typescript-eslint/no-unsafe-return": "off", "@typescript-eslint/no-unsafe-member-access": "off", "@typescript-eslint/naming-convention": "off", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-unsafe-argument": "off", "@typescript-eslint/restrict-plus-operands": "off", "@typescript-eslint/no-unused-expressions": "off", "@typescript-eslint/no-implied-eval": "off", "@typescript-eslint/no-misused-promises": "off", "arrow-body-style": ["error", "as-needed"], "react-hooks/exhaustive-deps": "warn", "@typescript-eslint/consistent-type-imports": [ "error", { "prefer": "type-imports" } ], "import/order": [ "warn", { "groups": ["builtin", "external", "parent", "sibling", "index", "object", "type"], "pathGroups": [ { "pattern": "@/**/**", "group": "parent", "position": "before" } ], "alphabetize": { "order": "asc" } } ], // "autofix/no-unused-vars": [ // "error", // { // "argsIgnorePattern": "^_", // "ignoreRestSiblings": true, // "destructuredArrayIgnorePattern": "^_" // } // ], "react/self-closing-comp": [ "error", { "component": true, "html": true } ], "@typescript-eslint/ban-types": [ "error", { "extendDefaults": true, "types": { "{}": false } } ], "prettier/prettier": [ "error", { "endOfLine": "auto" } ] } }