module.exports = {
parser: '@typescript-eslint/parser',
parserOptions: {
project: 'tsconfig.json',
tsconfigRootDir: __dirname,
sourceType: 'module',
ecmaVersion: 2022,
},
plugins: ['@typescript-eslint'],
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
],
root: true,
env: {
node: true,
jest: true,
es2022: true,
},
ignorePatterns: ['.eslintrc.cjs', 'jest.config.js', 'dist/', 'coverage/'],
rules: {
'prefer-const': 'error',
'no-var': 'error',
'no-console': 'warn',
'no-unused-vars': 'off', // TypeScript handles this
'@typescript-eslint/no-unused-vars': ['error', {
'argsIgnorePattern': '^_',
'varsIgnorePattern': '^_',
'args': 'after-used',
'ignoreRestSiblings': true
}],
'@typescript-eslint/no-explicit-any': ['error', {
'ignoreRestArgs': true,
'fixToUnknown': false
}],
},
};