module.exports = { env: { node: true }, extends: [ 'eslint:recommended', 'plugin:@typescript-eslint/recommended', 'airbnb-base', 'airbnb-typescript/base', 'plugin:import/errors', 'plugin:import/warnings', 'plugin:import/typescript', 'prettier' ], plugins: ['import', '@typescript-eslint'], settings: { 'import/parsers': { '@typescript-eslint/parser': ['.ts'] }, 'import/resolver': { node: { extensions: ['.js', '.ts'], moduleDirectory: ['node_modules', 'src/'] }, typescript: { alwaysTryTypes: true, project: '.' } } }, overrides: [ { env: { jest: true }, files: ['**/__tests__/**/*.[jt]s', '**/?(*.)+(spec|test).[jt]s'], extends: ['plugin:jest/recommended'], rules: { 'import/no-extraneous-dependencies': [ 'off', { devDependencies: ['**/?(*.)+(spec|test).[jt]s'] } ], camelcase: ['off'] } } ], ignorePatterns: ['**/*.js', 'node_modules', 'dist'], parserOptions: { root: true, tsconfigRootDir: __dirname, project: ['./tsconfig.json'] } }