{ "parser": "@typescript-eslint/parser", "plugins": ["@typescript-eslint", "prettier"], "env": { "es6": true, "node": true, "browser": true }, "root": true, "extends": [ "airbnb-base", "plugin:@typescript-eslint/recommended", "prettier" ], "rules": { "linebreak-style": ["error", "unix"], "arrow-parens": ["error", "as-needed"], "no-param-reassign": [ "error", { "props": false } ], "func-style": [ "error", "declaration", { "allowArrowFunctions": true } ], "no-use-before-define": [ "error", { "functions": false } ], "@typescript-eslint/no-use-before-define": [ "error", { "functions": false } ], "import/prefer-default-export": "off", "lines-between-class-members": [ "error", "always", { "exceptAfterSingleLine": true } ], "import/extensions": [ "error", "always", { "js": "ignorePackages", "ts": "never" } ] }, "settings": { "import/resolver": { "typescript": { "project": ["./tsconfig.browser.json", "./tsconfig.node.json"] }, "node": { "extensions": [".ts", ".js"] } } }, "overrides": [ { "files": ["*.spec.ts"], "extends": ["plugin:mocha/recommended"], "plugins": ["mocha"], "rules": { "import/no-extraneous-dependencies": ["off"], "mocha/no-mocha-arrows": ["off"], "no-unused-expressions": ["off"] } } ] }