/ .eslintrc.js
.eslintrc.js
 1  module.exports = {
 2    env: {
 3      browser: true,
 4      es6: true,
 5    },
 6  
 7    extends: [
 8      'eslint:recommended',
 9      'plugin:@typescript-eslint/recommended',
10      'plugin:@typescript-eslint/recommended-requiring-type-checking',
11    ],
12  
13    parser: '@typescript-eslint/parser',
14  
15    parserOptions: {
16      ecmaVersion: 2018,
17      sourceType: 'module',
18      project: './tsconfig.json',
19    },
20  
21    plugins: [
22      '@typescript-eslint',
23    ],
24  
25    root: true,
26  
27    rules: {
28      'semi': ['error', 'never'],
29  
30      'no-irregular-whitespace': 'off',
31  
32      'no-unused-vars': 'off',
33  
34      'comma-dangle': ['error', 'always-multiline'],
35  
36      'no-trailing-spaces': ['error', {
37        'ignoreComments': true,
38      }],
39  
40      'prefer-template': 'error',
41  
42      'quotes': ['error', 'single'],
43  
44      'no-multiple-empty-lines': ['error'],
45  
46      '@typescript-eslint/indent': ['error', 2],
47  
48      '@typescript-eslint/no-unsafe-return': 'off',
49  
50      '@typescript-eslint/no-floating-promises': 'off',
51  
52      '@typescript-eslint/no-unused-vars': ['error', {
53        'varsIgnorePattern': '^_',
54        'argsIgnorePattern': '^_',
55      }],
56  
57      '@typescript-eslint/member-delimiter-style': ['error', {
58        'singleline': {
59          'delimiter': 'comma',
60        },
61        'multiline': {
62          'delimiter': 'none',
63        }
64      }],
65  
66      '@typescript-eslint/no-inferrable-types': 'off',
67  
68      '@typescript-eslint/no-use-before-define': 'off',
69  
70      '@typescript-eslint/unbound-method': 'off',
71  
72      '@typescript-eslint/no-namespace': 'off',
73    },
74  }