import { Arrayable, Awaitable, FlatConfigComposer } from "eslint-flat-config-utils"; import { Linter } from "eslint"; //#region src/typegen.d.ts interface RuleOptions { /** * Enforce linebreaks after opening and before closing array brackets * @see https://eslint.style/rules/array-bracket-newline */ '@stylistic/array-bracket-newline'?: Linter.RuleEntry; /** * Enforce consistent spacing inside array brackets * @see https://eslint.style/rules/array-bracket-spacing */ '@stylistic/array-bracket-spacing'?: Linter.RuleEntry; /** * Enforce line breaks after each array element * @see https://eslint.style/rules/array-element-newline */ '@stylistic/array-element-newline'?: Linter.RuleEntry; /** * Require parentheses around arrow function arguments * @see https://eslint.style/rules/arrow-parens */ '@stylistic/arrow-parens'?: Linter.RuleEntry; /** * Enforce consistent spacing before and after the arrow in arrow functions * @see https://eslint.style/rules/arrow-spacing */ '@stylistic/arrow-spacing'?: Linter.RuleEntry; /** * Disallow or enforce spaces inside of blocks after opening block and before closing block * @see https://eslint.style/rules/block-spacing */ '@stylistic/block-spacing'?: Linter.RuleEntry; /** * Enforce consistent brace style for blocks * @see https://eslint.style/rules/brace-style */ '@stylistic/brace-style'?: Linter.RuleEntry; /** * Require or disallow trailing commas * @see https://eslint.style/rules/comma-dangle */ '@stylistic/comma-dangle'?: Linter.RuleEntry; /** * Enforce consistent spacing before and after commas * @see https://eslint.style/rules/comma-spacing */ '@stylistic/comma-spacing'?: Linter.RuleEntry; /** * Enforce consistent comma style * @see https://eslint.style/rules/comma-style */ '@stylistic/comma-style'?: Linter.RuleEntry; /** * Enforce consistent spacing inside computed property brackets * @see https://eslint.style/rules/computed-property-spacing */ '@stylistic/computed-property-spacing'?: Linter.RuleEntry; /** * Enforce consistent line breaks after opening and before closing braces * @see https://eslint.style/rules/curly-newline */ '@stylistic/curly-newline'?: Linter.RuleEntry; /** * Enforce consistent newlines before and after dots * @see https://eslint.style/rules/dot-location */ '@stylistic/dot-location'?: Linter.RuleEntry; /** * Require or disallow newline at the end of files * @see https://eslint.style/rules/eol-last */ '@stylistic/eol-last'?: Linter.RuleEntry; /** * Enforce consistent line break styles for JSX props * @see https://eslint.style/rules/jsx-props-style */ '@stylistic/exp-jsx-props-style'?: Linter.RuleEntry; /** * Enforce consistent spacing and line break styles inside brackets. * @see https://eslint.style/rules/list-style */ '@stylistic/exp-list-style'?: Linter.RuleEntry; /** * Enforce line breaks between arguments of a function call * @see https://eslint.style/rules/function-call-argument-newline */ '@stylistic/function-call-argument-newline'?: Linter.RuleEntry; /** * Require or disallow spacing between function identifiers and their invocations * @see https://eslint.style/rules/function-call-spacing */ '@stylistic/function-call-spacing'?: Linter.RuleEntry; /** * Enforce consistent line breaks inside function parentheses * @see https://eslint.style/rules/function-paren-newline */ '@stylistic/function-paren-newline'?: Linter.RuleEntry; /** * Enforce consistent spacing around `*` operators in generator functions * @see https://eslint.style/rules/generator-star-spacing */ '@stylistic/generator-star-spacing'?: Linter.RuleEntry; /** * Enforce the location of arrow function bodies * @see https://eslint.style/rules/implicit-arrow-linebreak */ '@stylistic/implicit-arrow-linebreak'?: Linter.RuleEntry; /** * Enforce consistent indentation * @see https://eslint.style/rules/indent */ '@stylistic/indent'?: Linter.RuleEntry; /** * Indentation for binary operators * @see https://eslint.style/rules/indent-binary-ops */ '@stylistic/indent-binary-ops'?: Linter.RuleEntry; /** * Enforce or disallow spaces inside of curly braces in JSX attributes and expressions * @see https://eslint.style/rules/jsx-child-element-spacing */ '@stylistic/jsx-child-element-spacing'?: Linter.RuleEntry<[]>; /** * Enforce closing bracket location in JSX * @see https://eslint.style/rules/jsx-closing-bracket-location */ '@stylistic/jsx-closing-bracket-location'?: Linter.RuleEntry; /** * Enforce closing tag location for multiline JSX * @see https://eslint.style/rules/jsx-closing-tag-location */ '@stylistic/jsx-closing-tag-location'?: Linter.RuleEntry; /** * Disallow unnecessary JSX expressions when literals alone are sufficient or enforce JSX expressions on literals in JSX children or attributes * @see https://eslint.style/rules/jsx-curly-brace-presence */ '@stylistic/jsx-curly-brace-presence'?: Linter.RuleEntry; /** * Enforce consistent linebreaks in curly braces in JSX attributes and expressions * @see https://eslint.style/rules/jsx-curly-newline */ '@stylistic/jsx-curly-newline'?: Linter.RuleEntry; /** * Enforce or disallow spaces inside of curly braces in JSX attributes and expressions * @see https://eslint.style/rules/jsx-curly-spacing */ '@stylistic/jsx-curly-spacing'?: Linter.RuleEntry; /** * Enforce or disallow spaces around equal signs in JSX attributes * @see https://eslint.style/rules/jsx-equals-spacing */ '@stylistic/jsx-equals-spacing'?: Linter.RuleEntry; /** * Enforce proper position of the first property in JSX * @see https://eslint.style/rules/jsx-first-prop-new-line */ '@stylistic/jsx-first-prop-new-line'?: Linter.RuleEntry; /** * Enforce line breaks before and after JSX elements when they are used as arguments to a function. * @see https://eslint.style/rules/jsx-function-call-newline */ '@stylistic/jsx-function-call-newline'?: Linter.RuleEntry; /** * Enforce JSX indentation. Deprecated, use `indent` rule instead. * @see https://eslint.style/rules/jsx-indent * @deprecated */ '@stylistic/jsx-indent'?: Linter.RuleEntry; /** * Enforce props indentation in JSX * @see https://eslint.style/rules/jsx-indent-props */ '@stylistic/jsx-indent-props'?: Linter.RuleEntry; /** * Enforce maximum of props on a single line in JSX * @see https://eslint.style/rules/jsx-max-props-per-line */ '@stylistic/jsx-max-props-per-line'?: Linter.RuleEntry; /** * Require or prevent a new line after jsx elements and expressions. * @see https://eslint.style/rules/jsx-newline */ '@stylistic/jsx-newline'?: Linter.RuleEntry; /** * Require one JSX element per line * @see https://eslint.style/rules/jsx-one-expression-per-line */ '@stylistic/jsx-one-expression-per-line'?: Linter.RuleEntry; /** * Enforce PascalCase for user-defined JSX components * @see https://eslint.style/rules/jsx-pascal-case */ '@stylistic/jsx-pascal-case'?: Linter.RuleEntry; /** * Disallow multiple spaces between inline JSX props. Deprecated, use `no-multi-spaces` rule instead. * @see https://eslint.style/rules/jsx-props-no-multi-spaces * @deprecated */ '@stylistic/jsx-props-no-multi-spaces'?: Linter.RuleEntry<[]>; /** * Enforce the consistent use of either double or single quotes in JSX attributes * @see https://eslint.style/rules/jsx-quotes */ '@stylistic/jsx-quotes'?: Linter.RuleEntry; /** * Disallow extra closing tags for components without children * @see https://eslint.style/rules/jsx-self-closing-comp */ '@stylistic/jsx-self-closing-comp'?: Linter.RuleEntry; /** * Enforce props alphabetical sorting * @see https://eslint.style/rules/jsx-sort-props * @deprecated */ '@stylistic/jsx-sort-props'?: Linter.RuleEntry; /** * Enforce whitespace in and around the JSX opening and closing brackets * @see https://eslint.style/rules/jsx-tag-spacing */ '@stylistic/jsx-tag-spacing'?: Linter.RuleEntry; /** * Disallow missing parentheses around multiline JSX * @see https://eslint.style/rules/jsx-wrap-multilines */ '@stylistic/jsx-wrap-multilines'?: Linter.RuleEntry; /** * Enforce consistent spacing between property names and type annotations in types and interfaces * @see https://eslint.style/rules/key-spacing */ '@stylistic/key-spacing'?: Linter.RuleEntry; /** * Enforce consistent spacing before and after keywords * @see https://eslint.style/rules/keyword-spacing */ '@stylistic/keyword-spacing'?: Linter.RuleEntry; /** * Enforce position of line comments * @see https://eslint.style/rules/line-comment-position */ '@stylistic/line-comment-position'?: Linter.RuleEntry; /** * Enforce consistent linebreak style * @see https://eslint.style/rules/linebreak-style */ '@stylistic/linebreak-style'?: Linter.RuleEntry; /** * Require empty lines around comments * @see https://eslint.style/rules/lines-around-comment */ '@stylistic/lines-around-comment'?: Linter.RuleEntry; /** * Require or disallow an empty line between class members * @see https://eslint.style/rules/lines-between-class-members */ '@stylistic/lines-between-class-members'?: Linter.RuleEntry; /** * Enforce a maximum line length * @see https://eslint.style/rules/max-len */ '@stylistic/max-len'?: Linter.RuleEntry; /** * Enforce a maximum number of statements allowed per line * @see https://eslint.style/rules/max-statements-per-line */ '@stylistic/max-statements-per-line'?: Linter.RuleEntry; /** * Require a specific member delimiter style for interfaces and type literals * @see https://eslint.style/rules/member-delimiter-style */ '@stylistic/member-delimiter-style'?: Linter.RuleEntry; /** * Enforce a particular style for multiline comments * @see https://eslint.style/rules/multiline-comment-style */ '@stylistic/multiline-comment-style'?: Linter.RuleEntry; /** * Enforce newlines between operands of ternary expressions * @see https://eslint.style/rules/multiline-ternary */ '@stylistic/multiline-ternary'?: Linter.RuleEntry; /** * Enforce or disallow parentheses when invoking a constructor with no arguments * @see https://eslint.style/rules/new-parens */ '@stylistic/new-parens'?: Linter.RuleEntry; /** * Require a newline after each call in a method chain * @see https://eslint.style/rules/newline-per-chained-call */ '@stylistic/newline-per-chained-call'?: Linter.RuleEntry; /** * Disallow arrow functions where they could be confused with comparisons * @see https://eslint.style/rules/no-confusing-arrow */ '@stylistic/no-confusing-arrow'?: Linter.RuleEntry; /** * Disallow unnecessary parentheses * @see https://eslint.style/rules/no-extra-parens */ '@stylistic/no-extra-parens'?: Linter.RuleEntry; /** * Disallow unnecessary semicolons * @see https://eslint.style/rules/no-extra-semi */ '@stylistic/no-extra-semi'?: Linter.RuleEntry<[]>; /** * Disallow leading or trailing decimal points in numeric literals * @see https://eslint.style/rules/no-floating-decimal */ '@stylistic/no-floating-decimal'?: Linter.RuleEntry<[]>; /** * Disallow mixed binary operators * @see https://eslint.style/rules/no-mixed-operators */ '@stylistic/no-mixed-operators'?: Linter.RuleEntry; /** * Disallow mixed spaces and tabs for indentation * @see https://eslint.style/rules/no-mixed-spaces-and-tabs */ '@stylistic/no-mixed-spaces-and-tabs'?: Linter.RuleEntry; /** * Disallow multiple spaces * @see https://eslint.style/rules/no-multi-spaces */ '@stylistic/no-multi-spaces'?: Linter.RuleEntry; /** * Disallow multiple empty lines * @see https://eslint.style/rules/no-multiple-empty-lines */ '@stylistic/no-multiple-empty-lines'?: Linter.RuleEntry; /** * Disallow all tabs * @see https://eslint.style/rules/no-tabs */ '@stylistic/no-tabs'?: Linter.RuleEntry; /** * Disallow trailing whitespace at the end of lines * @see https://eslint.style/rules/no-trailing-spaces */ '@stylistic/no-trailing-spaces'?: Linter.RuleEntry; /** * Disallow whitespace before properties * @see https://eslint.style/rules/no-whitespace-before-property */ '@stylistic/no-whitespace-before-property'?: Linter.RuleEntry<[]>; /** * Enforce the location of single-line statements * @see https://eslint.style/rules/nonblock-statement-body-position */ '@stylistic/nonblock-statement-body-position'?: Linter.RuleEntry; /** * Enforce consistent line breaks after opening and before closing braces * @see https://eslint.style/rules/object-curly-newline */ '@stylistic/object-curly-newline'?: Linter.RuleEntry; /** * Enforce consistent spacing inside braces * @see https://eslint.style/rules/object-curly-spacing */ '@stylistic/object-curly-spacing'?: Linter.RuleEntry; /** * Enforce placing object properties on separate lines * @see https://eslint.style/rules/object-property-newline */ '@stylistic/object-property-newline'?: Linter.RuleEntry; /** * Require or disallow newlines around variable declarations * @see https://eslint.style/rules/one-var-declaration-per-line */ '@stylistic/one-var-declaration-per-line'?: Linter.RuleEntry; /** * Enforce consistent linebreak style for operators * @see https://eslint.style/rules/operator-linebreak */ '@stylistic/operator-linebreak'?: Linter.RuleEntry; /** * Require or disallow padding within blocks * @see https://eslint.style/rules/padded-blocks */ '@stylistic/padded-blocks'?: Linter.RuleEntry; /** * Require or disallow padding lines between statements * @see https://eslint.style/rules/padding-line-between-statements */ '@stylistic/padding-line-between-statements'?: Linter.RuleEntry; /** * Require quotes around object literal, type literal, interfaces and enums property names * @see https://eslint.style/rules/quote-props */ '@stylistic/quote-props'?: Linter.RuleEntry; /** * Enforce the consistent use of either backticks, double, or single quotes * @see https://eslint.style/rules/quotes */ '@stylistic/quotes'?: Linter.RuleEntry; /** * Enforce spacing between rest and spread operators and their expressions * @see https://eslint.style/rules/rest-spread-spacing */ '@stylistic/rest-spread-spacing'?: Linter.RuleEntry; /** * Require or disallow semicolons instead of ASI * @see https://eslint.style/rules/semi */ '@stylistic/semi'?: Linter.RuleEntry; /** * Enforce consistent spacing before and after semicolons * @see https://eslint.style/rules/semi-spacing */ '@stylistic/semi-spacing'?: Linter.RuleEntry; /** * Enforce location of semicolons * @see https://eslint.style/rules/semi-style */ '@stylistic/semi-style'?: Linter.RuleEntry; /** * Enforce consistent spacing before blocks * @see https://eslint.style/rules/space-before-blocks */ '@stylistic/space-before-blocks'?: Linter.RuleEntry; /** * Enforce consistent spacing before function parenthesis * @see https://eslint.style/rules/space-before-function-paren */ '@stylistic/space-before-function-paren'?: Linter.RuleEntry; /** * Enforce consistent spacing inside parentheses * @see https://eslint.style/rules/space-in-parens */ '@stylistic/space-in-parens'?: Linter.RuleEntry; /** * Require spacing around infix operators * @see https://eslint.style/rules/space-infix-ops */ '@stylistic/space-infix-ops'?: Linter.RuleEntry; /** * Enforce consistent spacing before or after unary operators * @see https://eslint.style/rules/space-unary-ops */ '@stylistic/space-unary-ops'?: Linter.RuleEntry; /** * Enforce consistent spacing after the `//` or `/*` in a comment * @see https://eslint.style/rules/spaced-comment */ '@stylistic/spaced-comment'?: Linter.RuleEntry; /** * Enforce spacing around colons of switch statements * @see https://eslint.style/rules/switch-colon-spacing */ '@stylistic/switch-colon-spacing'?: Linter.RuleEntry; /** * Require or disallow spacing around embedded expressions of template strings * @see https://eslint.style/rules/template-curly-spacing */ '@stylistic/template-curly-spacing'?: Linter.RuleEntry; /** * Require or disallow spacing between template tags and their literals * @see https://eslint.style/rules/template-tag-spacing */ '@stylistic/template-tag-spacing'?: Linter.RuleEntry; /** * Require consistent spacing around type annotations * @see https://eslint.style/rules/type-annotation-spacing */ '@stylistic/type-annotation-spacing'?: Linter.RuleEntry; /** * Enforces consistent spacing inside TypeScript type generics * @see https://eslint.style/rules/type-generic-spacing */ '@stylistic/type-generic-spacing'?: Linter.RuleEntry<[]>; /** * Expect space before the type declaration in the named tuple * @see https://eslint.style/rules/type-named-tuple-spacing */ '@stylistic/type-named-tuple-spacing'?: Linter.RuleEntry<[]>; /** * Require parentheses around immediate `function` invocations * @see https://eslint.style/rules/wrap-iife */ '@stylistic/wrap-iife'?: Linter.RuleEntry; /** * Require parenthesis around regex literals * @see https://eslint.style/rules/wrap-regex */ '@stylistic/wrap-regex'?: Linter.RuleEntry<[]>; /** * Require or disallow spacing around the `*` in `yield*` expressions * @see https://eslint.style/rules/yield-star-spacing */ '@stylistic/yield-star-spacing'?: Linter.RuleEntry; /** * Require that function overload signatures be consecutive * @see https://typescript-eslint.io/rules/adjacent-overload-signatures */ '@typescript-eslint/adjacent-overload-signatures'?: Linter.RuleEntry<[]>; /** * Require consistently using either `T[]` or `Array` for arrays * @see https://typescript-eslint.io/rules/array-type */ '@typescript-eslint/array-type'?: Linter.RuleEntry; /** * Disallow awaiting a value that is not a Thenable * @see https://typescript-eslint.io/rules/await-thenable */ '@typescript-eslint/await-thenable'?: Linter.RuleEntry<[]>; /** * Disallow `@ts-` comments or require descriptions after directives * @see https://typescript-eslint.io/rules/ban-ts-comment */ '@typescript-eslint/ban-ts-comment'?: Linter.RuleEntry; /** * Disallow `// tslint:` comments * @see https://typescript-eslint.io/rules/ban-tslint-comment */ '@typescript-eslint/ban-tslint-comment'?: Linter.RuleEntry<[]>; /** * Enforce that literals on classes are exposed in a consistent style * @see https://typescript-eslint.io/rules/class-literal-property-style */ '@typescript-eslint/class-literal-property-style'?: Linter.RuleEntry; /** * Enforce that class methods utilize `this` * @see https://typescript-eslint.io/rules/class-methods-use-this */ '@typescript-eslint/class-methods-use-this'?: Linter.RuleEntry; /** * Enforce specifying generic type arguments on type annotation or constructor name of a constructor call * @see https://typescript-eslint.io/rules/consistent-generic-constructors */ '@typescript-eslint/consistent-generic-constructors'?: Linter.RuleEntry; /** * Require or disallow the `Record` type * @see https://typescript-eslint.io/rules/consistent-indexed-object-style */ '@typescript-eslint/consistent-indexed-object-style'?: Linter.RuleEntry; /** * Require `return` statements to either always or never specify values * @see https://typescript-eslint.io/rules/consistent-return */ '@typescript-eslint/consistent-return'?: Linter.RuleEntry; /** * Enforce consistent usage of type assertions * @see https://typescript-eslint.io/rules/consistent-type-assertions */ '@typescript-eslint/consistent-type-assertions'?: Linter.RuleEntry; /** * Enforce type definitions to consistently use either `interface` or `type` * @see https://typescript-eslint.io/rules/consistent-type-definitions */ '@typescript-eslint/consistent-type-definitions'?: Linter.RuleEntry; /** * Enforce consistent usage of type exports * @see https://typescript-eslint.io/rules/consistent-type-exports */ '@typescript-eslint/consistent-type-exports'?: Linter.RuleEntry; /** * Enforce consistent usage of type imports * @see https://typescript-eslint.io/rules/consistent-type-imports */ '@typescript-eslint/consistent-type-imports'?: Linter.RuleEntry; /** * Enforce default parameters to be last * @see https://typescript-eslint.io/rules/default-param-last */ '@typescript-eslint/default-param-last'?: Linter.RuleEntry<[]>; /** * Enforce dot notation whenever possible * @see https://typescript-eslint.io/rules/dot-notation */ '@typescript-eslint/dot-notation'?: Linter.RuleEntry; /** * Require explicit return types on functions and class methods * @see https://typescript-eslint.io/rules/explicit-function-return-type */ '@typescript-eslint/explicit-function-return-type'?: Linter.RuleEntry; /** * Require explicit accessibility modifiers on class properties and methods * @see https://typescript-eslint.io/rules/explicit-member-accessibility */ '@typescript-eslint/explicit-member-accessibility'?: Linter.RuleEntry; /** * Require explicit return and argument types on exported functions' and classes' public class methods * @see https://typescript-eslint.io/rules/explicit-module-boundary-types */ '@typescript-eslint/explicit-module-boundary-types'?: Linter.RuleEntry; /** * Require or disallow initialization in variable declarations * @see https://typescript-eslint.io/rules/init-declarations */ '@typescript-eslint/init-declarations'?: Linter.RuleEntry; /** * Enforce a maximum number of parameters in function definitions * @see https://typescript-eslint.io/rules/max-params */ '@typescript-eslint/max-params'?: Linter.RuleEntry; /** * Require a consistent member declaration order * @see https://typescript-eslint.io/rules/member-ordering */ '@typescript-eslint/member-ordering'?: Linter.RuleEntry; /** * Enforce using a particular method signature syntax * @see https://typescript-eslint.io/rules/method-signature-style */ '@typescript-eslint/method-signature-style'?: Linter.RuleEntry; /** * Enforce naming conventions for everything across a codebase * @see https://typescript-eslint.io/rules/naming-convention */ '@typescript-eslint/naming-convention'?: Linter.RuleEntry; /** * Disallow generic `Array` constructors * @see https://typescript-eslint.io/rules/no-array-constructor */ '@typescript-eslint/no-array-constructor'?: Linter.RuleEntry<[]>; /** * Disallow using the `delete` operator on array values * @see https://typescript-eslint.io/rules/no-array-delete */ '@typescript-eslint/no-array-delete'?: Linter.RuleEntry<[]>; /** * Require `.toString()` and `.toLocaleString()` to only be called on objects which provide useful information when stringified * @see https://typescript-eslint.io/rules/no-base-to-string */ '@typescript-eslint/no-base-to-string'?: Linter.RuleEntry; /** * Disallow non-null assertion in locations that may be confusing * @see https://typescript-eslint.io/rules/no-confusing-non-null-assertion */ '@typescript-eslint/no-confusing-non-null-assertion'?: Linter.RuleEntry<[]>; /** * Require expressions of type void to appear in statement position * @see https://typescript-eslint.io/rules/no-confusing-void-expression */ '@typescript-eslint/no-confusing-void-expression'?: Linter.RuleEntry; /** * Disallow using code marked as `@deprecated` * @see https://typescript-eslint.io/rules/no-deprecated */ '@typescript-eslint/no-deprecated'?: Linter.RuleEntry; /** * Disallow duplicate class members * @see https://typescript-eslint.io/rules/no-dupe-class-members */ '@typescript-eslint/no-dupe-class-members'?: Linter.RuleEntry<[]>; /** * Disallow duplicate enum member values * @see https://typescript-eslint.io/rules/no-duplicate-enum-values */ '@typescript-eslint/no-duplicate-enum-values'?: Linter.RuleEntry<[]>; /** * Disallow duplicate constituents of union or intersection types * @see https://typescript-eslint.io/rules/no-duplicate-type-constituents */ '@typescript-eslint/no-duplicate-type-constituents'?: Linter.RuleEntry; /** * Disallow using the `delete` operator on computed key expressions * @see https://typescript-eslint.io/rules/no-dynamic-delete */ '@typescript-eslint/no-dynamic-delete'?: Linter.RuleEntry<[]>; /** * Disallow empty functions * @see https://typescript-eslint.io/rules/no-empty-function */ '@typescript-eslint/no-empty-function'?: Linter.RuleEntry; /** * Disallow the declaration of empty interfaces * @see https://typescript-eslint.io/rules/no-empty-interface * @deprecated */ '@typescript-eslint/no-empty-interface'?: Linter.RuleEntry; /** * Disallow accidentally using the "empty object" type * @see https://typescript-eslint.io/rules/no-empty-object-type */ '@typescript-eslint/no-empty-object-type'?: Linter.RuleEntry; /** * Disallow the `any` type * @see https://typescript-eslint.io/rules/no-explicit-any */ '@typescript-eslint/no-explicit-any'?: Linter.RuleEntry; /** * Disallow extra non-null assertions * @see https://typescript-eslint.io/rules/no-extra-non-null-assertion */ '@typescript-eslint/no-extra-non-null-assertion'?: Linter.RuleEntry<[]>; /** * Disallow classes used as namespaces * @see https://typescript-eslint.io/rules/no-extraneous-class */ '@typescript-eslint/no-extraneous-class'?: Linter.RuleEntry; /** * Require Promise-like statements to be handled appropriately * @see https://typescript-eslint.io/rules/no-floating-promises */ '@typescript-eslint/no-floating-promises'?: Linter.RuleEntry; /** * Disallow iterating over an array with a for-in loop * @see https://typescript-eslint.io/rules/no-for-in-array */ '@typescript-eslint/no-for-in-array'?: Linter.RuleEntry<[]>; /** * Disallow the use of `eval()`-like functions * @see https://typescript-eslint.io/rules/no-implied-eval */ '@typescript-eslint/no-implied-eval'?: Linter.RuleEntry<[]>; /** * Enforce the use of top-level import type qualifier when an import only has specifiers with inline type qualifiers * @see https://typescript-eslint.io/rules/no-import-type-side-effects */ '@typescript-eslint/no-import-type-side-effects'?: Linter.RuleEntry<[]>; /** * Disallow explicit type declarations for variables or parameters initialized to a number, string, or boolean * @see https://typescript-eslint.io/rules/no-inferrable-types */ '@typescript-eslint/no-inferrable-types'?: Linter.RuleEntry; /** * Disallow `this` keywords outside of classes or class-like objects * @see https://typescript-eslint.io/rules/no-invalid-this */ '@typescript-eslint/no-invalid-this'?: Linter.RuleEntry; /** * Disallow `void` type outside of generic or return types * @see https://typescript-eslint.io/rules/no-invalid-void-type */ '@typescript-eslint/no-invalid-void-type'?: Linter.RuleEntry; /** * Disallow function declarations that contain unsafe references inside loop statements * @see https://typescript-eslint.io/rules/no-loop-func */ '@typescript-eslint/no-loop-func'?: Linter.RuleEntry<[]>; /** * Disallow literal numbers that lose precision * @see https://typescript-eslint.io/rules/no-loss-of-precision * @deprecated */ '@typescript-eslint/no-loss-of-precision'?: Linter.RuleEntry<[]>; /** * Disallow magic numbers * @see https://typescript-eslint.io/rules/no-magic-numbers */ '@typescript-eslint/no-magic-numbers'?: Linter.RuleEntry; /** * Disallow the `void` operator except when used to discard a value * @see https://typescript-eslint.io/rules/no-meaningless-void-operator */ '@typescript-eslint/no-meaningless-void-operator'?: Linter.RuleEntry; /** * Enforce valid definition of `new` and `constructor` * @see https://typescript-eslint.io/rules/no-misused-new */ '@typescript-eslint/no-misused-new'?: Linter.RuleEntry<[]>; /** * Disallow Promises in places not designed to handle them * @see https://typescript-eslint.io/rules/no-misused-promises */ '@typescript-eslint/no-misused-promises'?: Linter.RuleEntry; /** * Disallow using the spread operator when it might cause unexpected behavior * @see https://typescript-eslint.io/rules/no-misused-spread */ '@typescript-eslint/no-misused-spread'?: Linter.RuleEntry; /** * Disallow enums from having both number and string members * @see https://typescript-eslint.io/rules/no-mixed-enums */ '@typescript-eslint/no-mixed-enums'?: Linter.RuleEntry<[]>; /** * Disallow TypeScript namespaces * @see https://typescript-eslint.io/rules/no-namespace */ '@typescript-eslint/no-namespace'?: Linter.RuleEntry; /** * Disallow non-null assertions in the left operand of a nullish coalescing operator * @see https://typescript-eslint.io/rules/no-non-null-asserted-nullish-coalescing */ '@typescript-eslint/no-non-null-asserted-nullish-coalescing'?: Linter.RuleEntry<[]>; /** * Disallow non-null assertions after an optional chain expression * @see https://typescript-eslint.io/rules/no-non-null-asserted-optional-chain */ '@typescript-eslint/no-non-null-asserted-optional-chain'?: Linter.RuleEntry<[]>; /** * Disallow non-null assertions using the `!` postfix operator * @see https://typescript-eslint.io/rules/no-non-null-assertion */ '@typescript-eslint/no-non-null-assertion'?: Linter.RuleEntry<[]>; /** * Disallow variable redeclaration * @see https://typescript-eslint.io/rules/no-redeclare */ '@typescript-eslint/no-redeclare'?: Linter.RuleEntry; /** * Disallow members of unions and intersections that do nothing or override type information * @see https://typescript-eslint.io/rules/no-redundant-type-constituents */ '@typescript-eslint/no-redundant-type-constituents'?: Linter.RuleEntry<[]>; /** * Disallow invocation of `require()` * @see https://typescript-eslint.io/rules/no-require-imports */ '@typescript-eslint/no-require-imports'?: Linter.RuleEntry; /** * Disallow specified modules when loaded by `import` * @see https://typescript-eslint.io/rules/no-restricted-imports */ '@typescript-eslint/no-restricted-imports'?: Linter.RuleEntry; /** * Disallow certain types * @see https://typescript-eslint.io/rules/no-restricted-types */ '@typescript-eslint/no-restricted-types'?: Linter.RuleEntry; /** * Disallow variable declarations from shadowing variables declared in the outer scope * @see https://typescript-eslint.io/rules/no-shadow */ '@typescript-eslint/no-shadow'?: Linter.RuleEntry; /** * Disallow aliasing `this` * @see https://typescript-eslint.io/rules/no-this-alias */ '@typescript-eslint/no-this-alias'?: Linter.RuleEntry; /** * Disallow type aliases * @see https://typescript-eslint.io/rules/no-type-alias * @deprecated */ '@typescript-eslint/no-type-alias'?: Linter.RuleEntry; /** * Disallow unnecessary equality comparisons against boolean literals * @see https://typescript-eslint.io/rules/no-unnecessary-boolean-literal-compare */ '@typescript-eslint/no-unnecessary-boolean-literal-compare'?: Linter.RuleEntry; /** * Disallow conditionals where the type is always truthy or always falsy * @see https://typescript-eslint.io/rules/no-unnecessary-condition */ '@typescript-eslint/no-unnecessary-condition'?: Linter.RuleEntry; /** * Disallow unnecessary assignment of constructor property parameter * @see https://typescript-eslint.io/rules/no-unnecessary-parameter-property-assignment */ '@typescript-eslint/no-unnecessary-parameter-property-assignment'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary namespace qualifiers * @see https://typescript-eslint.io/rules/no-unnecessary-qualifier */ '@typescript-eslint/no-unnecessary-qualifier'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary template expressions * @see https://typescript-eslint.io/rules/no-unnecessary-template-expression */ '@typescript-eslint/no-unnecessary-template-expression'?: Linter.RuleEntry<[]>; /** * Disallow type arguments that are equal to the default * @see https://typescript-eslint.io/rules/no-unnecessary-type-arguments */ '@typescript-eslint/no-unnecessary-type-arguments'?: Linter.RuleEntry<[]>; /** * Disallow type assertions that do not change the type of an expression * @see https://typescript-eslint.io/rules/no-unnecessary-type-assertion */ '@typescript-eslint/no-unnecessary-type-assertion'?: Linter.RuleEntry; /** * Disallow unnecessary constraints on generic types * @see https://typescript-eslint.io/rules/no-unnecessary-type-constraint */ '@typescript-eslint/no-unnecessary-type-constraint'?: Linter.RuleEntry<[]>; /** * Disallow conversion idioms when they do not change the type or value of the expression * @see https://typescript-eslint.io/rules/no-unnecessary-type-conversion */ '@typescript-eslint/no-unnecessary-type-conversion'?: Linter.RuleEntry<[]>; /** * Disallow type parameters that aren't used multiple times * @see https://typescript-eslint.io/rules/no-unnecessary-type-parameters */ '@typescript-eslint/no-unnecessary-type-parameters'?: Linter.RuleEntry<[]>; /** * Disallow calling a function with a value with type `any` * @see https://typescript-eslint.io/rules/no-unsafe-argument */ '@typescript-eslint/no-unsafe-argument'?: Linter.RuleEntry<[]>; /** * Disallow assigning a value with type `any` to variables and properties * @see https://typescript-eslint.io/rules/no-unsafe-assignment */ '@typescript-eslint/no-unsafe-assignment'?: Linter.RuleEntry<[]>; /** * Disallow calling a value with type `any` * @see https://typescript-eslint.io/rules/no-unsafe-call */ '@typescript-eslint/no-unsafe-call'?: Linter.RuleEntry<[]>; /** * Disallow unsafe declaration merging * @see https://typescript-eslint.io/rules/no-unsafe-declaration-merging */ '@typescript-eslint/no-unsafe-declaration-merging'?: Linter.RuleEntry<[]>; /** * Disallow comparing an enum value with a non-enum value * @see https://typescript-eslint.io/rules/no-unsafe-enum-comparison */ '@typescript-eslint/no-unsafe-enum-comparison'?: Linter.RuleEntry<[]>; /** * Disallow using the unsafe built-in Function type * @see https://typescript-eslint.io/rules/no-unsafe-function-type */ '@typescript-eslint/no-unsafe-function-type'?: Linter.RuleEntry<[]>; /** * Disallow member access on a value with type `any` * @see https://typescript-eslint.io/rules/no-unsafe-member-access */ '@typescript-eslint/no-unsafe-member-access'?: Linter.RuleEntry; /** * Disallow returning a value with type `any` from a function * @see https://typescript-eslint.io/rules/no-unsafe-return */ '@typescript-eslint/no-unsafe-return'?: Linter.RuleEntry<[]>; /** * Disallow type assertions that narrow a type * @see https://typescript-eslint.io/rules/no-unsafe-type-assertion */ '@typescript-eslint/no-unsafe-type-assertion'?: Linter.RuleEntry<[]>; /** * Require unary negation to take a number * @see https://typescript-eslint.io/rules/no-unsafe-unary-minus */ '@typescript-eslint/no-unsafe-unary-minus'?: Linter.RuleEntry<[]>; /** * Disallow unused expressions * @see https://typescript-eslint.io/rules/no-unused-expressions */ '@typescript-eslint/no-unused-expressions'?: Linter.RuleEntry; /** * Disallow unused private class members * @see https://typescript-eslint.io/rules/no-unused-private-class-members */ '@typescript-eslint/no-unused-private-class-members'?: Linter.RuleEntry<[]>; /** * Disallow unused variables * @see https://typescript-eslint.io/rules/no-unused-vars */ '@typescript-eslint/no-unused-vars'?: Linter.RuleEntry; /** * Disallow the use of variables before they are defined * @see https://typescript-eslint.io/rules/no-use-before-define */ '@typescript-eslint/no-use-before-define'?: Linter.RuleEntry; /** * Disallow unnecessary constructors * @see https://typescript-eslint.io/rules/no-useless-constructor */ '@typescript-eslint/no-useless-constructor'?: Linter.RuleEntry<[]>; /** * Disallow default values that will never be used * @see https://typescript-eslint.io/rules/no-useless-default-assignment */ '@typescript-eslint/no-useless-default-assignment'?: Linter.RuleEntry; /** * Disallow empty exports that don't change anything in a module file * @see https://typescript-eslint.io/rules/no-useless-empty-export */ '@typescript-eslint/no-useless-empty-export'?: Linter.RuleEntry<[]>; /** * Disallow `require` statements except in import statements * @see https://typescript-eslint.io/rules/no-var-requires * @deprecated */ '@typescript-eslint/no-var-requires'?: Linter.RuleEntry; /** * Disallow using confusing built-in primitive class wrappers * @see https://typescript-eslint.io/rules/no-wrapper-object-types */ '@typescript-eslint/no-wrapper-object-types'?: Linter.RuleEntry<[]>; /** * Enforce non-null assertions over explicit type assertions * @see https://typescript-eslint.io/rules/non-nullable-type-assertion-style */ '@typescript-eslint/non-nullable-type-assertion-style'?: Linter.RuleEntry<[]>; /** * Disallow throwing non-`Error` values as exceptions * @see https://typescript-eslint.io/rules/only-throw-error */ '@typescript-eslint/only-throw-error'?: Linter.RuleEntry; /** * Require or disallow parameter properties in class constructors * @see https://typescript-eslint.io/rules/parameter-properties */ '@typescript-eslint/parameter-properties'?: Linter.RuleEntry; /** * Enforce the use of `as const` over literal type * @see https://typescript-eslint.io/rules/prefer-as-const */ '@typescript-eslint/prefer-as-const'?: Linter.RuleEntry<[]>; /** * Require destructuring from arrays and/or objects * @see https://typescript-eslint.io/rules/prefer-destructuring */ '@typescript-eslint/prefer-destructuring'?: Linter.RuleEntry; /** * Require each enum member value to be explicitly initialized * @see https://typescript-eslint.io/rules/prefer-enum-initializers */ '@typescript-eslint/prefer-enum-initializers'?: Linter.RuleEntry<[]>; /** * Enforce the use of Array.prototype.find() over Array.prototype.filter() followed by [0] when looking for a single result * @see https://typescript-eslint.io/rules/prefer-find */ '@typescript-eslint/prefer-find'?: Linter.RuleEntry<[]>; /** * Enforce the use of `for-of` loop over the standard `for` loop where possible * @see https://typescript-eslint.io/rules/prefer-for-of */ '@typescript-eslint/prefer-for-of'?: Linter.RuleEntry<[]>; /** * Enforce using function types instead of interfaces with call signatures * @see https://typescript-eslint.io/rules/prefer-function-type */ '@typescript-eslint/prefer-function-type'?: Linter.RuleEntry<[]>; /** * Enforce `includes` method over `indexOf` method * @see https://typescript-eslint.io/rules/prefer-includes */ '@typescript-eslint/prefer-includes'?: Linter.RuleEntry<[]>; /** * Require all enum members to be literal values * @see https://typescript-eslint.io/rules/prefer-literal-enum-member */ '@typescript-eslint/prefer-literal-enum-member'?: Linter.RuleEntry; /** * Require using `namespace` keyword over `module` keyword to declare custom TypeScript modules * @see https://typescript-eslint.io/rules/prefer-namespace-keyword */ '@typescript-eslint/prefer-namespace-keyword'?: Linter.RuleEntry<[]>; /** * Enforce using the nullish coalescing operator instead of logical assignments or chaining * @see https://typescript-eslint.io/rules/prefer-nullish-coalescing */ '@typescript-eslint/prefer-nullish-coalescing'?: Linter.RuleEntry; /** * Enforce using concise optional chain expressions instead of chained logical ands, negated logical ors, or empty objects * @see https://typescript-eslint.io/rules/prefer-optional-chain */ '@typescript-eslint/prefer-optional-chain'?: Linter.RuleEntry; /** * Require using Error objects as Promise rejection reasons * @see https://typescript-eslint.io/rules/prefer-promise-reject-errors */ '@typescript-eslint/prefer-promise-reject-errors'?: Linter.RuleEntry; /** * Require private members to be marked as `readonly` if they're never modified outside of the constructor * @see https://typescript-eslint.io/rules/prefer-readonly */ '@typescript-eslint/prefer-readonly'?: Linter.RuleEntry; /** * Require function parameters to be typed as `readonly` to prevent accidental mutation of inputs * @see https://typescript-eslint.io/rules/prefer-readonly-parameter-types */ '@typescript-eslint/prefer-readonly-parameter-types'?: Linter.RuleEntry; /** * Enforce using type parameter when calling `Array#reduce` instead of using a type assertion * @see https://typescript-eslint.io/rules/prefer-reduce-type-parameter */ '@typescript-eslint/prefer-reduce-type-parameter'?: Linter.RuleEntry<[]>; /** * Enforce `RegExp#exec` over `String#match` if no global flag is provided * @see https://typescript-eslint.io/rules/prefer-regexp-exec */ '@typescript-eslint/prefer-regexp-exec'?: Linter.RuleEntry<[]>; /** * Enforce that `this` is used when only `this` type is returned * @see https://typescript-eslint.io/rules/prefer-return-this-type */ '@typescript-eslint/prefer-return-this-type'?: Linter.RuleEntry<[]>; /** * Enforce using `String#startsWith` and `String#endsWith` over other equivalent methods of checking substrings * @see https://typescript-eslint.io/rules/prefer-string-starts-ends-with */ '@typescript-eslint/prefer-string-starts-ends-with'?: Linter.RuleEntry; /** * Enforce using `@ts-expect-error` over `@ts-ignore` * @see https://typescript-eslint.io/rules/prefer-ts-expect-error * @deprecated */ '@typescript-eslint/prefer-ts-expect-error'?: Linter.RuleEntry<[]>; /** * Require any function or method that returns a Promise to be marked async * @see https://typescript-eslint.io/rules/promise-function-async */ '@typescript-eslint/promise-function-async'?: Linter.RuleEntry; /** * Enforce that `get()` types should be assignable to their equivalent `set()` type * @see https://typescript-eslint.io/rules/related-getter-setter-pairs */ '@typescript-eslint/related-getter-setter-pairs'?: Linter.RuleEntry<[]>; /** * Require `Array#sort` and `Array#toSorted` calls to always provide a `compareFunction` * @see https://typescript-eslint.io/rules/require-array-sort-compare */ '@typescript-eslint/require-array-sort-compare'?: Linter.RuleEntry; /** * Disallow async functions which do not return promises and have no `await` expression * @see https://typescript-eslint.io/rules/require-await */ '@typescript-eslint/require-await'?: Linter.RuleEntry<[]>; /** * Require both operands of addition to be the same type and be `bigint`, `number`, or `string` * @see https://typescript-eslint.io/rules/restrict-plus-operands */ '@typescript-eslint/restrict-plus-operands'?: Linter.RuleEntry; /** * Enforce template literal expressions to be of `string` type * @see https://typescript-eslint.io/rules/restrict-template-expressions */ '@typescript-eslint/restrict-template-expressions'?: Linter.RuleEntry; /** * Enforce consistent awaiting of returned promises * @see https://typescript-eslint.io/rules/return-await */ '@typescript-eslint/return-await'?: Linter.RuleEntry; /** * Enforce constituents of a type union/intersection to be sorted alphabetically * @see https://typescript-eslint.io/rules/sort-type-constituents * @deprecated */ '@typescript-eslint/sort-type-constituents'?: Linter.RuleEntry; /** * Disallow certain types in boolean expressions * @see https://typescript-eslint.io/rules/strict-boolean-expressions */ '@typescript-eslint/strict-boolean-expressions'?: Linter.RuleEntry; /** * Disallow passing a value-returning function in a position accepting a void function * @see https://typescript-eslint.io/rules/strict-void-return */ '@typescript-eslint/strict-void-return'?: Linter.RuleEntry; /** * Require switch-case statements to be exhaustive * @see https://typescript-eslint.io/rules/switch-exhaustiveness-check */ '@typescript-eslint/switch-exhaustiveness-check'?: Linter.RuleEntry; /** * Disallow certain triple slash directives in favor of ES6-style import declarations * @see https://typescript-eslint.io/rules/triple-slash-reference */ '@typescript-eslint/triple-slash-reference'?: Linter.RuleEntry; /** * Require type annotations in certain places * @see https://typescript-eslint.io/rules/typedef * @deprecated */ '@typescript-eslint/typedef'?: Linter.RuleEntry; /** * Enforce unbound methods are called with their expected scope * @see https://typescript-eslint.io/rules/unbound-method */ '@typescript-eslint/unbound-method'?: Linter.RuleEntry; /** * Disallow two overloads that could be unified into one with a union or an optional/rest parameter * @see https://typescript-eslint.io/rules/unified-signatures */ '@typescript-eslint/unified-signatures'?: Linter.RuleEntry; /** * Enforce typing arguments in Promise rejection callbacks as `unknown` * @see https://typescript-eslint.io/rules/use-unknown-in-catch-callback-variable */ '@typescript-eslint/use-unknown-in-catch-callback-variable'?: Linter.RuleEntry<[]>; /** * Enforce getter and setter pairs in objects and classes * @see https://eslint.org/docs/latest/rules/accessor-pairs */ 'accessor-pairs'?: Linter.RuleEntry; /** * Having line breaks styles to object, array and named imports * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/consistent-chaining.md */ 'antfu/consistent-chaining'?: Linter.RuleEntry; /** * Having line breaks styles to object, array and named imports * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/consistent-list-newline.md */ 'antfu/consistent-list-newline'?: Linter.RuleEntry; /** * Enforce Anthony's style of curly bracket * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/curly.md */ 'antfu/curly'?: Linter.RuleEntry<[]>; /** * Newline after if * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/if-newline.md */ 'antfu/if-newline'?: Linter.RuleEntry<[]>; /** * Fix duplication in imports * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/import-dedupe.md */ 'antfu/import-dedupe'?: Linter.RuleEntry<[]>; /** * Enforce consistent indentation in `unindent` template tag * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/indent-unindent.md */ 'antfu/indent-unindent'?: Linter.RuleEntry; /** * Prevent importing modules in `dist` folder * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-dist.test.ts */ 'antfu/no-import-dist'?: Linter.RuleEntry<[]>; /** * Prevent importing modules in `node_modules` folder by relative or absolute path * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-node-modules-by-path.test.ts */ 'antfu/no-import-node-modules-by-path'?: Linter.RuleEntry<[]>; /** * Prevent using top-level await * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-top-level-await.test.ts */ 'antfu/no-top-level-await'?: Linter.RuleEntry<[]>; /** * Do not use `exports =` * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-ts-export-equal.test.ts */ 'antfu/no-ts-export-equal'?: Linter.RuleEntry<[]>; /** * Enforce top-level functions to be declared with function keyword * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/top-level-function.md */ 'antfu/top-level-function'?: Linter.RuleEntry<[]>; /** * Enforce linebreaks after opening and before closing array brackets * @see https://eslint.org/docs/latest/rules/array-bracket-newline * @deprecated */ 'array-bracket-newline'?: Linter.RuleEntry; /** * Enforce consistent spacing inside array brackets * @see https://eslint.org/docs/latest/rules/array-bracket-spacing * @deprecated */ 'array-bracket-spacing'?: Linter.RuleEntry; /** * Enforce `return` statements in callbacks of array methods * @see https://eslint.org/docs/latest/rules/array-callback-return */ 'array-callback-return'?: Linter.RuleEntry; /** * Enforce line breaks after each array element * @see https://eslint.org/docs/latest/rules/array-element-newline * @deprecated */ 'array-element-newline'?: Linter.RuleEntry; /** * Require braces around arrow function bodies * @see https://eslint.org/docs/latest/rules/arrow-body-style */ 'arrow-body-style'?: Linter.RuleEntry; /** * Require parentheses around arrow function arguments * @see https://eslint.org/docs/latest/rules/arrow-parens * @deprecated */ 'arrow-parens'?: Linter.RuleEntry; /** * Enforce consistent spacing before and after the arrow in arrow functions * @see https://eslint.org/docs/latest/rules/arrow-spacing * @deprecated */ 'arrow-spacing'?: Linter.RuleEntry; /** * Enforce the use of variables within the scope they are defined * @see https://eslint.org/docs/latest/rules/block-scoped-var */ 'block-scoped-var'?: Linter.RuleEntry<[]>; /** * Disallow or enforce spaces inside of blocks after opening block and before closing block * @see https://eslint.org/docs/latest/rules/block-spacing * @deprecated */ 'block-spacing'?: Linter.RuleEntry; /** * Enforce consistent brace style for blocks * @see https://eslint.org/docs/latest/rules/brace-style * @deprecated */ 'brace-style'?: Linter.RuleEntry; /** * Require `return` statements after callbacks * @see https://eslint.org/docs/latest/rules/callback-return * @deprecated */ 'callback-return'?: Linter.RuleEntry; /** * Enforce camelcase naming convention * @see https://eslint.org/docs/latest/rules/camelcase */ 'camelcase'?: Linter.RuleEntry; /** * Enforce or disallow capitalization of the first letter of a comment * @see https://eslint.org/docs/latest/rules/capitalized-comments */ 'capitalized-comments'?: Linter.RuleEntry; /** * Enforce that class methods utilize `this` * @see https://eslint.org/docs/latest/rules/class-methods-use-this */ 'class-methods-use-this'?: Linter.RuleEntry; /** * Require or disallow trailing commas * @see https://eslint.org/docs/latest/rules/comma-dangle * @deprecated */ 'comma-dangle'?: Linter.RuleEntry; /** * Enforce consistent spacing before and after commas * @see https://eslint.org/docs/latest/rules/comma-spacing * @deprecated */ 'comma-spacing'?: Linter.RuleEntry; /** * Enforce consistent comma style * @see https://eslint.org/docs/latest/rules/comma-style * @deprecated */ 'comma-style'?: Linter.RuleEntry; /** * Enforce a maximum cyclomatic complexity allowed in a program * @see https://eslint.org/docs/latest/rules/complexity */ 'complexity'?: Linter.RuleEntry; /** * Enforce consistent spacing inside computed property brackets * @see https://eslint.org/docs/latest/rules/computed-property-spacing * @deprecated */ 'computed-property-spacing'?: Linter.RuleEntry; /** * Require `return` statements to either always or never specify values * @see https://eslint.org/docs/latest/rules/consistent-return */ 'consistent-return'?: Linter.RuleEntry; /** * Enforce consistent naming when capturing the current execution context * @see https://eslint.org/docs/latest/rules/consistent-this */ 'consistent-this'?: Linter.RuleEntry; /** * Require `super()` calls in constructors * @see https://eslint.org/docs/latest/rules/constructor-super */ 'constructor-super'?: Linter.RuleEntry<[]>; /** * Enforce consistent brace style for all control statements * @see https://eslint.org/docs/latest/rules/curly */ 'curly'?: Linter.RuleEntry; /** * Require `default` cases in `switch` statements * @see https://eslint.org/docs/latest/rules/default-case */ 'default-case'?: Linter.RuleEntry; /** * Enforce `default` clauses in `switch` statements to be last * @see https://eslint.org/docs/latest/rules/default-case-last */ 'default-case-last'?: Linter.RuleEntry<[]>; /** * Enforce default parameters to be last * @see https://eslint.org/docs/latest/rules/default-param-last */ 'default-param-last'?: Linter.RuleEntry<[]>; /** * Enforce consistent newlines before and after dots * @see https://eslint.org/docs/latest/rules/dot-location * @deprecated */ 'dot-location'?: Linter.RuleEntry; /** * Enforce dot notation whenever possible * @see https://eslint.org/docs/latest/rules/dot-notation */ 'dot-notation'?: Linter.RuleEntry; /** * Require or disallow newline at the end of files * @see https://eslint.org/docs/latest/rules/eol-last * @deprecated */ 'eol-last'?: Linter.RuleEntry; /** * Require the use of `===` and `!==` * @see https://eslint.org/docs/latest/rules/eqeqeq */ 'eqeqeq'?: Linter.RuleEntry; /** * Enforce `for` loop update clause moving the counter in the right direction * @see https://eslint.org/docs/latest/rules/for-direction */ 'for-direction'?: Linter.RuleEntry<[]>; /** * Require or disallow spacing between function identifiers and their invocations * @see https://eslint.org/docs/latest/rules/func-call-spacing * @deprecated */ 'func-call-spacing'?: Linter.RuleEntry; /** * Require function names to match the name of the variable or property to which they are assigned * @see https://eslint.org/docs/latest/rules/func-name-matching */ 'func-name-matching'?: Linter.RuleEntry; /** * Require or disallow named `function` expressions * @see https://eslint.org/docs/latest/rules/func-names */ 'func-names'?: Linter.RuleEntry; /** * Enforce the consistent use of either `function` declarations or expressions assigned to variables * @see https://eslint.org/docs/latest/rules/func-style */ 'func-style'?: Linter.RuleEntry; /** * Enforce line breaks between arguments of a function call * @see https://eslint.org/docs/latest/rules/function-call-argument-newline * @deprecated */ 'function-call-argument-newline'?: Linter.RuleEntry; /** * Enforce consistent line breaks inside function parentheses * @see https://eslint.org/docs/latest/rules/function-paren-newline * @deprecated */ 'function-paren-newline'?: Linter.RuleEntry; /** * Enforce consistent spacing around `*` operators in generator functions * @see https://eslint.org/docs/latest/rules/generator-star-spacing * @deprecated */ 'generator-star-spacing'?: Linter.RuleEntry; /** * Enforce `return` statements in getters * @see https://eslint.org/docs/latest/rules/getter-return */ 'getter-return'?: Linter.RuleEntry; /** * Require `require()` calls to be placed at top-level module scope * @see https://eslint.org/docs/latest/rules/global-require * @deprecated */ 'global-require'?: Linter.RuleEntry<[]>; /** * Require grouped accessor pairs in object literals and classes * @see https://eslint.org/docs/latest/rules/grouped-accessor-pairs */ 'grouped-accessor-pairs'?: Linter.RuleEntry; /** * Require `for-in` loops to include an `if` statement * @see https://eslint.org/docs/latest/rules/guard-for-in */ 'guard-for-in'?: Linter.RuleEntry<[]>; /** * Require error handling in callbacks * @see https://eslint.org/docs/latest/rules/handle-callback-err * @deprecated */ 'handle-callback-err'?: Linter.RuleEntry; /** * Disallow specified identifiers * @see https://eslint.org/docs/latest/rules/id-blacklist * @deprecated */ 'id-blacklist'?: Linter.RuleEntry; /** * Disallow specified identifiers * @see https://eslint.org/docs/latest/rules/id-denylist */ 'id-denylist'?: Linter.RuleEntry; /** * Enforce minimum and maximum identifier lengths * @see https://eslint.org/docs/latest/rules/id-length */ 'id-length'?: Linter.RuleEntry; /** * Require identifiers to match a specified regular expression * @see https://eslint.org/docs/latest/rules/id-match */ 'id-match'?: Linter.RuleEntry; /** * Enforce the location of arrow function bodies * @see https://eslint.org/docs/latest/rules/implicit-arrow-linebreak * @deprecated */ 'implicit-arrow-linebreak'?: Linter.RuleEntry; /** * Enforce or ban the use of inline type-only markers for named imports. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/consistent-type-specifier-style/README.md */ 'import/consistent-type-specifier-style'?: Linter.RuleEntry; /** * Ensure all exports appear after other statements. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/exports-last/README.md */ 'import/exports-last'?: Linter.RuleEntry<[]>; /** * Ensure all imports appear before other statements. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/first/README.md */ 'import/first'?: Linter.RuleEntry; /** * Enforce a newline after import statements. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/newline-after-import/README.md */ 'import/newline-after-import'?: Linter.RuleEntry; /** * Forbid default exports. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-default-export/README.md */ 'import/no-default-export'?: Linter.RuleEntry<[]>; /** * Forbid repeated import of the same module in multiple places. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-duplicates/README.md */ 'import/no-duplicates'?: Linter.RuleEntry; /** * Forbid the use of mutable exports with `var` or `let`. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-mutable-exports/README.md */ 'import/no-mutable-exports'?: Linter.RuleEntry<[]>; /** * Forbid named default exports. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-named-default/README.md */ 'import/no-named-default'?: Linter.RuleEntry<[]>; /** * Prefer a default export if module exports a single name or multiple names. * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/prefer-default-export/README.md */ 'import/prefer-default-export'?: Linter.RuleEntry; /** * Enforce consistent indentation * @see https://eslint.org/docs/latest/rules/indent * @deprecated */ 'indent'?: Linter.RuleEntry; /** * Enforce consistent indentation * @see https://eslint.org/docs/latest/rules/indent-legacy * @deprecated */ 'indent-legacy'?: Linter.RuleEntry; /** * Require or disallow initialization in variable declarations * @see https://eslint.org/docs/latest/rules/init-declarations */ 'init-declarations'?: Linter.RuleEntry; /** * Enforce `test` and `it` usage conventions * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/consistent-test-it.md */ 'jest/consistent-test-it'?: Linter.RuleEntry; /** * Enforce assertion to be made in a test body * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/expect-expect.md */ 'jest/expect-expect'?: Linter.RuleEntry; /** * Enforces a maximum number assertion calls in a test body * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/max-expects.md */ 'jest/max-expects'?: Linter.RuleEntry; /** * Enforces a maximum depth to nested describe calls * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/max-nested-describe.md */ 'jest/max-nested-describe'?: Linter.RuleEntry; /** * Disallow alias methods * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-alias-methods.md */ 'jest/no-alias-methods'?: Linter.RuleEntry<[]>; /** * Disallow commented out tests * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-commented-out-tests.md */ 'jest/no-commented-out-tests'?: Linter.RuleEntry<[]>; /** * Disallow calling `expect` conditionally * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-conditional-expect.md */ 'jest/no-conditional-expect'?: Linter.RuleEntry<[]>; /** * Disallow conditional logic in tests * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-conditional-in-test.md */ 'jest/no-conditional-in-test'?: Linter.RuleEntry<[]>; /** * Disallow confusing usages of jest.setTimeout * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-confusing-set-timeout.md */ 'jest/no-confusing-set-timeout'?: Linter.RuleEntry<[]>; /** * Disallow use of deprecated functions * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-deprecated-functions.md */ 'jest/no-deprecated-functions'?: Linter.RuleEntry<[]>; /** * Disallow disabled tests * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-disabled-tests.md */ 'jest/no-disabled-tests'?: Linter.RuleEntry<[]>; /** * Disallow using a callback in asynchronous tests and hooks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-done-callback.md */ 'jest/no-done-callback'?: Linter.RuleEntry<[]>; /** * Disallow duplicate setup and teardown hooks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-duplicate-hooks.md */ 'jest/no-duplicate-hooks'?: Linter.RuleEntry<[]>; /** * Disallow using `exports` in files containing tests * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-export.md */ 'jest/no-export'?: Linter.RuleEntry<[]>; /** * Disallow focused tests * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-focused-tests.md */ 'jest/no-focused-tests'?: Linter.RuleEntry<[]>; /** * Disallow setup and teardown hooks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-hooks.md */ 'jest/no-hooks'?: Linter.RuleEntry; /** * Disallow identical titles * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-identical-title.md */ 'jest/no-identical-title'?: Linter.RuleEntry<[]>; /** * Disallow string interpolation inside snapshots * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-interpolation-in-snapshots.md */ 'jest/no-interpolation-in-snapshots'?: Linter.RuleEntry<[]>; /** * Disallow Jasmine globals * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-jasmine-globals.md */ 'jest/no-jasmine-globals'?: Linter.RuleEntry<[]>; /** * Disallow large snapshots * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-large-snapshots.md */ 'jest/no-large-snapshots'?: Linter.RuleEntry; /** * Disallow manually importing from `__mocks__` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-mocks-import.md */ 'jest/no-mocks-import'?: Linter.RuleEntry<[]>; /** * Disallow specific `jest.` methods * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-restricted-jest-methods.md */ 'jest/no-restricted-jest-methods'?: Linter.RuleEntry; /** * Disallow specific matchers & modifiers * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-restricted-matchers.md */ 'jest/no-restricted-matchers'?: Linter.RuleEntry; /** * Disallow using `expect` outside of `it` or `test` blocks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-standalone-expect.md */ 'jest/no-standalone-expect'?: Linter.RuleEntry; /** * Require using `.only` and `.skip` over `f` and `x` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-test-prefixes.md */ 'jest/no-test-prefixes'?: Linter.RuleEntry<[]>; /** * Disallow explicitly returning from tests * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-test-return-statement.md */ 'jest/no-test-return-statement'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary async function wrapper for expected promises * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-unneeded-async-expect-function.md */ 'jest/no-unneeded-async-expect-function'?: Linter.RuleEntry<[]>; /** * Disallow using `jest.mock()` factories without an explicit type parameter * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-untyped-mock-factory.md */ 'jest/no-untyped-mock-factory'?: Linter.RuleEntry<[]>; /** * Enforce padding around `afterAll` blocks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-after-all-blocks.md */ 'jest/padding-around-after-all-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around `afterEach` blocks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-after-each-blocks.md */ 'jest/padding-around-after-each-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around Jest functions * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-all.md */ 'jest/padding-around-all'?: Linter.RuleEntry<[]>; /** * Enforce padding around `beforeAll` blocks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-before-all-blocks.md */ 'jest/padding-around-before-all-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around `beforeEach` blocks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-before-each-blocks.md */ 'jest/padding-around-before-each-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around `describe` blocks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-describe-blocks.md */ 'jest/padding-around-describe-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around `expect` groups * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-expect-groups.md */ 'jest/padding-around-expect-groups'?: Linter.RuleEntry<[]>; /** * Enforce padding around `test` and `it` blocks * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-test-blocks.md */ 'jest/padding-around-test-blocks'?: Linter.RuleEntry<[]>; /** * Suggest using `toHaveBeenCalledWith()` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-called-with.md */ 'jest/prefer-called-with'?: Linter.RuleEntry<[]>; /** * Suggest using the built-in comparison matchers * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-comparison-matcher.md */ 'jest/prefer-comparison-matcher'?: Linter.RuleEntry<[]>; /** * Prefer using `.each` rather than manual loops * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-each.md */ 'jest/prefer-each'?: Linter.RuleEntry<[]>; /** * Prefer having the last statement in a test be an assertion * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-ending-with-an-expect.md */ 'jest/prefer-ending-with-an-expect'?: Linter.RuleEntry; /** * Suggest using the built-in equality matchers * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-equality-matcher.md */ 'jest/prefer-equality-matcher'?: Linter.RuleEntry<[]>; /** * Suggest using `expect.assertions()` OR `expect.hasAssertions()` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-expect-assertions.md */ 'jest/prefer-expect-assertions'?: Linter.RuleEntry; /** * Prefer `await expect(...).resolves` over `expect(await ...)` syntax * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-expect-resolves.md */ 'jest/prefer-expect-resolves'?: Linter.RuleEntry<[]>; /** * Prefer having hooks in a consistent order * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-hooks-in-order.md */ 'jest/prefer-hooks-in-order'?: Linter.RuleEntry<[]>; /** * Suggest having hooks before any test cases * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-hooks-on-top.md */ 'jest/prefer-hooks-on-top'?: Linter.RuleEntry<[]>; /** * Prefer importing Jest globals * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-importing-jest-globals.md */ 'jest/prefer-importing-jest-globals'?: Linter.RuleEntry; /** * Prefer `jest.mocked()` over `fn as jest.Mock` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-jest-mocked.md */ 'jest/prefer-jest-mocked'?: Linter.RuleEntry<[]>; /** * Enforce lowercase test names * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-lowercase-title.md */ 'jest/prefer-lowercase-title'?: Linter.RuleEntry; /** * Prefer mock resolved/rejected shorthands for promises * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-mock-promise-shorthand.md */ 'jest/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>; /** * Prefer including a hint with external snapshots * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-snapshot-hint.md */ 'jest/prefer-snapshot-hint'?: Linter.RuleEntry; /** * Suggest using `jest.spyOn()` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-spy-on.md */ 'jest/prefer-spy-on'?: Linter.RuleEntry<[]>; /** * Suggest using `toStrictEqual()` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-strict-equal.md */ 'jest/prefer-strict-equal'?: Linter.RuleEntry<[]>; /** * Suggest using `toBe()` for primitive literals * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-be.md */ 'jest/prefer-to-be'?: Linter.RuleEntry<[]>; /** * Suggest using `toContain()` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-contain.md */ 'jest/prefer-to-contain'?: Linter.RuleEntry<[]>; /** * Suggest using `toHaveBeenCalled` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-have-been-called.md */ 'jest/prefer-to-have-been-called'?: Linter.RuleEntry<[]>; /** * Suggest using `toHaveBeenCalledTimes()` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-have-been-called-times.md */ 'jest/prefer-to-have-been-called-times'?: Linter.RuleEntry<[]>; /** * Suggest using `toHaveLength()` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-have-length.md */ 'jest/prefer-to-have-length'?: Linter.RuleEntry<[]>; /** * Suggest using `test.todo` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-todo.md */ 'jest/prefer-todo'?: Linter.RuleEntry<[]>; /** * Require setup and teardown code to be within a hook * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/require-hook.md */ 'jest/require-hook'?: Linter.RuleEntry; /** * Require a message for `toThrow()` * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/require-to-throw-message.md */ 'jest/require-to-throw-message'?: Linter.RuleEntry<[]>; /** * Require test cases and hooks to be inside a `describe` block * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/require-top-level-describe.md */ 'jest/require-top-level-describe'?: Linter.RuleEntry; /** * Enforce unbound methods are called with their expected scope * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/unbound-method.md */ 'jest/unbound-method'?: Linter.RuleEntry; /** * Enforce valid `describe()` callback * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-describe-callback.md */ 'jest/valid-describe-callback'?: Linter.RuleEntry<[]>; /** * Enforce valid `expect()` usage * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-expect.md */ 'jest/valid-expect'?: Linter.RuleEntry; /** * Require promises that have expectations in their chain to be valid * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-expect-in-promise.md */ 'jest/valid-expect-in-promise'?: Linter.RuleEntry<[]>; /** * Disallow mocking of non-existing module paths * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-mock-module-path.md */ 'jest/valid-mock-module-path'?: Linter.RuleEntry; /** * Enforce valid titles * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-title.md */ 'jest/valid-title'?: Linter.RuleEntry; /** * enforce line breaks after opening and before closing array brackets * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/array-bracket-newline.html */ 'jsonc/array-bracket-newline'?: Linter.RuleEntry; /** * disallow or enforce spaces inside of brackets * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/array-bracket-spacing.html */ 'jsonc/array-bracket-spacing'?: Linter.RuleEntry; /** * enforce line breaks between array elements * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/array-element-newline.html */ 'jsonc/array-element-newline'?: Linter.RuleEntry; /** * apply jsonc rules similar to your configured ESLint core rules * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/auto.html */ 'jsonc/auto'?: Linter.RuleEntry<[]>; /** * require or disallow trailing commas * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/comma-dangle.html */ 'jsonc/comma-dangle'?: Linter.RuleEntry; /** * enforce consistent comma style * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/comma-style.html */ 'jsonc/comma-style'?: Linter.RuleEntry; /** * enforce consistent indentation * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/indent.html */ 'jsonc/indent'?: Linter.RuleEntry; /** * enforce naming convention to property key names * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/key-name-casing.html */ 'jsonc/key-name-casing'?: Linter.RuleEntry; /** * enforce consistent spacing between keys and values in object literal properties * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/key-spacing.html */ 'jsonc/key-spacing'?: Linter.RuleEntry; /** * disallow BigInt literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-bigint-literals.html */ 'jsonc/no-bigint-literals'?: Linter.RuleEntry<[]>; /** * disallow binary expression * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-binary-expression.html */ 'jsonc/no-binary-expression'?: Linter.RuleEntry<[]>; /** * disallow binary numeric literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-binary-numeric-literals.html */ 'jsonc/no-binary-numeric-literals'?: Linter.RuleEntry<[]>; /** * disallow comments * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-comments.html */ 'jsonc/no-comments'?: Linter.RuleEntry<[]>; /** * disallow duplicate keys in object literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-dupe-keys.html */ 'jsonc/no-dupe-keys'?: Linter.RuleEntry<[]>; /** * disallow escape sequences in identifiers. * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-escape-sequence-in-identifier.html */ 'jsonc/no-escape-sequence-in-identifier'?: Linter.RuleEntry<[]>; /** * disallow leading or trailing decimal points in numeric literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-floating-decimal.html */ 'jsonc/no-floating-decimal'?: Linter.RuleEntry<[]>; /** * disallow hexadecimal numeric literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-hexadecimal-numeric-literals.html */ 'jsonc/no-hexadecimal-numeric-literals'?: Linter.RuleEntry<[]>; /** * disallow Infinity * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-infinity.html */ 'jsonc/no-infinity'?: Linter.RuleEntry<[]>; /** * disallow irregular whitespace * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-irregular-whitespace.html */ 'jsonc/no-irregular-whitespace'?: Linter.RuleEntry; /** * disallow multiline strings * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-multi-str.html */ 'jsonc/no-multi-str'?: Linter.RuleEntry<[]>; /** * disallow NaN * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-nan.html */ 'jsonc/no-nan'?: Linter.RuleEntry<[]>; /** * disallow number property keys * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-number-props.html */ 'jsonc/no-number-props'?: Linter.RuleEntry<[]>; /** * disallow numeric separators * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-numeric-separators.html */ 'jsonc/no-numeric-separators'?: Linter.RuleEntry<[]>; /** * disallow legacy octal literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-octal.html */ 'jsonc/no-octal'?: Linter.RuleEntry<[]>; /** * disallow octal escape sequences in string literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-octal-escape.html */ 'jsonc/no-octal-escape'?: Linter.RuleEntry<[]>; /** * disallow octal numeric literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-octal-numeric-literals.html */ 'jsonc/no-octal-numeric-literals'?: Linter.RuleEntry<[]>; /** * disallow parentheses around the expression * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-parenthesized.html */ 'jsonc/no-parenthesized'?: Linter.RuleEntry<[]>; /** * disallow plus sign * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-plus-sign.html */ 'jsonc/no-plus-sign'?: Linter.RuleEntry<[]>; /** * disallow RegExp literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-regexp-literals.html */ 'jsonc/no-regexp-literals'?: Linter.RuleEntry<[]>; /** * disallow sparse arrays * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-sparse-arrays.html */ 'jsonc/no-sparse-arrays'?: Linter.RuleEntry<[]>; /** * disallow template literals * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-template-literals.html */ 'jsonc/no-template-literals'?: Linter.RuleEntry<[]>; /** * disallow `undefined` * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-undefined-value.html */ 'jsonc/no-undefined-value'?: Linter.RuleEntry<[]>; /** * disallow Unicode code point escape sequences. * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-unicode-codepoint-escapes.html */ 'jsonc/no-unicode-codepoint-escapes'?: Linter.RuleEntry<[]>; /** * disallow unnecessary escape usage * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/no-useless-escape.html */ 'jsonc/no-useless-escape'?: Linter.RuleEntry; /** * enforce consistent line breaks inside braces * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/object-curly-newline.html */ 'jsonc/object-curly-newline'?: Linter.RuleEntry; /** * enforce consistent spacing inside braces * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/object-curly-spacing.html */ 'jsonc/object-curly-spacing'?: Linter.RuleEntry; /** * enforce placing object properties on separate lines * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/object-property-newline.html */ 'jsonc/object-property-newline'?: Linter.RuleEntry; /** * require quotes around object literal property names * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/quote-props.html */ 'jsonc/quote-props'?: Linter.RuleEntry; /** * enforce use of double or single quotes * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/quotes.html */ 'jsonc/quotes'?: Linter.RuleEntry; /** * require array values to be sorted * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/sort-array-values.html */ 'jsonc/sort-array-values'?: Linter.RuleEntry; /** * require object keys to be sorted * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/sort-keys.html */ 'jsonc/sort-keys'?: Linter.RuleEntry; /** * disallow spaces after unary operators * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/space-unary-ops.html */ 'jsonc/space-unary-ops'?: Linter.RuleEntry; /** * disallow invalid number for JSON * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/valid-json-number.html */ 'jsonc/valid-json-number'?: Linter.RuleEntry<[]>; /** * disallow parsing errors in Vue custom blocks * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/vue-custom-block/no-parsing-error.html */ 'jsonc/vue-custom-block/no-parsing-error'?: Linter.RuleEntry<[]>; /** * Enforce the consistent use of either double or single quotes in JSX attributes * @see https://eslint.org/docs/latest/rules/jsx-quotes * @deprecated */ 'jsx-quotes'?: Linter.RuleEntry; /** * Enforce consistent spacing between keys and values in object literal properties * @see https://eslint.org/docs/latest/rules/key-spacing * @deprecated */ 'key-spacing'?: Linter.RuleEntry; /** * Enforce consistent spacing before and after keywords * @see https://eslint.org/docs/latest/rules/keyword-spacing * @deprecated */ 'keyword-spacing'?: Linter.RuleEntry; /** * Enforce position of line comments * @see https://eslint.org/docs/latest/rules/line-comment-position * @deprecated */ 'line-comment-position'?: Linter.RuleEntry; /** * Enforce consistent linebreak style * @see https://eslint.org/docs/latest/rules/linebreak-style * @deprecated */ 'linebreak-style'?: Linter.RuleEntry; /** * Require empty lines around comments * @see https://eslint.org/docs/latest/rules/lines-around-comment * @deprecated */ 'lines-around-comment'?: Linter.RuleEntry; /** * Require or disallow newlines around directives * @see https://eslint.org/docs/latest/rules/lines-around-directive * @deprecated */ 'lines-around-directive'?: Linter.RuleEntry; /** * Require or disallow an empty line between class members * @see https://eslint.org/docs/latest/rules/lines-between-class-members * @deprecated */ 'lines-between-class-members'?: Linter.RuleEntry; /** * Require or disallow logical assignment operator shorthand * @see https://eslint.org/docs/latest/rules/logical-assignment-operators */ 'logical-assignment-operators'?: Linter.RuleEntry; /** * Enforce a maximum number of classes per file * @see https://eslint.org/docs/latest/rules/max-classes-per-file */ 'max-classes-per-file'?: Linter.RuleEntry; /** * Enforce a maximum depth that blocks can be nested * @see https://eslint.org/docs/latest/rules/max-depth */ 'max-depth'?: Linter.RuleEntry; /** * Enforce a maximum line length * @see https://eslint.org/docs/latest/rules/max-len * @deprecated */ 'max-len'?: Linter.RuleEntry; /** * Enforce a maximum number of lines per file * @see https://eslint.org/docs/latest/rules/max-lines */ 'max-lines'?: Linter.RuleEntry; /** * Enforce a maximum number of lines of code in a function * @see https://eslint.org/docs/latest/rules/max-lines-per-function */ 'max-lines-per-function'?: Linter.RuleEntry; /** * Enforce a maximum depth that callbacks can be nested * @see https://eslint.org/docs/latest/rules/max-nested-callbacks */ 'max-nested-callbacks'?: Linter.RuleEntry; /** * Enforce a maximum number of parameters in function definitions * @see https://eslint.org/docs/latest/rules/max-params */ 'max-params'?: Linter.RuleEntry; /** * Enforce a maximum number of statements allowed in function blocks * @see https://eslint.org/docs/latest/rules/max-statements */ 'max-statements'?: Linter.RuleEntry; /** * Enforce a maximum number of statements allowed per line * @see https://eslint.org/docs/latest/rules/max-statements-per-line * @deprecated */ 'max-statements-per-line'?: Linter.RuleEntry; /** * Enforce a particular style for multiline comments * @see https://eslint.org/docs/latest/rules/multiline-comment-style * @deprecated */ 'multiline-comment-style'?: Linter.RuleEntry; /** * Enforce newlines between operands of ternary expressions * @see https://eslint.org/docs/latest/rules/multiline-ternary * @deprecated */ 'multiline-ternary'?: Linter.RuleEntry; /** * Require constructor names to begin with a capital letter * @see https://eslint.org/docs/latest/rules/new-cap */ 'new-cap'?: Linter.RuleEntry; /** * Enforce or disallow parentheses when invoking a constructor with no arguments * @see https://eslint.org/docs/latest/rules/new-parens * @deprecated */ 'new-parens'?: Linter.RuleEntry; /** * Require or disallow an empty line after variable declarations * @see https://eslint.org/docs/latest/rules/newline-after-var * @deprecated */ 'newline-after-var'?: Linter.RuleEntry; /** * Require an empty line before `return` statements * @see https://eslint.org/docs/latest/rules/newline-before-return * @deprecated */ 'newline-before-return'?: Linter.RuleEntry<[]>; /** * Require a newline after each call in a method chain * @see https://eslint.org/docs/latest/rules/newline-per-chained-call * @deprecated */ 'newline-per-chained-call'?: Linter.RuleEntry; /** * Disallow the use of `alert`, `confirm`, and `prompt` * @see https://eslint.org/docs/latest/rules/no-alert */ 'no-alert'?: Linter.RuleEntry<[]>; /** * Disallow `Array` constructors * @see https://eslint.org/docs/latest/rules/no-array-constructor */ 'no-array-constructor'?: Linter.RuleEntry<[]>; /** * Disallow using an async function as a Promise executor * @see https://eslint.org/docs/latest/rules/no-async-promise-executor */ 'no-async-promise-executor'?: Linter.RuleEntry<[]>; /** * Disallow `await` inside of loops * @see https://eslint.org/docs/latest/rules/no-await-in-loop */ 'no-await-in-loop'?: Linter.RuleEntry<[]>; /** * Disallow bitwise operators * @see https://eslint.org/docs/latest/rules/no-bitwise */ 'no-bitwise'?: Linter.RuleEntry; /** * Disallow use of the `Buffer()` constructor * @see https://eslint.org/docs/latest/rules/no-buffer-constructor * @deprecated */ 'no-buffer-constructor'?: Linter.RuleEntry<[]>; /** * Disallow the use of `arguments.caller` or `arguments.callee` * @see https://eslint.org/docs/latest/rules/no-caller */ 'no-caller'?: Linter.RuleEntry<[]>; /** * Disallow lexical declarations in case clauses * @see https://eslint.org/docs/latest/rules/no-case-declarations */ 'no-case-declarations'?: Linter.RuleEntry<[]>; /** * Disallow `catch` clause parameters from shadowing variables in the outer scope * @see https://eslint.org/docs/latest/rules/no-catch-shadow * @deprecated */ 'no-catch-shadow'?: Linter.RuleEntry<[]>; /** * Disallow reassigning class members * @see https://eslint.org/docs/latest/rules/no-class-assign */ 'no-class-assign'?: Linter.RuleEntry<[]>; /** * Disallow comparing against `-0` * @see https://eslint.org/docs/latest/rules/no-compare-neg-zero */ 'no-compare-neg-zero'?: Linter.RuleEntry<[]>; /** * Disallow assignment operators in conditional expressions * @see https://eslint.org/docs/latest/rules/no-cond-assign */ 'no-cond-assign'?: Linter.RuleEntry; /** * Disallow arrow functions where they could be confused with comparisons * @see https://eslint.org/docs/latest/rules/no-confusing-arrow * @deprecated */ 'no-confusing-arrow'?: Linter.RuleEntry; /** * Disallow the use of `console` * @see https://eslint.org/docs/latest/rules/no-console */ 'no-console'?: Linter.RuleEntry; /** * Disallow reassigning `const`, `using`, and `await using` variables * @see https://eslint.org/docs/latest/rules/no-const-assign */ 'no-const-assign'?: Linter.RuleEntry<[]>; /** * Disallow expressions where the operation doesn't affect the value * @see https://eslint.org/docs/latest/rules/no-constant-binary-expression */ 'no-constant-binary-expression'?: Linter.RuleEntry<[]>; /** * Disallow constant expressions in conditions * @see https://eslint.org/docs/latest/rules/no-constant-condition */ 'no-constant-condition'?: Linter.RuleEntry; /** * Disallow returning value from constructor * @see https://eslint.org/docs/latest/rules/no-constructor-return */ 'no-constructor-return'?: Linter.RuleEntry<[]>; /** * Disallow `continue` statements * @see https://eslint.org/docs/latest/rules/no-continue */ 'no-continue'?: Linter.RuleEntry<[]>; /** * Disallow control characters in regular expressions * @see https://eslint.org/docs/latest/rules/no-control-regex */ 'no-control-regex'?: Linter.RuleEntry<[]>; /** * Disallow the use of `debugger` * @see https://eslint.org/docs/latest/rules/no-debugger */ 'no-debugger'?: Linter.RuleEntry<[]>; /** * Disallow deleting variables * @see https://eslint.org/docs/latest/rules/no-delete-var */ 'no-delete-var'?: Linter.RuleEntry<[]>; /** * Disallow equal signs explicitly at the beginning of regular expressions * @see https://eslint.org/docs/latest/rules/no-div-regex */ 'no-div-regex'?: Linter.RuleEntry<[]>; /** * Disallow duplicate arguments in `function` definitions * @see https://eslint.org/docs/latest/rules/no-dupe-args */ 'no-dupe-args'?: Linter.RuleEntry<[]>; /** * Disallow duplicate class members * @see https://eslint.org/docs/latest/rules/no-dupe-class-members */ 'no-dupe-class-members'?: Linter.RuleEntry<[]>; /** * Disallow duplicate conditions in if-else-if chains * @see https://eslint.org/docs/latest/rules/no-dupe-else-if */ 'no-dupe-else-if'?: Linter.RuleEntry<[]>; /** * Disallow duplicate keys in object literals * @see https://eslint.org/docs/latest/rules/no-dupe-keys */ 'no-dupe-keys'?: Linter.RuleEntry<[]>; /** * Disallow duplicate case labels * @see https://eslint.org/docs/latest/rules/no-duplicate-case */ 'no-duplicate-case'?: Linter.RuleEntry<[]>; /** * Disallow duplicate module imports * @see https://eslint.org/docs/latest/rules/no-duplicate-imports */ 'no-duplicate-imports'?: Linter.RuleEntry; /** * Disallow `else` blocks after `return` statements in `if` statements * @see https://eslint.org/docs/latest/rules/no-else-return */ 'no-else-return'?: Linter.RuleEntry; /** * Disallow empty block statements * @see https://eslint.org/docs/latest/rules/no-empty */ 'no-empty'?: Linter.RuleEntry; /** * Disallow empty character classes in regular expressions * @see https://eslint.org/docs/latest/rules/no-empty-character-class */ 'no-empty-character-class'?: Linter.RuleEntry<[]>; /** * Disallow empty functions * @see https://eslint.org/docs/latest/rules/no-empty-function */ 'no-empty-function'?: Linter.RuleEntry; /** * Disallow empty destructuring patterns * @see https://eslint.org/docs/latest/rules/no-empty-pattern */ 'no-empty-pattern'?: Linter.RuleEntry; /** * Disallow empty static blocks * @see https://eslint.org/docs/latest/rules/no-empty-static-block */ 'no-empty-static-block'?: Linter.RuleEntry<[]>; /** * Disallow `null` comparisons without type-checking operators * @see https://eslint.org/docs/latest/rules/no-eq-null */ 'no-eq-null'?: Linter.RuleEntry<[]>; /** * Disallow the use of `eval()` * @see https://eslint.org/docs/latest/rules/no-eval */ 'no-eval'?: Linter.RuleEntry; /** * Disallow reassigning exceptions in `catch` clauses * @see https://eslint.org/docs/latest/rules/no-ex-assign */ 'no-ex-assign'?: Linter.RuleEntry<[]>; /** * Disallow extending native types * @see https://eslint.org/docs/latest/rules/no-extend-native */ 'no-extend-native'?: Linter.RuleEntry; /** * Disallow unnecessary calls to `.bind()` * @see https://eslint.org/docs/latest/rules/no-extra-bind */ 'no-extra-bind'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary boolean casts * @see https://eslint.org/docs/latest/rules/no-extra-boolean-cast */ 'no-extra-boolean-cast'?: Linter.RuleEntry; /** * Disallow unnecessary labels * @see https://eslint.org/docs/latest/rules/no-extra-label */ 'no-extra-label'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary parentheses * @see https://eslint.org/docs/latest/rules/no-extra-parens * @deprecated */ 'no-extra-parens'?: Linter.RuleEntry; /** * Disallow unnecessary semicolons * @see https://eslint.org/docs/latest/rules/no-extra-semi * @deprecated */ 'no-extra-semi'?: Linter.RuleEntry<[]>; /** * Disallow fallthrough of `case` statements * @see https://eslint.org/docs/latest/rules/no-fallthrough */ 'no-fallthrough'?: Linter.RuleEntry; /** * Disallow leading or trailing decimal points in numeric literals * @see https://eslint.org/docs/latest/rules/no-floating-decimal * @deprecated */ 'no-floating-decimal'?: Linter.RuleEntry<[]>; /** * Disallow reassigning `function` declarations * @see https://eslint.org/docs/latest/rules/no-func-assign */ 'no-func-assign'?: Linter.RuleEntry<[]>; /** * Disallow assignments to native objects or read-only global variables * @see https://eslint.org/docs/latest/rules/no-global-assign */ 'no-global-assign'?: Linter.RuleEntry; /** * Disallow shorthand type conversions * @see https://eslint.org/docs/latest/rules/no-implicit-coercion */ 'no-implicit-coercion'?: Linter.RuleEntry; /** * Disallow declarations in the global scope * @see https://eslint.org/docs/latest/rules/no-implicit-globals */ 'no-implicit-globals'?: Linter.RuleEntry; /** * Disallow the use of `eval()`-like methods * @see https://eslint.org/docs/latest/rules/no-implied-eval */ 'no-implied-eval'?: Linter.RuleEntry<[]>; /** * Disallow assigning to imported bindings * @see https://eslint.org/docs/latest/rules/no-import-assign */ 'no-import-assign'?: Linter.RuleEntry<[]>; /** * Disallow inline comments after code * @see https://eslint.org/docs/latest/rules/no-inline-comments */ 'no-inline-comments'?: Linter.RuleEntry; /** * Disallow variable or `function` declarations in nested blocks * @see https://eslint.org/docs/latest/rules/no-inner-declarations */ 'no-inner-declarations'?: Linter.RuleEntry; /** * Disallow invalid regular expression strings in `RegExp` constructors * @see https://eslint.org/docs/latest/rules/no-invalid-regexp */ 'no-invalid-regexp'?: Linter.RuleEntry; /** * Disallow use of `this` in contexts where the value of `this` is `undefined` * @see https://eslint.org/docs/latest/rules/no-invalid-this */ 'no-invalid-this'?: Linter.RuleEntry; /** * Disallow irregular whitespace * @see https://eslint.org/docs/latest/rules/no-irregular-whitespace */ 'no-irregular-whitespace'?: Linter.RuleEntry; /** * Disallow the use of the `__iterator__` property * @see https://eslint.org/docs/latest/rules/no-iterator */ 'no-iterator'?: Linter.RuleEntry<[]>; /** * Disallow labels that share a name with a variable * @see https://eslint.org/docs/latest/rules/no-label-var */ 'no-label-var'?: Linter.RuleEntry<[]>; /** * Disallow labeled statements * @see https://eslint.org/docs/latest/rules/no-labels */ 'no-labels'?: Linter.RuleEntry; /** * Disallow unnecessary nested blocks * @see https://eslint.org/docs/latest/rules/no-lone-blocks */ 'no-lone-blocks'?: Linter.RuleEntry<[]>; /** * Disallow `if` statements as the only statement in `else` blocks * @see https://eslint.org/docs/latest/rules/no-lonely-if */ 'no-lonely-if'?: Linter.RuleEntry<[]>; /** * Disallow function declarations that contain unsafe references inside loop statements * @see https://eslint.org/docs/latest/rules/no-loop-func */ 'no-loop-func'?: Linter.RuleEntry<[]>; /** * Disallow literal numbers that lose precision * @see https://eslint.org/docs/latest/rules/no-loss-of-precision */ 'no-loss-of-precision'?: Linter.RuleEntry<[]>; /** * Disallow magic numbers * @see https://eslint.org/docs/latest/rules/no-magic-numbers */ 'no-magic-numbers'?: Linter.RuleEntry; /** * Disallow characters which are made with multiple code points in character class syntax * @see https://eslint.org/docs/latest/rules/no-misleading-character-class */ 'no-misleading-character-class'?: Linter.RuleEntry; /** * Disallow mixed binary operators * @see https://eslint.org/docs/latest/rules/no-mixed-operators * @deprecated */ 'no-mixed-operators'?: Linter.RuleEntry; /** * Disallow `require` calls to be mixed with regular variable declarations * @see https://eslint.org/docs/latest/rules/no-mixed-requires * @deprecated */ 'no-mixed-requires'?: Linter.RuleEntry; /** * Disallow mixed spaces and tabs for indentation * @see https://eslint.org/docs/latest/rules/no-mixed-spaces-and-tabs * @deprecated */ 'no-mixed-spaces-and-tabs'?: Linter.RuleEntry; /** * Disallow use of chained assignment expressions * @see https://eslint.org/docs/latest/rules/no-multi-assign */ 'no-multi-assign'?: Linter.RuleEntry; /** * Disallow multiple spaces * @see https://eslint.org/docs/latest/rules/no-multi-spaces * @deprecated */ 'no-multi-spaces'?: Linter.RuleEntry; /** * Disallow multiline strings * @see https://eslint.org/docs/latest/rules/no-multi-str */ 'no-multi-str'?: Linter.RuleEntry<[]>; /** * Disallow multiple empty lines * @see https://eslint.org/docs/latest/rules/no-multiple-empty-lines * @deprecated */ 'no-multiple-empty-lines'?: Linter.RuleEntry; /** * Disallow assignments to native objects or read-only global variables * @see https://eslint.org/docs/latest/rules/no-native-reassign * @deprecated */ 'no-native-reassign'?: Linter.RuleEntry; /** * Disallow negated conditions * @see https://eslint.org/docs/latest/rules/no-negated-condition */ 'no-negated-condition'?: Linter.RuleEntry<[]>; /** * Disallow negating the left operand in `in` expressions * @see https://eslint.org/docs/latest/rules/no-negated-in-lhs * @deprecated */ 'no-negated-in-lhs'?: Linter.RuleEntry<[]>; /** * Disallow nested ternary expressions * @see https://eslint.org/docs/latest/rules/no-nested-ternary */ 'no-nested-ternary'?: Linter.RuleEntry<[]>; /** * Disallow `new` operators outside of assignments or comparisons * @see https://eslint.org/docs/latest/rules/no-new */ 'no-new'?: Linter.RuleEntry<[]>; /** * Disallow `new` operators with the `Function` object * @see https://eslint.org/docs/latest/rules/no-new-func */ 'no-new-func'?: Linter.RuleEntry<[]>; /** * Disallow `new` operators with global non-constructor functions * @see https://eslint.org/docs/latest/rules/no-new-native-nonconstructor */ 'no-new-native-nonconstructor'?: Linter.RuleEntry<[]>; /** * Disallow `Object` constructors * @see https://eslint.org/docs/latest/rules/no-new-object * @deprecated */ 'no-new-object'?: Linter.RuleEntry<[]>; /** * Disallow `new` operators with calls to `require` * @see https://eslint.org/docs/latest/rules/no-new-require * @deprecated */ 'no-new-require'?: Linter.RuleEntry<[]>; /** * Disallow `new` operators with the `Symbol` object * @see https://eslint.org/docs/latest/rules/no-new-symbol * @deprecated */ 'no-new-symbol'?: Linter.RuleEntry<[]>; /** * Disallow `new` operators with the `String`, `Number`, and `Boolean` objects * @see https://eslint.org/docs/latest/rules/no-new-wrappers */ 'no-new-wrappers'?: Linter.RuleEntry<[]>; /** * Disallow `\8` and `\9` escape sequences in string literals * @see https://eslint.org/docs/latest/rules/no-nonoctal-decimal-escape */ 'no-nonoctal-decimal-escape'?: Linter.RuleEntry<[]>; /** * Disallow calling global object properties as functions * @see https://eslint.org/docs/latest/rules/no-obj-calls */ 'no-obj-calls'?: Linter.RuleEntry<[]>; /** * Disallow calls to the `Object` constructor without an argument * @see https://eslint.org/docs/latest/rules/no-object-constructor */ 'no-object-constructor'?: Linter.RuleEntry<[]>; /** * Disallow octal literals * @see https://eslint.org/docs/latest/rules/no-octal */ 'no-octal'?: Linter.RuleEntry<[]>; /** * Disallow octal escape sequences in string literals * @see https://eslint.org/docs/latest/rules/no-octal-escape */ 'no-octal-escape'?: Linter.RuleEntry<[]>; /** * disallow .only blocks in tests * @see https://github.com/levibuzolic/eslint-plugin-no-only-tests */ 'no-only-tests/no-only-tests'?: Linter.RuleEntry; /** * Disallow reassigning function parameters * @see https://eslint.org/docs/latest/rules/no-param-reassign */ 'no-param-reassign'?: Linter.RuleEntry; /** * Disallow string concatenation with `__dirname` and `__filename` * @see https://eslint.org/docs/latest/rules/no-path-concat * @deprecated */ 'no-path-concat'?: Linter.RuleEntry<[]>; /** * Disallow the unary operators `++` and `--` * @see https://eslint.org/docs/latest/rules/no-plusplus */ 'no-plusplus'?: Linter.RuleEntry; /** * Disallow the use of `process.env` * @see https://eslint.org/docs/latest/rules/no-process-env * @deprecated */ 'no-process-env'?: Linter.RuleEntry<[]>; /** * Disallow the use of `process.exit()` * @see https://eslint.org/docs/latest/rules/no-process-exit * @deprecated */ 'no-process-exit'?: Linter.RuleEntry<[]>; /** * Disallow returning values from Promise executor functions * @see https://eslint.org/docs/latest/rules/no-promise-executor-return */ 'no-promise-executor-return'?: Linter.RuleEntry; /** * Disallow the use of the `__proto__` property * @see https://eslint.org/docs/latest/rules/no-proto */ 'no-proto'?: Linter.RuleEntry<[]>; /** * Disallow calling some `Object.prototype` methods directly on objects * @see https://eslint.org/docs/latest/rules/no-prototype-builtins */ 'no-prototype-builtins'?: Linter.RuleEntry<[]>; /** * Disallow variable redeclaration * @see https://eslint.org/docs/latest/rules/no-redeclare */ 'no-redeclare'?: Linter.RuleEntry; /** * Disallow multiple spaces in regular expressions * @see https://eslint.org/docs/latest/rules/no-regex-spaces */ 'no-regex-spaces'?: Linter.RuleEntry<[]>; /** * Disallow specified names in exports * @see https://eslint.org/docs/latest/rules/no-restricted-exports */ 'no-restricted-exports'?: Linter.RuleEntry; /** * Disallow specified global variables * @see https://eslint.org/docs/latest/rules/no-restricted-globals */ 'no-restricted-globals'?: Linter.RuleEntry; /** * Disallow specified modules when loaded by `import` * @see https://eslint.org/docs/latest/rules/no-restricted-imports */ 'no-restricted-imports'?: Linter.RuleEntry; /** * Disallow specified modules when loaded by `require` * @see https://eslint.org/docs/latest/rules/no-restricted-modules * @deprecated */ 'no-restricted-modules'?: Linter.RuleEntry; /** * Disallow certain properties on certain objects * @see https://eslint.org/docs/latest/rules/no-restricted-properties */ 'no-restricted-properties'?: Linter.RuleEntry; /** * Disallow specified syntax * @see https://eslint.org/docs/latest/rules/no-restricted-syntax */ 'no-restricted-syntax'?: Linter.RuleEntry; /** * Disallow assignment operators in `return` statements * @see https://eslint.org/docs/latest/rules/no-return-assign */ 'no-return-assign'?: Linter.RuleEntry; /** * Disallow unnecessary `return await` * @see https://eslint.org/docs/latest/rules/no-return-await * @deprecated */ 'no-return-await'?: Linter.RuleEntry<[]>; /** * Disallow `javascript:` URLs * @see https://eslint.org/docs/latest/rules/no-script-url */ 'no-script-url'?: Linter.RuleEntry<[]>; /** * Disallow assignments where both sides are exactly the same * @see https://eslint.org/docs/latest/rules/no-self-assign */ 'no-self-assign'?: Linter.RuleEntry; /** * Disallow comparisons where both sides are exactly the same * @see https://eslint.org/docs/latest/rules/no-self-compare */ 'no-self-compare'?: Linter.RuleEntry<[]>; /** * Disallow comma operators * @see https://eslint.org/docs/latest/rules/no-sequences */ 'no-sequences'?: Linter.RuleEntry; /** * Disallow returning values from setters * @see https://eslint.org/docs/latest/rules/no-setter-return */ 'no-setter-return'?: Linter.RuleEntry<[]>; /** * Disallow variable declarations from shadowing variables declared in the outer scope * @see https://eslint.org/docs/latest/rules/no-shadow */ 'no-shadow'?: Linter.RuleEntry; /** * Disallow identifiers from shadowing restricted names * @see https://eslint.org/docs/latest/rules/no-shadow-restricted-names */ 'no-shadow-restricted-names'?: Linter.RuleEntry; /** * Disallow spacing between function identifiers and their applications (deprecated) * @see https://eslint.org/docs/latest/rules/no-spaced-func * @deprecated */ 'no-spaced-func'?: Linter.RuleEntry<[]>; /** * Disallow sparse arrays * @see https://eslint.org/docs/latest/rules/no-sparse-arrays */ 'no-sparse-arrays'?: Linter.RuleEntry<[]>; /** * Disallow synchronous methods * @see https://eslint.org/docs/latest/rules/no-sync * @deprecated */ 'no-sync'?: Linter.RuleEntry; /** * Disallow all tabs * @see https://eslint.org/docs/latest/rules/no-tabs * @deprecated */ 'no-tabs'?: Linter.RuleEntry; /** * Disallow template literal placeholder syntax in regular strings * @see https://eslint.org/docs/latest/rules/no-template-curly-in-string */ 'no-template-curly-in-string'?: Linter.RuleEntry<[]>; /** * Disallow ternary operators * @see https://eslint.org/docs/latest/rules/no-ternary */ 'no-ternary'?: Linter.RuleEntry<[]>; /** * Disallow `this`/`super` before calling `super()` in constructors * @see https://eslint.org/docs/latest/rules/no-this-before-super */ 'no-this-before-super'?: Linter.RuleEntry<[]>; /** * Disallow throwing literals as exceptions * @see https://eslint.org/docs/latest/rules/no-throw-literal */ 'no-throw-literal'?: Linter.RuleEntry<[]>; /** * Disallow trailing whitespace at the end of lines * @see https://eslint.org/docs/latest/rules/no-trailing-spaces * @deprecated */ 'no-trailing-spaces'?: Linter.RuleEntry; /** * Disallow `let` or `var` variables that are read but never assigned * @see https://eslint.org/docs/latest/rules/no-unassigned-vars */ 'no-unassigned-vars'?: Linter.RuleEntry<[]>; /** * Disallow the use of undeclared variables unless mentioned in `/*global *\/` comments * @see https://eslint.org/docs/latest/rules/no-undef */ 'no-undef'?: Linter.RuleEntry; /** * Disallow initializing variables to `undefined` * @see https://eslint.org/docs/latest/rules/no-undef-init */ 'no-undef-init'?: Linter.RuleEntry<[]>; /** * Disallow the use of `undefined` as an identifier * @see https://eslint.org/docs/latest/rules/no-undefined */ 'no-undefined'?: Linter.RuleEntry<[]>; /** * Disallow dangling underscores in identifiers * @see https://eslint.org/docs/latest/rules/no-underscore-dangle */ 'no-underscore-dangle'?: Linter.RuleEntry; /** * Disallow confusing multiline expressions * @see https://eslint.org/docs/latest/rules/no-unexpected-multiline */ 'no-unexpected-multiline'?: Linter.RuleEntry<[]>; /** * Disallow unmodified loop conditions * @see https://eslint.org/docs/latest/rules/no-unmodified-loop-condition */ 'no-unmodified-loop-condition'?: Linter.RuleEntry<[]>; /** * Disallow ternary operators when simpler alternatives exist * @see https://eslint.org/docs/latest/rules/no-unneeded-ternary */ 'no-unneeded-ternary'?: Linter.RuleEntry; /** * Disallow unreachable code after `return`, `throw`, `continue`, and `break` statements * @see https://eslint.org/docs/latest/rules/no-unreachable */ 'no-unreachable'?: Linter.RuleEntry<[]>; /** * Disallow loops with a body that allows only one iteration * @see https://eslint.org/docs/latest/rules/no-unreachable-loop */ 'no-unreachable-loop'?: Linter.RuleEntry; /** * Disallow control flow statements in `finally` blocks * @see https://eslint.org/docs/latest/rules/no-unsafe-finally */ 'no-unsafe-finally'?: Linter.RuleEntry<[]>; /** * Disallow negating the left operand of relational operators * @see https://eslint.org/docs/latest/rules/no-unsafe-negation */ 'no-unsafe-negation'?: Linter.RuleEntry; /** * Disallow use of optional chaining in contexts where the `undefined` value is not allowed * @see https://eslint.org/docs/latest/rules/no-unsafe-optional-chaining */ 'no-unsafe-optional-chaining'?: Linter.RuleEntry; /** * Disallow unused expressions * @see https://eslint.org/docs/latest/rules/no-unused-expressions */ 'no-unused-expressions'?: Linter.RuleEntry; /** * Disallow unused labels * @see https://eslint.org/docs/latest/rules/no-unused-labels */ 'no-unused-labels'?: Linter.RuleEntry<[]>; /** * Disallow unused private class members * @see https://eslint.org/docs/latest/rules/no-unused-private-class-members */ 'no-unused-private-class-members'?: Linter.RuleEntry<[]>; /** * Disallow unused variables * @see https://eslint.org/docs/latest/rules/no-unused-vars */ 'no-unused-vars'?: Linter.RuleEntry; /** * Disallow the use of variables before they are defined * @see https://eslint.org/docs/latest/rules/no-use-before-define */ 'no-use-before-define'?: Linter.RuleEntry; /** * Disallow variable assignments when the value is not used * @see https://eslint.org/docs/latest/rules/no-useless-assignment */ 'no-useless-assignment'?: Linter.RuleEntry<[]>; /** * Disallow useless backreferences in regular expressions * @see https://eslint.org/docs/latest/rules/no-useless-backreference */ 'no-useless-backreference'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary calls to `.call()` and `.apply()` * @see https://eslint.org/docs/latest/rules/no-useless-call */ 'no-useless-call'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary `catch` clauses * @see https://eslint.org/docs/latest/rules/no-useless-catch */ 'no-useless-catch'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary computed property keys in objects and classes * @see https://eslint.org/docs/latest/rules/no-useless-computed-key */ 'no-useless-computed-key'?: Linter.RuleEntry; /** * Disallow unnecessary concatenation of literals or template literals * @see https://eslint.org/docs/latest/rules/no-useless-concat */ 'no-useless-concat'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary constructors * @see https://eslint.org/docs/latest/rules/no-useless-constructor */ 'no-useless-constructor'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary escape characters * @see https://eslint.org/docs/latest/rules/no-useless-escape */ 'no-useless-escape'?: Linter.RuleEntry; /** * Disallow renaming import, export, and destructured assignments to the same name * @see https://eslint.org/docs/latest/rules/no-useless-rename */ 'no-useless-rename'?: Linter.RuleEntry; /** * Disallow redundant return statements * @see https://eslint.org/docs/latest/rules/no-useless-return */ 'no-useless-return'?: Linter.RuleEntry<[]>; /** * Require `let` or `const` instead of `var` * @see https://eslint.org/docs/latest/rules/no-var */ 'no-var'?: Linter.RuleEntry<[]>; /** * Disallow `void` operators * @see https://eslint.org/docs/latest/rules/no-void */ 'no-void'?: Linter.RuleEntry; /** * Disallow specified warning terms in comments * @see https://eslint.org/docs/latest/rules/no-warning-comments */ 'no-warning-comments'?: Linter.RuleEntry; /** * Disallow whitespace before properties * @see https://eslint.org/docs/latest/rules/no-whitespace-before-property * @deprecated */ 'no-whitespace-before-property'?: Linter.RuleEntry<[]>; /** * Disallow `with` statements * @see https://eslint.org/docs/latest/rules/no-with */ 'no-with'?: Linter.RuleEntry<[]>; /** * Enforce the location of single-line statements * @see https://eslint.org/docs/latest/rules/nonblock-statement-body-position * @deprecated */ 'nonblock-statement-body-position'?: Linter.RuleEntry; /** * Enforce consistent line breaks after opening and before closing braces * @see https://eslint.org/docs/latest/rules/object-curly-newline * @deprecated */ 'object-curly-newline'?: Linter.RuleEntry; /** * Enforce consistent spacing inside braces * @see https://eslint.org/docs/latest/rules/object-curly-spacing * @deprecated */ 'object-curly-spacing'?: Linter.RuleEntry; /** * Enforce placing object properties on separate lines * @see https://eslint.org/docs/latest/rules/object-property-newline * @deprecated */ 'object-property-newline'?: Linter.RuleEntry; /** * Require or disallow method and property shorthand syntax for object literals * @see https://eslint.org/docs/latest/rules/object-shorthand */ 'object-shorthand'?: Linter.RuleEntry; /** * Enforce variables to be declared either together or separately in functions * @see https://eslint.org/docs/latest/rules/one-var */ 'one-var'?: Linter.RuleEntry; /** * Require or disallow newlines around variable declarations * @see https://eslint.org/docs/latest/rules/one-var-declaration-per-line * @deprecated */ 'one-var-declaration-per-line'?: Linter.RuleEntry; /** * Require or disallow assignment operator shorthand where possible * @see https://eslint.org/docs/latest/rules/operator-assignment */ 'operator-assignment'?: Linter.RuleEntry; /** * Enforce consistent linebreak style for operators * @see https://eslint.org/docs/latest/rules/operator-linebreak * @deprecated */ 'operator-linebreak'?: Linter.RuleEntry; /** * Require or disallow padding within blocks * @see https://eslint.org/docs/latest/rules/padded-blocks * @deprecated */ 'padded-blocks'?: Linter.RuleEntry; /** * Require or disallow padding lines between statements * @see https://eslint.org/docs/latest/rules/padding-line-between-statements * @deprecated */ 'padding-line-between-statements'?: Linter.RuleEntry; /** * Enforce sorted arrays before include method. * @see https://perfectionist.dev/rules/sort-array-includes */ 'perfectionist/sort-array-includes'?: Linter.RuleEntry; /** * Enforce sorted arrays. * @see https://perfectionist.dev/rules/sort-arrays */ 'perfectionist/sort-arrays'?: Linter.RuleEntry; /** * Enforce sorted classes. * @see https://perfectionist.dev/rules/sort-classes */ 'perfectionist/sort-classes'?: Linter.RuleEntry; /** * Enforce sorted decorators. * @see https://perfectionist.dev/rules/sort-decorators */ 'perfectionist/sort-decorators'?: Linter.RuleEntry; /** * Enforce sorted TypeScript enums. * @see https://perfectionist.dev/rules/sort-enums */ 'perfectionist/sort-enums'?: Linter.RuleEntry; /** * Enforce sorted export attributes. * @see https://perfectionist.dev/rules/sort-export-attributes */ 'perfectionist/sort-export-attributes'?: Linter.RuleEntry; /** * Enforce sorted exports. * @see https://perfectionist.dev/rules/sort-exports */ 'perfectionist/sort-exports'?: Linter.RuleEntry; /** * Enforce sorted heritage clauses. * @see https://perfectionist.dev/rules/sort-heritage-clauses */ 'perfectionist/sort-heritage-clauses'?: Linter.RuleEntry; /** * Enforce sorted import attributes. * @see https://perfectionist.dev/rules/sort-import-attributes */ 'perfectionist/sort-import-attributes'?: Linter.RuleEntry; /** * Enforce sorted imports. * @see https://perfectionist.dev/rules/sort-imports */ 'perfectionist/sort-imports'?: Linter.RuleEntry; /** * Enforce sorted interface properties. * @see https://perfectionist.dev/rules/sort-interfaces */ 'perfectionist/sort-interfaces'?: Linter.RuleEntry; /** * Enforce sorted intersection types. * @see https://perfectionist.dev/rules/sort-intersection-types */ 'perfectionist/sort-intersection-types'?: Linter.RuleEntry; /** * Enforce sorted JSX props. * @see https://perfectionist.dev/rules/sort-jsx-props */ 'perfectionist/sort-jsx-props'?: Linter.RuleEntry; /** * Enforce sorted Map elements. * @see https://perfectionist.dev/rules/sort-maps */ 'perfectionist/sort-maps'?: Linter.RuleEntry; /** * Enforce sorted modules. * @see https://perfectionist.dev/rules/sort-modules */ 'perfectionist/sort-modules'?: Linter.RuleEntry; /** * Enforce sorted named exports. * @see https://perfectionist.dev/rules/sort-named-exports */ 'perfectionist/sort-named-exports'?: Linter.RuleEntry; /** * Enforce sorted named imports. * @see https://perfectionist.dev/rules/sort-named-imports */ 'perfectionist/sort-named-imports'?: Linter.RuleEntry; /** * Enforce sorted object types. * @see https://perfectionist.dev/rules/sort-object-types */ 'perfectionist/sort-object-types'?: Linter.RuleEntry; /** * Enforce sorted objects. * @see https://perfectionist.dev/rules/sort-objects */ 'perfectionist/sort-objects'?: Linter.RuleEntry; /** * Enforce sorted sets. * @see https://perfectionist.dev/rules/sort-sets */ 'perfectionist/sort-sets'?: Linter.RuleEntry; /** * Enforce sorted switch cases. * @see https://perfectionist.dev/rules/sort-switch-case */ 'perfectionist/sort-switch-case'?: Linter.RuleEntry; /** * Enforce sorted union types. * @see https://perfectionist.dev/rules/sort-union-types */ 'perfectionist/sort-union-types'?: Linter.RuleEntry; /** * Enforce sorted variable declarations. * @see https://perfectionist.dev/rules/sort-variable-declarations */ 'perfectionist/sort-variable-declarations'?: Linter.RuleEntry; /** * Enforce using "catalog:" in `package.json` * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/json/json-enforce-catalog.test.ts */ 'pnpm/json-enforce-catalog'?: Linter.RuleEntry; /** * Prefer having pnpm settings in `pnpm-workspace.yaml` instead of `package.json`. This requires pnpm v10.6+, see https://github.com/orgs/pnpm/discussions/9037. * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/json/json-prefer-workspace-settings.test.ts */ 'pnpm/json-prefer-workspace-settings'?: Linter.RuleEntry; /** * Enforce using valid catalog in `package.json` * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/json/json-valid-catalog.test.ts */ 'pnpm/json-valid-catalog'?: Linter.RuleEntry; /** * Enforce settings in `pnpm-workspace.yaml` * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-enforce-settings.test.ts */ 'pnpm/yaml-enforce-settings'?: Linter.RuleEntry; /** * Disallow duplicate catalog items in `pnpm-workspace.yaml` * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-no-duplicate-catalog-item.test.ts */ 'pnpm/yaml-no-duplicate-catalog-item'?: Linter.RuleEntry; /** * Disallow unused catalogs in `pnpm-workspace.yaml` * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-no-unused-catalog-item.test.ts */ 'pnpm/yaml-no-unused-catalog-item'?: Linter.RuleEntry<[]>; /** * Ensure all package patterns in `pnpm-workspace.yaml` match at least one directory * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-valid-packages.test.ts */ 'pnpm/yaml-valid-packages'?: Linter.RuleEntry<[]>; /** * Require using arrow functions for callbacks * @see https://eslint.org/docs/latest/rules/prefer-arrow-callback */ 'prefer-arrow-callback'?: Linter.RuleEntry; /** * Require `const` declarations for variables that are never reassigned after declared * @see https://eslint.org/docs/latest/rules/prefer-const */ 'prefer-const'?: Linter.RuleEntry; /** * Require destructuring from arrays and/or objects * @see https://eslint.org/docs/latest/rules/prefer-destructuring */ 'prefer-destructuring'?: Linter.RuleEntry; /** * Disallow the use of `Math.pow` in favor of the `**` operator * @see https://eslint.org/docs/latest/rules/prefer-exponentiation-operator */ 'prefer-exponentiation-operator'?: Linter.RuleEntry<[]>; /** * Enforce using named capture group in regular expression * @see https://eslint.org/docs/latest/rules/prefer-named-capture-group */ 'prefer-named-capture-group'?: Linter.RuleEntry<[]>; /** * Disallow `parseInt()` and `Number.parseInt()` in favor of binary, octal, and hexadecimal literals * @see https://eslint.org/docs/latest/rules/prefer-numeric-literals */ 'prefer-numeric-literals'?: Linter.RuleEntry<[]>; /** * Disallow use of `Object.prototype.hasOwnProperty.call()` and prefer use of `Object.hasOwn()` * @see https://eslint.org/docs/latest/rules/prefer-object-has-own */ 'prefer-object-has-own'?: Linter.RuleEntry<[]>; /** * Disallow using `Object.assign` with an object literal as the first argument and prefer the use of object spread instead * @see https://eslint.org/docs/latest/rules/prefer-object-spread */ 'prefer-object-spread'?: Linter.RuleEntry<[]>; /** * Require using Error objects as Promise rejection reasons * @see https://eslint.org/docs/latest/rules/prefer-promise-reject-errors */ 'prefer-promise-reject-errors'?: Linter.RuleEntry; /** * Require `Reflect` methods where applicable * @see https://eslint.org/docs/latest/rules/prefer-reflect * @deprecated */ 'prefer-reflect'?: Linter.RuleEntry; /** * Disallow use of the `RegExp` constructor in favor of regular expression literals * @see https://eslint.org/docs/latest/rules/prefer-regex-literals */ 'prefer-regex-literals'?: Linter.RuleEntry; /** * Require rest parameters instead of `arguments` * @see https://eslint.org/docs/latest/rules/prefer-rest-params */ 'prefer-rest-params'?: Linter.RuleEntry<[]>; /** * Require spread operators instead of `.apply()` * @see https://eslint.org/docs/latest/rules/prefer-spread */ 'prefer-spread'?: Linter.RuleEntry<[]>; /** * Require template literals instead of string concatenation * @see https://eslint.org/docs/latest/rules/prefer-template */ 'prefer-template'?: Linter.RuleEntry<[]>; /** * Disallow losing originally caught error when re-throwing custom errors * @see https://eslint.org/docs/latest/rules/preserve-caught-error */ 'preserve-caught-error'?: Linter.RuleEntry; /** * Require quotes around object literal property names * @see https://eslint.org/docs/latest/rules/quote-props * @deprecated */ 'quote-props'?: Linter.RuleEntry; /** * Enforce the consistent use of either backticks, double, or single quotes * @see https://eslint.org/docs/latest/rules/quotes * @deprecated */ 'quotes'?: Linter.RuleEntry; /** * Enforce the use of the radix argument when using `parseInt()` * @see https://eslint.org/docs/latest/rules/radix */ 'radix'?: Linter.RuleEntry; /** * Disallow assignments that can lead to race conditions due to usage of `await` or `yield` * @see https://eslint.org/docs/latest/rules/require-atomic-updates */ 'require-atomic-updates'?: Linter.RuleEntry; /** * Disallow async functions which have no `await` expression * @see https://eslint.org/docs/latest/rules/require-await */ 'require-await'?: Linter.RuleEntry<[]>; /** * Enforce the use of `u` or `v` flag on regular expressions * @see https://eslint.org/docs/latest/rules/require-unicode-regexp */ 'require-unicode-regexp'?: Linter.RuleEntry; /** * Require generator functions to contain `yield` * @see https://eslint.org/docs/latest/rules/require-yield */ 'require-yield'?: Linter.RuleEntry<[]>; /** * Enforce spacing between rest and spread operators and their expressions * @see https://eslint.org/docs/latest/rules/rest-spread-spacing * @deprecated */ 'rest-spread-spacing'?: Linter.RuleEntry; /** * Require or disallow semicolons instead of ASI * @see https://eslint.org/docs/latest/rules/semi * @deprecated */ 'semi'?: Linter.RuleEntry; /** * Enforce consistent spacing before and after semicolons * @see https://eslint.org/docs/latest/rules/semi-spacing * @deprecated */ 'semi-spacing'?: Linter.RuleEntry; /** * Enforce location of semicolons * @see https://eslint.org/docs/latest/rules/semi-style * @deprecated */ 'semi-style'?: Linter.RuleEntry; /** * Enforce sorted `import` declarations within modules * @see https://eslint.org/docs/latest/rules/sort-imports */ 'sort-imports'?: Linter.RuleEntry; /** * Require object keys to be sorted * @see https://eslint.org/docs/latest/rules/sort-keys */ 'sort-keys'?: Linter.RuleEntry; /** * Require variables within the same declaration block to be sorted * @see https://eslint.org/docs/latest/rules/sort-vars */ 'sort-vars'?: Linter.RuleEntry; /** * Enforce consistent spacing before blocks * @see https://eslint.org/docs/latest/rules/space-before-blocks * @deprecated */ 'space-before-blocks'?: Linter.RuleEntry; /** * Enforce consistent spacing before `function` definition opening parenthesis * @see https://eslint.org/docs/latest/rules/space-before-function-paren * @deprecated */ 'space-before-function-paren'?: Linter.RuleEntry; /** * Enforce consistent spacing inside parentheses * @see https://eslint.org/docs/latest/rules/space-in-parens * @deprecated */ 'space-in-parens'?: Linter.RuleEntry; /** * Require spacing around infix operators * @see https://eslint.org/docs/latest/rules/space-infix-ops * @deprecated */ 'space-infix-ops'?: Linter.RuleEntry; /** * Enforce consistent spacing before or after unary operators * @see https://eslint.org/docs/latest/rules/space-unary-ops * @deprecated */ 'space-unary-ops'?: Linter.RuleEntry; /** * Enforce consistent spacing after the `//` or `/*` in a comment * @see https://eslint.org/docs/latest/rules/spaced-comment * @deprecated */ 'spaced-comment'?: Linter.RuleEntry; /** * Require or disallow strict mode directives * @see https://eslint.org/docs/latest/rules/strict */ 'strict'?: Linter.RuleEntry; /** * Enforce spacing around colons of switch statements * @see https://eslint.org/docs/latest/rules/switch-colon-spacing * @deprecated */ 'switch-colon-spacing'?: Linter.RuleEntry; /** * Require symbol descriptions * @see https://eslint.org/docs/latest/rules/symbol-description */ 'symbol-description'?: Linter.RuleEntry<[]>; /** * Require or disallow spacing around embedded expressions of template strings * @see https://eslint.org/docs/latest/rules/template-curly-spacing * @deprecated */ 'template-curly-spacing'?: Linter.RuleEntry; /** * Require or disallow spacing between template tags and their literals * @see https://eslint.org/docs/latest/rules/template-tag-spacing * @deprecated */ 'template-tag-spacing'?: Linter.RuleEntry; /** * Require or disallow Unicode byte order mark (BOM) * @see https://eslint.org/docs/latest/rules/unicode-bom */ 'unicode-bom'?: Linter.RuleEntry; /** * Improve regexes by making them shorter, consistent, and safer. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/better-regex.md */ 'unicorn/better-regex'?: Linter.RuleEntry; /** * Enforce a specific parameter name in catch clauses. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/catch-error-name.md */ 'unicorn/catch-error-name'?: Linter.RuleEntry; /** * Enforce consistent assertion style with `node:assert`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-assert.md */ 'unicorn/consistent-assert'?: Linter.RuleEntry<[]>; /** * Prefer passing `Date` directly to the constructor when cloning. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-date-clone.md */ 'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>; /** * Use destructured variables over properties. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-destructuring.md */ 'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>; /** * Prefer consistent types when spreading a ternary in an array literal. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-empty-array-spread.md */ 'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>; /** * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-existence-index-check.md */ 'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>; /** * Move function definitions to the highest possible scope. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-function-scoping.md */ 'unicorn/consistent-function-scoping'?: Linter.RuleEntry; /** * Enforce consistent style for escaping `${` in template literals. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-template-literal-escape.md */ 'unicorn/consistent-template-literal-escape'?: Linter.RuleEntry<[]>; /** * Enforce correct `Error` subclassing. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/custom-error-definition.md */ 'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>; /** * Enforce no spaces between braces. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/empty-brace-spaces.md */ 'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>; /** * Enforce passing a `message` value when creating a built-in error. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/error-message.md */ 'unicorn/error-message'?: Linter.RuleEntry<[]>; /** * Require escape sequences to use uppercase or lowercase values. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/escape-case.md */ 'unicorn/escape-case'?: Linter.RuleEntry; /** * Add expiration conditions to TODO comments. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/expiring-todo-comments.md */ 'unicorn/expiring-todo-comments'?: Linter.RuleEntry; /** * Enforce explicitly comparing the `length` or `size` property of a value. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/explicit-length-check.md */ 'unicorn/explicit-length-check'?: Linter.RuleEntry; /** * Enforce a case style for filenames. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/filename-case.md */ 'unicorn/filename-case'?: Linter.RuleEntry; /** * Enforce specific import styles per module. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/import-style.md */ 'unicorn/import-style'?: Linter.RuleEntry; /** * Prevent usage of variables from outside the scope of isolated functions. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/isolated-functions.md */ 'unicorn/isolated-functions'?: Linter.RuleEntry; /** * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/new-for-builtins.md */ 'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>; /** * Enforce specifying rules to disable in `eslint-disable` comments. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-abusive-eslint-disable.md */ 'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>; /** * Disallow recursive access to `this` within getters and setters. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-accessor-recursion.md */ 'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>; /** * Disallow anonymous functions and classes as the default export. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-anonymous-default-export.md */ 'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>; /** * Prevent passing a function reference directly to iterator methods. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-callback-reference.md */ 'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>; /** * Prefer `for…of` over the `forEach` method. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-for-each.md */ 'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>; /** * Disallow using the `this` argument in array methods. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-method-this-argument.md */ 'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>; /** * Replaced by `unicorn/prefer-single-call` which covers more cases. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/deleted-and-deprecated-rules.md#no-array-push-push * @deprecated */ 'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>; /** * Disallow `Array#reduce()` and `Array#reduceRight()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-reduce.md */ 'unicorn/no-array-reduce'?: Linter.RuleEntry; /** * Prefer `Array#toReversed()` over `Array#reverse()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-reverse.md */ 'unicorn/no-array-reverse'?: Linter.RuleEntry; /** * Prefer `Array#toSorted()` over `Array#sort()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-sort.md */ 'unicorn/no-array-sort'?: Linter.RuleEntry; /** * Disallow member access from await expression. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-await-expression-member.md */ 'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>; /** * Disallow using `await` in `Promise` method parameters. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-await-in-promise-methods.md */ 'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>; /** * Do not use leading/trailing space between `console.log` parameters. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-console-spaces.md */ 'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>; /** * Do not use `document.cookie` directly. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-document-cookie.md */ 'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>; /** * Disallow empty files. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-empty-file.md */ 'unicorn/no-empty-file'?: Linter.RuleEntry<[]>; /** * Do not use a `for` loop that can be replaced with a `for-of` loop. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-for-loop.md */ 'unicorn/no-for-loop'?: Linter.RuleEntry<[]>; /** * Enforce the use of Unicode escapes instead of hexadecimal escapes. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-hex-escape.md */ 'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>; /** * Disallow immediate mutation after variable assignment. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-immediate-mutation.md */ 'unicorn/no-immediate-mutation'?: Linter.RuleEntry<[]>; /** * Replaced by `unicorn/no-instanceof-builtins` which covers more cases. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/deleted-and-deprecated-rules.md#no-instanceof-array * @deprecated */ 'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>; /** * Disallow `instanceof` with built-in objects * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-instanceof-builtins.md */ 'unicorn/no-instanceof-builtins'?: Linter.RuleEntry; /** * Disallow invalid options in `fetch()` and `new Request()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-invalid-fetch-options.md */ 'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>; /** * Prevent calling `EventTarget#removeEventListener()` with the result of an expression. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-invalid-remove-event-listener.md */ 'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>; /** * Disallow identifiers starting with `new` or `class`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-keyword-prefix.md */ 'unicorn/no-keyword-prefix'?: Linter.RuleEntry; /** * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/deleted-and-deprecated-rules.md#no-length-as-slice-end * @deprecated */ 'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>; /** * Disallow `if` statements as the only statement in `if` blocks without `else`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-lonely-if.md */ 'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>; /** * Disallow a magic number as the `depth` argument in `Array#flat(…).` * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-magic-array-flat-depth.md */ 'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>; /** * Disallow named usage of default import and export. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-named-default.md */ 'unicorn/no-named-default'?: Linter.RuleEntry<[]>; /** * Disallow negated conditions. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-negated-condition.md */ 'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>; /** * Disallow negated expression in equality check. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-negation-in-equality-check.md */ 'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>; /** * Disallow nested ternary expressions. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-nested-ternary.md */ 'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>; /** * Disallow `new Array()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-new-array.md */ 'unicorn/no-new-array'?: Linter.RuleEntry<[]>; /** * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-new-buffer.md */ 'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>; /** * Disallow the use of the `null` literal. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-null.md */ 'unicorn/no-null'?: Linter.RuleEntry; /** * Disallow the use of objects as default parameters. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-object-as-default-parameter.md */ 'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>; /** * Disallow `process.exit()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-process-exit.md */ 'unicorn/no-process-exit'?: Linter.RuleEntry<[]>; /** * Disallow passing single-element arrays to `Promise` methods. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-single-promise-in-promise-methods.md */ 'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>; /** * Disallow classes that only have static members. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-static-only-class.md */ 'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>; /** * Disallow `then` property. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-thenable.md */ 'unicorn/no-thenable'?: Linter.RuleEntry<[]>; /** * Disallow assigning `this` to a variable. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-this-assignment.md */ 'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>; /** * Disallow comparing `undefined` using `typeof`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-typeof-undefined.md */ 'unicorn/no-typeof-undefined'?: Linter.RuleEntry; /** * Disallow using `1` as the `depth` argument of `Array#flat()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-array-flat-depth.md */ 'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>; /** * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-array-splice-count.md */ 'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>; /** * Disallow awaiting non-promise values. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-await.md */ 'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>; /** * Enforce the use of built-in methods instead of unnecessary polyfills. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-polyfills.md */ 'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry; /** * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-slice-end.md */ 'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>; /** * Disallow unreadable array destructuring. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unreadable-array-destructuring.md */ 'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>; /** * Disallow unreadable IIFEs. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unreadable-iife.md */ 'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>; /** * Disallow unused object properties. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unused-properties.md */ 'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>; /** * Disallow useless values or fallbacks in `Set`, `Map`, `WeakSet`, or `WeakMap`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-collection-argument.md */ 'unicorn/no-useless-collection-argument'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary `Error.captureStackTrace(…)`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-error-capture-stack-trace.md */ 'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>; /** * Disallow useless fallback when spreading in object literals. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-fallback-in-spread.md */ 'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary `.toArray()` on iterators. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-iterator-to-array.md */ 'unicorn/no-useless-iterator-to-array'?: Linter.RuleEntry<[]>; /** * Disallow useless array length check. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-length-check.md */ 'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>; /** * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-promise-resolve-reject.md */ 'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary spread. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-spread.md */ 'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>; /** * Disallow useless case in switch statements. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-switch-case.md */ 'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>; /** * Disallow useless `undefined`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-undefined.md */ 'unicorn/no-useless-undefined'?: Linter.RuleEntry; /** * Disallow number literals with zero fractions or dangling dots. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-zero-fractions.md */ 'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>; /** * Enforce proper case for numeric literals. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/number-literal-case.md */ 'unicorn/number-literal-case'?: Linter.RuleEntry; /** * Enforce the style of numeric separators by correctly grouping digits. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/numeric-separators-style.md */ 'unicorn/numeric-separators-style'?: Linter.RuleEntry; /** * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-add-event-listener.md */ 'unicorn/prefer-add-event-listener'?: Linter.RuleEntry; /** * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-find.md */ 'unicorn/prefer-array-find'?: Linter.RuleEntry; /** * Prefer `Array#flat()` over legacy techniques to flatten arrays. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-flat.md */ 'unicorn/prefer-array-flat'?: Linter.RuleEntry; /** * Prefer `.flatMap(…)` over `.map(…).flat()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-flat-map.md */ 'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>; /** * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-index-of.md */ 'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>; /** * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-some.md */ 'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>; /** * Prefer `.at()` method for index access and `String#charAt()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-at.md */ 'unicorn/prefer-at'?: Linter.RuleEntry; /** * Prefer `BigInt` literals over the constructor. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-bigint-literals.md */ 'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>; /** * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-blob-reading-methods.md */ 'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>; /** * Prefer class field declarations over `this` assignments in constructors. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-class-fields.md */ 'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>; /** * Prefer using `Element#classList.toggle()` to toggle class names. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-classlist-toggle.md */ 'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>; /** * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-code-point.md */ 'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>; /** * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-date-now.md */ 'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>; /** * Prefer default parameters over reassignment. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-default-parameters.md */ 'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>; /** * Prefer `Node#append()` over `Node#appendChild()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-dom-node-append.md */ 'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>; /** * Prefer using `.dataset` on DOM elements over calling attribute methods. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-dom-node-dataset.md */ 'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>; /** * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-dom-node-remove.md */ 'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>; /** * Prefer `.textContent` over `.innerText`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-dom-node-text-content.md */ 'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>; /** * Prefer `EventTarget` over `EventEmitter`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-event-target.md */ 'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>; /** * Prefer `export…from` when re-exporting. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-export-from.md */ 'unicorn/prefer-export-from'?: Linter.RuleEntry; /** * Prefer `globalThis` over `window`, `self`, and `global`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-global-this.md */ 'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>; /** * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-import-meta-properties.md */ 'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>; /** * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-includes.md */ 'unicorn/prefer-includes'?: Linter.RuleEntry<[]>; /** * Prefer reading a JSON file as a buffer. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-json-parse-buffer.md */ 'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>; /** * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-keyboard-event-key.md */ 'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>; /** * Prefer using a logical operator over a ternary. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-logical-operator-over-ternary.md */ 'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>; /** * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-math-min-max.md */ 'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>; /** * Enforce the use of `Math.trunc` instead of bitwise operators. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-math-trunc.md */ 'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>; /** * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-modern-dom-apis.md */ 'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>; /** * Prefer modern `Math` APIs over legacy patterns. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-modern-math-apis.md */ 'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>; /** * Prefer JavaScript modules (ESM) over CommonJS. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-module.md */ 'unicorn/prefer-module'?: Linter.RuleEntry<[]>; /** * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-native-coercion-functions.md */ 'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>; /** * Prefer negative index over `.length - index` when possible. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-negative-index.md */ 'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>; /** * Prefer using the `node:` protocol when importing Node.js builtin modules. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-node-protocol.md */ 'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>; /** * Prefer `Number` static properties over global ones. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-number-properties.md */ 'unicorn/prefer-number-properties'?: Linter.RuleEntry; /** * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-object-from-entries.md */ 'unicorn/prefer-object-from-entries'?: Linter.RuleEntry; /** * Prefer omitting the `catch` binding parameter. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-optional-catch-binding.md */ 'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>; /** * Prefer borrowing methods from the prototype instead of the instance. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-prototype-methods.md */ 'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>; /** * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-query-selector.md */ 'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>; /** * Prefer `Reflect.apply()` over `Function#apply()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-reflect-apply.md */ 'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>; /** * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-regexp-test.md */ 'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>; /** * Prefer `Response.json()` over `new Response(JSON.stringify())`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-response-static-json.md */ 'unicorn/prefer-response-static-json'?: Linter.RuleEntry<[]>; /** * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-set-has.md */ 'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>; /** * Prefer using `Set#size` instead of `Array#length`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-set-size.md */ 'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>; /** * Prefer simple conditions first in logical expressions. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-simple-condition-first.md */ 'unicorn/prefer-simple-condition-first'?: Linter.RuleEntry<[]>; /** * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-single-call.md */ 'unicorn/prefer-single-call'?: Linter.RuleEntry; /** * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-spread.md */ 'unicorn/prefer-spread'?: Linter.RuleEntry<[]>; /** * Prefer using the `String.raw` tag to avoid escaping `\`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-raw.md */ 'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>; /** * Prefer `String#replaceAll()` over regex searches with the global flag. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-replace-all.md */ 'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>; /** * Prefer `String#slice()` over `String#substr()` and `String#substring()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-slice.md */ 'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>; /** * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-starts-ends-with.md */ 'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>; /** * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-trim-start-end.md */ 'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>; /** * Prefer using `structuredClone` to create a deep clone. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-structured-clone.md */ 'unicorn/prefer-structured-clone'?: Linter.RuleEntry; /** * Prefer `switch` over multiple `else-if`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-switch.md */ 'unicorn/prefer-switch'?: Linter.RuleEntry; /** * Prefer ternary expressions over simple `if-else` statements. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-ternary.md */ 'unicorn/prefer-ternary'?: Linter.RuleEntry; /** * Prefer top-level await over top-level promises and async function calls. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-top-level-await.md */ 'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>; /** * Enforce throwing `TypeError` in type checking conditions. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-type-error.md */ 'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>; /** * Prevent abbreviations. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prevent-abbreviations.md */ 'unicorn/prevent-abbreviations'?: Linter.RuleEntry; /** * Enforce consistent relative URL style. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/relative-url-style.md */ 'unicorn/relative-url-style'?: Linter.RuleEntry; /** * Enforce using the separator argument with `Array#join()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-array-join-separator.md */ 'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>; /** * Require non-empty module attributes for imports and exports * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-module-attributes.md */ 'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>; /** * Require non-empty specifier list in import and export statements. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-module-specifiers.md */ 'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>; /** * Enforce using the digits argument with `Number#toFixed()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-number-to-fixed-digits-argument.md */ 'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>; /** * Enforce using the `targetOrigin` argument with `window.postMessage()`. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-post-message-target-origin.md */ 'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>; /** * Enforce better string content. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/string-content.md */ 'unicorn/string-content'?: Linter.RuleEntry; /** * Enforce consistent brace style for `case` clauses. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/switch-case-braces.md */ 'unicorn/switch-case-braces'?: Linter.RuleEntry; /** * Enforce consistent `break`/`return`/`continue`/`throw` position in `case` clauses. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/switch-case-break-position.md */ 'unicorn/switch-case-break-position'?: Linter.RuleEntry<[]>; /** * Fix whitespace-insensitive template indentation. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/template-indent.md */ 'unicorn/template-indent'?: Linter.RuleEntry; /** * Enforce consistent case for text encoding identifiers. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/text-encoding-identifier-case.md */ 'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry; /** * Require `new` when creating an error. * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/throw-new-error.md */ 'unicorn/throw-new-error'?: Linter.RuleEntry<[]>; /** * Require calls to `isNaN()` when checking for `NaN` * @see https://eslint.org/docs/latest/rules/use-isnan */ 'use-isnan'?: Linter.RuleEntry; /** * Enforce comparing `typeof` expressions against valid strings * @see https://eslint.org/docs/latest/rules/valid-typeof */ 'valid-typeof'?: Linter.RuleEntry; /** * Require `var` declarations be placed at the top of their containing scope * @see https://eslint.org/docs/latest/rules/vars-on-top */ 'vars-on-top'?: Linter.RuleEntry<[]>; /** * enforce using `.each` or `.for` consistently * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-each-for.md */ 'vitest/consistent-each-for'?: Linter.RuleEntry; /** * require test file pattern * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-filename.md */ 'vitest/consistent-test-filename'?: Linter.RuleEntry; /** * enforce using test or it but not both * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-it.md */ 'vitest/consistent-test-it'?: Linter.RuleEntry; /** * enforce using vitest or vi but not both * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-vitest-vi.md */ 'vitest/consistent-vitest-vi'?: Linter.RuleEntry; /** * enforce having expectation in test body * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/expect-expect.md */ 'vitest/expect-expect'?: Linter.RuleEntry; /** * enforce hoisted APIs to be on top of the file * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/hoisted-apis-on-top.md */ 'vitest/hoisted-apis-on-top'?: Linter.RuleEntry<[]>; /** * enforce a maximum number of expect per test * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/max-expects.md */ 'vitest/max-expects'?: Linter.RuleEntry; /** * require describe block to be less than set max value or default value * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/max-nested-describe.md */ 'vitest/max-nested-describe'?: Linter.RuleEntry; /** * disallow alias methods * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-alias-methods.md */ 'vitest/no-alias-methods'?: Linter.RuleEntry<[]>; /** * disallow commented out tests * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-commented-out-tests.md */ 'vitest/no-commented-out-tests'?: Linter.RuleEntry<[]>; /** * disallow conditional expects * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-expect.md */ 'vitest/no-conditional-expect'?: Linter.RuleEntry<[]>; /** * disallow conditional tests * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-in-test.md */ 'vitest/no-conditional-in-test'?: Linter.RuleEntry<[]>; /** * disallow conditional tests * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-tests.md */ 'vitest/no-conditional-tests'?: Linter.RuleEntry<[]>; /** * disallow disabled tests * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-disabled-tests.md */ 'vitest/no-disabled-tests'?: Linter.RuleEntry<[]>; /** * disallow using a callback in asynchronous tests and hooks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-done-callback.md * @deprecated */ 'vitest/no-done-callback'?: Linter.RuleEntry<[]>; /** * disallow duplicate hooks and teardown hooks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-duplicate-hooks.md */ 'vitest/no-duplicate-hooks'?: Linter.RuleEntry<[]>; /** * disallow focused tests * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-focused-tests.md */ 'vitest/no-focused-tests'?: Linter.RuleEntry; /** * disallow setup and teardown hooks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-hooks.md */ 'vitest/no-hooks'?: Linter.RuleEntry; /** * disallow identical titles * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-identical-title.md */ 'vitest/no-identical-title'?: Linter.RuleEntry<[]>; /** * disallow importing `node:test` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-import-node-test.md */ 'vitest/no-import-node-test'?: Linter.RuleEntry<[]>; /** * disallow importing Vitest globals * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-importing-vitest-globals.md */ 'vitest/no-importing-vitest-globals'?: Linter.RuleEntry<[]>; /** * disallow string interpolation in snapshots * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-interpolation-in-snapshots.md */ 'vitest/no-interpolation-in-snapshots'?: Linter.RuleEntry<[]>; /** * disallow large snapshots * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-large-snapshots.md */ 'vitest/no-large-snapshots'?: Linter.RuleEntry; /** * disallow importing from __mocks__ directory * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-mocks-import.md */ 'vitest/no-mocks-import'?: Linter.RuleEntry<[]>; /** * disallow the use of certain matchers * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-restricted-matchers.md */ 'vitest/no-restricted-matchers'?: Linter.RuleEntry; /** * disallow specific `vi.` methods * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-restricted-vi-methods.md */ 'vitest/no-restricted-vi-methods'?: Linter.RuleEntry; /** * disallow using `expect` outside of `it` or `test` blocks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-standalone-expect.md */ 'vitest/no-standalone-expect'?: Linter.RuleEntry; /** * disallow using the `f` and `x` prefixes in favour of `.only` and `.skip` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-prefixes.md */ 'vitest/no-test-prefixes'?: Linter.RuleEntry<[]>; /** * disallow return statements in tests * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-return-statement.md */ 'vitest/no-test-return-statement'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary async function wrapper for expected promises * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-unneeded-async-expect-function.md */ 'vitest/no-unneeded-async-expect-function'?: Linter.RuleEntry<[]>; /** * Enforce padding around `afterAll` blocks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-all-blocks.md */ 'vitest/padding-around-after-all-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around `afterEach` blocks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-each-blocks.md */ 'vitest/padding-around-after-each-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around vitest functions * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-all.md */ 'vitest/padding-around-all'?: Linter.RuleEntry<[]>; /** * Enforce padding around `beforeAll` blocks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-before-all-blocks.md */ 'vitest/padding-around-before-all-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around `beforeEach` blocks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-before-each-blocks.md */ 'vitest/padding-around-before-each-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around `describe` blocks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-describe-blocks.md */ 'vitest/padding-around-describe-blocks'?: Linter.RuleEntry<[]>; /** * Enforce padding around `expect` groups * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-expect-groups.md */ 'vitest/padding-around-expect-groups'?: Linter.RuleEntry<[]>; /** * Enforce padding around `test` blocks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-test-blocks.md */ 'vitest/padding-around-test-blocks'?: Linter.RuleEntry<[]>; /** * Prefer `toHaveBeenCalledExactlyOnceWith` over `toHaveBeenCalledOnce` and `toHaveBeenCalledWith` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-exactly-once-with.md */ 'vitest/prefer-called-exactly-once-with'?: Linter.RuleEntry<[]>; /** * enforce using `toBeCalledOnce()` or `toHaveBeenCalledOnce()` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-once.md */ 'vitest/prefer-called-once'?: Linter.RuleEntry<[]>; /** * enforce using `toBeCalledTimes(1)` or `toHaveBeenCalledTimes(1)` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-times.md */ 'vitest/prefer-called-times'?: Linter.RuleEntry<[]>; /** * enforce using `toBeCalledWith()` or `toHaveBeenCalledWith()` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-with.md */ 'vitest/prefer-called-with'?: Linter.RuleEntry<[]>; /** * enforce using the built-in comparison matchers * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-comparison-matcher.md */ 'vitest/prefer-comparison-matcher'?: Linter.RuleEntry<[]>; /** * enforce using a function as a describe title over an equivalent string * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-describe-function-title.md */ 'vitest/prefer-describe-function-title'?: Linter.RuleEntry<[]>; /** * enforce using `each` rather than manual loops * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-each.md */ 'vitest/prefer-each'?: Linter.RuleEntry<[]>; /** * enforce using the built-in equality matchers * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-equality-matcher.md */ 'vitest/prefer-equality-matcher'?: Linter.RuleEntry<[]>; /** * enforce using expect assertions instead of callbacks * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-assertions.md */ 'vitest/prefer-expect-assertions'?: Linter.RuleEntry; /** * enforce using `expect().resolves` over `expect(await ...)` syntax * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-resolves.md */ 'vitest/prefer-expect-resolves'?: Linter.RuleEntry<[]>; /** * enforce using `expectTypeOf` instead of `expect(typeof ...)` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-type-of.md */ 'vitest/prefer-expect-type-of'?: Linter.RuleEntry<[]>; /** * enforce having hooks in consistent order * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-in-order.md */ 'vitest/prefer-hooks-in-order'?: Linter.RuleEntry<[]>; /** * enforce having hooks before any test cases * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-on-top.md */ 'vitest/prefer-hooks-on-top'?: Linter.RuleEntry<[]>; /** * prefer dynamic import in mock * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-import-in-mock.md */ 'vitest/prefer-import-in-mock'?: Linter.RuleEntry<[]>; /** * enforce importing Vitest globals * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-importing-vitest-globals.md */ 'vitest/prefer-importing-vitest-globals'?: Linter.RuleEntry<[]>; /** * enforce lowercase titles * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-lowercase-title.md */ 'vitest/prefer-lowercase-title'?: Linter.RuleEntry; /** * enforce mock resolved/rejected shorthands for promises * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-promise-shorthand.md */ 'vitest/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>; /** * enforce including a hint with external snapshots * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-snapshot-hint.md */ 'vitest/prefer-snapshot-hint'?: Linter.RuleEntry; /** * enforce using `vi.spyOn` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-spy-on.md */ 'vitest/prefer-spy-on'?: Linter.RuleEntry<[]>; /** * enforce using `toBe(true)` and `toBe(false)` over matchers that coerce types to boolean * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-strict-boolean-matchers.md */ 'vitest/prefer-strict-boolean-matchers'?: Linter.RuleEntry<[]>; /** * enforce strict equal over equal * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-strict-equal.md */ 'vitest/prefer-strict-equal'?: Linter.RuleEntry<[]>; /** * enforce using toBe() * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be.md */ 'vitest/prefer-to-be'?: Linter.RuleEntry<[]>; /** * enforce using toBeFalsy() * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-falsy.md */ 'vitest/prefer-to-be-falsy'?: Linter.RuleEntry<[]>; /** * enforce using toBeObject() * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-object.md */ 'vitest/prefer-to-be-object'?: Linter.RuleEntry<[]>; /** * enforce using `toBeTruthy` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-truthy.md */ 'vitest/prefer-to-be-truthy'?: Linter.RuleEntry<[]>; /** * enforce using toContain() * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-contain.md */ 'vitest/prefer-to-contain'?: Linter.RuleEntry<[]>; /** * enforce using toHaveLength() * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md */ 'vitest/prefer-to-have-length'?: Linter.RuleEntry<[]>; /** * enforce using `test.todo` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-todo.md */ 'vitest/prefer-todo'?: Linter.RuleEntry<[]>; /** * require `vi.mocked()` over `fn as Mock` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-vi-mocked.md */ 'vitest/prefer-vi-mocked'?: Linter.RuleEntry<[]>; /** * ensure that every `expect.poll` call is awaited * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-awaited-expect-poll.md */ 'vitest/require-awaited-expect-poll'?: Linter.RuleEntry<[]>; /** * require setup and teardown to be within a hook * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-hook.md */ 'vitest/require-hook'?: Linter.RuleEntry; /** * require usage of import in vi.mock() * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-import-vi-mock.md */ 'vitest/require-import-vi-mock'?: Linter.RuleEntry<[]>; /** * require local Test Context for concurrent snapshot tests * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-local-test-context-for-concurrent-snapshots.md */ 'vitest/require-local-test-context-for-concurrent-snapshots'?: Linter.RuleEntry<[]>; /** * enforce using type parameters with vitest mock functions * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-mock-type-parameters.md */ 'vitest/require-mock-type-parameters'?: Linter.RuleEntry; /** * require toThrow() to be called with an error message * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-to-throw-message.md */ 'vitest/require-to-throw-message'?: Linter.RuleEntry<[]>; /** * enforce that all tests are in a top-level describe * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-top-level-describe.md */ 'vitest/require-top-level-describe'?: Linter.RuleEntry; /** * enforce valid describe callback * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-describe-callback.md */ 'vitest/valid-describe-callback'?: Linter.RuleEntry<[]>; /** * enforce valid `expect()` usage * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-expect.md */ 'vitest/valid-expect'?: Linter.RuleEntry; /** * require promises that have expectations in their chain to be valid * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-expect-in-promise.md */ 'vitest/valid-expect-in-promise'?: Linter.RuleEntry<[]>; /** * enforce valid titles * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-title.md */ 'vitest/valid-title'?: Linter.RuleEntry; /** * disallow `.todo` usage * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/warn-todo.md */ 'vitest/warn-todo'?: Linter.RuleEntry<[]>; /** * Enforce linebreaks after opening and before closing array brackets in `