module.exports = { "env": { "browser": true, "es6": true, "node": true }, "parser": "@typescript-eslint/parser", "parserOptions": { "project": "tsconfig.eslint.json", "sourceType": "module" }, "plugins": [ "@typescript-eslint", "@typescript-eslint/tslint" ], "extends": [ "eslint:recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended" ], "root": true, "rules": { "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/ban-types": "off", "@typescript-eslint/indent": [ "error", 2, { "ArrayExpression": "first", "ObjectExpression": "first", "FunctionDeclaration": { "parameters": "first" }, "FunctionExpression": { "parameters": "first" } } ], "@typescript-eslint/member-delimiter-style": [ "error", { "multiline": { "delimiter": "semi", "requireLast": true }, "singleline": { "delimiter": "semi", "requireLast": false } } ], "@typescript-eslint/naming-convention": [ "error", { "selector": "variable", "format": [ "camelCase", "UPPER_CASE" ], "leadingUnderscore": "forbid", "trailingUnderscore": "forbid" } ], "@typescript-eslint/no-array-constructor": "error", "@typescript-eslint/no-this-alias": "error", "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error", "@typescript-eslint/quotes": [ "error", "single", { "avoidEscape": true } ], "@typescript-eslint/semi": [ "error", "always" ], "arrow-parens": [ "off", "always" ], "comma-dangle": [ "error", "always-multiline" ], "curly": [ "error", "multi-line" ], "eol-last": "error", "eqeqeq": [ "error", "smart" ], "id-denylist": "error", "id-match": "error", "indent": "off", "max-len": [ "error", { "code": 120 } ], "no-array-constructor": "off", "no-duplicate-imports": "error", "no-eval": "error", "no-multiple-empty-lines": "error", "no-new-wrappers": "error", "no-param-reassign": "error", "no-trailing-spaces": "error", "no-underscore-dangle": "error", "no-var": "error", "object-shorthand": "error", "one-var": [ "error", "never" ], "prefer-const": "error", "prefer-template": "error", "quote-props": [ "error", "as-needed" ], "quotes": "off", "radix": "error", "semi": "off", "space-before-function-paren": [ "error", { "anonymous": "always", "named": "never" } ], "spaced-comment": [ "error", "always", { "markers": [ "/" ] } ], "@typescript-eslint/tslint/config": [ "error", { "rules": { "whitespace": [ true, "check-branch", "check-operator", "check-separator", "check-typecast" ], } } ] } };