{ "extends": [ "eslint:recommended", "plugin:@typescript-eslint/strict-type-checked", "plugin:@typescript-eslint/stylistic-type-checked", "next/core-web-vitals" ], "parser": "@typescript-eslint/parser", "parserOptions": { "project": [ "./tsconfig.json" ] }, "plugins": [ "@typescript-eslint" ], "rules": { "eqeqeq": "error", "no-else-return": "error", "no-implicit-coercion": [ "error", { "disallowTemplateShorthand": true } ], "no-unneeded-ternary": "error", "no-useless-call": "error", "no-useless-computed-key": "error", "no-useless-concat": "error", "prefer-arrow-callback": "error", "prefer-const": "error", "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", "radix": [ "error", "always" ], "react-hooks/exhaustive-deps": "warn", "@typescript-eslint/no-misused-promises": [ "error", { "checksVoidReturn": false } ], "@typescript-eslint/no-confusing-void-expression": "off", "@typescript-eslint/no-unsafe-return": "off", "@typescript-eslint/no-unsafe-call": "off", "@typescript-eslint/ban-ts-comment": "off", "@typescript-eslint/prefer-nullish-coalescing": "off", "@typescript-eslint/no-unsafe-member-access": "warn", "@typescript-eslint/no-non-null-assertion": "off", "@typescript-eslint/no-unused-vars": "warn", "jsx-a11y/click-events-have-key-events": "off", "@typescript-eslint/no-unsafe-assignment": "warn", "@typescript-eslint/no-explicit-any": "warn", "@typescript-eslint/no-base-to-string": "warn" } }