module.exports = { parser: '@typescript-eslint/parser', extends: ['plugin:@typescript-eslint/recommended'], plugins: ['@typescript-eslint', 'unused-imports'], rules: { // applied rules '@typescript-eslint/no-unused-vars': ['error'], 'unused-imports/no-unused-imports-ts': 'error', 'prefer-const': 'error', curly: ['error', 'all'], eqeqeq: ['error', 'always', { null: 'ignore' }], 'no-warning-comments': [ 'warn', { terms: ['TODO', 'FIXME', 'XXX', 'BUG', 'NOTE'], location: 'anywhere' }, ], // ignore belows '@typescript-eslint/explicit-function-return-type': 'off', '@typescript-eslint/explicit-module-boundary-types': 'off', // 모노래포 내에서 subpathing 하기 위해서 필요함 '@typescript-eslint/triple-slash-reference': 'off', '@typescript-eslint/no-non-null-assertion': 'off', '@typescript-eslint/no-use-before-define': 'off', // 데코레이터, 외부 소스등 각종 네이밍컨벤션을 강제하지 못할 때가 있음 '@typescript-eslint/naming-convention': 'off', '@typescript-eslint/no-explicit-any': 'off', // 네임스페이스 활용하기로 결정 '@typescript-eslint/no-namespace': 'off', }, };