5 "plugin:import/errors",
6 "plugin:import/warnings",
7 "plugin:jsdoc/recommended",
8 "plugin:prettier/recommended"
10 "plugins": ["import", "jsdoc"],
17 "space-before-blocks": ["error", "always"],
18 "curly": ["error", "all"],
19 "brace-style": "error",
20 "eqeqeq": ["error", "always"],
21 "no-else-return": "error",
22 "no-eq-null": "error",
23 "no-undefined": "error",
24 "no-extra-bind": "error",
25 "no-lone-blocks": "error",
26 "no-multi-spaces": "error",
28 "no-return-assign": ["error", "always"],
29 "no-useless-catch": "error",
30 "no-useless-return": "error",
31 "no-multiple-empty-lines": [
38 "block-spacing": "error",
39 // "capitalized-comments": [
43 // "ignoreConsecutiveComments": true,
44 // "ignorePattern": "pragma|ignored"
47 "eol-last": ["error", "always"],
48 "consistent-this": ["error", "self"],
49 "func-call-spacing": ["error", "never"],
50 "keyword-spacing": ["error"],
65 "linebreak-style": ["error", "unix"],
73 "no-lonely-if": "error",
74 "no-trailing-spaces": "error",
75 "no-whitespace-before-property": "error",
76 "space-in-parens": ["error", "never"],
77 "space-infix-ops": "error",
78 "space-unary-ops": "error",
79 "spaced-comment": ["error", "always"],
80 "switch-colon-spacing": "error",
81 "arrow-body-style": ["error", "as-needed"],
82 "arrow-parens": ["error", "always"],
83 "arrow-spacing": "error",
84 "no-duplicate-imports": "error",
86 "prefer-const": "error",
91 "ignoreDeclarationSort": false,
92 "ignoreMemberSort": false,
93 "memberSyntaxSortOrder": ["none", "all", "multiple", "single"]
96 "object-curly-spacing": ["error", "always"],
97 "lines-between-class-members": [
101 "exceptAfterSingleLine": true
109 "allowTemplateLiterals": false
115 "files": ["**/*.ts"],
116 "parser": "@typescript-eslint/parser",
118 "project": "./tsconfig.json"
121 "plugin:@typescript-eslint/recommended",
122 "plugin:@typescript-eslint/recommended-requiring-type-checking",
123 "plugin:import/typescript"
125 "plugins": ["@typescript-eslint"],
127 "@typescript-eslint/array-type": "off",
129 "@typescript-eslint/semi": ["error", "always"],
130 "@typescript-eslint/no-empty-function": "warn",
131 "@typescript-eslint/member-ordering": "error",
132 "@typescript-eslint/await-thenable": "error",
133 "@typescript-eslint/no-floating-promises": "error",
134 "@typescript-eslint/promise-function-async": "error",
135 "@typescript-eslint/no-misused-promises": "error",
136 "no-shadow": "off", // This one is generating false positive no-shadow errors on exported/const enums
137 "@typescript-eslint/no-shadow": "error"
141 "files": ["**/*.js"],
142 "extends": "plugin:node/recommended",
144 "node/shebang": "off"