jsdoc/check-property-names Correctness 
What it does 
Ensures that property names in JSDoc are not duplicated on the same block and that nested properties have defined roots.
Why is this bad? 
@property tags with the same name can be confusing and may indicate a mistake.
Examples 
Examples of incorrect code for this rule:
javascript
/**
 * @typedef {object} state
 * @property {number} foo
 * @property {string} foo
 */
/**
 * @typedef {object} state
 * @property {number} foo.bar
 */Examples of correct code for this rule:
javascript
/**
 * @typedef {object} state
 * @property {number} foo
 */
/**
 * @typedef {object} state
 * @property {object} foo
 * @property {number} foo.bar
 */How to use 
To enable this rule in the CLI or using the config file, you can use:
bash
oxlint --deny jsdoc/check-property-names --jsdoc-pluginjson
{
  "plugins": ["jsdoc"],
  "rules": {
    "jsdoc/check-property-names": "error"
  }
}