{ "env": { "browser": true, "es6": true }, "extends": [ "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended", "prettier/@typescript-eslint" ], "globals": { "Atomics": "readonly", "SharedArrayBuffer": "readonly" }, "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaFeatures": { "jsx": true, "tsx": true }, "ecmaVersion": 11, "sourceType": "module" }, "plugins": ["react", "react-hooks", "@typescript-eslint", "prettier"], "rules": { "prettier/prettier": "error", "no-extra-semi": "error", "quotes": ["error", "single"], "semi": ["error", "always"], "object-curly-newline": [ "error", "never", { "multiLine": true, "minProperties": 2 } ], "implicit-arrow-linebreak": ["error", "beside"], "react-hooks/rules-of-hooks": "error", "react-hooks/exhaustive-deps": "warn", "react/jsx-filename-extension": [1, { "extensions": [".tsx"] }], "import/prefer-default-export": "off", "import/extensions": [ "error", "always", { "js": "never", "jsx": "never", "ts": "never", "tsx": "never" } ] }, "settings": { "import/resolver": { "typescript": {}, "node": { "extensions": [".js", ".jsx", ".ts", ".tsx"] } } } }