{ "root": true, "env": { "browser": false, "es6": true, "node": true }, "extends": [ "eslint:recommended", "plugin:@typescript-eslint/recommended", "plugin:@typescript-eslint/recommended-requiring-type-checking", "prettier" ], "parser": "@typescript-eslint/parser", "plugins": ["@typescript-eslint"], "rules": { "no-console": "warn", "quotes": ["error", "double", { "avoidEscape": true, "allowTemplateLiterals": true }], "semi": ["error", "always"], "@typescript-eslint/no-inferrable-types": "off", "@typescript-eslint/restrict-template-expressions": "off", "@typescript-eslint/no-unnecessary-type-assertion": "off", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/explicit-module-boundary-types": "off", // eventually enable this "@typescript-eslint/explicit-member-accessibility": [ "error", { "overrides": { "constructors": "off", "parameterProperties": "off" } } ], "@typescript-eslint/member-ordering": [ "error", { "default": [ "static-field", "static-method", "instance-field", "constructor", "instance-method" ] } ] }, "ignorePatterns": [ "**/node_modules", "**/dist", "**/coverage" ], "overrides": [ { "files": "__tests__/**/*", "rules":{ "no-sparse-arrays": "off", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/unbound-method": "off", "@typescript-eslint/no-unsafe-assignment": "off", "@typescript-eslint/no-unsafe-call": "off", "@typescript-eslint/no-unsafe-member-access": "off", "@typescript-eslint/no-unsafe-return": "off", "@typescript-eslint/restrict-plus-operands": "off" } } ], "parserOptions": { "project": ["./tsconfig.json"] } }