{ "parser": "@typescript-eslint/parser", "plugins": [ "@typescript-eslint", "prettier" ], "extends": [ "eslint:recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended", "plugin:@typescript-eslint/recommended-requiring-type-checking", "prettier", "prettier/@typescript-eslint" ], "parserOptions": { "ecmaVersion": 2018, "sourceType": "module", "project": "./tsconfig.lint.json" }, "env": { "browser": true, "es6": true, "node": true }, "rules": { "capitalized-comments": "warn", "curly": [ "warn", "all" ], "no-extra-parens": "off", "no-template-curly-in-string": "warn", "array-callback-return": "warn", "consistent-return": "warn", "no-else-return": "warn", "no-implicit-coercion": "warn", "no-shadow": "error", "no-undef-init": "warn", "prettier/prettier": "warn", "@typescript-eslint/explicit-member-accessibility": "warn", "@typescript-eslint/interface-name-prefix": [ "warn", { "prefixWithI": "never" } ], "@typescript-eslint/no-floating-promises": "error", "@typescript-eslint/explicit-function-return-type": [ "warn", { "allowExpressions": true } ], "@typescript-eslint/consistent-type-assertions": [ "warn", { "assertionStyle": "angle-bracket" } ], "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-non-null-assertion": "off" } }