diff --git a/Makefile.js b/Makefile.js index 0a0846b9270..3730e9b8db2 100644 --- a/Makefile.js +++ b/Makefile.js @@ -789,6 +789,8 @@ target.checkRuleFiles = function() { RULE_FILES.forEach(filename => { const basename = path.basename(filename, ".js"); const docFilename = `docs/rules/${basename}.md`; + const docText = cat(docFilename); + const ruleCode = cat(filename); /** * Check if basename is present in rule-types.json file. @@ -806,7 +808,6 @@ target.checkRuleFiles = function() { * @private */ function hasIdInTitle(id) { - const docText = cat(docFilename); const idOldAtEndOfTitleRegExp = new RegExp(`^# (.*?) \\(${id}\\)`, "u"); // original format const idNewAtBeginningOfTitleRegExp = new RegExp(`^# ${id}: `, "u"); // new format is same as rules index /* @@ -824,14 +825,23 @@ target.checkRuleFiles = function() { * @private */ function hasDeprecatedInfo() { - const ruleCode = cat(filename); const deprecatedTagRegExp = /@deprecated in ESLint/u; - const docText = cat(docFilename); const deprecatedInfoRegExp = /This rule was .+deprecated.+in ESLint/u; return deprecatedTagRegExp.test(ruleCode) && deprecatedInfoRegExp.test(docText); } + /** + * Check if the rule code has the jsdoc comment with the rule type annotation. + * @returns {boolean} true if present + * @private + */ + function hasRuleTypeJSDocComment() { + const comment = "/** @type {import('../shared/types').Rule} */"; + + return ruleCode.includes(comment); + } + // check for docs if (!test("-f", docFilename)) { console.error("Missing documentation for rule %s", basename); @@ -880,6 +890,11 @@ target.checkRuleFiles = function() { errors++; } } + + if (!hasRuleTypeJSDocComment()) { + console.error(`Missing rule type JSDoc comment from ${basename} rule code.`); + errors++; + } } // check for tests diff --git a/docs/developer-guide/working-with-rules.md b/docs/developer-guide/working-with-rules.md index ee5a5606fac..697b7ed8bff 100644 --- a/docs/developer-guide/working-with-rules.md +++ b/docs/developer-guide/working-with-rules.md @@ -24,9 +24,7 @@ Here is the basic format of the source file for a rule: // Rule Definition //------------------------------------------------------------------------------ -/** - * @type {import('eslint').Rule.RuleModule} - */ +/** @type {import('eslint').Rule.RuleModule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/accessor-pairs.js b/lib/rules/accessor-pairs.js index f0472526680..2fcf1535290 100644 --- a/lib/rules/accessor-pairs.js +++ b/lib/rules/accessor-pairs.js @@ -134,6 +134,7 @@ function isPropertyDescriptor(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/array-bracket-newline.js b/lib/rules/array-bracket-newline.js index 28a05b35043..0beb138c4e2 100644 --- a/lib/rules/array-bracket-newline.js +++ b/lib/rules/array-bracket-newline.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/array-bracket-spacing.js b/lib/rules/array-bracket-spacing.js index 1eea99c14ca..e4912ec17a1 100644 --- a/lib/rules/array-bracket-spacing.js +++ b/lib/rules/array-bracket-spacing.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/array-callback-return.js b/lib/rules/array-callback-return.js index d13ecd71790..fba414c1ef4 100644 --- a/lib/rules/array-callback-return.js +++ b/lib/rules/array-callback-return.js @@ -133,6 +133,7 @@ function getArrayMethodName(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/array-element-newline.js b/lib/rules/array-element-newline.js index 535fa2155a2..77f5fc9e9ce 100644 --- a/lib/rules/array-element-newline.js +++ b/lib/rules/array-element-newline.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/arrow-body-style.js b/lib/rules/arrow-body-style.js index 3a3f544444e..7a141b0d788 100644 --- a/lib/rules/arrow-body-style.js +++ b/lib/rules/arrow-body-style.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/arrow-parens.js b/lib/rules/arrow-parens.js index 4f4dea0e237..779ab6fe9c9 100644 --- a/lib/rules/arrow-parens.js +++ b/lib/rules/arrow-parens.js @@ -27,6 +27,7 @@ function hasBlockBody(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/arrow-spacing.js b/lib/rules/arrow-spacing.js index 9e1ed71d4bd..9fdcdd58ba7 100644 --- a/lib/rules/arrow-spacing.js +++ b/lib/rules/arrow-spacing.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/block-scoped-var.js b/lib/rules/block-scoped-var.js index d98250b062b..3a277863ef2 100644 --- a/lib/rules/block-scoped-var.js +++ b/lib/rules/block-scoped-var.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/block-spacing.js b/lib/rules/block-spacing.js index 990b441e34d..53303a9b004 100644 --- a/lib/rules/block-spacing.js +++ b/lib/rules/block-spacing.js @@ -11,6 +11,7 @@ const util = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/brace-style.js b/lib/rules/brace-style.js index 89f9ba55953..f4adb9490eb 100644 --- a/lib/rules/brace-style.js +++ b/lib/rules/brace-style.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/callback-return.js b/lib/rules/callback-return.js index 449b9a96227..532faee4518 100644 --- a/lib/rules/callback-return.js +++ b/lib/rules/callback-return.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/camelcase.js b/lib/rules/camelcase.js index 7e8fc68da63..61dd062edea 100644 --- a/lib/rules/camelcase.js +++ b/lib/rules/camelcase.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/capitalized-comments.js b/lib/rules/capitalized-comments.js index e5f429356b2..6ea87a70a81 100644 --- a/lib/rules/capitalized-comments.js +++ b/lib/rules/capitalized-comments.js @@ -99,6 +99,7 @@ function createRegExpForIgnorePatterns(normalizedOptions) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/class-methods-use-this.js b/lib/rules/class-methods-use-this.js index beb742d93a7..1af6084ed8b 100644 --- a/lib/rules/class-methods-use-this.js +++ b/lib/rules/class-methods-use-this.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/comma-dangle.js b/lib/rules/comma-dangle.js index e97a59886e3..232b27cb39c 100644 --- a/lib/rules/comma-dangle.js +++ b/lib/rules/comma-dangle.js @@ -70,6 +70,7 @@ function normalizeOptions(optionValue, ecmaVersion) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/comma-spacing.js b/lib/rules/comma-spacing.js index d30a5ef320d..23a51752814 100644 --- a/lib/rules/comma-spacing.js +++ b/lib/rules/comma-spacing.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/comma-style.js b/lib/rules/comma-style.js index 1d62fcf1c4d..cbcbe3ae15b 100644 --- a/lib/rules/comma-style.js +++ b/lib/rules/comma-style.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/complexity.js b/lib/rules/complexity.js index a247039760e..b2355556af9 100644 --- a/lib/rules/complexity.js +++ b/lib/rules/complexity.js @@ -17,6 +17,7 @@ const { upperCaseFirst } = require("../shared/string-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/computed-property-spacing.js b/lib/rules/computed-property-spacing.js index c8d8834ea92..4850a8b651f 100644 --- a/lib/rules/computed-property-spacing.js +++ b/lib/rules/computed-property-spacing.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/consistent-return.js b/lib/rules/consistent-return.js index b509c36564f..fffb4357b65 100644 --- a/lib/rules/consistent-return.js +++ b/lib/rules/consistent-return.js @@ -40,6 +40,7 @@ function isClassConstructor(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/consistent-this.js b/lib/rules/consistent-this.js index 025f3d0a340..a613f992d7a 100644 --- a/lib/rules/consistent-this.js +++ b/lib/rules/consistent-this.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/constructor-super.js b/lib/rules/constructor-super.js index 38eb489327d..defdb91d69d 100644 --- a/lib/rules/constructor-super.js +++ b/lib/rules/constructor-super.js @@ -116,6 +116,7 @@ function isPossibleConstructor(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/curly.js b/lib/rules/curly.js index 57c2e72e4e4..29e73953da6 100644 --- a/lib/rules/curly.js +++ b/lib/rules/curly.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/default-case-last.js b/lib/rules/default-case-last.js index 1eeadd1e716..34be2894e41 100644 --- a/lib/rules/default-case-last.js +++ b/lib/rules/default-case-last.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/default-case.js b/lib/rules/default-case.js index b839aa20133..6ce238529d0 100644 --- a/lib/rules/default-case.js +++ b/lib/rules/default-case.js @@ -10,6 +10,7 @@ const DEFAULT_COMMENT_PATTERN = /^no default$/iu; // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/default-param-last.js b/lib/rules/default-param-last.js index 8382d46e760..ea12a2a558a 100644 --- a/lib/rules/default-param-last.js +++ b/lib/rules/default-param-last.js @@ -5,6 +5,7 @@ "use strict"; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/dot-location.js b/lib/rules/dot-location.js index d80f87090a7..9dea4f25cf7 100644 --- a/lib/rules/dot-location.js +++ b/lib/rules/dot-location.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/dot-notation.js b/lib/rules/dot-notation.js index 1cd908f7a2c..6f6b5166f76 100644 --- a/lib/rules/dot-notation.js +++ b/lib/rules/dot-notation.js @@ -20,6 +20,7 @@ const validIdentifier = /^[a-zA-Z_$][a-zA-Z0-9_$]*$/u; // `null` literal must be handled separately. const literalTypesToCheck = new Set(["string", "boolean"]); +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/eol-last.js b/lib/rules/eol-last.js index f8b922c2503..393b934125e 100644 --- a/lib/rules/eol-last.js +++ b/lib/rules/eol-last.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/eqeqeq.js b/lib/rules/eqeqeq.js index d3e6b5af0b6..b5d784dad6e 100644 --- a/lib/rules/eqeqeq.js +++ b/lib/rules/eqeqeq.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/for-direction.js b/lib/rules/for-direction.js index abe4ad3c6b8..d3d825a5766 100644 --- a/lib/rules/for-direction.js +++ b/lib/rules/for-direction.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/func-call-spacing.js b/lib/rules/func-call-spacing.js index a6ebde4ac0b..0391d99c763 100644 --- a/lib/rules/func-call-spacing.js +++ b/lib/rules/func-call-spacing.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/func-name-matching.js b/lib/rules/func-name-matching.js index 122cfd8d33c..9cee5fe019a 100644 --- a/lib/rules/func-name-matching.js +++ b/lib/rules/func-name-matching.js @@ -68,6 +68,7 @@ const optionsObject = { additionalProperties: false }; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/func-names.js b/lib/rules/func-names.js index 589903c96a5..c7b2072e177 100644 --- a/lib/rules/func-names.js +++ b/lib/rules/func-names.js @@ -24,6 +24,7 @@ function isFunctionName(variable) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/func-style.js b/lib/rules/func-style.js index 0921ff54cd4..f71574890c8 100644 --- a/lib/rules/func-style.js +++ b/lib/rules/func-style.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/function-call-argument-newline.js b/lib/rules/function-call-argument-newline.js index ed4e296fd6e..f3cfeee703a 100644 --- a/lib/rules/function-call-argument-newline.js +++ b/lib/rules/function-call-argument-newline.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/function-paren-newline.js b/lib/rules/function-paren-newline.js index 18435b78978..ed94fad460c 100644 --- a/lib/rules/function-paren-newline.js +++ b/lib/rules/function-paren-newline.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/generator-star-spacing.js b/lib/rules/generator-star-spacing.js index c50445c9c9b..28e81013fcb 100644 --- a/lib/rules/generator-star-spacing.js +++ b/lib/rules/generator-star-spacing.js @@ -25,6 +25,7 @@ const OVERRIDE_SCHEMA = { ] }; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/getter-return.js b/lib/rules/getter-return.js index 8bb42536e8c..03cfce2cf1a 100644 --- a/lib/rules/getter-return.js +++ b/lib/rules/getter-return.js @@ -29,6 +29,7 @@ function isReachable(segment) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/global-require.js b/lib/rules/global-require.js index f2d29d1df5a..f00ca9bf6dd 100644 --- a/lib/rules/global-require.js +++ b/lib/rules/global-require.js @@ -48,6 +48,7 @@ function isShadowed(scope, node) { return reference && reference.resolved && reference.resolved.defs.length > 0; } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/grouped-accessor-pairs.js b/lib/rules/grouped-accessor-pairs.js index cc4a4b522a1..0fe6f91e4db 100644 --- a/lib/rules/grouped-accessor-pairs.js +++ b/lib/rules/grouped-accessor-pairs.js @@ -90,6 +90,7 @@ function isAccessorKind(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/guard-for-in.js b/lib/rules/guard-for-in.js index 6f877bab958..1c52af7d4cd 100644 --- a/lib/rules/guard-for-in.js +++ b/lib/rules/guard-for-in.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/handle-callback-err.js b/lib/rules/handle-callback-err.js index cdb3a7642ea..f370407743a 100644 --- a/lib/rules/handle-callback-err.js +++ b/lib/rules/handle-callback-err.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/id-blacklist.js b/lib/rules/id-blacklist.js index 77deac70708..f7e04ae7376 100644 --- a/lib/rules/id-blacklist.js +++ b/lib/rules/id-blacklist.js @@ -110,6 +110,7 @@ function isShorthandPropertyDefinition(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/id-denylist.js b/lib/rules/id-denylist.js index 2b346355423..a0b1f416f46 100644 --- a/lib/rules/id-denylist.js +++ b/lib/rules/id-denylist.js @@ -93,6 +93,7 @@ function isPropertyNameInDestructuring(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/id-length.js b/lib/rules/id-length.js index ac6385f59c0..3701c66e347 100644 --- a/lib/rules/id-length.js +++ b/lib/rules/id-length.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/id-match.js b/lib/rules/id-match.js index 7a6cd058f2e..bcc07a8e372 100644 --- a/lib/rules/id-match.js +++ b/lib/rules/id-match.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/implicit-arrow-linebreak.js b/lib/rules/implicit-arrow-linebreak.js index 2d09552440b..71b2437eef8 100644 --- a/lib/rules/implicit-arrow-linebreak.js +++ b/lib/rules/implicit-arrow-linebreak.js @@ -9,6 +9,7 @@ const { isCommentToken, isNotOpeningParenToken } = require("./utils/ast-utils"); //------------------------------------------------------------------------------ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/indent-legacy.js b/lib/rules/indent-legacy.js index 54ca9ddd138..bd61f6f8431 100644 --- a/lib/rules/indent-legacy.js +++ b/lib/rules/indent-legacy.js @@ -20,6 +20,7 @@ const astUtils = require("./utils/ast-utils"); //------------------------------------------------------------------------------ /* istanbul ignore next: this rule has known coverage issues, but it's deprecated and shouldn't be updated in the future anyway. */ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/indent.js b/lib/rules/indent.js index f4dbfff27b4..6152bc561f9 100644 --- a/lib/rules/indent.js +++ b/lib/rules/indent.js @@ -494,6 +494,7 @@ const ELEMENT_LIST_SCHEMA = { ] }; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/init-declarations.js b/lib/rules/init-declarations.js index d994bbc1ea0..d952b8925ed 100644 --- a/lib/rules/init-declarations.js +++ b/lib/rules/init-declarations.js @@ -42,6 +42,7 @@ function isInitialized(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/jsx-quotes.js b/lib/rules/jsx-quotes.js index cbadc19d5ed..a0cdfaa62be 100644 --- a/lib/rules/jsx-quotes.js +++ b/lib/rules/jsx-quotes.js @@ -36,6 +36,7 @@ const QUOTE_SETTINGS = { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/key-spacing.js b/lib/rules/key-spacing.js index c09cebb513a..ce8bad5bb35 100644 --- a/lib/rules/key-spacing.js +++ b/lib/rules/key-spacing.js @@ -133,6 +133,7 @@ function initOptions(toOptions, fromOptions) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/keyword-spacing.js b/lib/rules/keyword-spacing.js index 44222e1a493..956fc42656d 100644 --- a/lib/rules/keyword-spacing.js +++ b/lib/rules/keyword-spacing.js @@ -61,6 +61,7 @@ function isCloseParenOfTemplate(token) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/line-comment-position.js b/lib/rules/line-comment-position.js index ad109a4f795..9ce2831dec6 100644 --- a/lib/rules/line-comment-position.js +++ b/lib/rules/line-comment-position.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/linebreak-style.js b/lib/rules/linebreak-style.js index 92996ebd331..483788aa6ef 100644 --- a/lib/rules/linebreak-style.js +++ b/lib/rules/linebreak-style.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/lines-around-comment.js b/lib/rules/lines-around-comment.js index 513d196224e..74df09b01bd 100644 --- a/lib/rules/lines-around-comment.js +++ b/lib/rules/lines-around-comment.js @@ -49,6 +49,7 @@ function getCommentLineNums(comments) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/lines-around-directive.js b/lib/rules/lines-around-directive.js index c0c70e1a61f..21884f162e8 100644 --- a/lib/rules/lines-around-directive.js +++ b/lib/rules/lines-around-directive.js @@ -12,6 +12,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/lines-between-class-members.js b/lib/rules/lines-between-class-members.js index e4c05f3050c..1d6b7e7693e 100644 --- a/lib/rules/lines-between-class-members.js +++ b/lib/rules/lines-between-class-members.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/max-classes-per-file.js b/lib/rules/max-classes-per-file.js index 3d26108a715..2157bebe4a9 100644 --- a/lib/rules/max-classes-per-file.js +++ b/lib/rules/max-classes-per-file.js @@ -13,6 +13,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/max-depth.js b/lib/rules/max-depth.js index bdacc66afb1..8006ffdef75 100644 --- a/lib/rules/max-depth.js +++ b/lib/rules/max-depth.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/max-len.js b/lib/rules/max-len.js index 8c7985d3e16..d05559e5baf 100644 --- a/lib/rules/max-len.js +++ b/lib/rules/max-len.js @@ -63,6 +63,7 @@ const OPTIONS_OR_INTEGER_SCHEMA = { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/max-lines-per-function.js b/lib/rules/max-lines-per-function.js index b2130ca260b..5985a739e4b 100644 --- a/lib/rules/max-lines-per-function.js +++ b/lib/rules/max-lines-per-function.js @@ -65,6 +65,7 @@ function getCommentLineNumbers(comments) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/max-lines.js b/lib/rules/max-lines.js index 291d7d9c1a8..31fc657a63c 100644 --- a/lib/rules/max-lines.js +++ b/lib/rules/max-lines.js @@ -28,6 +28,7 @@ function range(start, end) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/max-nested-callbacks.js b/lib/rules/max-nested-callbacks.js index df24a96da58..0d430507790 100644 --- a/lib/rules/max-nested-callbacks.js +++ b/lib/rules/max-nested-callbacks.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/max-params.js b/lib/rules/max-params.js index c8be60e5774..72379d217d6 100644 --- a/lib/rules/max-params.js +++ b/lib/rules/max-params.js @@ -16,6 +16,7 @@ const { upperCaseFirst } = require("../shared/string-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/max-statements-per-line.js b/lib/rules/max-statements-per-line.js index 7c743292bd6..61b508cf6cd 100644 --- a/lib/rules/max-statements-per-line.js +++ b/lib/rules/max-statements-per-line.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/max-statements.js b/lib/rules/max-statements.js index 969e40bbd85..ac117e92e72 100644 --- a/lib/rules/max-statements.js +++ b/lib/rules/max-statements.js @@ -16,6 +16,7 @@ const { upperCaseFirst } = require("../shared/string-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/multiline-comment-style.js b/lib/rules/multiline-comment-style.js index da5ee50df4a..7985bc86270 100644 --- a/lib/rules/multiline-comment-style.js +++ b/lib/rules/multiline-comment-style.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/multiline-ternary.js b/lib/rules/multiline-ternary.js index 6f468c828c0..91aa5a10031 100644 --- a/lib/rules/multiline-ternary.js +++ b/lib/rules/multiline-ternary.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/new-cap.js b/lib/rules/new-cap.js index 9abf3379b8a..466cfd4c585 100644 --- a/lib/rules/new-cap.js +++ b/lib/rules/new-cap.js @@ -76,6 +76,7 @@ function calculateCapIsNewExceptions(config) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/new-parens.js b/lib/rules/new-parens.js index 786300dba7d..8ee4a2e1d19 100644 --- a/lib/rules/new-parens.js +++ b/lib/rules/new-parens.js @@ -19,6 +19,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/newline-after-var.js b/lib/rules/newline-after-var.js index 3eea1b1f732..e519a3afb6b 100644 --- a/lib/rules/newline-after-var.js +++ b/lib/rules/newline-after-var.js @@ -16,6 +16,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/newline-before-return.js b/lib/rules/newline-before-return.js index fd6341e67c0..f4aa5166f0e 100644 --- a/lib/rules/newline-before-return.js +++ b/lib/rules/newline-before-return.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/newline-per-chained-call.js b/lib/rules/newline-per-chained-call.js index 8de9a6a2398..818bf703d2b 100644 --- a/lib/rules/newline-per-chained-call.js +++ b/lib/rules/newline-per-chained-call.js @@ -12,6 +12,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-alert.js b/lib/rules/no-alert.js index 918b98489a7..c6f7ddf38db 100644 --- a/lib/rules/no-alert.js +++ b/lib/rules/no-alert.js @@ -82,6 +82,7 @@ function isGlobalThisReferenceOrGlobalWindow(scope, node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-array-constructor.js b/lib/rules/no-array-constructor.js index 0904fa6d8f0..02e6114dadc 100644 --- a/lib/rules/no-array-constructor.js +++ b/lib/rules/no-array-constructor.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-async-promise-executor.js b/lib/rules/no-async-promise-executor.js index 27116f1da78..f940f152e3c 100644 --- a/lib/rules/no-async-promise-executor.js +++ b/lib/rules/no-async-promise-executor.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-await-in-loop.js b/lib/rules/no-await-in-loop.js index 38af8b56c1a..3aea39a16b9 100644 --- a/lib/rules/no-await-in-loop.js +++ b/lib/rules/no-await-in-loop.js @@ -53,6 +53,7 @@ function isLooped(node, parent) { } } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-bitwise.js b/lib/rules/no-bitwise.js index 10bf24a2997..1de1619bffa 100644 --- a/lib/rules/no-bitwise.js +++ b/lib/rules/no-bitwise.js @@ -20,6 +20,7 @@ const BITWISE_OPERATORS = [ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-buffer-constructor.js b/lib/rules/no-buffer-constructor.js index cc5906e78a3..678d7032ab4 100644 --- a/lib/rules/no-buffer-constructor.js +++ b/lib/rules/no-buffer-constructor.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/no-caller.js b/lib/rules/no-caller.js index dbb527906f2..a6ad94f2fe6 100644 --- a/lib/rules/no-caller.js +++ b/lib/rules/no-caller.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-case-declarations.js b/lib/rules/no-case-declarations.js index a132f0370fa..d722f0cf584 100644 --- a/lib/rules/no-case-declarations.js +++ b/lib/rules/no-case-declarations.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-catch-shadow.js b/lib/rules/no-catch-shadow.js index 0cbeedf90b6..d09c9134968 100644 --- a/lib/rules/no-catch-shadow.js +++ b/lib/rules/no-catch-shadow.js @@ -16,6 +16,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-class-assign.js b/lib/rules/no-class-assign.js index 839ad03e292..f679d4263e8 100644 --- a/lib/rules/no-class-assign.js +++ b/lib/rules/no-class-assign.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-compare-neg-zero.js b/lib/rules/no-compare-neg-zero.js index e8fdaa0cc69..fb56b99c58b 100644 --- a/lib/rules/no-compare-neg-zero.js +++ b/lib/rules/no-compare-neg-zero.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-cond-assign.js b/lib/rules/no-cond-assign.js index 42f75af7d0c..30d5b3bdaee 100644 --- a/lib/rules/no-cond-assign.js +++ b/lib/rules/no-cond-assign.js @@ -28,6 +28,7 @@ const NODE_DESCRIPTIONS = { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-confusing-arrow.js b/lib/rules/no-confusing-arrow.js index fa87f4012e8..7b736c19728 100644 --- a/lib/rules/no-confusing-arrow.js +++ b/lib/rules/no-confusing-arrow.js @@ -25,6 +25,7 @@ function isConditional(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-console.js b/lib/rules/no-console.js index a5937cbddb2..c0802e23dc7 100644 --- a/lib/rules/no-console.js +++ b/lib/rules/no-console.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-const-assign.js b/lib/rules/no-const-assign.js index 6ca1b6107a8..b5f7c37a98f 100644 --- a/lib/rules/no-const-assign.js +++ b/lib/rules/no-const-assign.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-constant-condition.js b/lib/rules/no-constant-condition.js index 7a7030a9a46..2c57d9fb3ab 100644 --- a/lib/rules/no-constant-condition.js +++ b/lib/rules/no-constant-condition.js @@ -13,6 +13,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-constructor-return.js b/lib/rules/no-constructor-return.js index b4b5baf743c..f8a717c75e5 100644 --- a/lib/rules/no-constructor-return.js +++ b/lib/rules/no-constructor-return.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-continue.js b/lib/rules/no-continue.js index e72e862df59..8658a7984bb 100644 --- a/lib/rules/no-continue.js +++ b/lib/rules/no-continue.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-control-regex.js b/lib/rules/no-control-regex.js index 908d61ae449..04f3449fb19 100644 --- a/lib/rules/no-control-regex.js +++ b/lib/rules/no-control-regex.js @@ -46,6 +46,7 @@ const collector = new (class { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-debugger.js b/lib/rules/no-debugger.js index 46dd57639cf..e62db1b7393 100644 --- a/lib/rules/no-debugger.js +++ b/lib/rules/no-debugger.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-delete-var.js b/lib/rules/no-delete-var.js index 1438ebc33bd..1d1c710b098 100644 --- a/lib/rules/no-delete-var.js +++ b/lib/rules/no-delete-var.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-div-regex.js b/lib/rules/no-div-regex.js index 40388c366e2..175f6c20104 100644 --- a/lib/rules/no-div-regex.js +++ b/lib/rules/no-div-regex.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-dupe-args.js b/lib/rules/no-dupe-args.js index 0880b9c8124..13090e19a87 100644 --- a/lib/rules/no-dupe-args.js +++ b/lib/rules/no-dupe-args.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-dupe-class-members.js b/lib/rules/no-dupe-class-members.js index f74865b82a8..ae61f164ca9 100644 --- a/lib/rules/no-dupe-class-members.js +++ b/lib/rules/no-dupe-class-members.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-dupe-else-if.js b/lib/rules/no-dupe-else-if.js index 0d8b17cc0ab..1e1d549185d 100644 --- a/lib/rules/no-dupe-else-if.js +++ b/lib/rules/no-dupe-else-if.js @@ -46,6 +46,7 @@ const splitByAnd = splitByLogicalOperator.bind(null, "&&"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-dupe-keys.js b/lib/rules/no-dupe-keys.js index ecec022185f..dac13cf9e09 100644 --- a/lib/rules/no-dupe-keys.js +++ b/lib/rules/no-dupe-keys.js @@ -82,6 +82,7 @@ class ObjectInfo { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-duplicate-case.js b/lib/rules/no-duplicate-case.js index 4669dcee1ba..a0c0b31308b 100644 --- a/lib/rules/no-duplicate-case.js +++ b/lib/rules/no-duplicate-case.js @@ -16,6 +16,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-duplicate-imports.js b/lib/rules/no-duplicate-imports.js index 2663698dc96..947bb30c2e1 100644 --- a/lib/rules/no-duplicate-imports.js +++ b/lib/rules/no-duplicate-imports.js @@ -227,6 +227,7 @@ function handleImportsExports( }; } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-else-return.js b/lib/rules/no-else-return.js index 4c981ae1592..3662fc8c6e7 100644 --- a/lib/rules/no-else-return.js +++ b/lib/rules/no-else-return.js @@ -16,6 +16,7 @@ const FixTracker = require("./utils/fix-tracker"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-empty-character-class.js b/lib/rules/no-empty-character-class.js index 85e8ef76791..f75f59191aa 100644 --- a/lib/rules/no-empty-character-class.js +++ b/lib/rules/no-empty-character-class.js @@ -24,6 +24,7 @@ const regex = /^([^\\[]|\\.|\[([^\\\]]|\\.)+\])*$/u; // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-empty-function.js b/lib/rules/no-empty-function.js index 8b1073a59d8..6e73d63b98a 100644 --- a/lib/rules/no-empty-function.js +++ b/lib/rules/no-empty-function.js @@ -89,6 +89,7 @@ function getKind(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-empty-pattern.js b/lib/rules/no-empty-pattern.js index 99ea3a7905b..2de575fcf08 100644 --- a/lib/rules/no-empty-pattern.js +++ b/lib/rules/no-empty-pattern.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-empty.js b/lib/rules/no-empty.js index 4ed3c5c5458..f04ee2cb320 100644 --- a/lib/rules/no-empty.js +++ b/lib/rules/no-empty.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-eq-null.js b/lib/rules/no-eq-null.js index dae922840b8..b693737126d 100644 --- a/lib/rules/no-eq-null.js +++ b/lib/rules/no-eq-null.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-eval.js b/lib/rules/no-eval.js index 96b85a07120..ae6d71b80c9 100644 --- a/lib/rules/no-eval.js +++ b/lib/rules/no-eval.js @@ -37,6 +37,7 @@ function isMember(node, name) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-ex-assign.js b/lib/rules/no-ex-assign.js index cd56c94af75..3db14206b0b 100644 --- a/lib/rules/no-ex-assign.js +++ b/lib/rules/no-ex-assign.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-extend-native.js b/lib/rules/no-extend-native.js index 4d5accbae63..771200f26f7 100644 --- a/lib/rules/no-extend-native.js +++ b/lib/rules/no-extend-native.js @@ -16,6 +16,7 @@ const globals = require("globals"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-extra-bind.js b/lib/rules/no-extra-bind.js index 6fd3be1d601..561cb1a33f8 100644 --- a/lib/rules/no-extra-bind.js +++ b/lib/rules/no-extra-bind.js @@ -20,6 +20,7 @@ const SIDE_EFFECT_FREE_NODE_TYPES = new Set(["Literal", "Identifier", "ThisExpre // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-extra-boolean-cast.js b/lib/rules/no-extra-boolean-cast.js index cb061dac5d5..f45ac616ed9 100644 --- a/lib/rules/no-extra-boolean-cast.js +++ b/lib/rules/no-extra-boolean-cast.js @@ -18,6 +18,7 @@ const precedence = astUtils.getPrecedence; // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-extra-label.js b/lib/rules/no-extra-label.js index bbb2413b2c7..9186a9faca1 100644 --- a/lib/rules/no-extra-label.js +++ b/lib/rules/no-extra-label.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-extra-parens.js b/lib/rules/no-extra-parens.js index 0756d2fb2c7..5b54ae26fe3 100644 --- a/lib/rules/no-extra-parens.js +++ b/lib/rules/no-extra-parens.js @@ -11,6 +11,7 @@ const { isParenthesized: isParenthesizedRaw } = require("eslint-utils"); const astUtils = require("./utils/ast-utils.js"); +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-extra-semi.js b/lib/rules/no-extra-semi.js index 0e2bcaf0778..89d9fce57f0 100644 --- a/lib/rules/no-extra-semi.js +++ b/lib/rules/no-extra-semi.js @@ -16,6 +16,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-fallthrough.js b/lib/rules/no-fallthrough.js index bf2c82514bb..f3b7c8554ad 100644 --- a/lib/rules/no-fallthrough.js +++ b/lib/rules/no-fallthrough.js @@ -58,6 +58,7 @@ function hasBlankLinesBetween(node, token) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-floating-decimal.js b/lib/rules/no-floating-decimal.js index 92ac2326b9f..8831bb824d0 100644 --- a/lib/rules/no-floating-decimal.js +++ b/lib/rules/no-floating-decimal.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-func-assign.js b/lib/rules/no-func-assign.js index aa04f337ae0..04a7dd37055 100644 --- a/lib/rules/no-func-assign.js +++ b/lib/rules/no-func-assign.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-global-assign.js b/lib/rules/no-global-assign.js index 85aac7cdc0f..340c6c798c3 100644 --- a/lib/rules/no-global-assign.js +++ b/lib/rules/no-global-assign.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-implicit-coercion.js b/lib/rules/no-implicit-coercion.js index 1d11e10d597..f646093f555 100644 --- a/lib/rules/no-implicit-coercion.js +++ b/lib/rules/no-implicit-coercion.js @@ -167,6 +167,7 @@ function getNonEmptyOperand(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-implicit-globals.js b/lib/rules/no-implicit-globals.js index 8740cd80531..5dd6aa71acd 100644 --- a/lib/rules/no-implicit-globals.js +++ b/lib/rules/no-implicit-globals.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-implied-eval.js b/lib/rules/no-implied-eval.js index 2432e68b612..38de5b31ccc 100644 --- a/lib/rules/no-implied-eval.js +++ b/lib/rules/no-implied-eval.js @@ -16,6 +16,7 @@ const { getStaticValue } = require("eslint-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-import-assign.js b/lib/rules/no-import-assign.js index fbe63d0539f..385386e9a43 100644 --- a/lib/rules/no-import-assign.js +++ b/lib/rules/no-import-assign.js @@ -174,6 +174,7 @@ function getWriteNode(id) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-inline-comments.js b/lib/rules/no-inline-comments.js index 8a955a6130e..2ed7feb46b8 100644 --- a/lib/rules/no-inline-comments.js +++ b/lib/rules/no-inline-comments.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-inner-declarations.js b/lib/rules/no-inner-declarations.js index 49b5114a209..3b0feb71a3f 100644 --- a/lib/rules/no-inner-declarations.js +++ b/lib/rules/no-inner-declarations.js @@ -42,6 +42,7 @@ function getAllowedBodyDescription(node) { return "program"; } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-invalid-regexp.js b/lib/rules/no-invalid-regexp.js index ee199328966..92ac5125e60 100644 --- a/lib/rules/no-invalid-regexp.js +++ b/lib/rules/no-invalid-regexp.js @@ -17,6 +17,7 @@ const undefined1 = void 0; // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-invalid-this.js b/lib/rules/no-invalid-this.js index e1d7cbcf553..5f9b9f871ec 100644 --- a/lib/rules/no-invalid-this.js +++ b/lib/rules/no-invalid-this.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-irregular-whitespace.js b/lib/rules/no-irregular-whitespace.js index c1609715394..65c4d67285c 100644 --- a/lib/rules/no-irregular-whitespace.js +++ b/lib/rules/no-irregular-whitespace.js @@ -25,6 +25,7 @@ const LINE_BREAK = astUtils.createGlobalLinebreakMatcher(); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-iterator.js b/lib/rules/no-iterator.js index 4117f6211c7..d11267286c8 100644 --- a/lib/rules/no-iterator.js +++ b/lib/rules/no-iterator.js @@ -15,6 +15,7 @@ const { getStaticPropertyName } = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-label-var.js b/lib/rules/no-label-var.js index 4532527c6e8..50211811ac8 100644 --- a/lib/rules/no-label-var.js +++ b/lib/rules/no-label-var.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-labels.js b/lib/rules/no-labels.js index 5dd15be092e..2e79f378a9b 100644 --- a/lib/rules/no-labels.js +++ b/lib/rules/no-labels.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-lone-blocks.js b/lib/rules/no-lone-blocks.js index 33d4706a946..f9fe9514dd7 100644 --- a/lib/rules/no-lone-blocks.js +++ b/lib/rules/no-lone-blocks.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-lonely-if.js b/lib/rules/no-lonely-if.js index e44f000141b..9abd4650b56 100644 --- a/lib/rules/no-lonely-if.js +++ b/lib/rules/no-lonely-if.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-loop-func.js b/lib/rules/no-loop-func.js index d1a7868072a..c5460616dc1 100644 --- a/lib/rules/no-loop-func.js +++ b/lib/rules/no-loop-func.js @@ -148,6 +148,7 @@ function isSafe(loopNode, reference) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-loss-of-precision.js b/lib/rules/no-loss-of-precision.js index 417616dd231..fefc7b768fe 100644 --- a/lib/rules/no-loss-of-precision.js +++ b/lib/rules/no-loss-of-precision.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-magic-numbers.js b/lib/rules/no-magic-numbers.js index a2c678e7100..dfcd593ecbe 100644 --- a/lib/rules/no-magic-numbers.js +++ b/lib/rules/no-magic-numbers.js @@ -26,6 +26,7 @@ function normalizeIgnoreValue(x) { return x; } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-misleading-character-class.js b/lib/rules/no-misleading-character-class.js index 70e31e604f4..94b28784a10 100644 --- a/lib/rules/no-misleading-character-class.js +++ b/lib/rules/no-misleading-character-class.js @@ -98,6 +98,7 @@ const kinds = Object.keys(hasCharacterSequence); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-mixed-operators.js b/lib/rules/no-mixed-operators.js index ed37a90b1c6..c75d01147c9 100644 --- a/lib/rules/no-mixed-operators.js +++ b/lib/rules/no-mixed-operators.js @@ -82,6 +82,7 @@ function getChildNode(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-mixed-requires.js b/lib/rules/no-mixed-requires.js index f7c2d11ee4f..5e05cf7a72a 100644 --- a/lib/rules/no-mixed-requires.js +++ b/lib/rules/no-mixed-requires.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/no-mixed-spaces-and-tabs.js b/lib/rules/no-mixed-spaces-and-tabs.js index ac73cddda3b..f82a352caa4 100644 --- a/lib/rules/no-mixed-spaces-and-tabs.js +++ b/lib/rules/no-mixed-spaces-and-tabs.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-multi-assign.js b/lib/rules/no-multi-assign.js index 8d7bd32c7dd..be4d41f33d6 100644 --- a/lib/rules/no-multi-assign.js +++ b/lib/rules/no-multi-assign.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-multi-spaces.js b/lib/rules/no-multi-spaces.js index 0134dd279b5..e37aae0a16e 100644 --- a/lib/rules/no-multi-spaces.js +++ b/lib/rules/no-multi-spaces.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-multi-str.js b/lib/rules/no-multi-str.js index 848f8d405a8..6a17d581b98 100644 --- a/lib/rules/no-multi-str.js +++ b/lib/rules/no-multi-str.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-multiple-empty-lines.js b/lib/rules/no-multiple-empty-lines.js index 33ac76f6037..d012303cc33 100644 --- a/lib/rules/no-multiple-empty-lines.js +++ b/lib/rules/no-multiple-empty-lines.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-native-reassign.js b/lib/rules/no-native-reassign.js index 80ba0948cbc..1814a5b3c5b 100644 --- a/lib/rules/no-native-reassign.js +++ b/lib/rules/no-native-reassign.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-negated-condition.js b/lib/rules/no-negated-condition.js index b5cbadca50f..a2870137f57 100644 --- a/lib/rules/no-negated-condition.js +++ b/lib/rules/no-negated-condition.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-negated-in-lhs.js b/lib/rules/no-negated-in-lhs.js index 0f9c84be6c9..95ab58a080f 100644 --- a/lib/rules/no-negated-in-lhs.js +++ b/lib/rules/no-negated-in-lhs.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-nested-ternary.js b/lib/rules/no-nested-ternary.js index 2d3359d38f1..c87875e4040 100644 --- a/lib/rules/no-nested-ternary.js +++ b/lib/rules/no-nested-ternary.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-new-func.js b/lib/rules/no-new-func.js index ddf61024dac..3b599433519 100644 --- a/lib/rules/no-new-func.js +++ b/lib/rules/no-new-func.js @@ -21,6 +21,7 @@ const callMethods = new Set(["apply", "bind", "call"]); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-new-object.js b/lib/rules/no-new-object.js index 17dfd344476..1a5784df24d 100644 --- a/lib/rules/no-new-object.js +++ b/lib/rules/no-new-object.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-new-require.js b/lib/rules/no-new-require.js index 7973f8f2a27..5dadf6c2538 100644 --- a/lib/rules/no-new-require.js +++ b/lib/rules/no-new-require.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/no-new-symbol.js b/lib/rules/no-new-symbol.js index 391527df90c..6acfca94358 100644 --- a/lib/rules/no-new-symbol.js +++ b/lib/rules/no-new-symbol.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-new-wrappers.js b/lib/rules/no-new-wrappers.js index b697d8d7951..4667d581f65 100644 --- a/lib/rules/no-new-wrappers.js +++ b/lib/rules/no-new-wrappers.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-new.js b/lib/rules/no-new.js index 1b37f077d5c..5b0976534d6 100644 --- a/lib/rules/no-new.js +++ b/lib/rules/no-new.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-nonoctal-decimal-escape.js b/lib/rules/no-nonoctal-decimal-escape.js index da61f61d02f..3edd269faeb 100644 --- a/lib/rules/no-nonoctal-decimal-escape.js +++ b/lib/rules/no-nonoctal-decimal-escape.js @@ -24,6 +24,7 @@ function getUnicodeEscape(character) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-obj-calls.js b/lib/rules/no-obj-calls.js index d62c1f0b4be..667ba69d803 100644 --- a/lib/rules/no-obj-calls.js +++ b/lib/rules/no-obj-calls.js @@ -37,6 +37,7 @@ function getReportNodeName(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-octal-escape.js b/lib/rules/no-octal-escape.js index 4513a83861d..9ac56ab7bea 100644 --- a/lib/rules/no-octal-escape.js +++ b/lib/rules/no-octal-escape.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-octal.js b/lib/rules/no-octal.js index 5ee6895f623..44df45fdacd 100644 --- a/lib/rules/no-octal.js +++ b/lib/rules/no-octal.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-param-reassign.js b/lib/rules/no-param-reassign.js index b758b9d97fc..87a6b702382 100644 --- a/lib/rules/no-param-reassign.js +++ b/lib/rules/no-param-reassign.js @@ -10,6 +10,7 @@ const stopNodePattern = /(?:Statement|Declaration|Function(?:Expression)?|Program)$/u; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-path-concat.js b/lib/rules/no-path-concat.js index 184c9182b4d..8d570a3778f 100644 --- a/lib/rules/no-path-concat.js +++ b/lib/rules/no-path-concat.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/no-plusplus.js b/lib/rules/no-plusplus.js index d7b6c730562..2565da43231 100644 --- a/lib/rules/no-plusplus.js +++ b/lib/rules/no-plusplus.js @@ -45,6 +45,7 @@ function isForLoopAfterthought(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-process-env.js b/lib/rules/no-process-env.js index c61b5572314..f7c2c718fd0 100644 --- a/lib/rules/no-process-env.js +++ b/lib/rules/no-process-env.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/no-process-exit.js b/lib/rules/no-process-exit.js index 73310a9e4e6..251044b31c9 100644 --- a/lib/rules/no-process-exit.js +++ b/lib/rules/no-process-exit.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/no-promise-executor-return.js b/lib/rules/no-promise-executor-return.js index 42652416f8f..e40d4bcb3f5 100644 --- a/lib/rules/no-promise-executor-return.js +++ b/lib/rules/no-promise-executor-return.js @@ -63,6 +63,7 @@ function isPromiseExecutor(node, scope) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-proto.js b/lib/rules/no-proto.js index 0c2490f7b42..e6659e59c6b 100644 --- a/lib/rules/no-proto.js +++ b/lib/rules/no-proto.js @@ -15,6 +15,7 @@ const { getStaticPropertyName } = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-prototype-builtins.js b/lib/rules/no-prototype-builtins.js index 1f837b96040..ae736981e71 100644 --- a/lib/rules/no-prototype-builtins.js +++ b/lib/rules/no-prototype-builtins.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-redeclare.js b/lib/rules/no-redeclare.js index 3de4397b1b0..cc71a612349 100644 --- a/lib/rules/no-redeclare.js +++ b/lib/rules/no-redeclare.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-regex-spaces.js b/lib/rules/no-regex-spaces.js index 1d6b121ba80..400c72b5027 100644 --- a/lib/rules/no-regex-spaces.js +++ b/lib/rules/no-regex-spaces.js @@ -33,6 +33,7 @@ function isString(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-restricted-exports.js b/lib/rules/no-restricted-exports.js index f568fdc6850..775e505d846 100644 --- a/lib/rules/no-restricted-exports.js +++ b/lib/rules/no-restricted-exports.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-restricted-globals.js b/lib/rules/no-restricted-globals.js index efbcd755b1f..09d347890ca 100644 --- a/lib/rules/no-restricted-globals.js +++ b/lib/rules/no-restricted-globals.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-restricted-imports.js b/lib/rules/no-restricted-imports.js index eda63407ff2..6813037f13a 100644 --- a/lib/rules/no-restricted-imports.js +++ b/lib/rules/no-restricted-imports.js @@ -73,6 +73,7 @@ const arrayOfStringsOrObjectPatterns = { ] }; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-restricted-modules.js b/lib/rules/no-restricted-modules.js index 66e6fe49e31..26e75ef81a2 100644 --- a/lib/rules/no-restricted-modules.js +++ b/lib/rules/no-restricted-modules.js @@ -39,6 +39,7 @@ const arrayOfStringsOrObjects = { uniqueItems: true }; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/no-restricted-properties.js b/lib/rules/no-restricted-properties.js index 3671d88eb60..1e8c7a89aed 100644 --- a/lib/rules/no-restricted-properties.js +++ b/lib/rules/no-restricted-properties.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-restricted-syntax.js b/lib/rules/no-restricted-syntax.js index 0ff6b91bc69..713d1157c4d 100644 --- a/lib/rules/no-restricted-syntax.js +++ b/lib/rules/no-restricted-syntax.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-return-assign.js b/lib/rules/no-return-assign.js index ecb789ea269..4fd7a3ddba5 100644 --- a/lib/rules/no-return-assign.js +++ b/lib/rules/no-return-assign.js @@ -20,6 +20,7 @@ const SENTINEL_TYPE = /^(?:[a-zA-Z]+?Statement|ArrowFunctionExpression|FunctionE // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-return-await.js b/lib/rules/no-return-await.js index 7ec808f50a3..191bf42dcf9 100644 --- a/lib/rules/no-return-await.js +++ b/lib/rules/no-return-await.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-script-url.js b/lib/rules/no-script-url.js index 12451ad9a9e..0eef2541840 100644 --- a/lib/rules/no-script-url.js +++ b/lib/rules/no-script-url.js @@ -12,6 +12,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-self-assign.js b/lib/rules/no-self-assign.js index 813771e700a..d9e261dfaae 100644 --- a/lib/rules/no-self-assign.js +++ b/lib/rules/no-self-assign.js @@ -124,6 +124,7 @@ function eachSelfAssignment(left, right, props, report) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-self-compare.js b/lib/rules/no-self-compare.js index ee77ff08b20..c3512895e13 100644 --- a/lib/rules/no-self-compare.js +++ b/lib/rules/no-self-compare.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-sequences.js b/lib/rules/no-sequences.js index b8941256e6f..376aec37988 100644 --- a/lib/rules/no-sequences.js +++ b/lib/rules/no-sequences.js @@ -23,6 +23,7 @@ const DEFAULT_OPTIONS = { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-setter-return.js b/lib/rules/no-setter-return.js index 67114ade821..7204e5c0c4d 100644 --- a/lib/rules/no-setter-return.js +++ b/lib/rules/no-setter-return.js @@ -136,6 +136,7 @@ function getOuterScope(scope) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-shadow-restricted-names.js b/lib/rules/no-shadow-restricted-names.js index 7d4174a104e..52620e58d1c 100644 --- a/lib/rules/no-shadow-restricted-names.js +++ b/lib/rules/no-shadow-restricted-names.js @@ -21,6 +21,7 @@ function safelyShadowsUndefined(variable) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-shadow.js b/lib/rules/no-shadow.js index 4ec357620b6..bd619235ab9 100644 --- a/lib/rules/no-shadow.js +++ b/lib/rules/no-shadow.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-spaced-func.js b/lib/rules/no-spaced-func.js index 8f51d5446d8..1d2994333e1 100644 --- a/lib/rules/no-spaced-func.js +++ b/lib/rules/no-spaced-func.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-sparse-arrays.js b/lib/rules/no-sparse-arrays.js index 56ce5dcc871..c95bc203c4a 100644 --- a/lib/rules/no-sparse-arrays.js +++ b/lib/rules/no-sparse-arrays.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-sync.js b/lib/rules/no-sync.js index ea40df12933..3536d9f2a39 100644 --- a/lib/rules/no-sync.js +++ b/lib/rules/no-sync.js @@ -10,6 +10,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { deprecated: true, diff --git a/lib/rules/no-tabs.js b/lib/rules/no-tabs.js index 1f3921a9a70..9758b850be1 100644 --- a/lib/rules/no-tabs.js +++ b/lib/rules/no-tabs.js @@ -16,6 +16,7 @@ const anyNonWhitespaceRegex = /\S/u; // Public Interface //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-template-curly-in-string.js b/lib/rules/no-template-curly-in-string.js index e71480fc013..1901460f3d2 100644 --- a/lib/rules/no-template-curly-in-string.js +++ b/lib/rules/no-template-curly-in-string.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-ternary.js b/lib/rules/no-ternary.js index 8b2e10a34a4..b0dc626832b 100644 --- a/lib/rules/no-ternary.js +++ b/lib/rules/no-ternary.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-this-before-super.js b/lib/rules/no-this-before-super.js index 9cc85ebbe21..929eded2443 100644 --- a/lib/rules/no-this-before-super.js +++ b/lib/rules/no-this-before-super.js @@ -34,6 +34,7 @@ function isConstructorFunction(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-throw-literal.js b/lib/rules/no-throw-literal.js index 311e6d4f079..c670ed9e5e1 100644 --- a/lib/rules/no-throw-literal.js +++ b/lib/rules/no-throw-literal.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-trailing-spaces.js b/lib/rules/no-trailing-spaces.js index 1930098bea0..9e720ad32e8 100644 --- a/lib/rules/no-trailing-spaces.js +++ b/lib/rules/no-trailing-spaces.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-undef-init.js b/lib/rules/no-undef-init.js index 7298d344941..2c2204cf0fe 100644 --- a/lib/rules/no-undef-init.js +++ b/lib/rules/no-undef-init.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-undef.js b/lib/rules/no-undef.js index ee611f9c866..f65903245c8 100644 --- a/lib/rules/no-undef.js +++ b/lib/rules/no-undef.js @@ -23,6 +23,7 @@ function hasTypeOfOperator(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-undefined.js b/lib/rules/no-undefined.js index ad302255420..de396d889c0 100644 --- a/lib/rules/no-undefined.js +++ b/lib/rules/no-undefined.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-underscore-dangle.js b/lib/rules/no-underscore-dangle.js index 916b8c01baa..0ab41feb03c 100644 --- a/lib/rules/no-underscore-dangle.js +++ b/lib/rules/no-underscore-dangle.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-unexpected-multiline.js b/lib/rules/no-unexpected-multiline.js index 4447959ed9a..60d8f3164cd 100644 --- a/lib/rules/no-unexpected-multiline.js +++ b/lib/rules/no-unexpected-multiline.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-unmodified-loop-condition.js b/lib/rules/no-unmodified-loop-condition.js index ba321d2c6ed..5b8da26f2d2 100644 --- a/lib/rules/no-unmodified-loop-condition.js +++ b/lib/rules/no-unmodified-loop-condition.js @@ -156,6 +156,7 @@ function updateModifiedFlag(conditions, modifiers) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-unneeded-ternary.js b/lib/rules/no-unneeded-ternary.js index e12240d03e0..e00d5270a2a 100644 --- a/lib/rules/no-unneeded-ternary.js +++ b/lib/rules/no-unneeded-ternary.js @@ -23,6 +23,7 @@ const OR_PRECEDENCE = astUtils.getPrecedence({ type: "LogicalExpression", operat // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-unreachable-loop.js b/lib/rules/no-unreachable-loop.js index 5cbfac46d31..f100263308f 100644 --- a/lib/rules/no-unreachable-loop.js +++ b/lib/rules/no-unreachable-loop.js @@ -53,6 +53,7 @@ function getDifference(arrA, arrB) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-unreachable.js b/lib/rules/no-unreachable.js index ce17a5966a7..4dda51f11b9 100644 --- a/lib/rules/no-unreachable.js +++ b/lib/rules/no-unreachable.js @@ -105,6 +105,7 @@ class ConsecutiveRange { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-unsafe-finally.js b/lib/rules/no-unsafe-finally.js index 4bb7f7fec4f..26c05eab8b0 100644 --- a/lib/rules/no-unsafe-finally.js +++ b/lib/rules/no-unsafe-finally.js @@ -18,6 +18,7 @@ const SENTINEL_NODE_TYPE_CONTINUE = /^(?:Program|(?:Function|Class)(?:Declaratio // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-unsafe-negation.js b/lib/rules/no-unsafe-negation.js index c681986941a..057b1742acc 100644 --- a/lib/rules/no-unsafe-negation.js +++ b/lib/rules/no-unsafe-negation.js @@ -46,6 +46,7 @@ function isNegation(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-unsafe-optional-chaining.js b/lib/rules/no-unsafe-optional-chaining.js index cc15c998813..8556ccbd79d 100644 --- a/lib/rules/no-unsafe-optional-chaining.js +++ b/lib/rules/no-unsafe-optional-chaining.js @@ -18,6 +18,7 @@ function isDestructuringPattern(node) { return node.type === "ObjectPattern" || node.type === "ArrayPattern"; } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-unused-expressions.js b/lib/rules/no-unused-expressions.js index 2081a518b30..68a7ebd5e00 100644 --- a/lib/rules/no-unused-expressions.js +++ b/lib/rules/no-unused-expressions.js @@ -24,6 +24,7 @@ function alwaysFalse() { return false; } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-unused-labels.js b/lib/rules/no-unused-labels.js index f0b09614e09..f309dd12b12 100644 --- a/lib/rules/no-unused-labels.js +++ b/lib/rules/no-unused-labels.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-unused-private-class-members.js b/lib/rules/no-unused-private-class-members.js index 74cf6ab694a..754c36002eb 100644 --- a/lib/rules/no-unused-private-class-members.js +++ b/lib/rules/no-unused-private-class-members.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-unused-vars.js b/lib/rules/no-unused-vars.js index 847e21baf5f..eaf7a8b912e 100644 --- a/lib/rules/no-unused-vars.js +++ b/lib/rules/no-unused-vars.js @@ -27,6 +27,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-use-before-define.js b/lib/rules/no-use-before-define.js index 7f904f46bd5..07d035c431f 100644 --- a/lib/rules/no-use-before-define.js +++ b/lib/rules/no-use-before-define.js @@ -218,6 +218,7 @@ function isEvaluatedDuringInitialization(reference) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-useless-backreference.js b/lib/rules/no-useless-backreference.js index ae491471282..1a09988b809 100644 --- a/lib/rules/no-useless-backreference.js +++ b/lib/rules/no-useless-backreference.js @@ -58,6 +58,7 @@ function isNegativeLookaround(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/no-useless-call.js b/lib/rules/no-useless-call.js index 89350665fe3..8c57cd5cc9a 100644 --- a/lib/rules/no-useless-call.js +++ b/lib/rules/no-useless-call.js @@ -49,6 +49,7 @@ function isValidThisArg(expectedThis, thisArg, sourceCode) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-useless-catch.js b/lib/rules/no-useless-catch.js index 280ba553367..325a2e58117 100644 --- a/lib/rules/no-useless-catch.js +++ b/lib/rules/no-useless-catch.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-useless-computed-key.js b/lib/rules/no-useless-computed-key.js index a8769214f54..7ebbe09de26 100644 --- a/lib/rules/no-useless-computed-key.js +++ b/lib/rules/no-useless-computed-key.js @@ -85,6 +85,7 @@ function hasUselessComputedKey(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-useless-concat.js b/lib/rules/no-useless-concat.js index a0176a7e9db..36ca84f90cb 100644 --- a/lib/rules/no-useless-concat.js +++ b/lib/rules/no-useless-concat.js @@ -64,6 +64,7 @@ function getRight(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-useless-constructor.js b/lib/rules/no-useless-constructor.js index 13ec6755015..6512c8b1fef 100644 --- a/lib/rules/no-useless-constructor.js +++ b/lib/rules/no-useless-constructor.js @@ -132,6 +132,7 @@ function isRedundantSuperCall(body, ctorParams) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-useless-escape.js b/lib/rules/no-useless-escape.js index a780a7a84a6..123bc5b8a01 100644 --- a/lib/rules/no-useless-escape.js +++ b/lib/rules/no-useless-escape.js @@ -78,6 +78,7 @@ function parseRegExp(regExpText) { return charList; } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-useless-rename.js b/lib/rules/no-useless-rename.js index c0d27e600a8..616ec2a43cc 100644 --- a/lib/rules/no-useless-rename.js +++ b/lib/rules/no-useless-rename.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-useless-return.js b/lib/rules/no-useless-return.js index 87f05892a94..0baa6b2942d 100644 --- a/lib/rules/no-useless-return.js +++ b/lib/rules/no-useless-return.js @@ -61,6 +61,7 @@ function isInFinally(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-var.js b/lib/rules/no-var.js index a821c38a36e..83a1f62eb6f 100644 --- a/lib/rules/no-var.js +++ b/lib/rules/no-var.js @@ -179,6 +179,7 @@ function hasNameDisallowedForLetDeclarations(variable) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-void.js b/lib/rules/no-void.js index dba4932385d..8631caf70cf 100644 --- a/lib/rules/no-void.js +++ b/lib/rules/no-void.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-warning-comments.js b/lib/rules/no-warning-comments.js index 23e3da35e14..5f3ea21d7d0 100644 --- a/lib/rules/no-warning-comments.js +++ b/lib/rules/no-warning-comments.js @@ -14,6 +14,7 @@ const CHAR_LIMIT = 40; // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/no-whitespace-before-property.js b/lib/rules/no-whitespace-before-property.js index 9a492997d76..95e920f27ea 100644 --- a/lib/rules/no-whitespace-before-property.js +++ b/lib/rules/no-whitespace-before-property.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/no-with.js b/lib/rules/no-with.js index 219a68094cb..fc93f199f87 100644 --- a/lib/rules/no-with.js +++ b/lib/rules/no-with.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/nonblock-statement-body-position.js b/lib/rules/nonblock-statement-body-position.js index 7ed541b3802..c177cf34cee 100644 --- a/lib/rules/nonblock-statement-body-position.js +++ b/lib/rules/nonblock-statement-body-position.js @@ -10,6 +10,7 @@ const POSITION_SCHEMA = { enum: ["beside", "below", "any"] }; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/object-curly-newline.js b/lib/rules/object-curly-newline.js index e1609913582..e052cd86493 100644 --- a/lib/rules/object-curly-newline.js +++ b/lib/rules/object-curly-newline.js @@ -144,6 +144,7 @@ function areLineBreaksRequired(node, options, first, last) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/object-curly-spacing.js b/lib/rules/object-curly-spacing.js index b18ef574045..9122da3ef3d 100644 --- a/lib/rules/object-curly-spacing.js +++ b/lib/rules/object-curly-spacing.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/object-property-newline.js b/lib/rules/object-property-newline.js index 7cca23ff31f..dac084c3f65 100644 --- a/lib/rules/object-property-newline.js +++ b/lib/rules/object-property-newline.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/object-shorthand.js b/lib/rules/object-shorthand.js index 10bb07bbb0c..aa03450d071 100644 --- a/lib/rules/object-shorthand.js +++ b/lib/rules/object-shorthand.js @@ -22,6 +22,7 @@ const astUtils = require("./utils/ast-utils"); //------------------------------------------------------------------------------ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/one-var-declaration-per-line.js b/lib/rules/one-var-declaration-per-line.js index c0ad70004e6..440146b92c1 100644 --- a/lib/rules/one-var-declaration-per-line.js +++ b/lib/rules/one-var-declaration-per-line.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/one-var.js b/lib/rules/one-var.js index daff2d22b15..1818c02e6e1 100644 --- a/lib/rules/one-var.js +++ b/lib/rules/one-var.js @@ -28,6 +28,7 @@ function isInStatementList(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/operator-assignment.js b/lib/rules/operator-assignment.js index 34bdb861f46..d200811634c 100644 --- a/lib/rules/operator-assignment.js +++ b/lib/rules/operator-assignment.js @@ -57,6 +57,7 @@ function canBeFixed(node) { ); } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/operator-linebreak.js b/lib/rules/operator-linebreak.js index 6eab0cccbb4..a04f85bdea9 100644 --- a/lib/rules/operator-linebreak.js +++ b/lib/rules/operator-linebreak.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/padded-blocks.js b/lib/rules/padded-blocks.js index de75e8d2d51..336adac9a02 100644 --- a/lib/rules/padded-blocks.js +++ b/lib/rules/padded-blocks.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/padding-line-between-statements.js b/lib/rules/padding-line-between-statements.js index 42859dd38b0..fe5d304dd5b 100644 --- a/lib/rules/padding-line-between-statements.js +++ b/lib/rules/padding-line-between-statements.js @@ -425,6 +425,7 @@ const StatementTypes = { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/prefer-arrow-callback.js b/lib/rules/prefer-arrow-callback.js index 518bf4b2da3..55a098a6097 100644 --- a/lib/rules/prefer-arrow-callback.js +++ b/lib/rules/prefer-arrow-callback.js @@ -145,6 +145,7 @@ function hasDuplicateParams(paramsList) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-const.js b/lib/rules/prefer-const.js index 38ec973fcdb..190860019d8 100644 --- a/lib/rules/prefer-const.js +++ b/lib/rules/prefer-const.js @@ -326,6 +326,7 @@ function findUp(node, type, shouldStop) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-destructuring.js b/lib/rules/prefer-destructuring.js index 46986d237df..1f68313d6b1 100644 --- a/lib/rules/prefer-destructuring.js +++ b/lib/rules/prefer-destructuring.js @@ -20,6 +20,7 @@ const PRECEDENCE_OF_ASSIGNMENT_EXPR = astUtils.getPrecedence({ type: "Assignment // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-exponentiation-operator.js b/lib/rules/prefer-exponentiation-operator.js index de802ce1e11..a291e8dec15 100644 --- a/lib/rules/prefer-exponentiation-operator.js +++ b/lib/rules/prefer-exponentiation-operator.js @@ -84,6 +84,7 @@ function parenthesizeIfShould(text, shouldParenthesize) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-named-capture-group.js b/lib/rules/prefer-named-capture-group.js index 41aa549327d..cff2d8f45d2 100644 --- a/lib/rules/prefer-named-capture-group.js +++ b/lib/rules/prefer-named-capture-group.js @@ -27,6 +27,7 @@ const parser = new regexpp.RegExpParser(); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-numeric-literals.js b/lib/rules/prefer-numeric-literals.js index 91bb26724eb..53a51536896 100644 --- a/lib/rules/prefer-numeric-literals.js +++ b/lib/rules/prefer-numeric-literals.js @@ -39,6 +39,7 @@ function isParseInt(calleeNode) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-object-spread.js b/lib/rules/prefer-object-spread.js index 3958a51b30e..b63474ef2bd 100644 --- a/lib/rules/prefer-object-spread.js +++ b/lib/rules/prefer-object-spread.js @@ -240,6 +240,7 @@ function defineFixer(node, sourceCode) { }; } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-promise-reject-errors.js b/lib/rules/prefer-promise-reject-errors.js index bdc1fef4d7c..60e72f45101 100644 --- a/lib/rules/prefer-promise-reject-errors.js +++ b/lib/rules/prefer-promise-reject-errors.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-reflect.js b/lib/rules/prefer-reflect.js index fea88c67827..1367a1848df 100644 --- a/lib/rules/prefer-reflect.js +++ b/lib/rules/prefer-reflect.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-regex-literals.js b/lib/rules/prefer-regex-literals.js index fbfeb5636d7..afd6a01398e 100644 --- a/lib/rules/prefer-regex-literals.js +++ b/lib/rules/prefer-regex-literals.js @@ -48,6 +48,7 @@ function isStaticTemplateLiteral(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-rest-params.js b/lib/rules/prefer-rest-params.js index 157f0bbd61a..371a28964f2 100644 --- a/lib/rules/prefer-rest-params.js +++ b/lib/rules/prefer-rest-params.js @@ -59,6 +59,7 @@ function isNotNormalMemberAccess(reference) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-spread.js b/lib/rules/prefer-spread.js index 3944fedb126..c5f9e1e6cbf 100644 --- a/lib/rules/prefer-spread.js +++ b/lib/rules/prefer-spread.js @@ -43,6 +43,7 @@ function isValidThisArg(expectedThis, thisArg, context) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/prefer-template.js b/lib/rules/prefer-template.js index 564dd555f8e..953155d8f98 100644 --- a/lib/rules/prefer-template.js +++ b/lib/rules/prefer-template.js @@ -122,6 +122,7 @@ function endsWithTemplateCurly(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/quote-props.js b/lib/rules/quote-props.js index ce277cdcc9d..e57ad6eea29 100644 --- a/lib/rules/quote-props.js +++ b/lib/rules/quote-props.js @@ -16,6 +16,7 @@ const keywords = require("./utils/keywords"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/quotes.js b/lib/rules/quotes.js index d7959c0d1f0..a9960961edf 100644 --- a/lib/rules/quotes.js +++ b/lib/rules/quotes.js @@ -74,6 +74,7 @@ const AVOID_ESCAPE = "avoid-escape"; // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/radix.js b/lib/rules/radix.js index 0c6c6ffb1a6..f83c762c11d 100644 --- a/lib/rules/radix.js +++ b/lib/rules/radix.js @@ -74,6 +74,7 @@ function isDefaultRadix(radix) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/require-atomic-updates.js b/lib/rules/require-atomic-updates.js index 248b0eb11d0..4dbd48dfc58 100644 --- a/lib/rules/require-atomic-updates.js +++ b/lib/rules/require-atomic-updates.js @@ -165,6 +165,7 @@ class SegmentInfo { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/require-await.js b/lib/rules/require-await.js index 8ec6f547ae9..1b17de0e197 100644 --- a/lib/rules/require-await.js +++ b/lib/rules/require-await.js @@ -28,6 +28,7 @@ function capitalizeFirstLetter(text) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/require-jsdoc.js b/lib/rules/require-jsdoc.js index 1d76e3d222b..169b6f52413 100644 --- a/lib/rules/require-jsdoc.js +++ b/lib/rules/require-jsdoc.js @@ -5,6 +5,7 @@ */ "use strict"; +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/require-unicode-regexp.js b/lib/rules/require-unicode-regexp.js index a332b48da66..577ae6cf827 100644 --- a/lib/rules/require-unicode-regexp.js +++ b/lib/rules/require-unicode-regexp.js @@ -20,6 +20,7 @@ const { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/require-yield.js b/lib/rules/require-yield.js index f5b5d530396..aba06140672 100644 --- a/lib/rules/require-yield.js +++ b/lib/rules/require-yield.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/rest-spread-spacing.js b/lib/rules/rest-spread-spacing.js index a636defdcd9..ace1ec52141 100644 --- a/lib/rules/rest-spread-spacing.js +++ b/lib/rules/rest-spread-spacing.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/semi-spacing.js b/lib/rules/semi-spacing.js index e5e2ae25cc7..4f0afbb11a3 100644 --- a/lib/rules/semi-spacing.js +++ b/lib/rules/semi-spacing.js @@ -11,6 +11,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/semi-style.js b/lib/rules/semi-style.js index 2d17d028c2f..7952a9adff1 100644 --- a/lib/rules/semi-style.js +++ b/lib/rules/semi-style.js @@ -67,6 +67,7 @@ function isLastChild(node) { return nodeList !== null && nodeList[nodeList.length - 1] === node; // before `}` or etc. } +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/semi.js b/lib/rules/semi.js index c29029cedfe..86ff8d74ee1 100644 --- a/lib/rules/semi.js +++ b/lib/rules/semi.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/sort-imports.js b/lib/rules/sort-imports.js index dd43daddf05..13cb63681cb 100644 --- a/lib/rules/sort-imports.js +++ b/lib/rules/sort-imports.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/sort-keys.js b/lib/rules/sort-keys.js index 65a99142279..2fc19635271 100644 --- a/lib/rules/sort-keys.js +++ b/lib/rules/sort-keys.js @@ -75,6 +75,7 @@ const isValidOrders = { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/sort-vars.js b/lib/rules/sort-vars.js index 0616c44ac62..8246558c547 100644 --- a/lib/rules/sort-vars.js +++ b/lib/rules/sort-vars.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/space-before-blocks.js b/lib/rules/space-before-blocks.js index 87d5b27aace..5cc7266654f 100644 --- a/lib/rules/space-before-blocks.js +++ b/lib/rules/space-before-blocks.js @@ -34,6 +34,7 @@ function isFunctionBody(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/space-before-function-paren.js b/lib/rules/space-before-function-paren.js index b60bee04097..fdd45be241d 100644 --- a/lib/rules/space-before-function-paren.js +++ b/lib/rules/space-before-function-paren.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/space-in-parens.js b/lib/rules/space-in-parens.js index 24378b89f04..1509d600f1d 100644 --- a/lib/rules/space-in-parens.js +++ b/lib/rules/space-in-parens.js @@ -10,6 +10,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/space-infix-ops.js b/lib/rules/space-infix-ops.js index 8065b5240b9..c526b7e2b0a 100644 --- a/lib/rules/space-infix-ops.js +++ b/lib/rules/space-infix-ops.js @@ -10,6 +10,7 @@ const { isEqToken } = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/space-unary-ops.js b/lib/rules/space-unary-ops.js index de9018f9b69..04487c49e0d 100644 --- a/lib/rules/space-unary-ops.js +++ b/lib/rules/space-unary-ops.js @@ -14,6 +14,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/spaced-comment.js b/lib/rules/spaced-comment.js index 6f0b432b765..674c13cf380 100644 --- a/lib/rules/spaced-comment.js +++ b/lib/rules/spaced-comment.js @@ -146,6 +146,7 @@ function createNeverStylePattern(markers) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/strict.js b/lib/rules/strict.js index 24af39dabee..0ea1da5677e 100644 --- a/lib/rules/strict.js +++ b/lib/rules/strict.js @@ -63,6 +63,7 @@ function isSimpleParameterList(params) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/switch-colon-spacing.js b/lib/rules/switch-colon-spacing.js index a4f3ba213eb..cd2ca7018d2 100644 --- a/lib/rules/switch-colon-spacing.js +++ b/lib/rules/switch-colon-spacing.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/symbol-description.js b/lib/rules/symbol-description.js index 9f5d9358f00..07bb8cd2735 100644 --- a/lib/rules/symbol-description.js +++ b/lib/rules/symbol-description.js @@ -16,6 +16,7 @@ const astUtils = require("./utils/ast-utils"); //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/template-curly-spacing.js b/lib/rules/template-curly-spacing.js index 5133a54539c..c842b76a41f 100644 --- a/lib/rules/template-curly-spacing.js +++ b/lib/rules/template-curly-spacing.js @@ -15,6 +15,7 @@ const astUtils = require("./utils/ast-utils"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/template-tag-spacing.js b/lib/rules/template-tag-spacing.js index 45b66068a83..fa1a613b894 100644 --- a/lib/rules/template-tag-spacing.js +++ b/lib/rules/template-tag-spacing.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/unicode-bom.js b/lib/rules/unicode-bom.js index e80497d19ca..d480f1bcdc8 100644 --- a/lib/rules/unicode-bom.js +++ b/lib/rules/unicode-bom.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/use-isnan.js b/lib/rules/use-isnan.js index cd8331f932e..92903500c18 100644 --- a/lib/rules/use-isnan.js +++ b/lib/rules/use-isnan.js @@ -31,6 +31,7 @@ function isNaNIdentifier(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/valid-jsdoc.js b/lib/rules/valid-jsdoc.js index 824410b3370..c118e033dd8 100644 --- a/lib/rules/valid-jsdoc.js +++ b/lib/rules/valid-jsdoc.js @@ -15,6 +15,7 @@ const doctrine = require("doctrine"); // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/valid-typeof.js b/lib/rules/valid-typeof.js index 33b64f56cc3..60463581233 100644 --- a/lib/rules/valid-typeof.js +++ b/lib/rules/valid-typeof.js @@ -8,6 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "problem", diff --git a/lib/rules/vars-on-top.js b/lib/rules/vars-on-top.js index 0f95d58dbc6..09e9932b4ca 100644 --- a/lib/rules/vars-on-top.js +++ b/lib/rules/vars-on-top.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion", diff --git a/lib/rules/wrap-iife.js b/lib/rules/wrap-iife.js index 498d7bd2842..8523796722a 100644 --- a/lib/rules/wrap-iife.js +++ b/lib/rules/wrap-iife.js @@ -37,6 +37,7 @@ function isCalleeOfNewExpression(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/wrap-regex.js b/lib/rules/wrap-regex.js index 945eb5ecea1..b10f2ec53bd 100644 --- a/lib/rules/wrap-regex.js +++ b/lib/rules/wrap-regex.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/yield-star-spacing.js b/lib/rules/yield-star-spacing.js index 8c3eefa4acd..884a3a4ed01 100644 --- a/lib/rules/yield-star-spacing.js +++ b/lib/rules/yield-star-spacing.js @@ -9,6 +9,7 @@ // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "layout", diff --git a/lib/rules/yoda.js b/lib/rules/yoda.js index 2d018dc3df1..f491f756d54 100644 --- a/lib/rules/yoda.js +++ b/lib/rules/yoda.js @@ -115,6 +115,7 @@ function getNormalizedLiteral(node) { // Rule Definition //------------------------------------------------------------------------------ +/** @type {import('../shared/types').Rule} */ module.exports = { meta: { type: "suggestion",