38 lines
1.1 KiB
JavaScript
38 lines
1.1 KiB
JavaScript
import tseslint from 'typescript-eslint';
|
|
import prettierRecommended from 'eslint-plugin-prettier/recommended';
|
|
|
|
export default tseslint.config(
|
|
{ ignores: ['dist/**', 'coverage/**'] },
|
|
...tseslint.configs.recommended,
|
|
{
|
|
languageOptions: {
|
|
parserOptions: {
|
|
tsconfigRootDir: import.meta.dirname, // points to packages/shared
|
|
project: ['./tsconfig.json', './tsconfig.test.json'],
|
|
},
|
|
},
|
|
rules: {
|
|
'@typescript-eslint/no-explicit-any': 'error',
|
|
'@typescript-eslint/explicit-member-accessibility': ['error', { accessibility: 'explicit' }],
|
|
'@typescript-eslint/no-unused-vars': [
|
|
'error',
|
|
{
|
|
argsIgnorePattern: '^_',
|
|
varsIgnorePattern: '^_',
|
|
caughtErrorsIgnorePattern: '^_',
|
|
},
|
|
],
|
|
'@typescript-eslint/consistent-type-imports': [
|
|
'error',
|
|
{ prefer: 'type-imports', fixStyle: 'inline-type-imports' },
|
|
],
|
|
},
|
|
},
|
|
{
|
|
files: ['**/*.test.ts'],
|
|
rules: {
|
|
'@typescript-eslint/no-explicit-any': 'off',
|
|
},
|
|
},
|
|
prettierRecommended,
|
|
);
|