diff --git a/docs/rules/no-restricted-syntax.md b/docs/rules/no-restricted-syntax.md index e4622248f..d8f7ec248 100644 --- a/docs/rules/no-restricted-syntax.md +++ b/docs/rules/no-restricted-syntax.md @@ -373,5 +373,11 @@ class Test { abstract Test(): void; } // "jsdoc/no-restricted-syntax": ["error"|"warn", {"contexts":[{"comment":"JsdocBlock:not(*:has(JsdocTag[tag=/returns/]))","context":"TSEmptyBodyFunctionExpression[returnType.typeAnnotation.type!=/TSVoidKeyword|TSUndefinedKeyword/]","message":"methods with non-void return types must have a @returns tag"}]}] + +/** + * @private + */ +function quux () {} +// "jsdoc/no-restricted-syntax": ["error"|"warn", {"contexts":[{"comment":"JsdocBlock:not(JsdocBlock:has(JsdocTag[tag=/private|protected|public/]))","context":"any","message":"Access modifier tags must be present"}]}] ```` diff --git a/test/rules/assertions/noRestrictedSyntax.js b/test/rules/assertions/noRestrictedSyntax.js index d49395e75..459d1905e 100644 --- a/test/rules/assertions/noRestrictedSyntax.js +++ b/test/rules/assertions/noRestrictedSyntax.js @@ -1042,5 +1042,24 @@ export default { ], parser: require.resolve('@typescript-eslint/parser'), }, + { + code: ` + /** + * @private + */ + function quux () {} + `, + options: [ + { + contexts: [ + { + comment: 'JsdocBlock:not(JsdocBlock:has(JsdocTag[tag=/private|protected|public/]))', + context: 'any', + message: 'Access modifier tags must be present', + }, + ], + }, + ], + }, ], };