1 const { defineConfig
} = require('eslint-define-config')
3 module
.exports
= defineConfig({
14 plugins
: ['promise', 'spellcheck'],
17 'plugin:import/recommended',
18 'plugin:promise/recommended'
23 project
: './tsconfig.eslint.json'
31 ignoreDeclarationSort
: true
34 'import/order': 'error',
36 'spellcheck/spell-checker': [
93 skipIfMatch
: ['^@.*', '^plugin:.*']
100 plugins
: ['@typescript-eslint', 'eslint-plugin-tsdoc'],
101 parser
: '@typescript-eslint/parser',
103 project
: './tsconfig.eslint.json'
106 'plugin:@typescript-eslint/recommended',
107 'plugin:@typescript-eslint/recommended-requiring-type-checking',
108 'plugin:import/typescript',
109 'standard-with-typescript'
112 '@typescript-eslint/no-inferrable-types': [
114 { ignoreProperties
: true }
116 'tsdoc/syntax': 'warn'
120 files
: ['examples/typescript/**/*.ts'],
122 'import/no-unresolved': 'off',
123 '@typescript-eslint/no-unsafe-argument': 'off',
124 '@typescript-eslint/no-unsafe-call': 'off',
125 '@typescript-eslint/no-unsafe-return': 'off',
126 '@typescript-eslint/no-unsafe-assignment': 'off',
127 '@typescript-eslint/no-unsafe-member-access': 'off',
128 '@typescript-eslint/no-unnecessary-type-assertion': 'off',
129 '@typescript-eslint/strict-boolean-expressions': 'off',
130 '@typescript-eslint/restrict-template-expressions': 'off',
131 '@typescript-eslint/return-await': 'off'
135 files
: ['**/*.js', '**/*.mjs'],
137 extends: ['plugin:n/recommended', 'plugin:jsdoc/recommended', 'standard']
140 files
: ['tests/**/*.js'],
142 'jsdoc/require-jsdoc': 'off'
146 files
: ['tests/pools/selection-strategies/**/*.js'],
148 'n/no-missing-require': 'off'
152 files
: ['benchmarks/**/*.js', 'benchmarks/**/*.mjs'],
154 'jsdoc/require-jsdoc': 'off'
158 files
: ['benchmarks/versus-external-pools/**/*.js'],
160 'n/no-missing-require': 'off'
164 files
: ['benchmarks/versus-external-pools/**/*.mjs'],
166 'n/no-missing-import': 'off',
167 'import/no-unresolved': 'off'
171 files
: ['examples/javascript/**/*.js'],
173 'n/no-missing-require': 'off',
174 'jsdoc/require-jsdoc': 'off'