1 | module.exports = {
|
2 | parser: "@typescript-eslint/parser",
|
3 | extends: ["prettier/@typescript-eslint", "plugin:import/typescript"],
|
4 | plugins: ["@typescript-eslint"],
|
5 | parserOptions: {
|
6 | warnOnUnsupportedTypeScriptVersion: false,
|
7 | sourceType: "module",
|
8 | jsx: true,
|
9 | },
|
10 | rules: {
|
11 | "@typescript-eslint/await-thenable": "error",
|
12 | "@typescript-eslint/no-floating-promises": "error",
|
13 | "@typescript-eslint/no-for-in-array": "error",
|
14 | "@typescript-eslint/no-misused-promises": "error",
|
15 | "@typescript-eslint/no-unnecessary-condition": [
|
16 | "error",
|
17 | { ignoreRhs: true },
|
18 | ],
|
19 | "@typescript-eslint/no-unnecessary-qualifier": "off",
|
20 | "@typescript-eslint/no-unnecessary-type-arguments": "off",
|
21 | "@typescript-eslint/no-unnecessary-type-assertion": "error",
|
22 | "@typescript-eslint/prefer-includes": "error",
|
23 | "@typescript-eslint/prefer-readonly": "error",
|
24 | "@typescript-eslint/prefer-regexp-exec": "error",
|
25 | "@typescript-eslint/prefer-string-starts-ends-with": "error",
|
26 | "@typescript-eslint/promise-function-async": [
|
27 | "error",
|
28 | {
|
29 | allowedPromiseNames: [],
|
30 | checkArrowFunctions: false,
|
31 | checkFunctionDeclarations: false,
|
32 | checkFunctionExpressions: false,
|
33 | checkMethodDeclarations: true,
|
34 | },
|
35 | ],
|
36 | "@typescript-eslint/require-array-sort-compare": "error",
|
37 | "@typescript-eslint/require-await": "off",
|
38 | "@typescript-eslint/restrict-plus-operands": "error",
|
39 | "@typescript-eslint/strict-boolean-expressions": "off",
|
40 | "@typescript-eslint/unbound-method": [
|
41 | "error",
|
42 | {
|
43 | ignoreStatic: true,
|
44 | },
|
45 | ],
|
46 | },
|
47 | };
|