1
+ {
2
+ "env" : {
3
+ "browser" : true ,
4
+ "es6" : true ,
5
+ "node" : true
6
+ },
7
+ "parser" : " @typescript-eslint/parser" ,
8
+ "parserOptions" : {
9
+ "project" : " tsconfig.json" ,
10
+ "sourceType" : " module"
11
+ },
12
+ "plugins" : [
13
+ " @typescript-eslint" ,
14
+ " eslint-plugin-import" ,
15
+ " eslint-plugin-jsdoc" ,
16
+ " eslint-plugin-prefer-arrow"
17
+ ],
18
+ "rules" : {
19
+ "@typescript-eslint/array-type" : [
20
+ " error" ,
21
+ {
22
+ "default" : " array"
23
+ }
24
+ ],
25
+ "@typescript-eslint/ban-types" : [
26
+ " error" ,
27
+ {
28
+ "types" : {
29
+ "Object" : {
30
+ "message" : " Use `object` instead."
31
+ },
32
+ "Function" : {
33
+ "message" : " Use specific function type, like `() => void` instead."
34
+ },
35
+ "Boolean" : {
36
+ "message" : " Use `boolean` instead."
37
+ },
38
+ "Number" : {
39
+ "message" : " Use `number` instead."
40
+ },
41
+ "String" : {
42
+ "message" : " Use `string` instead."
43
+ },
44
+ "Symbol" : {
45
+ "message" : " Use `symbol` instead."
46
+ }
47
+ }
48
+ }
49
+ ],
50
+ "@typescript-eslint/consistent-type-assertions" : " error" ,
51
+ "@typescript-eslint/consistent-type-definitions" : " error" ,
52
+ "@typescript-eslint/dot-notation" : " error" ,
53
+ "@typescript-eslint/explicit-member-accessibility" : [
54
+ " error" ,
55
+ {
56
+ "accessibility" : " explicit"
57
+ }
58
+ ],
59
+ "@typescript-eslint/indent" : [
60
+ " error" ,
61
+ 4 ,
62
+ {
63
+ "ArrayExpression" : " first" ,
64
+ "ObjectExpression" : " first" ,
65
+ "FunctionDeclaration" : {
66
+ "parameters" : " first"
67
+ },
68
+ "FunctionExpression" : {
69
+ "parameters" : " first"
70
+ },
71
+ "SwitchCase" : 1
72
+ }
73
+ ],
74
+ "@typescript-eslint/member-delimiter-style" : [
75
+ " error" ,
76
+ {
77
+ "multiline" : {
78
+ "delimiter" : " semi" ,
79
+ "requireLast" : true
80
+ },
81
+ "singleline" : {
82
+ "delimiter" : " comma" ,
83
+ "requireLast" : false
84
+ }
85
+ }
86
+ ],
87
+ "@typescript-eslint/member-ordering" : " error" ,
88
+ "@typescript-eslint/naming-convention" : [
89
+ " error" ,
90
+ {
91
+ "selector" : " default" ,
92
+ "format" : [
93
+ " camelCase"
94
+ ]
95
+ },
96
+ {
97
+ "selector" : " variable" ,
98
+ "format" : [
99
+ " camelCase" ,
100
+ " PascalCase"
101
+ ]
102
+ },
103
+ {
104
+ "selector" : " parameter" ,
105
+ "format" : [
106
+ " camelCase"
107
+ ],
108
+ "leadingUnderscore" : " allow"
109
+ },
110
+ { // Private members should be prefixed with an underscore
111
+ "selector" : " memberLike" ,
112
+ "modifiers" : [
113
+ " private"
114
+ ],
115
+ "format" : [
116
+ " camelCase"
117
+ ],
118
+ "leadingUnderscore" : " require"
119
+ },
120
+ {
121
+ "selector" : " method" ,
122
+ "format" : [
123
+ " camelCase"
124
+ ],
125
+ "leadingUnderscore" : " forbid"
126
+ },
127
+ { // Types should be capitalized
128
+ "selector" : " typeLike" ,
129
+ "format" : [
130
+ " PascalCase"
131
+ ]
132
+ }
133
+ ],
134
+ "@typescript-eslint/no-empty-function" : " error" ,
135
+ "@typescript-eslint/no-empty-interface" : " off" ,
136
+ "@typescript-eslint/no-explicit-any" : " off" ,
137
+ "@typescript-eslint/no-inferrable-types" : " error" ,
138
+ "@typescript-eslint/no-misused-new" : " error" ,
139
+ "@typescript-eslint/no-namespace" : " error" ,
140
+ "@typescript-eslint/no-parameter-properties" : " off" ,
141
+ "@typescript-eslint/no-require-imports" : " off" ,
142
+ "@typescript-eslint/no-this-alias" : " error" ,
143
+ "@typescript-eslint/no-unnecessary-boolean-literal-compare" : " error" ,
144
+ "@typescript-eslint/no-var-requires" : " error" ,
145
+ "@typescript-eslint/prefer-for-of" : " error" ,
146
+ "@typescript-eslint/prefer-function-type" : " error" ,
147
+ "@typescript-eslint/prefer-namespace-keyword" : " error" ,
148
+ "@typescript-eslint/quotes" : [
149
+ " error" ,
150
+ " backtick"
151
+ ],
152
+ "@typescript-eslint/require-await" : " error" ,
153
+ "@typescript-eslint/semi" : [
154
+ " error"
155
+ ],
156
+ "@typescript-eslint/strict-boolean-expressions" : " error" ,
157
+ "@typescript-eslint/triple-slash-reference" : [
158
+ " error" ,
159
+ {
160
+ "path" : " always" ,
161
+ "types" : " prefer-import" ,
162
+ "lib" : " always"
163
+ }
164
+ ],
165
+ "@typescript-eslint/type-annotation-spacing" : " error" ,
166
+ "@typescript-eslint/unified-signatures" : " error" ,
167
+ "arrow-body-style" : " error" ,
168
+ "arrow-parens" : [
169
+ " off" ,
170
+ " always"
171
+ ],
172
+ "brace-style" : [
173
+ " error" ,
174
+ " stroustrup"
175
+ ],
176
+ "camelcase" : " error" ,
177
+ "comma-dangle" : " error" ,
178
+ "complexity" : " off" ,
179
+ "constructor-super" : " error" ,
180
+ "curly" : " error" ,
181
+ "default-case" : " error" ,
182
+ "eol-last" : " off" ,
183
+ "eqeqeq" : [
184
+ " error" ,
185
+ " smart"
186
+ ],
187
+ "guard-for-in" : " error" ,
188
+ "id-blacklist" : [
189
+ " error" ,
190
+ " any" ,
191
+ " Number" ,
192
+ " number" ,
193
+ " String" ,
194
+ " string" ,
195
+ " Boolean" ,
196
+ " boolean" ,
197
+ " Undefined" ,
198
+ " undefined"
199
+ ],
200
+ "id-match" : " error" ,
201
+ "import/order" : " error" ,
202
+ "jsdoc/check-alignment" : " error" ,
203
+ "jsdoc/check-indentation" : " error" ,
204
+ "max-len" : [
205
+ " off" ,
206
+ {
207
+ "code" : 140
208
+ }
209
+ ],
210
+ "new-parens" : " error" ,
211
+ "no-bitwise" : " error" ,
212
+ "no-caller" : " error" ,
213
+ "no-cond-assign" : " error" ,
214
+ "no-console" : " error" ,
215
+ "no-debugger" : " error" ,
216
+ "no-empty" : " error" ,
217
+ "no-fallthrough" : " error" ,
218
+ "no-invalid-this" : " error" ,
219
+ "no-multiple-empty-lines" : " error" ,
220
+ "no-new-wrappers" : " error" ,
221
+ "no-redeclare" : " error" ,
222
+ "no-return-await" : " error" ,
223
+ "no-shadow" : [
224
+ " off" ,
225
+ {
226
+ "hoist" : " all"
227
+ }
228
+ ],
229
+ "no-sparse-arrays" : " error" ,
230
+ "no-throw-literal" : " error" ,
231
+ "no-trailing-spaces" : " error" ,
232
+ "no-undef-init" : " off" ,
233
+ "no-unsafe-finally" : " error" ,
234
+ "no-unused-labels" : " error" ,
235
+ "no-var" : " error" ,
236
+ "object-shorthand" : " off" ,
237
+ "one-var" : [
238
+ " error" ,
239
+ " never"
240
+ ],
241
+ "prefer-arrow/prefer-arrow-functions" : " error" ,
242
+ "prefer-const" : " error" ,
243
+ "prefer-object-spread" : " error" ,
244
+ "quote-props" : [
245
+ " error" ,
246
+ " consistent-as-needed"
247
+ ],
248
+ "radix" : " error" ,
249
+ "space-before-function-paren" : [
250
+ " error" ,
251
+ {
252
+ "anonymous" : " never" ,
253
+ "asyncArrow" : " always" ,
254
+ "named" : " never"
255
+ }
256
+ ],
257
+ "space-in-parens" : [
258
+ " error" ,
259
+ " never"
260
+ ],
261
+ "space-infix-ops" : " error" ,
262
+ "use-isnan" : " error"
263
+ }
264
+ }
0 commit comments