2 const { defineConfig
} = require('eslint-define-config')
4 module
.exports
= defineConfig({
15 plugins
: ['promise', 'spellcheck'],
18 'plugin:import/recommended',
19 'plugin:promise/recommended'
27 ignoreMemberSort
: true,
28 ignoreDeclarationSort
: true
32 'spellcheck/spell-checker': [
70 skipIfMatch
: ['^@.*', '^plugin:.*']
77 plugins
: ['@typescript-eslint', 'eslint-plugin-tsdoc'],
78 parser
: '@typescript-eslint/parser',
80 project
: './tsconfig.json'
83 'plugin:@typescript-eslint/eslint-recommended',
84 'plugin:@typescript-eslint/recommended',
85 'plugin:@typescript-eslint/recommended-requiring-type-checking',
86 'standard-with-typescript',
87 'plugin:import/typescript'
90 // We have some intentionally empty functions
91 '@typescript-eslint/no-empty-function': 'off',
93 '@typescript-eslint/no-inferrable-types': [
95 { ignoreProperties
: true }
98 'no-useless-constructor': 'off',
100 'tsdoc/syntax': 'error'
104 files
: ['examples/typescript/**/*.ts'],
106 'import/no-unresolved': 'off',
107 '@typescript-eslint/no-unsafe-argument': 'off',
108 '@typescript-eslint/no-unsafe-call': 'off',
109 '@typescript-eslint/no-unsafe-assignment': 'off'
115 extends: ['plugin:n/recommended', 'standard', 'plugin:jsdoc/recommended']
118 files
: ['tests/**/*.js'],
120 'jsdoc/require-jsdoc': 'off'
124 files
: ['tests/pools/selection-strategies/**/*.js'],
126 'n/no-missing-require': 'off'
130 files
: ['benchmarks/**/*.js'],
132 'jsdoc/require-jsdoc': 'off'
136 files
: ['benchmarks/versus-external-pools/**/*.js'],
138 'n/no-missing-require': 'off'
142 files
: ['examples/**/*.js'],
144 'n/no-missing-require': 'off',
145 'jsdoc/require-jsdoc': 'off'