Add parsers object to RuleParams type, annotate every rule definition with Rule type for better type validation.

This commit is contained in:
David Anson 2024-02-27 20:42:09 -08:00
parent 996d88a9b4
commit 12c4f79604
54 changed files with 363 additions and 59 deletions

View file

@ -1286,14 +1286,29 @@ module.exports = markdownlint;
*
* @typedef {Object} RuleParams
* @property {string} name File/string name.
* @property {MarkdownItToken[]} tokens Token objects from markdown-it.
* @property {MarkdownItToken[]} tokens Token objects from markdown-it (deprecated, use parsers.markdownit.tokens).
* @property {MarkdownParsers} parsers Markdown parser data.
* @property {string[]} lines File/string lines.
* @property {string[]} frontMatterLines Front matter lines.
* @property {RuleConfiguration} config Rule configuration.
*/
/**
* Markdown-It token.
* Markdown parser data.
*
* @typedef {Object} MarkdownParsers
* @property {ParserMarkdownIt} markdownit Markdown parser data from markdown-it.
*/
/**
* Markdown parser data from markdown-it.
*
* @typedef {Object} ParserMarkdownIt
* @property {MarkdownItToken[]} tokens Token objects from markdown-it.
*/
/**
* markdown-it token.
*
* @typedef {Object} MarkdownItToken
* @property {string[][]} attrs HTML attributes.