js.configs.recommended,
...nodePlugin.configs['flat/mixed-esm-and-cjs'],
jsdoc.configs['flat/recommended-typescript'],
- ...tseslint.config(...tseslint.configs.strict, ...tseslint.configs.stylistic),
+ {
+ rules: {
+ 'jsdoc/check-tag-names': ['warn', { typed: true, definedTags: ['defaultValue', 'experimental', 'typeParam'] }],
+ },
+ },
+ ...tseslint.config(
+ ...tseslint.configs.strictTypeChecked,
+ ...tseslint.configs.stylisticTypeChecked
+ ),
...neostandard({
ts: true,
globals: {
...globals.mocha,
},
}),
- // ...tseslint.config(
- // ...tseslint.configs.strictTypeChecked,
- // ...tseslint.configs.stylisticTypeChecked,
- // {
- // languageOptions: {
- // parserOptions: {
- // project: true,
- // tsconfigRootDir: import.meta.dirname,
- // },
- // },
- // }
- // ),
+ {
+ languageOptions: {
+ parserOptions: {
+ project: true,
+ tsconfigRootDir: import.meta.dirname,
+ },
+ },
+ },
{
plugins: {
'simple-import-sort': simpleImportSort,
'@stylistic/operator-linebreak': 'off',
},
},
+ {
+ files: ['**/*.js', '**/*.mjs', '**/*.cjs'],
+ ...tseslint.configs.disableTypeChecked,
+ },
+ // examples specific configuration
{
files: ['examples/**/*.ts'],
rules: {
- 'no-undef': 'off',
+ '@typescript-eslint/no-unsafe-argument': 'off',
+ '@typescript-eslint/no-unsafe-call': 'off',
+ '@typescript-eslint/no-unsafe-return': 'off',
+ '@typescript-eslint/no-unsafe-assignment': 'off',
+ '@typescript-eslint/no-unsafe-member-access': 'off',
+ '@typescript-eslint/no-unnecessary-type-assertion': 'off',
+ '@typescript-eslint/no-redundant-type-constituents': 'off',
},
},
{
'@typescript-eslint/no-require-imports': 'off',
},
},
+ // benchmarks specific configuration
{
files: ['benchmarks/**/*.cjs'],
rules: {
'@typescript-eslint/no-require-imports': 'off',
},
},
+ // tests specific configuration
{
files: ['tests/**/*.js', 'tests/**/*.mjs', 'tests/**/*.cjs'],
rules: {