jsdoc/require-param Pedantic
What it does
Requires that all function parameters are documented with JSDoc @param tags.
Why is this bad?
The rule is aimed at enforcing code quality and maintainability by requiring that all function parameters are documented.
Examples
Examples of incorrect code for this rule:
/** @param foo */
function quux(foo, bar) {}Examples of correct code for this rule:
/** @param foo */
function quux(foo) {}Configuration
This rule accepts a configuration object with the following properties:
checkConstructors
type: boolean
default: false
Whether to check constructor methods.
checkDestructured
type: boolean
default: true
Whether to check destructured parameters.
checkDestructuredRoots
type: boolean
default: true
Whether to check destructured parameters when you have code like function doSomething({ a, b }) { ... }. Because there is no named parameter in this example, when this option is true you must have a @param tag that corresponds to {a, b}.
checkGetters
type: boolean
default: true
Whether to check getter methods.
checkRestProperty
type: boolean
default: false
Whether to check rest properties.
checkSetters
type: boolean
default: true
Whether to check setter methods.
checkTypesPattern
type: string
default: "^(?:[oO]bject|[aA]rray|PlainObject|Generic(?:Object|Array))$"
Regex pattern to match types that exempt parameters from checking.
exemptedBy
type: string[]
default: ["inheritdoc"]
List of JSDoc tags that exempt functions from @param checking.
How to use
To enable this rule using the config file or in the CLI, you can use:
{
"plugins": ["jsdoc"],
"rules": {
"jsdoc/require-param": "error"
}
}oxlint --deny jsdoc/require-param --jsdoc-plugin