import type { Linter } from 'eslint';
|
|
import { interopDefault } from '../util';
|
|
export async function jsdoc(): Promise<Linter.Config[]> {
|
const [pluginJsdoc] = await Promise.all([
|
interopDefault(import('eslint-plugin-jsdoc')),
|
] as const);
|
|
return [
|
{
|
plugins: {
|
jsdoc: pluginJsdoc,
|
},
|
rules: {
|
'jsdoc/check-access': 'warn',
|
'jsdoc/check-param-names': 'warn',
|
'jsdoc/check-property-names': 'warn',
|
'jsdoc/check-types': 'warn',
|
'jsdoc/empty-tags': 'warn',
|
'jsdoc/implements-on-classes': 'warn',
|
'jsdoc/no-defaults': 'warn',
|
'jsdoc/no-multi-asterisks': 'warn',
|
'jsdoc/require-param-name': 'warn',
|
'jsdoc/require-property': 'warn',
|
'jsdoc/require-property-description': 'warn',
|
'jsdoc/require-property-name': 'warn',
|
'jsdoc/require-returns-check': 'warn',
|
'jsdoc/require-returns-description': 'warn',
|
'jsdoc/require-yields-check': 'warn',
|
},
|
},
|
];
|
}
|