{ "parser": "@typescript-eslint/parser", "parserOptions": { "project": "./tsconfig.eslint.json" }, "env": { "node": true, "es6": true, "jest": true }, "plugins": ["@typescript-eslint"], "extends": [ "eslint:recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended", "prettier" ], "rules": { "@typescript-eslint/explicit-function-return-type": "off", "@typescript-eslint/no-explicit-any": "off", // non-null assertions compromise the type safety somewhat, but many // our types are still imprecisely defined and we don't use noImplicitAny // anyway, so for the time being assertions are allowed "@typescript-eslint/no-non-null-assertion": "warn", "@typescript-eslint/no-empty-function": "warn", "@typescript-eslint/no-inferrable-types": "off", "@typescript-eslint/no-var-requires": "off", "@typescript-eslint/no-use-before-define": "off", "@typescript-eslint/no-unused-vars": "error", "no-prototype-builtins": "off", "require-atomic-updates": "off", "no-buffer-constructor": "error" }, "overrides": [ { "files": ["*.ts"], "rules": { "id-blacklist": ["error", "exports"] // in TS, use "export" instead of Node's "module.exports" } } ] }