{ "extends": [ "next/core-web-vitals", "plugin:@typescript-eslint/recommended", "plugin:@typescript-eslint/recommended-requiring-type-checking", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended" ], "parser": "@typescript-eslint/parser", "parserOptions": { "project": "./tsconfig.json" }, "plugins": ["@typescript-eslint", "react-hooks", "jsx-a11y"], "rules": { "@typescript-eslint/no-unused-vars": ["error", { "argsIgnorePattern": "^_" }], "@typescript-eslint/no-explicit-any": "error", "@typescript-eslint/explicit-function-return-type": "off", "@typescript-eslint/explicit-module-boundary-types": "off", "@typescript-eslint/no-non-null-assertion": "warn", "@typescript-eslint/prefer-nullish-coalescing": "warn", "@typescript-eslint/prefer-optional-chain": "error", "@typescript-eslint/no-floating-promises": "warn", "@typescript-eslint/await-thenable": "error", "@typescript-eslint/no-misused-promises": "warn", "no-console": ["warn", { "allow": ["warn", "error", "info"] }], "prefer-const": "error", "no-var": "error", "react-hooks/rules-of-hooks": "error", "react-hooks/exhaustive-deps": "warn" }, "ignorePatterns": ["node_modules/", ".next/", "out/", "dist/", "*.config.*", "src/test/**/*", "**/*.test.ts", "**/*.test.tsx"], "overrides": [ { "files": ["*.test.ts", "*.test.tsx"], "rules": { "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/unbound-method": "off" } } ] }