import { Linter } from "eslint"; //#region src/typegen.d.ts interface RuleOptions { /** * 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; /** * Comment-as-command for one-off codemod with ESLint * @see https://github.com/antfu/eslint-plugin-command */ 'command/command'?: 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; /** * require a `eslint-enable` comment for every `eslint-disable` comment * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/disable-enable-pair.html */ 'eslint-comments/disable-enable-pair'?: Linter.RuleEntry; /** * disallow a `eslint-enable` comment for multiple `eslint-disable` comments * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-aggregating-enable.html */ 'eslint-comments/no-aggregating-enable'?: Linter.RuleEntry<[]>; /** * disallow duplicate `eslint-disable` comments * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-duplicate-disable.html */ 'eslint-comments/no-duplicate-disable'?: Linter.RuleEntry<[]>; /** * disallow `eslint-disable` comments about specific rules * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-restricted-disable.html */ 'eslint-comments/no-restricted-disable'?: Linter.RuleEntry; /** * disallow `eslint-disable` comments without rule names * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-unlimited-disable.html */ 'eslint-comments/no-unlimited-disable'?: Linter.RuleEntry<[]>; /** * disallow unused `eslint-disable` comments * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-unused-disable.html * @deprecated */ 'eslint-comments/no-unused-disable'?: Linter.RuleEntry<[]>; /** * disallow unused `eslint-enable` comments * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-unused-enable.html */ 'eslint-comments/no-unused-enable'?: Linter.RuleEntry<[]>; /** * disallow ESLint directive-comments * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-use.html */ 'eslint-comments/no-use'?: Linter.RuleEntry; /** * require include descriptions in ESLint directive-comments * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/require-description.html */ 'eslint-comments/require-description'?: 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/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/consistent-type-specifier-style.md */ 'import/consistent-type-specifier-style'?: Linter.RuleEntry; /** * Ensure a default export is present, given a default import. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/default.md */ 'import/default'?: Linter.RuleEntry<[]>; /** * Enforce a leading comment with the webpackChunkName for dynamic imports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/dynamic-import-chunkname.md */ 'import/dynamic-import-chunkname'?: Linter.RuleEntry; /** * Forbid any invalid exports, i.e. re-export of the same name. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/export.md */ 'import/export'?: Linter.RuleEntry<[]>; /** * Ensure all exports appear after other statements. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/exports-last.md */ 'import/exports-last'?: Linter.RuleEntry<[]>; /** * Ensure consistent use of file extension within the import path. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/extensions.md */ 'import/extensions'?: Linter.RuleEntry; /** * Ensure all imports appear before other statements. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/first.md */ 'import/first'?: Linter.RuleEntry; /** * Prefer named exports to be grouped together in a single export declaration. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/group-exports.md */ 'import/group-exports'?: Linter.RuleEntry<[]>; /** * Replaced by `import-x/first`. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/imports-first.md * @deprecated */ 'import/imports-first'?: Linter.RuleEntry; /** * Enforce the maximum number of dependencies a module can have. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/max-dependencies.md */ 'import/max-dependencies'?: Linter.RuleEntry; /** * Ensure named imports correspond to a named export in the remote file. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/named.md */ 'import/named'?: Linter.RuleEntry; /** * Ensure imported namespaces contain dereferenced properties as they are dereferenced. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/namespace.md */ 'import/namespace'?: Linter.RuleEntry; /** * Enforce a newline after import statements. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/newline-after-import.md */ 'import/newline-after-import'?: Linter.RuleEntry; /** * Forbid import of modules using absolute paths. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-absolute-path.md */ 'import/no-absolute-path'?: Linter.RuleEntry; /** * Forbid AMD `require` and `define` calls. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-amd.md */ 'import/no-amd'?: Linter.RuleEntry<[]>; /** * Forbid anonymous values as default exports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-anonymous-default-export.md */ 'import/no-anonymous-default-export'?: Linter.RuleEntry; /** * Forbid CommonJS `require` calls and `module.exports` or `exports.*`. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-commonjs.md */ 'import/no-commonjs'?: Linter.RuleEntry; /** * Forbid a module from importing a module with a dependency path back to itself. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-cycle.md */ 'import/no-cycle'?: Linter.RuleEntry; /** * Forbid default exports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-default-export.md */ 'import/no-default-export'?: Linter.RuleEntry<[]>; /** * Forbid imported names marked with `@deprecated` documentation tag. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-deprecated.md */ 'import/no-deprecated'?: Linter.RuleEntry<[]>; /** * Forbid repeated import of the same module in multiple places. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-duplicates.md */ 'import/no-duplicates'?: Linter.RuleEntry; /** * Forbid `require()` calls with expressions. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-dynamic-require.md */ 'import/no-dynamic-require'?: Linter.RuleEntry; /** * Forbid empty named import blocks. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-empty-named-blocks.md */ 'import/no-empty-named-blocks'?: Linter.RuleEntry<[]>; /** * Forbid the use of extraneous packages. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-extraneous-dependencies.md */ 'import/no-extraneous-dependencies'?: Linter.RuleEntry; /** * Forbid import statements with CommonJS module.exports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-import-module-exports.md */ 'import/no-import-module-exports'?: Linter.RuleEntry; /** * Forbid importing the submodules of other modules. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-internal-modules.md */ 'import/no-internal-modules'?: Linter.RuleEntry; /** * Forbid the use of mutable exports with `var` or `let`. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-mutable-exports.md */ 'import/no-mutable-exports'?: Linter.RuleEntry<[]>; /** * Forbid use of exported name as identifier of default export. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-named-as-default.md */ 'import/no-named-as-default'?: Linter.RuleEntry<[]>; /** * Forbid use of exported name as property of default export. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-named-as-default-member.md */ 'import/no-named-as-default-member'?: Linter.RuleEntry<[]>; /** * Forbid named default exports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-named-default.md */ 'import/no-named-default'?: Linter.RuleEntry<[]>; /** * Forbid named exports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-named-export.md */ 'import/no-named-export'?: Linter.RuleEntry<[]>; /** * Forbid namespace (a.k.a. "wildcard" `*`) imports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-namespace.md */ 'import/no-namespace'?: Linter.RuleEntry; /** * Forbid Node.js builtin modules. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-nodejs-modules.md */ 'import/no-nodejs-modules'?: Linter.RuleEntry; /** * Forbid importing packages through relative paths. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-relative-packages.md */ 'import/no-relative-packages'?: Linter.RuleEntry; /** * Forbid importing modules from parent directories. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-relative-parent-imports.md */ 'import/no-relative-parent-imports'?: Linter.RuleEntry; /** * Forbid importing a default export by a different name. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-rename-default.md */ 'import/no-rename-default'?: Linter.RuleEntry; /** * Enforce which files can be imported in a given folder. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-restricted-paths.md */ 'import/no-restricted-paths'?: Linter.RuleEntry; /** * Forbid a module from importing itself. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-self-import.md */ 'import/no-self-import'?: Linter.RuleEntry<[]>; /** * Forbid unassigned imports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-unassigned-import.md */ 'import/no-unassigned-import'?: Linter.RuleEntry; /** * Ensure imports point to a file/module that can be resolved. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-unresolved.md */ 'import/no-unresolved'?: Linter.RuleEntry; /** * Forbid modules without exports, or exports without matching import in another module. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-unused-modules.md */ 'import/no-unused-modules'?: Linter.RuleEntry; /** * Forbid unnecessary path segments in import and require statements. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-useless-path-segments.md */ 'import/no-useless-path-segments'?: Linter.RuleEntry; /** * Forbid webpack loader syntax in imports. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/no-webpack-loader-syntax.md */ 'import/no-webpack-loader-syntax'?: Linter.RuleEntry<[]>; /** * Enforce a convention in module import order. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/order.md */ 'import/order'?: Linter.RuleEntry; /** * Prefer a default export if module exports a single name or multiple names. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/prefer-default-export.md */ 'import/prefer-default-export'?: Linter.RuleEntry; /** * Enforce using namespace imports for specific modules, like `react`/`react-dom`, etc. * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/prefer-namespace-import.md */ 'import/prefer-namespace-import'?: Linter.RuleEntry; /** * Forbid potentially ambiguous parse goal (`script` vs. `module`). * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.2/docs/rules/unambiguous.md */ 'import/unambiguous'?: 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; /** * Checks that `@access` tags have a valid value. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-access.md#repos-sticky-header */ 'jsdoc/check-access'?: Linter.RuleEntry<[]>; /** * Reports invalid alignment of JSDoc block asterisks. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-alignment.md#repos-sticky-header */ 'jsdoc/check-alignment'?: Linter.RuleEntry; /** * @deprecated - Use `getJsdocProcessorPlugin` processor; ensures that (JavaScript) samples within `@example` tags adhere to ESLint rules. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-examples.md#repos-sticky-header */ 'jsdoc/check-examples'?: Linter.RuleEntry; /** * Reports invalid padding inside JSDoc blocks. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-indentation.md#repos-sticky-header */ 'jsdoc/check-indentation'?: Linter.RuleEntry; /** * Reports invalid alignment of JSDoc block lines. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-line-alignment.md#repos-sticky-header */ 'jsdoc/check-line-alignment'?: Linter.RuleEntry; /** * Checks for dupe `@param` names, that nested param names have roots, and that parameter names in function declarations match JSDoc param names. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-param-names.md#repos-sticky-header */ 'jsdoc/check-param-names'?: Linter.RuleEntry; /** * Ensures that property names in JSDoc are not duplicated on the same block and that nested properties have defined roots. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-property-names.md#repos-sticky-header */ 'jsdoc/check-property-names'?: Linter.RuleEntry; /** * Reports against syntax not valid for the mode (e.g., Google Closure Compiler in non-Closure mode). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-syntax.md#repos-sticky-header */ 'jsdoc/check-syntax'?: Linter.RuleEntry<[]>; /** * Reports invalid block tag names. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-tag-names.md#repos-sticky-header */ 'jsdoc/check-tag-names'?: Linter.RuleEntry; /** * Checks that any `@template` names are actually used in the connected `@typedef` or type alias. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-template-names.md#repos-sticky-header */ 'jsdoc/check-template-names'?: Linter.RuleEntry<[]>; /** * Reports types deemed invalid (customizable and with defaults, for preventing and/or recommending replacements). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-types.md#repos-sticky-header */ 'jsdoc/check-types'?: Linter.RuleEntry; /** * This rule checks the values for a handful of tags: `@version`, `@since`, `@license` and `@author`. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-values.md#repos-sticky-header */ 'jsdoc/check-values'?: Linter.RuleEntry; /** * Converts non-JSDoc comments preceding or following nodes into JSDoc ones * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/convert-to-jsdoc-comments.md#repos-sticky-header */ 'jsdoc/convert-to-jsdoc-comments'?: Linter.RuleEntry; /** * Checks tags that are expected to be empty (e.g., `@abstract` or `@async`), reporting if they have content * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/empty-tags.md#repos-sticky-header */ 'jsdoc/empty-tags'?: Linter.RuleEntry; /** * Reports use of JSDoc tags in non-tag positions (in the default "typescript" mode). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/escape-inline-tags.md#repos-sticky-header */ 'jsdoc/escape-inline-tags'?: Linter.RuleEntry; /** * Prohibits use of `@implements` on non-constructor functions (to enforce the tag only being used on classes/constructors). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/implements-on-classes.md#repos-sticky-header */ 'jsdoc/implements-on-classes'?: Linter.RuleEntry; /** * Reports if JSDoc `import()` statements point to a package which is not listed in `dependencies` or `devDependencies` * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/imports-as-dependencies.md#repos-sticky-header */ 'jsdoc/imports-as-dependencies'?: Linter.RuleEntry<[]>; /** * This rule reports doc comments that only restate their attached name. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/informative-docs.md#repos-sticky-header */ 'jsdoc/informative-docs'?: Linter.RuleEntry; /** * Enforces minimum number of newlines before JSDoc comment blocks * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/lines-before-block.md#repos-sticky-header */ 'jsdoc/lines-before-block'?: Linter.RuleEntry; /** * Enforces a regular expression pattern on descriptions. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/match-description.md#repos-sticky-header */ 'jsdoc/match-description'?: Linter.RuleEntry; /** * Reports the name portion of a JSDoc tag if matching or not matching a given regular expression. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/match-name.md#repos-sticky-header */ 'jsdoc/match-name'?: Linter.RuleEntry; /** * Controls how and whether JSDoc blocks can be expressed as single or multiple line blocks. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/multiline-blocks.md#repos-sticky-header */ 'jsdoc/multiline-blocks'?: Linter.RuleEntry; /** * This rule checks for multi-line-style comments which fail to meet the criteria of a JSDoc block. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-bad-blocks.md#repos-sticky-header */ 'jsdoc/no-bad-blocks'?: Linter.RuleEntry; /** * If tags are present, this rule will prevent empty lines in the block description. If no tags are present, this rule will prevent extra empty lines in the block description. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-blank-block-descriptions.md#repos-sticky-header */ 'jsdoc/no-blank-block-descriptions'?: Linter.RuleEntry<[]>; /** * Removes empty blocks with nothing but possibly line breaks * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-blank-blocks.md#repos-sticky-header */ 'jsdoc/no-blank-blocks'?: Linter.RuleEntry; /** * This rule reports defaults being used on the relevant portion of `@param` or `@default`. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-defaults.md#repos-sticky-header */ 'jsdoc/no-defaults'?: Linter.RuleEntry; /** * Reports when certain comment structures are always expected. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-missing-syntax.md#repos-sticky-header */ 'jsdoc/no-missing-syntax'?: Linter.RuleEntry; /** * Prevents use of multiple asterisks at the beginning of lines. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-multi-asterisks.md#repos-sticky-header */ 'jsdoc/no-multi-asterisks'?: Linter.RuleEntry; /** * Reports when certain comment structures are present. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-restricted-syntax.md#repos-sticky-header */ 'jsdoc/no-restricted-syntax'?: Linter.RuleEntry; /** * This rule reports types being used on `@param` or `@returns` (redundant with TypeScript). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-types.md#repos-sticky-header */ 'jsdoc/no-types'?: Linter.RuleEntry; /** * Besides some expected built-in types, prohibits any types not specified as globals or within `@typedef`. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-undefined-types.md#repos-sticky-header */ 'jsdoc/no-undefined-types'?: Linter.RuleEntry; /** * Prefer `@import` tags to inline `import()` statements. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/prefer-import-tag.md#repos-sticky-header */ 'jsdoc/prefer-import-tag'?: Linter.RuleEntry; /** * Reports use of `any` or `*` type * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/reject-any-type.md#repos-sticky-header */ 'jsdoc/reject-any-type'?: Linter.RuleEntry<[]>; /** * Reports use of `Function` type * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/reject-function-type.md#repos-sticky-header */ 'jsdoc/reject-function-type'?: Linter.RuleEntry<[]>; /** * Requires that each JSDoc line starts with an `*`. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-asterisk-prefix.md#repos-sticky-header */ 'jsdoc/require-asterisk-prefix'?: Linter.RuleEntry; /** * Requires that all functions (and potentially other contexts) have a description. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-description.md#repos-sticky-header */ 'jsdoc/require-description'?: Linter.RuleEntry; /** * Requires that block description, explicit `@description`, and `@param`/`@returns` tag descriptions are written in complete sentences. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-description-complete-sentence.md#repos-sticky-header */ 'jsdoc/require-description-complete-sentence'?: Linter.RuleEntry; /** * Requires that all functions (and potentially other contexts) have examples. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-example.md#repos-sticky-header */ 'jsdoc/require-example'?: Linter.RuleEntry; /** * Checks that all files have one `@file`, `@fileoverview`, or `@overview` tag at the beginning of the file. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-file-overview.md#repos-sticky-header */ 'jsdoc/require-file-overview'?: Linter.RuleEntry; /** * Requires a hyphen before the `@param` description (and optionally before `@property` descriptions). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-hyphen-before-param-description.md#repos-sticky-header */ 'jsdoc/require-hyphen-before-param-description'?: Linter.RuleEntry; /** * Checks for presence of JSDoc comments, on functions and potentially other contexts (optionally limited to exports). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-jsdoc.md#repos-sticky-header */ 'jsdoc/require-jsdoc'?: Linter.RuleEntry; /** * Requires a description for `@next` tags * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-description.md#repos-sticky-header */ 'jsdoc/require-next-description'?: Linter.RuleEntry<[]>; /** * Requires a type for `@next` tags * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-type.md#repos-sticky-header */ 'jsdoc/require-next-type'?: Linter.RuleEntry<[]>; /** * Requires that all function parameters are documented with a `@param` tag. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param.md#repos-sticky-header */ 'jsdoc/require-param'?: Linter.RuleEntry; /** * Requires that each `@param` tag has a `description` value. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-description.md#repos-sticky-header */ 'jsdoc/require-param-description'?: Linter.RuleEntry; /** * Requires that all `@param` tags have names. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-name.md#repos-sticky-header */ 'jsdoc/require-param-name'?: Linter.RuleEntry; /** * Requires that each `@param` tag has a type value (in curly brackets). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-type.md#repos-sticky-header */ 'jsdoc/require-param-type'?: Linter.RuleEntry; /** * Requires that all `@typedef` and `@namespace` tags have `@property` when their type is a plain `object`, `Object`, or `PlainObject`. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property.md#repos-sticky-header */ 'jsdoc/require-property'?: Linter.RuleEntry<[]>; /** * Requires that each `@property` tag has a `description` value. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-description.md#repos-sticky-header */ 'jsdoc/require-property-description'?: Linter.RuleEntry<[]>; /** * Requires that all `@property` tags have names. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-name.md#repos-sticky-header */ 'jsdoc/require-property-name'?: Linter.RuleEntry<[]>; /** * Requires that each `@property` tag has a type value (in curly brackets). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-type.md#repos-sticky-header */ 'jsdoc/require-property-type'?: Linter.RuleEntry<[]>; /** * Requires that Promise rejections are documented with `@rejects` tags. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-rejects.md#repos-sticky-header */ 'jsdoc/require-rejects'?: Linter.RuleEntry; /** * Requires that returns are documented with `@returns`. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns.md#repos-sticky-header */ 'jsdoc/require-returns'?: Linter.RuleEntry; /** * Requires a return statement in function body if a `@returns` tag is specified in JSDoc comment(and reports if multiple `@returns` tags are present). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-check.md#repos-sticky-header */ 'jsdoc/require-returns-check'?: Linter.RuleEntry; /** * Requires that the `@returns` tag has a `description` value (not including `void`/`undefined` type returns). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-description.md#repos-sticky-header */ 'jsdoc/require-returns-description'?: Linter.RuleEntry; /** * Requires that `@returns` tag has type value (in curly brackets). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-type.md#repos-sticky-header */ 'jsdoc/require-returns-type'?: Linter.RuleEntry; /** * Requires tags be present, optionally for specific contexts * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-tags.md#repos-sticky-header */ 'jsdoc/require-tags'?: Linter.RuleEntry; /** * Requires `@template` tags be present when type parameters are used. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-template.md#repos-sticky-header */ 'jsdoc/require-template'?: Linter.RuleEntry; /** * Requires a description for `@template` tags * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-template-description.md#repos-sticky-header */ 'jsdoc/require-template-description'?: Linter.RuleEntry<[]>; /** * Requires that throw statements are documented with `@throws` tags. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws.md#repos-sticky-header */ 'jsdoc/require-throws'?: Linter.RuleEntry; /** * Requires a description for `@throws` tags * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-description.md#repos-sticky-header */ 'jsdoc/require-throws-description'?: Linter.RuleEntry<[]>; /** * Requires a type for `@throws` tags * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-type.md#repos-sticky-header */ 'jsdoc/require-throws-type'?: Linter.RuleEntry<[]>; /** * Requires yields are documented with `@yields` tags. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields.md#repos-sticky-header */ 'jsdoc/require-yields'?: Linter.RuleEntry; /** * Ensures that if a `@yields` is present that a `yield` (or `yield` with a value) is present in the function body (or that if a `@next` is present that there is a yield with a return value present). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-check.md#repos-sticky-header */ 'jsdoc/require-yields-check'?: Linter.RuleEntry; /** * Requires a description for `@yields` tags * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-description.md#repos-sticky-header */ 'jsdoc/require-yields-description'?: Linter.RuleEntry<[]>; /** * Requires a type for `@yields` tags * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-type.md#repos-sticky-header */ 'jsdoc/require-yields-type'?: Linter.RuleEntry<[]>; /** * Sorts tags by a specified sequence according to tag name, optionally adding line breaks between tag groups. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/sort-tags.md#repos-sticky-header */ 'jsdoc/sort-tags'?: Linter.RuleEntry; /** * Enforces lines (or no lines) before, after, or between tags. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/tag-lines.md#repos-sticky-header */ 'jsdoc/tag-lines'?: Linter.RuleEntry; /** * Auto-escape certain characters that are input within block and tag descriptions. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/text-escaping.md#repos-sticky-header */ 'jsdoc/text-escaping'?: Linter.RuleEntry; /** * Prefers either function properties or method signatures * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/ts-method-signature-style.md#repos-sticky-header */ 'jsdoc/ts-method-signature-style'?: Linter.RuleEntry; /** * Warns against use of the empty object type * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/ts-no-empty-object-type.md#repos-sticky-header */ 'jsdoc/ts-no-empty-object-type'?: Linter.RuleEntry<[]>; /** * Catches unnecessary template expressions such as string expressions within a template literal. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/ts-no-unnecessary-template-expression.md#repos-sticky-header */ 'jsdoc/ts-no-unnecessary-template-expression'?: Linter.RuleEntry; /** * Prefers function types over call signatures when there are no other properties. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/ts-prefer-function-type.md#repos-sticky-header */ 'jsdoc/ts-prefer-function-type'?: Linter.RuleEntry; /** * Formats JSDoc type values. * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/type-formatting.md#repos-sticky-header */ 'jsdoc/type-formatting'?: Linter.RuleEntry; /** * Requires all types/namepaths to be valid JSDoc, Closure compiler, or TypeScript types (configurable in settings). * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/valid-types.md#repos-sticky-header */ 'jsdoc/valid-types'?: 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; /** * Require languages for fenced code blocks * @see https://github.com/eslint/markdown/blob/main/docs/rules/fenced-code-language.md */ 'markdown/fenced-code-language'?: Linter.RuleEntry; /** * Require or disallow metadata for fenced code blocks * @see https://github.com/eslint/markdown/blob/main/docs/rules/fenced-code-meta.md */ 'markdown/fenced-code-meta'?: Linter.RuleEntry; /** * Enforce heading levels increment by one * @see https://github.com/eslint/markdown/blob/main/docs/rules/heading-increment.md */ 'markdown/heading-increment'?: Linter.RuleEntry; /** * Disallow bare URLs * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-bare-urls.md */ 'markdown/no-bare-urls'?: Linter.RuleEntry<[]>; /** * Disallow duplicate definitions * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-definitions.md */ 'markdown/no-duplicate-definitions'?: Linter.RuleEntry; /** * Disallow duplicate headings in the same document * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-headings.md */ 'markdown/no-duplicate-headings'?: Linter.RuleEntry; /** * Disallow empty definitions * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-definitions.md */ 'markdown/no-empty-definitions'?: Linter.RuleEntry; /** * Disallow empty images * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-images.md */ 'markdown/no-empty-images'?: Linter.RuleEntry<[]>; /** * Disallow empty links * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-links.md */ 'markdown/no-empty-links'?: Linter.RuleEntry<[]>; /** * Disallow HTML tags * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-html.md */ 'markdown/no-html'?: Linter.RuleEntry; /** * Disallow invalid label references * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-invalid-label-refs.md */ 'markdown/no-invalid-label-refs'?: Linter.RuleEntry<[]>; /** * Disallow headings without a space after the hash characters * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-atx-heading-space.md */ 'markdown/no-missing-atx-heading-space'?: Linter.RuleEntry; /** * Disallow missing label references * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-label-refs.md */ 'markdown/no-missing-label-refs'?: Linter.RuleEntry; /** * Disallow link fragments that do not reference valid headings * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-link-fragments.md */ 'markdown/no-missing-link-fragments'?: Linter.RuleEntry; /** * Disallow multiple H1 headings in the same document * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-multiple-h1.md */ 'markdown/no-multiple-h1'?: Linter.RuleEntry; /** * Disallow URLs that match defined reference identifiers * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reference-like-urls.md */ 'markdown/no-reference-like-urls'?: Linter.RuleEntry<[]>; /** * Disallow reversed link and image syntax * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reversed-media-syntax.md */ 'markdown/no-reversed-media-syntax'?: Linter.RuleEntry<[]>; /** * Disallow spaces around emphasis markers * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-space-in-emphasis.md */ 'markdown/no-space-in-emphasis'?: Linter.RuleEntry; /** * Disallow unused definitions * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-unused-definitions.md */ 'markdown/no-unused-definitions'?: Linter.RuleEntry; /** * Require alternative text for images * @see https://github.com/eslint/markdown/blob/main/docs/rules/require-alt-text.md */ 'markdown/require-alt-text'?: Linter.RuleEntry<[]>; /** * Disallow data rows in a GitHub Flavored Markdown table from having more cells than the header row * @see https://github.com/eslint/markdown/blob/main/docs/rules/table-column-count.md */ 'markdown/table-column-count'?: 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 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<[]>; /** * require `return` statements after callbacks * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/callback-return.md */ 'node/callback-return'?: Linter.RuleEntry; /** * enforce either `module.exports` or `exports` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/exports-style.md */ 'node/exports-style'?: Linter.RuleEntry; /** * enforce the style of file extensions in `import` declarations * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/file-extension-in-import.md */ 'node/file-extension-in-import'?: Linter.RuleEntry; /** * require `require()` calls to be placed at top-level module scope * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/global-require.md */ 'node/global-require'?: Linter.RuleEntry<[]>; /** * require error handling in callbacks * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/handle-callback-err.md */ 'node/handle-callback-err'?: Linter.RuleEntry; /** * require correct usage of hashbang * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/hashbang.md */ 'node/hashbang'?: Linter.RuleEntry; /** * enforce Node.js-style error-first callback pattern is followed * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-callback-literal.md */ 'node/no-callback-literal'?: Linter.RuleEntry<[]>; /** * disallow deprecated APIs * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-deprecated-api.md */ 'node/no-deprecated-api'?: Linter.RuleEntry; /** * disallow the assignment to `exports` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-exports-assign.md */ 'node/no-exports-assign'?: Linter.RuleEntry<[]>; /** * disallow `import` declarations which import extraneous modules * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-extraneous-import.md */ 'node/no-extraneous-import'?: Linter.RuleEntry; /** * disallow `require()` expressions which import extraneous modules * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-extraneous-require.md */ 'node/no-extraneous-require'?: Linter.RuleEntry; /** * disallow third-party modules which are hiding core modules * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-hide-core-modules.md * @deprecated */ 'node/no-hide-core-modules'?: Linter.RuleEntry; /** * disallow `import` declarations which import missing modules * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-missing-import.md */ 'node/no-missing-import'?: Linter.RuleEntry; /** * disallow `require()` expressions which import missing modules * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-missing-require.md */ 'node/no-missing-require'?: Linter.RuleEntry; /** * disallow `require` calls to be mixed with regular variable declarations * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-mixed-requires.md */ 'node/no-mixed-requires'?: Linter.RuleEntry; /** * disallow `new` operators with calls to `require` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-new-require.md */ 'node/no-new-require'?: Linter.RuleEntry<[]>; /** * disallow string concatenation with `__dirname` and `__filename` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-path-concat.md */ 'node/no-path-concat'?: Linter.RuleEntry<[]>; /** * disallow the use of `process.env` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-process-env.md */ 'node/no-process-env'?: Linter.RuleEntry; /** * disallow the use of `process.exit()` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-process-exit.md */ 'node/no-process-exit'?: Linter.RuleEntry<[]>; /** * disallow specified modules when loaded by `import` declarations * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-restricted-import.md */ 'node/no-restricted-import'?: Linter.RuleEntry; /** * disallow specified modules when loaded by `require` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-restricted-require.md */ 'node/no-restricted-require'?: Linter.RuleEntry; /** * disallow synchronous methods * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-sync.md */ 'node/no-sync'?: Linter.RuleEntry; /** * disallow top-level `await` in published modules * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-top-level-await.md */ 'node/no-top-level-await'?: Linter.RuleEntry; /** * disallow `bin` files that npm ignores * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unpublished-bin.md */ 'node/no-unpublished-bin'?: Linter.RuleEntry; /** * disallow `import` declarations which import private modules * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unpublished-import.md */ 'node/no-unpublished-import'?: Linter.RuleEntry; /** * disallow `require()` expressions which import private modules * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unpublished-require.md */ 'node/no-unpublished-require'?: Linter.RuleEntry; /** * disallow unsupported ECMAScript built-ins on the specified version * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unsupported-features/es-builtins.md */ 'node/no-unsupported-features/es-builtins'?: Linter.RuleEntry; /** * disallow unsupported ECMAScript syntax on the specified version * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unsupported-features/es-syntax.md */ 'node/no-unsupported-features/es-syntax'?: Linter.RuleEntry; /** * disallow unsupported Node.js built-in APIs on the specified version * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unsupported-features/node-builtins.md */ 'node/no-unsupported-features/node-builtins'?: Linter.RuleEntry; /** * enforce either `Buffer` or `require("buffer").Buffer` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/buffer.md */ 'node/prefer-global/buffer'?: Linter.RuleEntry; /** * enforce either `console` or `require("console")` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/console.md */ 'node/prefer-global/console'?: Linter.RuleEntry; /** * enforce either `crypto` or `require("crypto").webcrypto` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/crypto.md */ 'node/prefer-global/crypto'?: Linter.RuleEntry; /** * enforce either `process` or `require("process")` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/process.md */ 'node/prefer-global/process'?: Linter.RuleEntry; /** * enforce either `TextDecoder` or `require("util").TextDecoder` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/text-decoder.md */ 'node/prefer-global/text-decoder'?: Linter.RuleEntry; /** * enforce either `TextEncoder` or `require("util").TextEncoder` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/text-encoder.md */ 'node/prefer-global/text-encoder'?: Linter.RuleEntry; /** * enforce either global timer functions or `require("timers")` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/timers.md */ 'node/prefer-global/timers'?: Linter.RuleEntry; /** * enforce either `URL` or `require("url").URL` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/url.md */ 'node/prefer-global/url'?: Linter.RuleEntry; /** * enforce either `URLSearchParams` or `require("url").URLSearchParams` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/url-search-params.md */ 'node/prefer-global/url-search-params'?: Linter.RuleEntry; /** * enforce using the `node:` protocol when importing Node.js builtin modules. * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-node-protocol.md */ 'node/prefer-node-protocol'?: Linter.RuleEntry; /** * enforce `require("dns").promises` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-promises/dns.md */ 'node/prefer-promises/dns'?: Linter.RuleEntry<[]>; /** * enforce `require("fs").promises` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-promises/fs.md */ 'node/prefer-promises/fs'?: Linter.RuleEntry<[]>; /** * require that `process.exit()` expressions use the same code path as `throw` * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/process-exit-as-throw.md */ 'node/process-exit-as-throw'?: Linter.RuleEntry<[]>; /** * require correct usage of hashbang * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/hashbang.md * @deprecated */ 'node/shebang'?: 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 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; /** * 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; 'react-refresh/only-export-components'?: Linter.RuleEntry; /** * Disallows DOM elements from using 'dangerouslySetInnerHTML'. * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml */ 'react/dom-no-dangerously-set-innerhtml'?: Linter.RuleEntry<[]>; /** * Disallows DOM elements from using 'dangerouslySetInnerHTML' and 'children' at the same time. * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml-with-children */ 'react/dom-no-dangerously-set-innerhtml-with-children'?: Linter.RuleEntry<[]>; /** * Disallows 'findDOMNode'. * @see https://eslint-react.xyz/docs/rules/dom-no-find-dom-node */ 'react/dom-no-find-dom-node'?: Linter.RuleEntry<[]>; /** * Disallows 'flushSync'. * @see https://eslint-react.xyz/docs/rules/dom-no-flush-sync */ 'react/dom-no-flush-sync'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'ReactDOM.hydrate()' with 'hydrateRoot()'. * @see https://eslint-react.xyz/docs/rules/dom-no-hydrate */ 'react/dom-no-hydrate'?: Linter.RuleEntry<[]>; /** * Enforces an explicit 'type' attribute for 'button' elements. * @see https://eslint-react.xyz/docs/rules/dom-no-missing-button-type */ 'react/dom-no-missing-button-type'?: Linter.RuleEntry<[]>; /** * Enforces an explicit 'sandbox' attribute for 'iframe' elements. * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox */ 'react/dom-no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'ReactDOM.render()' with 'createRoot(node).render()'. * @see https://eslint-react.xyz/docs/rules/dom-no-render */ 'react/dom-no-render'?: Linter.RuleEntry<[]>; /** * Disallows the return value of 'ReactDOM.render'. * @see https://eslint-react.xyz/docs/rules/dom-no-render-return-value */ 'react/dom-no-render-return-value'?: Linter.RuleEntry<[]>; /** * Disallows 'javascript:' URLs as attribute values. * @see https://eslint-react.xyz/docs/rules/dom-no-script-url */ 'react/dom-no-script-url'?: Linter.RuleEntry<[]>; /** * Disallows the use of string style prop in JSX. Use an object instead. * @see https://eslint-react.xyz/docs/rules/dom-no-string-style-prop */ 'react/dom-no-string-style-prop'?: Linter.RuleEntry<[]>; /** * Disallows unknown 'DOM' properties. * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property */ 'react/dom-no-unknown-property'?: Linter.RuleEntry; /** * Enforces that the 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations. * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox */ 'react/dom-no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>; /** * Disallows 'target="_blank"' without 'rel="noreferrer noopener"'. * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-target-blank */ 'react/dom-no-unsafe-target-blank'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'useFormState' with 'useActionState'. * @see https://eslint-react.xyz/docs/rules/dom-no-use-form-state */ 'react/dom-no-use-form-state'?: Linter.RuleEntry<[]>; /** * Disallows 'children' in void DOM elements. * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children */ 'react/dom-no-void-elements-with-children'?: Linter.RuleEntry<[]>; /** * Validates usage of Error Boundaries instead of try/catch for errors in child components. * @see https://eslint-react.xyz/docs/rules/error-boundaries */ 'react/error-boundaries'?: Linter.RuleEntry<[]>; /** * Verifies the list of dependencies for Hooks like 'useEffect' and similar. * @see https://github.com/facebook/react/issues/14920 */ 'react/exhaustive-deps'?: Linter.RuleEntry; /** * Validates against assignment/mutation of globals during render, part of ensuring that side effects must run outside of render. * @see https://eslint-react.xyz/docs/rules/globals */ 'react/globals'?: Linter.RuleEntry<[]>; /** * Validates against mutating props, state, and other values that are immutable. * @see https://eslint-react.xyz/docs/rules/immutability */ 'react/immutability'?: Linter.RuleEntry<[]>; /** * Disallows passing 'children' as a prop. * @see https://eslint-react.xyz/docs/rules/no-children-prop */ 'react/jsx-no-children-prop'?: Linter.RuleEntry<[]>; /** * Disallows passing 'children' as a prop when children are also passed as nested content. * @see https://eslint-react.xyz/docs/rules/no-children-prop-with-children */ 'react/jsx-no-children-prop-with-children'?: Linter.RuleEntry<[]>; /** * Prevents comment strings from being accidentally inserted into a JSX element's text nodes. * @see https://eslint-react.xyz/docs/rules/no-comment-textnodes */ 'react/jsx-no-comment-textnodes'?: Linter.RuleEntry<[]>; /** * Prevent patterns that cause deoptimization when using the automatic JSX runtime. * @see https://eslint-react.xyz/docs/rules/no-key-after-spread */ 'react/jsx-no-key-after-spread'?: Linter.RuleEntry<[]>; /** * Catches `$` before `{expr}` in JSX — typically from template literal `${expr}` being copy-pasted into JSX without removing the `$`. The `$` "leaks" into the rendered output. * @see https://eslint-react.xyz/docs/rules/no-leaked-dollar */ 'react/jsx-no-leaked-dollar'?: Linter.RuleEntry<[]>; /** * Catches `;` at the start of JSX text nodes — typically from accidentally placing a statement-ending `;` inside JSX. The `;` "leaks" into the rendered output. * @see https://eslint-react.xyz/docs/rules/no-leaked-semicolon */ 'react/jsx-no-leaked-semicolon'?: Linter.RuleEntry<[]>; /** * Disallow JSX namespace syntax, as React does not support them. * @see https://eslint-react.xyz/docs/rules/no-namespace */ 'react/jsx-no-namespace'?: Linter.RuleEntry<[]>; /** * Disallows useless fragment elements. * @see https://eslint-react.xyz/docs/rules/no-useless-fragment */ 'react/jsx-no-useless-fragment'?: Linter.RuleEntry; /** * Enforces the context name to be a valid component name with the suffix 'Context'. * @see https://eslint-react.xyz/docs/rules/naming-convention-context-name */ 'react/naming-convention-context-name'?: Linter.RuleEntry<[]>; /** * Enforces identifier names assigned from 'useId' calls to be either 'id' or end with 'Id'. * @see https://eslint-react.xyz/docs/rules/naming-convention-id-name */ 'react/naming-convention-id-name'?: Linter.RuleEntry<[]>; /** * Enforces identifier names assigned from 'useRef' calls to be either 'ref' or end with 'Ref'. * @see https://eslint-react.xyz/docs/rules/naming-convention-ref-name */ 'react/naming-convention-ref-name'?: Linter.RuleEntry<[]>; /** * Disallows accessing 'this.state' inside 'setState' calls. * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate */ 'react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>; /** * Disallows using an item's index in the array as its key. * @see https://eslint-react.xyz/docs/rules/no-array-index-key */ 'react/no-array-index-key'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.count' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-count */ 'react/no-children-count'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.forEach' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-for-each */ 'react/no-children-for-each'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.map' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-map */ 'react/no-children-map'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.only' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-only */ 'react/no-children-only'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.toArray' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-to-array */ 'react/no-children-to-array'?: Linter.RuleEntry<[]>; /** * Disallows class components except for error boundaries. * @see https://eslint-react.xyz/docs/rules/no-class-component */ 'react/no-class-component'?: Linter.RuleEntry<[]>; /** * Disallows 'cloneElement'. * @see https://eslint-react.xyz/docs/rules/no-clone-element */ 'react/no-clone-element'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'componentWillMount' with 'UNSAFE_componentWillMount'. * @see https://eslint-react.xyz/docs/rules/no-component-will-mount */ 'react/no-component-will-mount'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'componentWillReceiveProps' with 'UNSAFE_componentWillReceiveProps'. * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props */ 'react/no-component-will-receive-props'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'componentWillUpdate' with 'UNSAFE_componentWillUpdate'. * @see https://eslint-react.xyz/docs/rules/no-component-will-update */ 'react/no-component-will-update'?: Linter.RuleEntry<[]>; /** * Replaces usage of '' with ''. * @see https://eslint-react.xyz/docs/rules/no-context-provider */ 'react/no-context-provider'?: Linter.RuleEntry<[]>; /** * Disallows 'createRef' in function components. * @see https://eslint-react.xyz/docs/rules/no-create-ref */ 'react/no-create-ref'?: Linter.RuleEntry<[]>; /** * Disallows direct mutation of 'this.state'. * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state */ 'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>; /** * Prevents duplicate 'key' props on sibling elements when rendering lists. * @see https://eslint-react.xyz/docs/rules/no-duplicate-key */ 'react/no-duplicate-key'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'forwardRef' with passing 'ref' as a prop. * @see https://eslint-react.xyz/docs/rules/no-forward-ref */ 'react/no-forward-ref'?: Linter.RuleEntry<[]>; /** * Prevents implicitly passing the 'children' prop to components. * @see https://eslint-react.xyz/docs/rules/no-implicit-children */ 'react/no-implicit-children'?: Linter.RuleEntry<[]>; /** * Prevents implicitly passing the 'key' prop to components. * @see https://eslint-react.xyz/docs/rules/no-implicit-key */ 'react/no-implicit-key'?: Linter.RuleEntry<[]>; /** * Prevents implicitly passing the 'ref' prop to components. * @see https://eslint-react.xyz/docs/rules/no-implicit-ref */ 'react/no-implicit-ref'?: Linter.RuleEntry<[]>; /** * Prevents problematic leaked values from being rendered. * @see https://eslint-react.xyz/docs/rules/no-leaked-conditional-rendering */ 'react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>; /** * Enforces that all components have a 'displayName' that can be used in DevTools. * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name */ 'react/no-missing-component-display-name'?: Linter.RuleEntry<[]>; /** * Enforces that all contexts have a 'displayName' that can be used in DevTools. * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name */ 'react/no-missing-context-display-name'?: Linter.RuleEntry<[]>; /** * Disallows missing 'key' on items in list rendering. * @see https://eslint-react.xyz/docs/rules/no-missing-key */ 'react/no-missing-key'?: Linter.RuleEntry<[]>; /** * Prevents incorrect usage of 'captureOwnerStack'. * @see https://eslint-react.xyz/docs/rules/no-misused-capture-owner-stack */ 'react/no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>; /** * Disallows nesting component definitions inside other components. * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions */ 'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>; /** * Disallows nesting lazy component declarations inside other components or hooks. * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations */ 'react/no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>; /** * Disallows calling 'this.setState' in 'componentDidMount' outside functions such as callbacks. * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount */ 'react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>; /** * Disallows calling 'this.setState' in 'componentDidUpdate' outside functions such as callbacks. * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update */ 'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>; /** * Disallows calling 'this.setState' in 'componentWillUpdate' outside functions such as callbacks. * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update */ 'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>; /** * Enforces that a function with the 'use' prefix uses at least one Hook inside it. * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix */ 'react/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>; /** * Warns about the use of 'UNSAFE_componentWillMount' in class components. * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount */ 'react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>; /** * Warns about the use of 'UNSAFE_componentWillReceiveProps' in class components. * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props */ 'react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>; /** * Warns about the use of 'UNSAFE_componentWillUpdate' in class components. * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update */ 'react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>; /** * Prevents non-stable values (i.e., object literals) from being used as a value for 'Context.Provider'. * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value */ 'react/no-unstable-context-value'?: Linter.RuleEntry<[]>; /** * Prevents using referential-type values as default props in object destructuring. * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props */ 'react/no-unstable-default-props'?: Linter.RuleEntry; /** * Warns about unused class component methods and properties. * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members */ 'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>; /** * Warns about component props that are defined but never used. * @see https://eslint-react.xyz/docs/rules/no-unused-props */ 'react/no-unused-props'?: Linter.RuleEntry<[]>; /** * Warns about state variables that are defined but never used, or only used in effects. * @see https://eslint-react.xyz/docs/rules/no-unused-state */ 'react/no-unused-state'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'useContext' with 'use'. * @see https://eslint-react.xyz/docs/rules/no-use-context */ 'react/no-use-context'?: Linter.RuleEntry<[]>; /** * Validates that components and hooks are pure by checking that they do not call known-impure functions during render. * @see https://eslint-react.xyz/docs/rules/purity */ 'react/purity'?: Linter.RuleEntry<[]>; /** * Validates correct usage of refs by checking that 'ref.current' is not read or written during render. * @see https://eslint-react.xyz/docs/rules/refs */ 'react/refs'?: Linter.RuleEntry<[]>; /** * Validates and transforms React Client/Server Function definitions. * @see https://eslint-react.xyz/docs/rules/function-definition */ 'react/rsc-function-definition'?: Linter.RuleEntry<[]>; /** * Enforces the Rules of Hooks. * @see https://react.dev/reference/rules/rules-of-hooks */ 'react/rules-of-hooks'?: Linter.RuleEntry; /** * Validates against setting state synchronously in an effect, which can lead to re-renders that degrade performance. * @see https://eslint-react.xyz/docs/rules/set-state-in-effect */ 'react/set-state-in-effect'?: Linter.RuleEntry<[]>; /** * Validates against unconditionally setting state during render, which can trigger additional renders and potential infinite render loops. * @see https://eslint-react.xyz/docs/rules/set-state-in-render */ 'react/set-state-in-render'?: Linter.RuleEntry<[]>; /** * Validates that components are static, not recreated every render. * @see https://eslint-react.xyz/docs/rules/static-components */ 'react/static-components'?: Linter.RuleEntry<[]>; /** * Validates against syntax that React Compiler does not support. * @see https://eslint-react.xyz/docs/rules/unsupported-syntax */ 'react/unsupported-syntax'?: Linter.RuleEntry<[]>; /** * Validates that 'useMemo' is called with a callback that returns a value. * @see https://eslint-react.xyz/docs/rules/use-memo */ 'react/use-memo'?: Linter.RuleEntry<[]>; /** * Enforces correct usage of 'useState', including destructuring, symmetric naming of the value and setter, and wrapping expensive initializers in a lazy initializer function. * @see https://eslint-react.xyz/docs/rules/use-state */ 'react/use-state'?: Linter.RuleEntry; /** * Enforces that every 'addEventListener' in a component or custom hook has a corresponding 'removeEventListener'. * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-event-listener */ 'react/web-api-no-leaked-event-listener'?: Linter.RuleEntry<[]>; /** * Enforces that every 'fetch' in a component or custom hook has a corresponding 'AbortController' abort in the cleanup function. * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-fetch */ 'react/web-api-no-leaked-fetch'?: Linter.RuleEntry<[]>; /** * Enforces that every 'setInterval' in a component or custom hook has a corresponding 'clearInterval'. * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-interval */ 'react/web-api-no-leaked-interval'?: Linter.RuleEntry<[]>; /** * Enforces that every 'ResizeObserver' created in a component or custom hook has a corresponding 'ResizeObserver.disconnect()'. * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-resize-observer */ 'react/web-api-no-leaked-resize-observer'?: Linter.RuleEntry<[]>; /** * Enforces that every 'setTimeout' in a component or custom hook has a corresponding 'clearTimeout'. * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-timeout */ 'react/web-api-no-leaked-timeout'?: Linter.RuleEntry<[]>; /** * Validates usage of Error Boundaries instead of try/catch for errors in child components. * @see https://eslint-react.xyz/docs/rules/error-boundaries */ 'react/x-error-boundaries'?: Linter.RuleEntry<[]>; /** * Verifies the list of dependencies for Hooks like 'useEffect' and similar. * @see https://github.com/facebook/react/issues/14920 */ 'react/x-exhaustive-deps'?: Linter.RuleEntry; /** * Validates against assignment/mutation of globals during render, part of ensuring that side effects must run outside of render. * @see https://eslint-react.xyz/docs/rules/globals */ 'react/x-globals'?: Linter.RuleEntry<[]>; /** * Validates against mutating props, state, and other values that are immutable. * @see https://eslint-react.xyz/docs/rules/immutability */ 'react/x-immutability'?: Linter.RuleEntry<[]>; /** * Disallows accessing 'this.state' inside 'setState' calls. * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate */ 'react/x-no-access-state-in-setstate'?: Linter.RuleEntry<[]>; /** * Disallows using an item's index in the array as its key. * @see https://eslint-react.xyz/docs/rules/no-array-index-key */ 'react/x-no-array-index-key'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.count' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-count */ 'react/x-no-children-count'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.forEach' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-for-each */ 'react/x-no-children-for-each'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.map' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-map */ 'react/x-no-children-map'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.only' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-only */ 'react/x-no-children-only'?: Linter.RuleEntry<[]>; /** * Disallows the use of 'Children.toArray' from the 'react' package. * @see https://eslint-react.xyz/docs/rules/no-children-to-array */ 'react/x-no-children-to-array'?: Linter.RuleEntry<[]>; /** * Disallows class components except for error boundaries. * @see https://eslint-react.xyz/docs/rules/no-class-component */ 'react/x-no-class-component'?: Linter.RuleEntry<[]>; /** * Disallows 'cloneElement'. * @see https://eslint-react.xyz/docs/rules/no-clone-element */ 'react/x-no-clone-element'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'componentWillMount' with 'UNSAFE_componentWillMount'. * @see https://eslint-react.xyz/docs/rules/no-component-will-mount */ 'react/x-no-component-will-mount'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'componentWillReceiveProps' with 'UNSAFE_componentWillReceiveProps'. * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props */ 'react/x-no-component-will-receive-props'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'componentWillUpdate' with 'UNSAFE_componentWillUpdate'. * @see https://eslint-react.xyz/docs/rules/no-component-will-update */ 'react/x-no-component-will-update'?: Linter.RuleEntry<[]>; /** * Replaces usage of '' with ''. * @see https://eslint-react.xyz/docs/rules/no-context-provider */ 'react/x-no-context-provider'?: Linter.RuleEntry<[]>; /** * Disallows 'createRef' in function components. * @see https://eslint-react.xyz/docs/rules/no-create-ref */ 'react/x-no-create-ref'?: Linter.RuleEntry<[]>; /** * Disallows direct mutation of 'this.state'. * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state */ 'react/x-no-direct-mutation-state'?: Linter.RuleEntry<[]>; /** * Prevents duplicate 'key' props on sibling elements when rendering lists. * @see https://eslint-react.xyz/docs/rules/no-duplicate-key */ 'react/x-no-duplicate-key'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'forwardRef' with passing 'ref' as a prop. * @see https://eslint-react.xyz/docs/rules/no-forward-ref */ 'react/x-no-forward-ref'?: Linter.RuleEntry<[]>; /** * Prevents implicitly passing the 'children' prop to components. * @see https://eslint-react.xyz/docs/rules/no-implicit-children */ 'react/x-no-implicit-children'?: Linter.RuleEntry<[]>; /** * Prevents implicitly passing the 'key' prop to components. * @see https://eslint-react.xyz/docs/rules/no-implicit-key */ 'react/x-no-implicit-key'?: Linter.RuleEntry<[]>; /** * Prevents implicitly passing the 'ref' prop to components. * @see https://eslint-react.xyz/docs/rules/no-implicit-ref */ 'react/x-no-implicit-ref'?: Linter.RuleEntry<[]>; /** * Prevents problematic leaked values from being rendered. * @see https://eslint-react.xyz/docs/rules/no-leaked-conditional-rendering */ 'react/x-no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>; /** * Enforces that all components have a 'displayName' that can be used in DevTools. * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name */ 'react/x-no-missing-component-display-name'?: Linter.RuleEntry<[]>; /** * Enforces that all contexts have a 'displayName' that can be used in DevTools. * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name */ 'react/x-no-missing-context-display-name'?: Linter.RuleEntry<[]>; /** * Disallows missing 'key' on items in list rendering. * @see https://eslint-react.xyz/docs/rules/no-missing-key */ 'react/x-no-missing-key'?: Linter.RuleEntry<[]>; /** * Prevents incorrect usage of 'captureOwnerStack'. * @see https://eslint-react.xyz/docs/rules/no-misused-capture-owner-stack */ 'react/x-no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>; /** * Disallows nesting component definitions inside other components. * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions */ 'react/x-no-nested-component-definitions'?: Linter.RuleEntry<[]>; /** * Disallows nesting lazy component declarations inside other components or hooks. * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations */ 'react/x-no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>; /** * Disallows calling 'this.setState' in 'componentDidMount' outside functions such as callbacks. * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount */ 'react/x-no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>; /** * Disallows calling 'this.setState' in 'componentDidUpdate' outside functions such as callbacks. * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update */ 'react/x-no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>; /** * Disallows calling 'this.setState' in 'componentWillUpdate' outside functions such as callbacks. * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update */ 'react/x-no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>; /** * Enforces that a function with the 'use' prefix uses at least one Hook inside it. * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix */ 'react/x-no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>; /** * Warns about the use of 'UNSAFE_componentWillMount' in class components. * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount */ 'react/x-no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>; /** * Warns about the use of 'UNSAFE_componentWillReceiveProps' in class components. * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props */ 'react/x-no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>; /** * Warns about the use of 'UNSAFE_componentWillUpdate' in class components. * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update */ 'react/x-no-unsafe-component-will-update'?: Linter.RuleEntry<[]>; /** * Prevents non-stable values (i.e., object literals) from being used as a value for 'Context.Provider'. * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value */ 'react/x-no-unstable-context-value'?: Linter.RuleEntry<[]>; /** * Prevents using referential-type values as default props in object destructuring. * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props */ 'react/x-no-unstable-default-props'?: Linter.RuleEntry; /** * Warns about unused class component methods and properties. * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members */ 'react/x-no-unused-class-component-members'?: Linter.RuleEntry<[]>; /** * Warns about component props that are defined but never used. * @see https://eslint-react.xyz/docs/rules/no-unused-props */ 'react/x-no-unused-props'?: Linter.RuleEntry<[]>; /** * Warns about state variables that are defined but never used, or only used in effects. * @see https://eslint-react.xyz/docs/rules/no-unused-state */ 'react/x-no-unused-state'?: Linter.RuleEntry<[]>; /** * Replaces usage of 'useContext' with 'use'. * @see https://eslint-react.xyz/docs/rules/no-use-context */ 'react/x-no-use-context'?: Linter.RuleEntry<[]>; /** * Validates that components and hooks are pure by checking that they do not call known-impure functions during render. * @see https://eslint-react.xyz/docs/rules/purity */ 'react/x-purity'?: Linter.RuleEntry<[]>; /** * Validates correct usage of refs by checking that 'ref.current' is not read or written during render. * @see https://eslint-react.xyz/docs/rules/refs */ 'react/x-refs'?: Linter.RuleEntry<[]>; /** * Enforces the Rules of Hooks. * @see https://react.dev/reference/rules/rules-of-hooks */ 'react/x-rules-of-hooks'?: Linter.RuleEntry; /** * Validates against setting state synchronously in an effect, which can lead to re-renders that degrade performance. * @see https://eslint-react.xyz/docs/rules/set-state-in-effect */ 'react/x-set-state-in-effect'?: Linter.RuleEntry<[]>; /** * Validates against unconditionally setting state during render, which can trigger additional renders and potential infinite render loops. * @see https://eslint-react.xyz/docs/rules/set-state-in-render */ 'react/x-set-state-in-render'?: Linter.RuleEntry<[]>; /** * Validates that components are static, not recreated every render. * @see https://eslint-react.xyz/docs/rules/static-components */ 'react/x-static-components'?: Linter.RuleEntry<[]>; /** * Validates against syntax that React Compiler does not support. * @see https://eslint-react.xyz/docs/rules/unsupported-syntax */ 'react/x-unsupported-syntax'?: Linter.RuleEntry<[]>; /** * Validates that 'useMemo' is called with a callback that returns a value. * @see https://eslint-react.xyz/docs/rules/use-memo */ 'react/x-use-memo'?: Linter.RuleEntry<[]>; /** * Enforces correct usage of 'useState', including destructuring, symmetric naming of the value and setter, and wrapping expensive initializers in a lazy initializer function. * @see https://eslint-react.xyz/docs/rules/use-state */ 'react/x-use-state'?: Linter.RuleEntry; /** * disallow confusing quantifiers * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/confusing-quantifier.html */ 'regexp/confusing-quantifier'?: Linter.RuleEntry<[]>; /** * enforce consistent escaping of control characters * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/control-character-escape.html */ 'regexp/control-character-escape'?: Linter.RuleEntry<[]>; /** * enforce single grapheme in string literal * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/grapheme-string-literal.html */ 'regexp/grapheme-string-literal'?: Linter.RuleEntry<[]>; /** * enforce consistent usage of hexadecimal escape * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/hexadecimal-escape.html */ 'regexp/hexadecimal-escape'?: Linter.RuleEntry; /** * enforce into your favorite case * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/letter-case.html */ 'regexp/letter-case'?: Linter.RuleEntry; /** * enforce match any character style * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/match-any.html */ 'regexp/match-any'?: Linter.RuleEntry; /** * enforce use of escapes on negation * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/negation.html */ 'regexp/negation'?: Linter.RuleEntry<[]>; /** * disallow elements that contradict assertions * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-contradiction-with-assertion.html */ 'regexp/no-contradiction-with-assertion'?: Linter.RuleEntry<[]>; /** * disallow control characters * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-control-character.html */ 'regexp/no-control-character'?: Linter.RuleEntry<[]>; /** * disallow duplicate characters in the RegExp character class * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-dupe-characters-character-class.html */ 'regexp/no-dupe-characters-character-class'?: Linter.RuleEntry<[]>; /** * disallow duplicate disjunctions * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-dupe-disjunctions.html */ 'regexp/no-dupe-disjunctions'?: Linter.RuleEntry; /** * disallow alternatives without elements * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-empty-alternative.html */ 'regexp/no-empty-alternative'?: Linter.RuleEntry<[]>; /** * disallow capturing group that captures empty. * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-empty-capturing-group.html */ 'regexp/no-empty-capturing-group'?: Linter.RuleEntry<[]>; /** * disallow character classes that match no characters * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-empty-character-class.html */ 'regexp/no-empty-character-class'?: Linter.RuleEntry<[]>; /** * disallow empty group * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-empty-group.html */ 'regexp/no-empty-group'?: Linter.RuleEntry<[]>; /** * disallow empty lookahead assertion or empty lookbehind assertion * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-empty-lookarounds-assertion.html */ 'regexp/no-empty-lookarounds-assertion'?: Linter.RuleEntry<[]>; /** * disallow empty string literals in character classes * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-empty-string-literal.html */ 'regexp/no-empty-string-literal'?: Linter.RuleEntry<[]>; /** * disallow escape backspace (`[\b]`) * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-escape-backspace.html */ 'regexp/no-escape-backspace'?: Linter.RuleEntry<[]>; /** * disallow unnecessary nested lookaround assertions * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-extra-lookaround-assertions.html */ 'regexp/no-extra-lookaround-assertions'?: Linter.RuleEntry<[]>; /** * disallow invalid regular expression strings in `RegExp` constructors * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-invalid-regexp.html */ 'regexp/no-invalid-regexp'?: Linter.RuleEntry<[]>; /** * disallow invisible raw character * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-invisible-character.html */ 'regexp/no-invisible-character'?: Linter.RuleEntry<[]>; /** * disallow lazy quantifiers at the end of an expression * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-lazy-ends.html */ 'regexp/no-lazy-ends'?: Linter.RuleEntry; /** * disallow legacy RegExp features * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-legacy-features.html */ 'regexp/no-legacy-features'?: Linter.RuleEntry; /** * disallow capturing groups that do not behave as one would expect * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-misleading-capturing-group.html */ 'regexp/no-misleading-capturing-group'?: Linter.RuleEntry; /** * disallow multi-code-point characters in character classes and quantifiers * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-misleading-unicode-character.html */ 'regexp/no-misleading-unicode-character'?: Linter.RuleEntry; /** * disallow missing `g` flag in patterns used in `String#matchAll` and `String#replaceAll` * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-missing-g-flag.html */ 'regexp/no-missing-g-flag'?: Linter.RuleEntry; /** * disallow non-standard flags * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-non-standard-flag.html */ 'regexp/no-non-standard-flag'?: Linter.RuleEntry<[]>; /** * disallow obscure character ranges * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-obscure-range.html */ 'regexp/no-obscure-range'?: Linter.RuleEntry; /** * disallow octal escape sequence * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-octal.html */ 'regexp/no-octal'?: Linter.RuleEntry<[]>; /** * disallow optional assertions * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-optional-assertion.html */ 'regexp/no-optional-assertion'?: Linter.RuleEntry<[]>; /** * disallow backreferences that reference a group that might not be matched * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-potentially-useless-backreference.html */ 'regexp/no-potentially-useless-backreference'?: Linter.RuleEntry<[]>; /** * disallow standalone backslashes (`\`) * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-standalone-backslash.html */ 'regexp/no-standalone-backslash'?: Linter.RuleEntry<[]>; /** * disallow exponential and polynomial backtracking * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-super-linear-backtracking.html */ 'regexp/no-super-linear-backtracking'?: Linter.RuleEntry; /** * disallow quantifiers that cause quadratic moves * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-super-linear-move.html */ 'regexp/no-super-linear-move'?: Linter.RuleEntry; /** * disallow trivially nested assertions * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-trivially-nested-assertion.html */ 'regexp/no-trivially-nested-assertion'?: Linter.RuleEntry<[]>; /** * disallow nested quantifiers that can be rewritten as one quantifier * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-trivially-nested-quantifier.html */ 'regexp/no-trivially-nested-quantifier'?: Linter.RuleEntry<[]>; /** * disallow unused capturing group * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-unused-capturing-group.html */ 'regexp/no-unused-capturing-group'?: Linter.RuleEntry; /** * disallow assertions that are known to always accept (or reject) * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-assertions.html */ 'regexp/no-useless-assertions'?: Linter.RuleEntry<[]>; /** * disallow useless backreferences in regular expressions * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-backreference.html */ 'regexp/no-useless-backreference'?: Linter.RuleEntry<[]>; /** * disallow character class with one character * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-character-class.html */ 'regexp/no-useless-character-class'?: Linter.RuleEntry; /** * disallow useless `$` replacements in replacement string * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-dollar-replacements.html */ 'regexp/no-useless-dollar-replacements'?: Linter.RuleEntry<[]>; /** * disallow unnecessary escape characters in RegExp * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-escape.html */ 'regexp/no-useless-escape'?: Linter.RuleEntry<[]>; /** * disallow unnecessary regex flags * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-flag.html */ 'regexp/no-useless-flag'?: Linter.RuleEntry; /** * disallow unnecessarily non-greedy quantifiers * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-lazy.html */ 'regexp/no-useless-lazy'?: Linter.RuleEntry<[]>; /** * disallow unnecessary non-capturing group * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-non-capturing-group.html */ 'regexp/no-useless-non-capturing-group'?: Linter.RuleEntry; /** * disallow quantifiers that can be removed * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-quantifier.html */ 'regexp/no-useless-quantifier'?: Linter.RuleEntry<[]>; /** * disallow unnecessary character ranges * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-range.html */ 'regexp/no-useless-range'?: Linter.RuleEntry<[]>; /** * disallow unnecessary elements in expression character classes * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-set-operand.html */ 'regexp/no-useless-set-operand'?: Linter.RuleEntry<[]>; /** * disallow string disjunction of single characters in `\q{...}` * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-string-literal.html */ 'regexp/no-useless-string-literal'?: Linter.RuleEntry<[]>; /** * disallow unnecessary `{n,m}` quantifier * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-useless-two-nums-quantifier.html */ 'regexp/no-useless-two-nums-quantifier'?: Linter.RuleEntry<[]>; /** * disallow quantifiers with a maximum of zero * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/no-zero-quantifier.html */ 'regexp/no-zero-quantifier'?: Linter.RuleEntry<[]>; /** * disallow the alternatives of lookarounds that end with a non-constant quantifier * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/optimal-lookaround-quantifier.html */ 'regexp/optimal-lookaround-quantifier'?: Linter.RuleEntry<[]>; /** * require optimal quantifiers for concatenated quantifiers * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/optimal-quantifier-concatenation.html */ 'regexp/optimal-quantifier-concatenation'?: Linter.RuleEntry; /** * enforce using character class * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-character-class.html */ 'regexp/prefer-character-class'?: Linter.RuleEntry; /** * enforce using `\d` * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-d.html */ 'regexp/prefer-d'?: Linter.RuleEntry; /** * enforces escape of replacement `$` character (`$$`). * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-escape-replacement-dollar-char.html */ 'regexp/prefer-escape-replacement-dollar-char'?: Linter.RuleEntry<[]>; /** * prefer lookarounds over capturing group that do not replace * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-lookaround.html */ 'regexp/prefer-lookaround'?: Linter.RuleEntry; /** * enforce using named backreferences * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-named-backreference.html */ 'regexp/prefer-named-backreference'?: Linter.RuleEntry<[]>; /** * enforce using named capture groups * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-named-capture-group.html */ 'regexp/prefer-named-capture-group'?: Linter.RuleEntry<[]>; /** * enforce using named replacement * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-named-replacement.html */ 'regexp/prefer-named-replacement'?: Linter.RuleEntry; /** * enforce using `+` quantifier * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-plus-quantifier.html */ 'regexp/prefer-plus-quantifier'?: Linter.RuleEntry<[]>; /** * prefer predefined assertion over equivalent lookarounds * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-predefined-assertion.html */ 'regexp/prefer-predefined-assertion'?: Linter.RuleEntry<[]>; /** * enforce using quantifier * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-quantifier.html */ 'regexp/prefer-quantifier'?: Linter.RuleEntry; /** * enforce using `?` quantifier * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-question-quantifier.html */ 'regexp/prefer-question-quantifier'?: Linter.RuleEntry<[]>; /** * enforce using character class range * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-range.html */ 'regexp/prefer-range'?: Linter.RuleEntry; /** * enforce that `RegExp#exec` is used instead of `String#match` if no global flag is provided * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-regexp-exec.html */ 'regexp/prefer-regexp-exec'?: Linter.RuleEntry<[]>; /** * enforce that `RegExp#test` is used instead of `String#match` and `RegExp#exec` * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-regexp-test.html */ 'regexp/prefer-regexp-test'?: Linter.RuleEntry<[]>; /** * enforce using result array `groups` * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-result-array-groups.html */ 'regexp/prefer-result-array-groups'?: Linter.RuleEntry; /** * prefer character class set operations instead of lookarounds * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-set-operation.html */ 'regexp/prefer-set-operation'?: Linter.RuleEntry<[]>; /** * enforce using `*` quantifier * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-star-quantifier.html */ 'regexp/prefer-star-quantifier'?: Linter.RuleEntry<[]>; /** * enforce use of unicode codepoint escapes * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-unicode-codepoint-escapes.html */ 'regexp/prefer-unicode-codepoint-escapes'?: Linter.RuleEntry<[]>; /** * enforce using `\w` * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-w.html */ 'regexp/prefer-w'?: Linter.RuleEntry<[]>; /** * enforce the use of the `u` flag * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/require-unicode-regexp.html */ 'regexp/require-unicode-regexp'?: Linter.RuleEntry<[]>; /** * enforce the use of the `v` flag * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/require-unicode-sets-regexp.html */ 'regexp/require-unicode-sets-regexp'?: Linter.RuleEntry<[]>; /** * require simplify set operations * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/simplify-set-operations.html */ 'regexp/simplify-set-operations'?: Linter.RuleEntry<[]>; /** * sort alternatives if order doesn't matter * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/sort-alternatives.html */ 'regexp/sort-alternatives'?: Linter.RuleEntry<[]>; /** * enforces elements order in character class * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/sort-character-class-elements.html */ 'regexp/sort-character-class-elements'?: Linter.RuleEntry; /** * require regex flags to be sorted * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/sort-flags.html */ 'regexp/sort-flags'?: Linter.RuleEntry<[]>; /** * disallow not strictly valid regular expressions * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/strict.html */ 'regexp/strict'?: Linter.RuleEntry<[]>; /** * enforce consistent usage of unicode escape or unicode codepoint escape * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/unicode-escape.html */ 'regexp/unicode-escape'?: Linter.RuleEntry; /** * enforce consistent naming of unicode properties * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/unicode-property.html */ 'regexp/unicode-property'?: Linter.RuleEntry; /** * use the `i` flag if it simplifies the pattern * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/use-ignore-case.html */ 'regexp/use-ignore-case'?: 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<[]>; /** * Enforce canonical class names. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/enforce-canonical-classes.md */ 'tailwindcss/enforce-canonical-classes'?: Linter.RuleEntry; /** * Enforce a consistent order for tailwind classes. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/enforce-consistent-class-order.md */ 'tailwindcss/enforce-consistent-class-order'?: Linter.RuleEntry; /** * Enforce consistent important position for classes. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/enforce-consistent-important-position.md */ 'tailwindcss/enforce-consistent-important-position'?: Linter.RuleEntry; /** * Enforce consistent line wrapping for tailwind classes. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/enforce-consistent-line-wrapping.md */ 'tailwindcss/enforce-consistent-line-wrapping'?: Linter.RuleEntry; /** * Enforce consistent syntax for css variables. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/enforce-consistent-variable-syntax.md */ 'tailwindcss/enforce-consistent-variable-syntax'?: Linter.RuleEntry; /** * Enforce shorthand class names instead of longhand class names. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/enforce-shorthand-classes.md */ 'tailwindcss/enforce-shorthand-classes'?: Linter.RuleEntry; /** * Disallow classes that produce conflicting styles. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/no-conflicting-classes.md */ 'tailwindcss/no-conflicting-classes'?: Linter.RuleEntry; /** * Disallow the use of deprecated Tailwind CSS classes. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/no-deprecated-classes.md */ 'tailwindcss/no-deprecated-classes'?: Linter.RuleEntry; /** * Disallow duplicate class names in tailwind classes. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/no-duplicate-classes.md */ 'tailwindcss/no-duplicate-classes'?: Linter.RuleEntry; /** * Disallow restricted classes. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/no-restricted-classes.md */ 'tailwindcss/no-restricted-classes'?: Linter.RuleEntry; /** * Disallow any css classes that are not registered in tailwindcss. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/no-unknown-classes.md */ 'tailwindcss/no-unknown-classes'?: Linter.RuleEntry; /** * Disallow unnecessary whitespace between Tailwind CSS classes. * @see https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/no-unnecessary-whitespace.md */ 'tailwindcss/no-unnecessary-whitespace'?: 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; /** * enforce using `.each` or `.for` consistently * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-each-for.md */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/no-hooks'?: Linter.RuleEntry; /** * disallow identical titles * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-identical-title.md */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>; /** * Prefer mock return shorthands * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-return-shorthand.md */ 'test/prefer-mock-return-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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/prefer-to-contain'?: Linter.RuleEntry<[]>; /** * Suggest using `toHaveBeenCalledTimes()` * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-been-called-times.md */ 'test/prefer-to-have-been-called-times'?: Linter.RuleEntry<[]>; /** * enforce using toHaveLength() * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/require-hook'?: 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 */ 'test/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 */ 'test/require-mock-type-parameters'?: Linter.RuleEntry; /** * require tests to declare a timeout * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-test-timeout.md */ 'test/require-test-timeout'?: 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 */ 'test/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 */ 'test/require-top-level-describe'?: Linter.RuleEntry; /** * enforce unbound methods are called with their expected scope * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/unbound-method.md */ 'test/unbound-method'?: Linter.RuleEntry; /** * enforce valid describe callback * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-describe-callback.md */ 'test/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 */ 'test/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 */ 'test/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 */ 'test/valid-title'?: Linter.RuleEntry; /** * disallow `.todo` usage * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/warn-todo.md */ 'test/warn-todo'?: Linter.RuleEntry<[]>; /** * enforce linebreaks after opening and before closing array brackets * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/array-bracket-newline.html */ 'toml/array-bracket-newline'?: Linter.RuleEntry; /** * enforce consistent spacing inside array brackets * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/array-bracket-spacing.html */ 'toml/array-bracket-spacing'?: Linter.RuleEntry; /** * enforce line breaks between array elements * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/array-element-newline.html */ 'toml/array-element-newline'?: Linter.RuleEntry; /** * enforce consistent comma style in array * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/comma-style.html */ 'toml/comma-style'?: Linter.RuleEntry; /** * enforce consistent indentation * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/indent.html */ 'toml/indent'?: Linter.RuleEntry; /** * enforce linebreaks after opening and before closing braces * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/inline-table-curly-newline.html */ 'toml/inline-table-curly-newline'?: Linter.RuleEntry; /** * enforce consistent spacing inside braces * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/inline-table-curly-spacing.html */ 'toml/inline-table-curly-spacing'?: Linter.RuleEntry; /** * enforce placing inline table key-value pairs on separate lines * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/inline-table-key-value-newline.html */ 'toml/inline-table-key-value-newline'?: Linter.RuleEntry; /** * enforce consistent spacing between keys and values in key/value pairs * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/key-spacing.html */ 'toml/key-spacing'?: Linter.RuleEntry; /** * disallow defining pair keys out-of-order * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/keys-order.html */ 'toml/keys-order'?: Linter.RuleEntry<[]>; /** * disallow mixed data types in array * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/no-mixed-type-in-array.html */ 'toml/no-mixed-type-in-array'?: Linter.RuleEntry; /** * disallow hexadecimal, octal and binary integer * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/no-non-decimal-integer.html */ 'toml/no-non-decimal-integer'?: Linter.RuleEntry; /** * disallow spacing around infix operators * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/no-space-dots.html */ 'toml/no-space-dots'?: Linter.RuleEntry<[]>; /** * disallow number separators that to not enhance readability. * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/no-unreadable-number-separator.html */ 'toml/no-unreadable-number-separator'?: Linter.RuleEntry<[]>; /** * require or disallow padding lines between pairs * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/padding-line-between-pairs.html */ 'toml/padding-line-between-pairs'?: Linter.RuleEntry<[]>; /** * require or disallow padding lines between tables * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/padding-line-between-tables.html */ 'toml/padding-line-between-tables'?: Linter.RuleEntry<[]>; /** * disallow precision of fractional seconds greater than the specified value. * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/precision-of-fractional-seconds.html */ 'toml/precision-of-fractional-seconds'?: Linter.RuleEntry; /** * disallow precision of integer greater than the specified value. * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/precision-of-integer.html */ 'toml/precision-of-integer'?: Linter.RuleEntry; /** * require or disallow quotes around keys * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/quoted-keys.html */ 'toml/quoted-keys'?: Linter.RuleEntry; /** * require spacing around equals sign * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/space-eq-sign.html * @deprecated */ 'toml/space-eq-sign'?: Linter.RuleEntry<[]>; /** * enforce consistent spacing after the `#` in a comment * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/spaced-comment.html */ 'toml/spaced-comment'?: Linter.RuleEntry; /** * enforce consistent spacing inside table brackets * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/table-bracket-spacing.html */ 'toml/table-bracket-spacing'?: Linter.RuleEntry; /** * disallow defining tables out-of-order * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/tables-order.html */ 'toml/tables-order'?: Linter.RuleEntry<[]>; /** * disallow parsing errors in Vue custom blocks * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/vue-custom-block/no-parsing-error.html */ 'toml/vue-custom-block/no-parsing-error'?: Linter.RuleEntry<[]>; /** * Require that function overload signatures be consecutive * @see https://typescript-eslint.io/rules/adjacent-overload-signatures */ 'ts/adjacent-overload-signatures'?: Linter.RuleEntry<[]>; /** * Require consistently using either `T[]` or `Array` for arrays * @see https://typescript-eslint.io/rules/array-type */ 'ts/array-type'?: Linter.RuleEntry; /** * Disallow awaiting a value that is not a Thenable * @see https://typescript-eslint.io/rules/await-thenable */ 'ts/await-thenable'?: Linter.RuleEntry<[]>; /** * Disallow `@ts-` comments or require descriptions after directives * @see https://typescript-eslint.io/rules/ban-ts-comment */ 'ts/ban-ts-comment'?: Linter.RuleEntry; /** * Disallow `// tslint:` comments * @see https://typescript-eslint.io/rules/ban-tslint-comment */ 'ts/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 */ 'ts/class-literal-property-style'?: Linter.RuleEntry; /** * Enforce that class methods utilize `this` * @see https://typescript-eslint.io/rules/class-methods-use-this */ 'ts/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 */ 'ts/consistent-generic-constructors'?: Linter.RuleEntry; /** * Require or disallow the `Record` type * @see https://typescript-eslint.io/rules/consistent-indexed-object-style */ 'ts/consistent-indexed-object-style'?: Linter.RuleEntry; /** * Require `return` statements to either always or never specify values * @see https://typescript-eslint.io/rules/consistent-return */ 'ts/consistent-return'?: Linter.RuleEntry; /** * Enforce consistent usage of type assertions * @see https://typescript-eslint.io/rules/consistent-type-assertions */ 'ts/consistent-type-assertions'?: Linter.RuleEntry; /** * Enforce type definitions to consistently use either `interface` or `type` * @see https://typescript-eslint.io/rules/consistent-type-definitions */ 'ts/consistent-type-definitions'?: Linter.RuleEntry; /** * Enforce consistent usage of type exports * @see https://typescript-eslint.io/rules/consistent-type-exports */ 'ts/consistent-type-exports'?: Linter.RuleEntry; /** * Enforce consistent usage of type imports * @see https://typescript-eslint.io/rules/consistent-type-imports */ 'ts/consistent-type-imports'?: Linter.RuleEntry; /** * Enforce default parameters to be last * @see https://typescript-eslint.io/rules/default-param-last */ 'ts/default-param-last'?: Linter.RuleEntry<[]>; /** * Enforce dot notation whenever possible * @see https://typescript-eslint.io/rules/dot-notation */ 'ts/dot-notation'?: Linter.RuleEntry; /** * Require explicit return types on functions and class methods * @see https://typescript-eslint.io/rules/explicit-function-return-type */ 'ts/explicit-function-return-type'?: Linter.RuleEntry; /** * Require explicit accessibility modifiers on class properties and methods * @see https://typescript-eslint.io/rules/explicit-member-accessibility */ 'ts/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 */ 'ts/explicit-module-boundary-types'?: Linter.RuleEntry; /** * Require or disallow initialization in variable declarations * @see https://typescript-eslint.io/rules/init-declarations */ 'ts/init-declarations'?: Linter.RuleEntry; /** * Enforce a maximum number of parameters in function definitions * @see https://typescript-eslint.io/rules/max-params */ 'ts/max-params'?: Linter.RuleEntry; /** * Require a consistent member declaration order * @see https://typescript-eslint.io/rules/member-ordering */ 'ts/member-ordering'?: Linter.RuleEntry; /** * Enforce using a particular method signature syntax * @see https://typescript-eslint.io/rules/method-signature-style */ 'ts/method-signature-style'?: Linter.RuleEntry; /** * Enforce naming conventions for everything across a codebase * @see https://typescript-eslint.io/rules/naming-convention */ 'ts/naming-convention'?: Linter.RuleEntry; /** * Disallow generic `Array` constructors * @see https://typescript-eslint.io/rules/no-array-constructor */ 'ts/no-array-constructor'?: Linter.RuleEntry<[]>; /** * Disallow using the `delete` operator on array values * @see https://typescript-eslint.io/rules/no-array-delete */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/no-confusing-void-expression'?: Linter.RuleEntry; /** * Disallow using code marked as `@deprecated` * @see https://typescript-eslint.io/rules/no-deprecated */ 'ts/no-deprecated'?: Linter.RuleEntry; /** * Disallow duplicate class members * @see https://typescript-eslint.io/rules/no-dupe-class-members */ 'ts/no-dupe-class-members'?: Linter.RuleEntry<[]>; /** * Disallow duplicate enum member values * @see https://typescript-eslint.io/rules/no-duplicate-enum-values */ 'ts/no-duplicate-enum-values'?: Linter.RuleEntry<[]>; /** * Disallow duplicate constituents of union or intersection types * @see https://typescript-eslint.io/rules/no-duplicate-type-constituents */ 'ts/no-duplicate-type-constituents'?: Linter.RuleEntry; /** * Disallow using the `delete` operator on computed key expressions * @see https://typescript-eslint.io/rules/no-dynamic-delete */ 'ts/no-dynamic-delete'?: Linter.RuleEntry<[]>; /** * Disallow empty functions * @see https://typescript-eslint.io/rules/no-empty-function */ 'ts/no-empty-function'?: Linter.RuleEntry; /** * Disallow the declaration of empty interfaces * @see https://typescript-eslint.io/rules/no-empty-interface * @deprecated */ 'ts/no-empty-interface'?: Linter.RuleEntry; /** * Disallow accidentally using the "empty object" type * @see https://typescript-eslint.io/rules/no-empty-object-type */ 'ts/no-empty-object-type'?: Linter.RuleEntry; /** * Disallow the `any` type * @see https://typescript-eslint.io/rules/no-explicit-any */ 'ts/no-explicit-any'?: Linter.RuleEntry; /** * Disallow extra non-null assertions * @see https://typescript-eslint.io/rules/no-extra-non-null-assertion */ 'ts/no-extra-non-null-assertion'?: Linter.RuleEntry<[]>; /** * Disallow classes used as namespaces * @see https://typescript-eslint.io/rules/no-extraneous-class */ 'ts/no-extraneous-class'?: Linter.RuleEntry; /** * Require Promise-like statements to be handled appropriately * @see https://typescript-eslint.io/rules/no-floating-promises */ 'ts/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 */ 'ts/no-for-in-array'?: Linter.RuleEntry<[]>; /** * Disallow the use of `eval()`-like functions * @see https://typescript-eslint.io/rules/no-implied-eval */ 'ts/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 */ 'ts/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 */ 'ts/no-inferrable-types'?: Linter.RuleEntry; /** * Disallow `this` keywords outside of classes or class-like objects * @see https://typescript-eslint.io/rules/no-invalid-this */ 'ts/no-invalid-this'?: Linter.RuleEntry; /** * Disallow `void` type outside of generic or return types * @see https://typescript-eslint.io/rules/no-invalid-void-type */ 'ts/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 */ 'ts/no-loop-func'?: Linter.RuleEntry<[]>; /** * Disallow literal numbers that lose precision * @see https://typescript-eslint.io/rules/no-loss-of-precision * @deprecated */ 'ts/no-loss-of-precision'?: Linter.RuleEntry<[]>; /** * Disallow magic numbers * @see https://typescript-eslint.io/rules/no-magic-numbers */ 'ts/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 */ 'ts/no-meaningless-void-operator'?: Linter.RuleEntry; /** * Enforce valid definition of `new` and `constructor` * @see https://typescript-eslint.io/rules/no-misused-new */ 'ts/no-misused-new'?: Linter.RuleEntry<[]>; /** * Disallow Promises in places not designed to handle them * @see https://typescript-eslint.io/rules/no-misused-promises */ 'ts/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 */ 'ts/no-misused-spread'?: Linter.RuleEntry; /** * Disallow enums from having both number and string members * @see https://typescript-eslint.io/rules/no-mixed-enums */ 'ts/no-mixed-enums'?: Linter.RuleEntry<[]>; /** * Disallow TypeScript namespaces * @see https://typescript-eslint.io/rules/no-namespace */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/no-non-null-assertion'?: Linter.RuleEntry<[]>; /** * Disallow variable redeclaration * @see https://typescript-eslint.io/rules/no-redeclare */ 'ts/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 */ 'ts/no-redundant-type-constituents'?: Linter.RuleEntry<[]>; /** * Disallow invocation of `require()` * @see https://typescript-eslint.io/rules/no-require-imports */ 'ts/no-require-imports'?: Linter.RuleEntry; /** * Disallow specified modules when loaded by `import` * @see https://typescript-eslint.io/rules/no-restricted-imports */ 'ts/no-restricted-imports'?: Linter.RuleEntry; /** * Disallow certain types * @see https://typescript-eslint.io/rules/no-restricted-types */ 'ts/no-restricted-types'?: Linter.RuleEntry; /** * Disallow variable declarations from shadowing variables declared in the outer scope * @see https://typescript-eslint.io/rules/no-shadow */ 'ts/no-shadow'?: Linter.RuleEntry; /** * Disallow aliasing `this` * @see https://typescript-eslint.io/rules/no-this-alias */ 'ts/no-this-alias'?: Linter.RuleEntry; /** * Disallow type aliases * @see https://typescript-eslint.io/rules/no-type-alias * @deprecated */ 'ts/no-type-alias'?: Linter.RuleEntry; /** * Disallow unnecessary equality comparisons against boolean literals * @see https://typescript-eslint.io/rules/no-unnecessary-boolean-literal-compare */ 'ts/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 */ 'ts/no-unnecessary-condition'?: Linter.RuleEntry; /** * Disallow unnecessary assignment of constructor property parameter * @see https://typescript-eslint.io/rules/no-unnecessary-parameter-property-assignment */ 'ts/no-unnecessary-parameter-property-assignment'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary namespace qualifiers * @see https://typescript-eslint.io/rules/no-unnecessary-qualifier */ 'ts/no-unnecessary-qualifier'?: Linter.RuleEntry<[]>; /** * Disallow unnecessary template expressions * @see https://typescript-eslint.io/rules/no-unnecessary-template-expression */ 'ts/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 */ 'ts/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 */ 'ts/no-unnecessary-type-assertion'?: Linter.RuleEntry; /** * Disallow unnecessary constraints on generic types * @see https://typescript-eslint.io/rules/no-unnecessary-type-constraint */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/no-unsafe-assignment'?: Linter.RuleEntry<[]>; /** * Disallow calling a value with type `any` * @see https://typescript-eslint.io/rules/no-unsafe-call */ 'ts/no-unsafe-call'?: Linter.RuleEntry<[]>; /** * Disallow unsafe declaration merging * @see https://typescript-eslint.io/rules/no-unsafe-declaration-merging */ 'ts/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 */ 'ts/no-unsafe-enum-comparison'?: Linter.RuleEntry<[]>; /** * Disallow using the unsafe built-in Function type * @see https://typescript-eslint.io/rules/no-unsafe-function-type */ 'ts/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 */ 'ts/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 */ 'ts/no-unsafe-return'?: Linter.RuleEntry<[]>; /** * Disallow type assertions that narrow a type * @see https://typescript-eslint.io/rules/no-unsafe-type-assertion */ 'ts/no-unsafe-type-assertion'?: Linter.RuleEntry<[]>; /** * Require unary negation to take a number * @see https://typescript-eslint.io/rules/no-unsafe-unary-minus */ 'ts/no-unsafe-unary-minus'?: Linter.RuleEntry<[]>; /** * Disallow unused expressions * @see https://typescript-eslint.io/rules/no-unused-expressions */ 'ts/no-unused-expressions'?: Linter.RuleEntry; /** * Disallow unused private class members * @see https://typescript-eslint.io/rules/no-unused-private-class-members */ 'ts/no-unused-private-class-members'?: Linter.RuleEntry<[]>; /** * Disallow unused variables * @see https://typescript-eslint.io/rules/no-unused-vars */ 'ts/no-unused-vars'?: Linter.RuleEntry; /** * Disallow the use of variables before they are defined * @see https://typescript-eslint.io/rules/no-use-before-define */ 'ts/no-use-before-define'?: Linter.RuleEntry; /** * Disallow unnecessary constructors * @see https://typescript-eslint.io/rules/no-useless-constructor */ 'ts/no-useless-constructor'?: Linter.RuleEntry<[]>; /** * Disallow default values that will never be used * @see https://typescript-eslint.io/rules/no-useless-default-assignment */ 'ts/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 */ 'ts/no-useless-empty-export'?: Linter.RuleEntry<[]>; /** * Disallow `require` statements except in import statements * @see https://typescript-eslint.io/rules/no-var-requires * @deprecated */ 'ts/no-var-requires'?: Linter.RuleEntry; /** * Disallow using confusing built-in primitive class wrappers * @see https://typescript-eslint.io/rules/no-wrapper-object-types */ 'ts/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 */ 'ts/non-nullable-type-assertion-style'?: Linter.RuleEntry<[]>; /** * Disallow throwing non-`Error` values as exceptions * @see https://typescript-eslint.io/rules/only-throw-error */ 'ts/only-throw-error'?: Linter.RuleEntry; /** * Require or disallow parameter properties in class constructors * @see https://typescript-eslint.io/rules/parameter-properties */ 'ts/parameter-properties'?: Linter.RuleEntry; /** * Enforce the use of `as const` over literal type * @see https://typescript-eslint.io/rules/prefer-as-const */ 'ts/prefer-as-const'?: Linter.RuleEntry<[]>; /** * Require destructuring from arrays and/or objects * @see https://typescript-eslint.io/rules/prefer-destructuring */ 'ts/prefer-destructuring'?: Linter.RuleEntry; /** * Require each enum member value to be explicitly initialized * @see https://typescript-eslint.io/rules/prefer-enum-initializers */ 'ts/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 */ 'ts/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 */ 'ts/prefer-for-of'?: Linter.RuleEntry<[]>; /** * Enforce using function types instead of interfaces with call signatures * @see https://typescript-eslint.io/rules/prefer-function-type */ 'ts/prefer-function-type'?: Linter.RuleEntry<[]>; /** * Enforce `includes` method over `indexOf` method * @see https://typescript-eslint.io/rules/prefer-includes */ 'ts/prefer-includes'?: Linter.RuleEntry<[]>; /** * Require all enum members to be literal values * @see https://typescript-eslint.io/rules/prefer-literal-enum-member */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/prefer-optional-chain'?: Linter.RuleEntry; /** * Require using Error objects as Promise rejection reasons * @see https://typescript-eslint.io/rules/prefer-promise-reject-errors */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/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 */ 'ts/restrict-plus-operands'?: Linter.RuleEntry; /** * Enforce template literal expressions to be of `string` type * @see https://typescript-eslint.io/rules/restrict-template-expressions */ 'ts/restrict-template-expressions'?: Linter.RuleEntry; /** * Enforce consistent awaiting of returned promises * @see https://typescript-eslint.io/rules/return-await */ 'ts/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 */ 'ts/sort-type-constituents'?: Linter.RuleEntry; /** * Disallow certain types in boolean expressions * @see https://typescript-eslint.io/rules/strict-boolean-expressions */ 'ts/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 */ 'ts/strict-void-return'?: Linter.RuleEntry; /** * Require switch-case statements to be exhaustive * @see https://typescript-eslint.io/rules/switch-exhaustiveness-check */ 'ts/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 */ 'ts/triple-slash-reference'?: Linter.RuleEntry; /** * Require type annotations in certain places * @see https://typescript-eslint.io/rules/typedef * @deprecated */ 'ts/typedef'?: Linter.RuleEntry; /** * Enforce unbound methods are called with their expected scope * @see https://typescript-eslint.io/rules/unbound-method */ 'ts/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 */ 'ts/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 */ 'ts/use-unknown-in-catch-callback-variable'?: 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<[]>; /** * Disallow unused variables * @see https://github.com/sweepline/eslint-plugin-unused-imports/blob/master/docs/rules/no-unused-imports.md */ 'unused-imports/no-unused-imports'?: Linter.RuleEntry; /** * Disallow unused variables * @see https://github.com/sweepline/eslint-plugin-unused-imports/blob/master/docs/rules/no-unused-vars.md */ 'unused-imports/no-unused-vars'?: 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<[]>; /** * Require parentheses around immediate `function` invocations * @see https://eslint.org/docs/latest/rules/wrap-iife * @deprecated */ 'wrap-iife'?: Linter.RuleEntry; /** * Require parenthesis around regex literals * @see https://eslint.org/docs/latest/rules/wrap-regex * @deprecated */ 'wrap-regex'?: Linter.RuleEntry<[]>; /** * require or disallow block style mappings. * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/block-mapping.html */ 'yaml/block-mapping'?: Linter.RuleEntry; /** * enforce consistent line breaks after `:` indicator * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/block-mapping-colon-indicator-newline.html */ 'yaml/block-mapping-colon-indicator-newline'?: Linter.RuleEntry; /** * enforce consistent line breaks after `?` indicator * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/block-mapping-question-indicator-newline.html */ 'yaml/block-mapping-question-indicator-newline'?: Linter.RuleEntry; /** * require or disallow block style sequences. * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/block-sequence.html */ 'yaml/block-sequence'?: Linter.RuleEntry; /** * enforce consistent line breaks after `-` indicator * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/block-sequence-hyphen-indicator-newline.html */ 'yaml/block-sequence-hyphen-indicator-newline'?: Linter.RuleEntry; /** * enforce YAML file extension * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/file-extension.html */ 'yaml/file-extension'?: Linter.RuleEntry; /** * enforce consistent line breaks inside braces * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/flow-mapping-curly-newline.html */ 'yaml/flow-mapping-curly-newline'?: Linter.RuleEntry; /** * enforce consistent spacing inside braces * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/flow-mapping-curly-spacing.html */ 'yaml/flow-mapping-curly-spacing'?: Linter.RuleEntry; /** * enforce linebreaks after opening and before closing flow sequence brackets * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/flow-sequence-bracket-newline.html */ 'yaml/flow-sequence-bracket-newline'?: Linter.RuleEntry; /** * enforce consistent spacing inside flow sequence brackets * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/flow-sequence-bracket-spacing.html */ 'yaml/flow-sequence-bracket-spacing'?: Linter.RuleEntry; /** * enforce consistent indentation * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/indent.html */ 'yaml/indent'?: Linter.RuleEntry; /** * enforce naming convention to key names * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/key-name-casing.html */ 'yaml/key-name-casing'?: Linter.RuleEntry; /** * enforce consistent spacing between keys and values in mapping pairs * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/key-spacing.html */ 'yaml/key-spacing'?: Linter.RuleEntry; /** * disallow empty document * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-empty-document.html */ 'yaml/no-empty-document'?: Linter.RuleEntry<[]>; /** * disallow empty mapping keys * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-empty-key.html */ 'yaml/no-empty-key'?: Linter.RuleEntry<[]>; /** * disallow empty mapping values * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-empty-mapping-value.html */ 'yaml/no-empty-mapping-value'?: Linter.RuleEntry<[]>; /** * disallow empty sequence entries * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-empty-sequence-entry.html */ 'yaml/no-empty-sequence-entry'?: Linter.RuleEntry<[]>; /** * disallow irregular whitespace * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-irregular-whitespace.html */ 'yaml/no-irregular-whitespace'?: Linter.RuleEntry; /** * disallow multiple empty lines * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-multiple-empty-lines.html */ 'yaml/no-multiple-empty-lines'?: Linter.RuleEntry; /** * disallow tabs for indentation. * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-tab-indent.html */ 'yaml/no-tab-indent'?: Linter.RuleEntry<[]>; /** * disallow trailing zeros for floats * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-trailing-zeros.html */ 'yaml/no-trailing-zeros'?: Linter.RuleEntry<[]>; /** * require or disallow plain style scalar. * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/plain-scalar.html */ 'yaml/plain-scalar'?: Linter.RuleEntry; /** * enforce the consistent use of either double, or single quotes * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/quotes.html */ 'yaml/quotes'?: Linter.RuleEntry; /** * disallow mapping keys other than strings * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/require-string-key.html */ 'yaml/require-string-key'?: Linter.RuleEntry<[]>; /** * require mapping keys to be sorted * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/sort-keys.html */ 'yaml/sort-keys'?: Linter.RuleEntry; /** * require sequence values to be sorted * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/sort-sequence-values.html */ 'yaml/sort-sequence-values'?: Linter.RuleEntry; /** * enforce consistent spacing after the `#` in a comment * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/spaced-comment.html */ 'yaml/spaced-comment'?: Linter.RuleEntry; /** * disallow parsing errors in Vue custom blocks * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/vue-custom-block/no-parsing-error.html */ 'yaml/vue-custom-block/no-parsing-error'?: Linter.RuleEntry<[]>; /** * Require or disallow spacing around the `*` in `yield*` expressions * @see https://eslint.org/docs/latest/rules/yield-star-spacing * @deprecated */ 'yield-star-spacing'?: Linter.RuleEntry; /** * Require or disallow "Yoda" conditions * @see https://eslint.org/docs/latest/rules/yoda */ 'yoda'?: Linter.RuleEntry; } /* ======= Declarations ======= */ // ----- accessor-pairs ----- type AccessorPairs = [] | [{ getWithoutSet?: boolean; setWithoutGet?: boolean; enforceForClassMembers?: boolean; enforceForTSTypes?: boolean; }]; // ----- antfu/consistent-chaining ----- type AntfuConsistentChaining = [] | [{ allowLeadingPropertyAccess?: boolean; }]; // ----- antfu/consistent-list-newline ----- type AntfuConsistentListNewline = [] | [{ ArrayExpression?: boolean; ArrayPattern?: boolean; ArrowFunctionExpression?: boolean; CallExpression?: boolean; ExportNamedDeclaration?: boolean; FunctionDeclaration?: boolean; FunctionExpression?: boolean; IfStatement?: boolean; ImportDeclaration?: boolean; JSONArrayExpression?: boolean; JSONObjectExpression?: boolean; JSXOpeningElement?: boolean; NewExpression?: boolean; ObjectExpression?: boolean; ObjectPattern?: boolean; TSFunctionType?: boolean; TSInterfaceDeclaration?: boolean; TSTupleType?: boolean; TSTypeLiteral?: boolean; TSTypeParameterDeclaration?: boolean; TSTypeParameterInstantiation?: boolean; }]; // ----- antfu/indent-unindent ----- type AntfuIndentUnindent = [] | [{ indent?: number; tags?: string[]; }]; // ----- array-bracket-newline ----- type ArrayBracketNewline = [] | [(("always" | "never" | "consistent") | { multiline?: boolean; minItems?: (number | null); })]; // ----- array-bracket-spacing ----- type ArrayBracketSpacing = [] | [("always" | "never")] | [("always" | "never"), { singleValue?: boolean; objectsInArrays?: boolean; arraysInArrays?: boolean; }]; // ----- array-callback-return ----- type ArrayCallbackReturn = [] | [{ allowImplicit?: boolean; checkForEach?: boolean; allowVoid?: boolean; }]; // ----- array-element-newline ----- type ArrayElementNewline = [] | [(_ArrayElementNewlineBasicConfig | { ArrayExpression?: _ArrayElementNewlineBasicConfig; ArrayPattern?: _ArrayElementNewlineBasicConfig; })]; type _ArrayElementNewlineBasicConfig = (("always" | "never" | "consistent") | { multiline?: boolean; minItems?: (number | null); }); // ----- arrow-body-style ----- type ArrowBodyStyle = ([] | [("always" | "never")] | [] | ["as-needed"] | ["as-needed", { requireReturnForObjectLiteral?: boolean; }]); // ----- arrow-parens ----- type ArrowParens = [] | [("always" | "as-needed")] | [("always" | "as-needed"), { requireForBlockBody?: boolean; }]; // ----- arrow-spacing ----- type ArrowSpacing = [] | [{ before?: boolean; after?: boolean; }]; // ----- block-spacing ----- type BlockSpacing = [] | [("always" | "never")]; // ----- brace-style ----- type BraceStyle = [] | [("1tbs" | "stroustrup" | "allman")] | [("1tbs" | "stroustrup" | "allman"), { allowSingleLine?: boolean; }]; // ----- callback-return ----- type CallbackReturn = [] | [string[]]; // ----- camelcase ----- type Camelcase = [] | [{ ignoreDestructuring?: boolean; ignoreImports?: boolean; ignoreGlobals?: boolean; properties?: ("always" | "never"); allow?: string[]; }]; // ----- capitalized-comments ----- type CapitalizedComments = [] | [("always" | "never")] | [("always" | "never"), ({ ignorePattern?: string; ignoreInlineComments?: boolean; ignoreConsecutiveComments?: boolean; } | { line?: { ignorePattern?: string; ignoreInlineComments?: boolean; ignoreConsecutiveComments?: boolean; }; block?: { ignorePattern?: string; ignoreInlineComments?: boolean; ignoreConsecutiveComments?: boolean; }; })]; // ----- class-methods-use-this ----- type ClassMethodsUseThis = [] | [{ exceptMethods?: string[]; enforceForClassFields?: boolean; ignoreOverrideMethods?: boolean; ignoreClassesWithImplements?: ("all" | "public-fields"); }]; // ----- comma-dangle ----- type CommaDangle = [] | [(_CommaDangleValue | { arrays?: _CommaDangleValueWithIgnore; objects?: _CommaDangleValueWithIgnore; imports?: _CommaDangleValueWithIgnore; exports?: _CommaDangleValueWithIgnore; functions?: _CommaDangleValueWithIgnore; })]; type _CommaDangleValue = ("always-multiline" | "always" | "never" | "only-multiline"); type _CommaDangleValueWithIgnore = ("always-multiline" | "always" | "ignore" | "never" | "only-multiline"); // ----- comma-spacing ----- type CommaSpacing = [] | [{ before?: boolean; after?: boolean; }]; // ----- comma-style ----- type CommaStyle = [] | [("first" | "last")] | [("first" | "last"), { exceptions?: { [k: string]: boolean | undefined; }; }]; // ----- complexity ----- type Complexity = [] | [(number | { maximum?: number; max?: number; variant?: ("classic" | "modified"); })]; // ----- computed-property-spacing ----- type ComputedPropertySpacing = [] | [("always" | "never")] | [("always" | "never"), { enforceForClassMembers?: boolean; }]; // ----- consistent-return ----- type ConsistentReturn = [] | [{ treatUndefinedAsUnspecified?: boolean; }]; // ----- consistent-this ----- type ConsistentThis = string[]; // ----- curly ----- type Curly = ([] | ["all"] | [] | [("multi" | "multi-line" | "multi-or-nest")] | [("multi" | "multi-line" | "multi-or-nest"), "consistent"]); // ----- default-case ----- type DefaultCase = [] | [{ commentPattern?: string; }]; // ----- dot-location ----- type DotLocation = [] | [("object" | "property")]; // ----- dot-notation ----- type DotNotation = [] | [{ allowKeywords?: boolean; allowPattern?: string; }]; // ----- eol-last ----- type EolLast = [] | [("always" | "never" | "unix" | "windows")]; // ----- eqeqeq ----- type Eqeqeq = ([] | ["always"] | ["always", { null?: ("always" | "never" | "ignore"); }] | [] | [("smart" | "allow-null")]); // ----- eslint-comments/disable-enable-pair ----- type EslintCommentsDisableEnablePair = [] | [{ allowWholeFile?: boolean; }]; // ----- eslint-comments/no-restricted-disable ----- type EslintCommentsNoRestrictedDisable = string[]; // ----- eslint-comments/no-use ----- type EslintCommentsNoUse = [] | [{ allow?: ("eslint" | "eslint-disable" | "eslint-disable-line" | "eslint-disable-next-line" | "eslint-enable" | "eslint-env" | "exported" | "global" | "globals")[]; }]; // ----- eslint-comments/require-description ----- type EslintCommentsRequireDescription = [] | [{ ignore?: ("eslint" | "eslint-disable" | "eslint-disable-line" | "eslint-disable-next-line" | "eslint-enable" | "eslint-env" | "exported" | "global" | "globals")[]; }]; // ----- func-call-spacing ----- type FuncCallSpacing = ([] | ["never"] | [] | ["always"] | ["always", { allowNewlines?: boolean; }]); // ----- func-name-matching ----- type FuncNameMatching = ([] | [("always" | "never")] | [("always" | "never"), { considerPropertyDescriptor?: boolean; includeCommonJSModuleExports?: boolean; }] | [] | [{ considerPropertyDescriptor?: boolean; includeCommonJSModuleExports?: boolean; }]); // ----- func-names ----- type FuncNames = [] | [_FuncNamesValue] | [_FuncNamesValue, { generators?: _FuncNamesValue; }]; type _FuncNamesValue = ("always" | "as-needed" | "never"); // ----- func-style ----- type FuncStyle = [] | [("declaration" | "expression")] | [("declaration" | "expression"), { allowArrowFunctions?: boolean; allowTypeAnnotation?: boolean; overrides?: { namedExports?: ("declaration" | "expression" | "ignore"); }; }]; // ----- function-call-argument-newline ----- type FunctionCallArgumentNewline = [] | [("always" | "never" | "consistent")]; // ----- function-paren-newline ----- type FunctionParenNewline = [] | [(("always" | "never" | "consistent" | "multiline" | "multiline-arguments") | { minItems?: number; })]; // ----- generator-star-spacing ----- type GeneratorStarSpacing = [] | [(("before" | "after" | "both" | "neither") | { before?: boolean; after?: boolean; named?: (("before" | "after" | "both" | "neither") | { before?: boolean; after?: boolean; }); anonymous?: (("before" | "after" | "both" | "neither") | { before?: boolean; after?: boolean; }); method?: (("before" | "after" | "both" | "neither") | { before?: boolean; after?: boolean; }); })]; // ----- getter-return ----- type GetterReturn = [] | [{ allowImplicit?: boolean; }]; // ----- grouped-accessor-pairs ----- type GroupedAccessorPairs = [] | [("anyOrder" | "getBeforeSet" | "setBeforeGet")] | [("anyOrder" | "getBeforeSet" | "setBeforeGet"), { enforceForTSTypes?: boolean; }]; // ----- handle-callback-err ----- type HandleCallbackErr = [] | [string]; // ----- id-blacklist ----- type IdBlacklist = string[]; // ----- id-denylist ----- type IdDenylist = string[]; // ----- id-length ----- type IdLength = [] | [{ min?: number; max?: number; exceptions?: string[]; exceptionPatterns?: string[]; properties?: ("always" | "never"); }]; // ----- id-match ----- type IdMatch = [] | [string] | [string, { properties?: boolean; classFields?: boolean; onlyDeclarations?: boolean; ignoreDestructuring?: boolean; }]; // ----- implicit-arrow-linebreak ----- type ImplicitArrowLinebreak = [] | [("beside" | "below")]; // ----- import/consistent-type-specifier-style ----- type ImportConsistentTypeSpecifierStyle = [] | [("prefer-top-level" | "prefer-inline")]; // ----- import/dynamic-import-chunkname ----- type ImportDynamicImportChunkname = [] | [{ importFunctions?: string[]; allowEmpty?: boolean; webpackChunknameFormat?: string; [k: string]: unknown | undefined; }]; // ----- import/extensions ----- type ImportExtensions = ([] | [("always" | "ignorePackages" | "never")] | [] | [("always" | "ignorePackages" | "never")] | [("always" | "ignorePackages" | "never"), { pattern?: { [k: string]: ("always" | "ignorePackages" | "never"); }; ignorePackages?: boolean; checkTypeImports?: boolean; pathGroupOverrides?: { pattern: string; patternOptions?: { [k: string]: unknown | undefined; }; action: ("enforce" | "ignore"); }[]; fix?: boolean; [k: string]: unknown | undefined; }] | [] | [{ pattern?: { [k: string]: ("always" | "ignorePackages" | "never"); }; ignorePackages?: boolean; checkTypeImports?: boolean; pathGroupOverrides?: { pattern: string; patternOptions?: { [k: string]: unknown | undefined; }; action: ("enforce" | "ignore"); }[]; fix?: boolean; [k: string]: unknown | undefined; }] | [] | [("always" | "ignorePackages" | "never")] | [("always" | "ignorePackages" | "never"), { [k: string]: ("always" | "ignorePackages" | "never"); }] | [] | [{ [k: string]: ("always" | "ignorePackages" | "never"); }]); // ----- import/first ----- type ImportFirst = [] | [("absolute-first" | "disable-absolute-first")]; // ----- import/imports-first ----- type ImportImportsFirst = [] | [("absolute-first" | "disable-absolute-first")]; // ----- import/max-dependencies ----- type ImportMaxDependencies = [] | [{ max?: number; ignoreTypeImports?: boolean; }]; // ----- import/named ----- type ImportNamed = [] | [{ commonjs?: boolean; }]; // ----- import/namespace ----- type ImportNamespace = [] | [{ allowComputed?: boolean; }]; // ----- import/newline-after-import ----- type ImportNewlineAfterImport = [] | [{ count?: number; exactCount?: boolean; considerComments?: boolean; }]; // ----- import/no-absolute-path ----- type ImportNoAbsolutePath = [] | [{ commonjs?: boolean; amd?: boolean; esmodule?: boolean; ignore?: [string, ...(string)[]]; }]; // ----- import/no-anonymous-default-export ----- type ImportNoAnonymousDefaultExport = [] | [{ allowArray?: boolean; allowArrowFunction?: boolean; allowCallExpression?: boolean; allowAnonymousClass?: boolean; allowAnonymousFunction?: boolean; allowLiteral?: boolean; allowObject?: boolean; allowNew?: boolean; }]; // ----- import/no-commonjs ----- type ImportNoCommonjs = ([] | ["allow-primitive-modules"] | [] | [{ allowPrimitiveModules?: boolean; allowRequire?: boolean; allowConditionalRequire?: boolean; }]); // ----- import/no-cycle ----- type ImportNoCycle = [] | [{ commonjs?: boolean; amd?: boolean; esmodule?: boolean; ignore?: [string, ...(string)[]]; maxDepth?: (number | "∞"); ignoreExternal?: boolean; allowUnsafeDynamicCyclicDependency?: boolean; }]; // ----- import/no-duplicates ----- type ImportNoDuplicates = [] | [{ considerQueryString?: boolean; "prefer-inline"?: boolean; }]; // ----- import/no-dynamic-require ----- type ImportNoDynamicRequire = [] | [{ esmodule?: boolean; }]; // ----- import/no-extraneous-dependencies ----- type ImportNoExtraneousDependencies = [] | [{ devDependencies?: (boolean | unknown[]); optionalDependencies?: (boolean | unknown[]); peerDependencies?: (boolean | unknown[]); bundledDependencies?: (boolean | unknown[]); packageDir?: (string | unknown[]); includeInternal?: boolean; includeTypes?: boolean; whitelist?: unknown[]; }]; // ----- import/no-import-module-exports ----- type ImportNoImportModuleExports = [] | [{ exceptions?: unknown[]; }]; // ----- import/no-internal-modules ----- type ImportNoInternalModules = [] | [({ allow?: string[]; } | { forbid?: string[]; })]; // ----- import/no-namespace ----- type ImportNoNamespace = [] | [{ ignore?: string[]; [k: string]: unknown | undefined; }]; // ----- import/no-nodejs-modules ----- type ImportNoNodejsModules = [] | [{ allow?: string[]; }]; // ----- import/no-relative-packages ----- type ImportNoRelativePackages = [] | [{ commonjs?: boolean; amd?: boolean; esmodule?: boolean; ignore?: [string, ...(string)[]]; }]; // ----- import/no-relative-parent-imports ----- type ImportNoRelativeParentImports = [] | [{ commonjs?: boolean; amd?: boolean; esmodule?: boolean; ignore?: [string, ...(string)[]]; }]; // ----- import/no-rename-default ----- type ImportNoRenameDefault = [] | [{ commonjs?: boolean; preventRenamingBindings?: boolean; }]; // ----- import/no-restricted-paths ----- type ImportNoRestrictedPaths = [] | [{ zones?: [{ target?: (string | [string, ...(string)[]]); from?: (string | [string, ...(string)[]]); except?: string[]; message?: string; }, ...({ target?: (string | [string, ...(string)[]]); from?: (string | [string, ...(string)[]]); except?: string[]; message?: string; })[]]; basePath?: string; }]; // ----- import/no-unassigned-import ----- type ImportNoUnassignedImport = [] | [{ devDependencies?: (boolean | unknown[]); optionalDependencies?: (boolean | unknown[]); peerDependencies?: (boolean | unknown[]); allow?: string[]; }]; // ----- import/no-unresolved ----- type ImportNoUnresolved = [] | [{ commonjs?: boolean; amd?: boolean; esmodule?: boolean; ignore?: [string, ...(string)[]]; caseSensitive?: boolean; caseSensitiveStrict?: boolean; }]; // ----- import/no-unused-modules ----- type ImportNoUnusedModules = [] | [({ unusedExports: true; src?: [unknown, ...(unknown)[]]; [k: string]: unknown | undefined; } | { missingExports: true; [k: string]: unknown | undefined; })]; // ----- import/no-useless-path-segments ----- type ImportNoUselessPathSegments = [] | [{ commonjs?: boolean; noUselessIndex?: boolean; }]; // ----- import/order ----- type ImportOrder = [] | [{ groups?: unknown[]; pathGroupsExcludedImportTypes?: unknown[]; distinctGroup?: boolean; pathGroups?: { pattern: string; patternOptions?: { [k: string]: unknown | undefined; }; group: ("builtin" | "external" | "internal" | "unknown" | "parent" | "sibling" | "index" | "object" | "type"); position?: ("after" | "before"); }[]; "newlines-between"?: ("ignore" | "always" | "always-and-inside-groups" | "never"); "newlines-between-types"?: ("ignore" | "always" | "always-and-inside-groups" | "never"); consolidateIslands?: ("inside-groups" | "never"); sortTypesGroup?: boolean; named?: (boolean | { enabled?: boolean; import?: boolean; export?: boolean; require?: boolean; cjsExports?: boolean; types?: ("mixed" | "types-first" | "types-last"); }); alphabetize?: { caseInsensitive?: boolean; order?: ("ignore" | "asc" | "desc"); orderImportKind?: ("ignore" | "asc" | "desc"); }; warnOnUnassignedImports?: boolean; }]; // ----- import/prefer-default-export ----- type ImportPreferDefaultExport = [] | [{ target?: ("single" | "any"); }]; // ----- import/prefer-namespace-import ----- type ImportPreferNamespaceImport = [] | [{ patterns?: string[]; }]; // ----- indent ----- type Indent = [] | [("tab" | number)] | [("tab" | number), { SwitchCase?: number; VariableDeclarator?: ((number | ("first" | "off")) | { var?: (number | ("first" | "off")); let?: (number | ("first" | "off")); const?: (number | ("first" | "off")); }); outerIIFEBody?: (number | "off"); MemberExpression?: (number | "off"); FunctionDeclaration?: { parameters?: (number | ("first" | "off")); body?: number; }; FunctionExpression?: { parameters?: (number | ("first" | "off")); body?: number; }; StaticBlock?: { body?: number; }; CallExpression?: { arguments?: (number | ("first" | "off")); }; ArrayExpression?: (number | ("first" | "off")); ObjectExpression?: (number | ("first" | "off")); ImportDeclaration?: (number | ("first" | "off")); flatTernaryExpressions?: boolean; offsetTernaryExpressions?: boolean; ignoredNodes?: string[]; ignoreComments?: boolean; }]; // ----- indent-legacy ----- type IndentLegacy = [] | [("tab" | number)] | [("tab" | number), { SwitchCase?: number; VariableDeclarator?: (number | { var?: number; let?: number; const?: number; [k: string]: unknown | undefined; }); outerIIFEBody?: number; MemberExpression?: number; FunctionDeclaration?: { parameters?: (number | "first"); body?: number; [k: string]: unknown | undefined; }; FunctionExpression?: { parameters?: (number | "first"); body?: number; [k: string]: unknown | undefined; }; CallExpression?: { parameters?: (number | "first"); [k: string]: unknown | undefined; }; ArrayExpression?: (number | "first"); ObjectExpression?: (number | "first"); }]; // ----- init-declarations ----- type InitDeclarations = ([] | ["always"] | [] | ["never"] | ["never", { ignoreForLoopInit?: boolean; }]); // ----- jsdoc/check-alignment ----- type JsdocCheckAlignment = [] | [{ innerIndent?: number; }]; // ----- jsdoc/check-examples ----- type JsdocCheckExamples = [] | [{ allowInlineConfig?: boolean; baseConfig?: { [k: string]: unknown | undefined; }; captionRequired?: boolean; checkDefaults?: boolean; checkEslintrc?: boolean; checkParams?: boolean; checkProperties?: boolean; configFile?: string; exampleCodeRegex?: string; matchingFileName?: string; matchingFileNameDefaults?: string; matchingFileNameParams?: string; matchingFileNameProperties?: string; noDefaultExampleRules?: boolean; paddedIndent?: number; rejectExampleCodeRegex?: string; reportUnusedDisableDirectives?: boolean; }]; // ----- jsdoc/check-indentation ----- type JsdocCheckIndentation = [] | [{ allowIndentedSections?: boolean; excludeTags?: string[]; }]; // ----- jsdoc/check-line-alignment ----- type JsdocCheckLineAlignment = [] | [("always" | "never" | "any")] | [("always" | "never" | "any"), { customSpacings?: { postDelimiter?: number; postHyphen?: number; postName?: number; postTag?: number; postType?: number; }; disableWrapIndent?: boolean; preserveMainDescriptionPostDelimiter?: boolean; tags?: string[]; wrapIndent?: string; }]; // ----- jsdoc/check-param-names ----- type JsdocCheckParamNames = [] | [{ allowExtraTrailingParamDocs?: boolean; checkDestructured?: boolean; checkRestProperty?: boolean; checkTypesPattern?: string; disableExtraPropertyReporting?: boolean; disableMissingParamChecks?: boolean; enableFixer?: boolean; useDefaultObjectProperties?: boolean; }]; // ----- jsdoc/check-property-names ----- type JsdocCheckPropertyNames = [] | [{ enableFixer?: boolean; }]; // ----- jsdoc/check-tag-names ----- type JsdocCheckTagNames = [] | [{ definedTags?: string[]; enableFixer?: boolean; inlineTags?: string[]; jsxTags?: boolean; typed?: boolean; }]; // ----- jsdoc/check-types ----- type JsdocCheckTypes = [] | [{ exemptTagContexts?: { tag?: string; types?: (boolean | string[]); }[]; noDefaults?: boolean; unifyParentAndChildTypeChecks?: boolean; }]; // ----- jsdoc/check-values ----- type JsdocCheckValues = [] | [{ allowedAuthors?: string[]; allowedLicenses?: (string[] | boolean); licensePattern?: string; numericOnlyVariation?: boolean; }]; // ----- jsdoc/convert-to-jsdoc-comments ----- type JsdocConvertToJsdocComments = [] | [{ allowedPrefixes?: string[]; contexts?: (string | { context?: string; inlineCommentBlock?: boolean; })[]; contextsAfter?: (string | { context?: string; inlineCommentBlock?: boolean; })[]; contextsBeforeAndAfter?: (string | { context?: string; inlineCommentBlock?: boolean; })[]; enableFixer?: boolean; enforceJsdocLineStyle?: ("multi" | "single"); lineOrBlockStyle?: ("block" | "line" | "both"); }]; // ----- jsdoc/empty-tags ----- type JsdocEmptyTags = [] | [{ tags?: string[]; }]; // ----- jsdoc/escape-inline-tags ----- type JsdocEscapeInlineTags = [] | [{ allowedInlineTags?: string[]; enableFixer?: boolean; fixType?: ("backticks" | "backslash"); }]; // ----- jsdoc/implements-on-classes ----- type JsdocImplementsOnClasses = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; }]; // ----- jsdoc/informative-docs ----- type JsdocInformativeDocs = [] | [{ aliases?: { [k: string]: string[]; }; excludedTags?: string[]; uselessWords?: string[]; }]; // ----- jsdoc/lines-before-block ----- type JsdocLinesBeforeBlock = [] | [{ checkBlockStarts?: boolean; excludedTags?: string[]; ignoreSameLine?: boolean; ignoreSingleLines?: boolean; lines?: number; }]; // ----- jsdoc/match-description ----- type JsdocMatchDescription = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; mainDescription?: (string | boolean | { match?: (string | boolean); message?: string; }); matchDescription?: string; message?: string; nonemptyTags?: boolean; tags?: { [k: string]: (string | true | { match?: (string | true); message?: string; }); }; }]; // ----- jsdoc/match-name ----- type JsdocMatchName = [] | [{ match: { allowName?: string; comment?: string; context?: string; disallowName?: string; message?: string; replacement?: string; tags?: string[]; }[]; }]; // ----- jsdoc/multiline-blocks ----- type JsdocMultilineBlocks = [] | [{ allowMultipleTags?: boolean; minimumLengthForMultiline?: number; multilineTags?: ("*" | string[]); noFinalLineText?: boolean; noMultilineBlocks?: boolean; noSingleLineBlocks?: boolean; noZeroLineText?: boolean; requireSingleLineUnderCount?: number; singleLineTags?: string[]; }]; // ----- jsdoc/no-bad-blocks ----- type JsdocNoBadBlocks = [] | [{ ignore?: string[]; preventAllMultiAsteriskBlocks?: boolean; }]; // ----- jsdoc/no-blank-blocks ----- type JsdocNoBlankBlocks = [] | [{ enableFixer?: boolean; }]; // ----- jsdoc/no-defaults ----- type JsdocNoDefaults = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; noOptionalParamNames?: boolean; }]; // ----- jsdoc/no-missing-syntax ----- type JsdocNoMissingSyntax = [] | [{ contexts?: (string | { comment?: string; context?: string; message?: string; minimum?: number; })[]; }]; // ----- jsdoc/no-multi-asterisks ----- type JsdocNoMultiAsterisks = [] | [{ allowWhitespace?: boolean; preventAtEnd?: boolean; preventAtMiddleLines?: boolean; }]; // ----- jsdoc/no-restricted-syntax ----- type JsdocNoRestrictedSyntax = [] | [{ contexts: (string | { comment?: string; context?: string; message?: string; })[]; }]; // ----- jsdoc/no-types ----- type JsdocNoTypes = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; }]; // ----- jsdoc/no-undefined-types ----- type JsdocNoUndefinedTypes = [] | [{ checkUsedTypedefs?: boolean; definedTypes?: string[]; disableReporting?: boolean; markVariablesAsUsed?: boolean; }]; // ----- jsdoc/prefer-import-tag ----- type JsdocPreferImportTag = [] | [{ enableFixer?: boolean; exemptTypedefs?: boolean; outputType?: ("named-import" | "namespaced-import"); }]; // ----- jsdoc/require-asterisk-prefix ----- type JsdocRequireAsteriskPrefix = [] | [("always" | "never" | "any")] | [("always" | "never" | "any"), { tags?: { always?: string[]; any?: string[]; never?: string[]; }; }]; // ----- jsdoc/require-description ----- type JsdocRequireDescription = [] | [{ checkConstructors?: boolean; checkGetters?: boolean; checkSetters?: boolean; contexts?: (string | { comment?: string; context?: string; })[]; descriptionStyle?: ("body" | "tag" | "any"); exemptedBy?: string[]; }]; // ----- jsdoc/require-description-complete-sentence ----- type JsdocRequireDescriptionCompleteSentence = [] | [{ abbreviations?: string[]; newlineBeforeCapsAssumesBadSentenceEnd?: boolean; tags?: string[]; }]; // ----- jsdoc/require-example ----- type JsdocRequireExample = [] | [{ checkConstructors?: boolean; checkGetters?: boolean; checkSetters?: boolean; contexts?: (string | { comment?: string; context?: string; })[]; enableFixer?: boolean; exemptedBy?: string[]; exemptNoArguments?: boolean; }]; // ----- jsdoc/require-file-overview ----- type JsdocRequireFileOverview = [] | [{ tags?: { [k: string]: { initialCommentsOnly?: boolean; mustExist?: boolean; preventDuplicates?: boolean; }; }; }]; // ----- jsdoc/require-hyphen-before-param-description ----- type JsdocRequireHyphenBeforeParamDescription = [] | [("always" | "never")] | [("always" | "never"), { tags?: ({ [k: string]: ("always" | "never"); } | "any"); }]; // ----- jsdoc/require-jsdoc ----- type JsdocRequireJsdoc = [] | [{ checkAllFunctionExpressions?: boolean; checkConstructors?: boolean; checkGetters?: (boolean | "no-setter"); checkSetters?: (boolean | "no-getter"); contexts?: (string | { context?: string; inlineCommentBlock?: boolean; minLineCount?: number; })[]; enableFixer?: boolean; exemptEmptyConstructors?: boolean; exemptEmptyFunctions?: boolean; exemptOverloadedImplementations?: boolean; fixerMessage?: string; minLineCount?: number; publicOnly?: (boolean | { ancestorsOnly?: boolean; cjs?: boolean; esm?: boolean; window?: boolean; }); require?: { ArrowFunctionExpression?: boolean; ClassDeclaration?: boolean; ClassExpression?: boolean; FunctionDeclaration?: boolean; FunctionExpression?: boolean; MethodDefinition?: boolean; }; skipInterveningOverloadedDeclarations?: boolean; }]; // ----- jsdoc/require-param ----- type JsdocRequireParam = [] | [{ autoIncrementBase?: number; checkConstructors?: boolean; checkDestructured?: boolean; checkDestructuredRoots?: boolean; checkGetters?: boolean; checkRestProperty?: boolean; checkSetters?: boolean; checkTypesPattern?: string; contexts?: (string | { comment?: string; context?: string; })[]; enableFixer?: boolean; enableRestElementFixer?: boolean; enableRootFixer?: boolean; exemptedBy?: string[]; ignoreWhenAllParamsMissing?: boolean; interfaceExemptsParamsCheck?: boolean; unnamedRootBase?: string[]; useDefaultObjectProperties?: boolean; }]; // ----- jsdoc/require-param-description ----- type JsdocRequireParamDescription = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; defaultDestructuredRootDescription?: string; setDefaultDestructuredRootDescription?: boolean; }]; // ----- jsdoc/require-param-name ----- type JsdocRequireParamName = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; }]; // ----- jsdoc/require-param-type ----- type JsdocRequireParamType = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; defaultDestructuredRootType?: string; setDefaultDestructuredRootType?: boolean; }]; // ----- jsdoc/require-rejects ----- type JsdocRequireRejects = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; exemptedBy?: string[]; }]; // ----- jsdoc/require-returns ----- type JsdocRequireReturns = [] | [{ checkConstructors?: boolean; checkGetters?: boolean; contexts?: (string | { comment?: string; context?: string; forceRequireReturn?: boolean; })[]; enableFixer?: boolean; exemptedBy?: string[]; forceRequireReturn?: boolean; forceReturnsWithAsync?: boolean; publicOnly?: (boolean | { ancestorsOnly?: boolean; cjs?: boolean; esm?: boolean; window?: boolean; }); }]; // ----- jsdoc/require-returns-check ----- type JsdocRequireReturnsCheck = [] | [{ exemptAsync?: boolean; exemptGenerators?: boolean; noNativeTypes?: boolean; reportMissingReturnForUndefinedTypes?: boolean; }]; // ----- jsdoc/require-returns-description ----- type JsdocRequireReturnsDescription = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; }]; // ----- jsdoc/require-returns-type ----- type JsdocRequireReturnsType = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; }]; // ----- jsdoc/require-tags ----- type JsdocRequireTags = [] | [{ tags?: (string | { context?: string; tag?: string; [k: string]: unknown | undefined; })[]; }]; // ----- jsdoc/require-template ----- type JsdocRequireTemplate = [] | [{ exemptedBy?: string[]; requireSeparateTemplates?: boolean; }]; // ----- jsdoc/require-throws ----- type JsdocRequireThrows = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; exemptedBy?: string[]; }]; // ----- jsdoc/require-yields ----- type JsdocRequireYields = [] | [{ contexts?: (string | { comment?: string; context?: string; })[]; exemptedBy?: string[]; forceRequireNext?: boolean; forceRequireYields?: boolean; next?: boolean; nextWithGeneratorTag?: boolean; withGeneratorTag?: boolean; }]; // ----- jsdoc/require-yields-check ----- type JsdocRequireYieldsCheck = [] | [{ checkGeneratorsOnly?: boolean; contexts?: (string | { comment?: string; context?: string; })[]; next?: boolean; }]; // ----- jsdoc/sort-tags ----- type JsdocSortTags = [] | [{ alphabetizeExtras?: boolean; linesBetween?: number; reportIntraTagGroupSpacing?: boolean; reportTagGroupSpacing?: boolean; tagExceptions?: { [k: string]: number; }; tagSequence?: { tags?: string[]; }[]; }]; // ----- jsdoc/tag-lines ----- type JsdocTagLines = [] | [("always" | "any" | "never")] | [("always" | "any" | "never"), { applyToEndTag?: boolean; count?: number; endLines?: (number | null); maxBlockLines?: (number | null); startLines?: (number | null); startLinesWithNoTags?: number; tags?: { [k: string]: { count?: number; lines?: ("always" | "never" | "any"); }; }; }]; // ----- jsdoc/text-escaping ----- type JsdocTextEscaping = [] | [{ escapeHTML?: boolean; escapeMarkdown?: boolean; }]; // ----- jsdoc/ts-method-signature-style ----- type JsdocTsMethodSignatureStyle = [] | [("method" | "property")] | [("method" | "property"), { enableFixer?: boolean; }]; // ----- jsdoc/ts-no-unnecessary-template-expression ----- type JsdocTsNoUnnecessaryTemplateExpression = [] | [{ enableFixer?: boolean; }]; // ----- jsdoc/ts-prefer-function-type ----- type JsdocTsPreferFunctionType = [] | [{ enableFixer?: boolean; }]; // ----- jsdoc/type-formatting ----- type JsdocTypeFormatting = [] | [{ arrayBrackets?: ("angle" | "square"); arrowFunctionPostReturnMarkerSpacing?: string; arrowFunctionPreReturnMarkerSpacing?: string; enableFixer?: boolean; functionOrClassParameterSpacing?: string; functionOrClassPostGenericSpacing?: string; functionOrClassPostReturnMarkerSpacing?: string; functionOrClassPreReturnMarkerSpacing?: string; functionOrClassTypeParameterSpacing?: string; genericAndTupleElementSpacing?: string; genericDot?: boolean; keyValuePostColonSpacing?: string; keyValuePostKeySpacing?: string; keyValuePostOptionalSpacing?: string; keyValuePostVariadicSpacing?: string; methodQuotes?: ("double" | "single"); objectFieldIndent?: string; objectFieldQuote?: ("double" | "single" | null); objectFieldSeparator?: ("comma" | "comma-and-linebreak" | "linebreak" | "semicolon" | "semicolon-and-linebreak"); objectFieldSeparatorOptionalLinebreak?: boolean; objectFieldSeparatorTrailingPunctuation?: boolean; objectTypeBracketSpacing?: string; parameterDefaultValueSpacing?: string; postMethodNameSpacing?: string; postNewSpacing?: string; separatorForSingleObjectField?: boolean; stringQuotes?: ("double" | "single"); trailingPunctuationMultilineOnly?: boolean; typeBracketSpacing?: string; unionSpacing?: string; }]; // ----- jsdoc/valid-types ----- type JsdocValidTypes = [] | [{ allowEmptyNamepaths?: boolean; }]; // ----- jsonc/array-bracket-newline ----- type JsoncArrayBracketNewline = [] | [(("always" | "never" | "consistent") | { multiline?: boolean; minItems?: (number | null); })]; // ----- jsonc/array-bracket-spacing ----- type JsoncArrayBracketSpacing = [] | [("always" | "never")] | [("always" | "never"), { singleValue?: boolean; objectsInArrays?: boolean; arraysInArrays?: boolean; }]; // ----- jsonc/array-element-newline ----- type JsoncArrayElementNewline = [] | [(_JsoncArrayElementNewlineBasicConfig | { ArrayExpression?: _JsoncArrayElementNewlineBasicConfig; JSONArrayExpression?: _JsoncArrayElementNewlineBasicConfig; ArrayPattern?: _JsoncArrayElementNewlineBasicConfig; })]; type _JsoncArrayElementNewlineBasicConfig = (("always" | "never" | "consistent") | { multiline?: boolean; minItems?: (number | null); }); // ----- jsonc/comma-dangle ----- type JsoncCommaDangle = [] | [(_JsoncCommaDangleValue | { arrays?: _JsoncCommaDangleValueWithIgnore; objects?: _JsoncCommaDangleValueWithIgnore; imports?: _JsoncCommaDangleValueWithIgnore; exports?: _JsoncCommaDangleValueWithIgnore; functions?: _JsoncCommaDangleValueWithIgnore; })]; type _JsoncCommaDangleValue = ("always-multiline" | "always" | "never" | "only-multiline"); type _JsoncCommaDangleValueWithIgnore = ("always-multiline" | "always" | "ignore" | "never" | "only-multiline"); // ----- jsonc/comma-style ----- type JsoncCommaStyle = [] | [("first" | "last")] | [("first" | "last"), { exceptions?: { [k: string]: boolean | undefined; }; }]; // ----- jsonc/indent ----- type JsoncIndent = [] | [("tab" | number)] | [("tab" | number), { SwitchCase?: number; VariableDeclarator?: ((number | ("first" | "off")) | { var?: (number | ("first" | "off")); let?: (number | ("first" | "off")); const?: (number | ("first" | "off")); }); outerIIFEBody?: (number | "off"); MemberExpression?: (number | "off"); FunctionDeclaration?: { parameters?: (number | ("first" | "off")); body?: number; }; FunctionExpression?: { parameters?: (number | ("first" | "off")); body?: number; }; StaticBlock?: { body?: number; }; CallExpression?: { arguments?: (number | ("first" | "off")); }; ArrayExpression?: (number | ("first" | "off")); ObjectExpression?: (number | ("first" | "off")); ImportDeclaration?: (number | ("first" | "off")); flatTernaryExpressions?: boolean; offsetTernaryExpressions?: boolean; ignoredNodes?: string[]; ignoreComments?: boolean; }]; // ----- jsonc/key-name-casing ----- type JsoncKeyNameCasing = [] | [{ camelCase?: boolean; PascalCase?: boolean; SCREAMING_SNAKE_CASE?: boolean; "kebab-case"?: boolean; snake_case?: boolean; ignores?: string[]; }]; // ----- jsonc/key-spacing ----- type JsoncKeySpacing = [] | [({ align?: (("colon" | "value") | { mode?: ("strict" | "minimum"); on?: ("colon" | "value"); beforeColon?: boolean; afterColon?: boolean; }); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; } | { singleLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; multiLine?: { align?: (("colon" | "value") | { mode?: ("strict" | "minimum"); on?: ("colon" | "value"); beforeColon?: boolean; afterColon?: boolean; }); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; } | { singleLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; multiLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; align?: { mode?: ("strict" | "minimum"); on?: ("colon" | "value"); beforeColon?: boolean; afterColon?: boolean; }; })]; // ----- jsonc/no-irregular-whitespace ----- type JsoncNoIrregularWhitespace = [] | [{ skipComments?: boolean; skipStrings?: boolean; skipTemplates?: boolean; skipRegExps?: boolean; skipJSXText?: boolean; }]; // ----- jsonc/no-useless-escape ----- type JsoncNoUselessEscape = [] | [{ allowRegexCharacters?: string[]; }]; // ----- jsonc/object-curly-newline ----- type JsoncObjectCurlyNewline = [] | [((("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }) | { ObjectExpression?: (("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }); ObjectPattern?: (("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }); ImportDeclaration?: (("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }); ExportDeclaration?: (("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }); })]; // ----- jsonc/object-curly-spacing ----- type JsoncObjectCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), { arraysInObjects?: boolean; objectsInObjects?: boolean; emptyObjects?: ("ignore" | "always" | "never"); }]; // ----- jsonc/object-property-newline ----- type JsoncObjectPropertyNewline = [] | [{ allowAllPropertiesOnSameLine?: boolean; allowMultiplePropertiesPerLine?: boolean; }]; // ----- jsonc/quote-props ----- type JsoncQuoteProps = ([] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [("always" | "as-needed" | "consistent" | "consistent-as-needed"), { keywords?: boolean; unnecessary?: boolean; numbers?: boolean; }]); // ----- jsonc/quotes ----- type JsoncQuotes = [] | [("single" | "double" | "backtick")] | [("single" | "double" | "backtick"), ("avoid-escape" | { avoidEscape?: boolean; allowTemplateLiterals?: boolean; })]; // ----- jsonc/sort-array-values ----- type JsoncSortArrayValues = [{ pathPattern: string; order: ((string | { valuePattern?: string; order?: { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }; })[] | { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }); minValues?: number; }, ...({ pathPattern: string; order: ((string | { valuePattern?: string; order?: { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }; })[] | { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }); minValues?: number; })[]]; // ----- jsonc/sort-keys ----- type JsoncSortKeys = ([{ pathPattern: string; hasProperties?: string[]; order: ((string | { keyPattern?: string; order?: { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }; })[] | { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }); minKeys?: number; allowLineSeparatedGroups?: boolean; }, ...({ pathPattern: string; hasProperties?: string[]; order: ((string | { keyPattern?: string; order?: { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }; })[] | { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }); minKeys?: number; allowLineSeparatedGroups?: boolean; })[]] | [] | [("asc" | "desc")] | [("asc" | "desc"), { caseSensitive?: boolean; natural?: boolean; minKeys?: number; allowLineSeparatedGroups?: boolean; }]); // ----- jsonc/space-unary-ops ----- type JsoncSpaceUnaryOps = [] | [{ words?: boolean; nonwords?: boolean; overrides?: { [k: string]: boolean | undefined; }; }]; // ----- jsx-quotes ----- type JsxQuotes = [] | [("prefer-single" | "prefer-double")]; // ----- key-spacing ----- type KeySpacing = [] | [({ align?: (("colon" | "value") | { mode?: ("strict" | "minimum"); on?: ("colon" | "value"); beforeColon?: boolean; afterColon?: boolean; }); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; } | { singleLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; multiLine?: { align?: (("colon" | "value") | { mode?: ("strict" | "minimum"); on?: ("colon" | "value"); beforeColon?: boolean; afterColon?: boolean; }); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; } | { singleLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; multiLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; align?: { mode?: ("strict" | "minimum"); on?: ("colon" | "value"); beforeColon?: boolean; afterColon?: boolean; }; })]; // ----- keyword-spacing ----- type KeywordSpacing = [] | [{ before?: boolean; after?: boolean; overrides?: { abstract?: { before?: boolean; after?: boolean; }; as?: { before?: boolean; after?: boolean; }; async?: { before?: boolean; after?: boolean; }; await?: { before?: boolean; after?: boolean; }; boolean?: { before?: boolean; after?: boolean; }; break?: { before?: boolean; after?: boolean; }; byte?: { before?: boolean; after?: boolean; }; case?: { before?: boolean; after?: boolean; }; catch?: { before?: boolean; after?: boolean; }; char?: { before?: boolean; after?: boolean; }; class?: { before?: boolean; after?: boolean; }; const?: { before?: boolean; after?: boolean; }; continue?: { before?: boolean; after?: boolean; }; debugger?: { before?: boolean; after?: boolean; }; default?: { before?: boolean; after?: boolean; }; delete?: { before?: boolean; after?: boolean; }; do?: { before?: boolean; after?: boolean; }; double?: { before?: boolean; after?: boolean; }; else?: { before?: boolean; after?: boolean; }; enum?: { before?: boolean; after?: boolean; }; export?: { before?: boolean; after?: boolean; }; extends?: { before?: boolean; after?: boolean; }; false?: { before?: boolean; after?: boolean; }; final?: { before?: boolean; after?: boolean; }; finally?: { before?: boolean; after?: boolean; }; float?: { before?: boolean; after?: boolean; }; for?: { before?: boolean; after?: boolean; }; from?: { before?: boolean; after?: boolean; }; function?: { before?: boolean; after?: boolean; }; get?: { before?: boolean; after?: boolean; }; goto?: { before?: boolean; after?: boolean; }; if?: { before?: boolean; after?: boolean; }; implements?: { before?: boolean; after?: boolean; }; import?: { before?: boolean; after?: boolean; }; in?: { before?: boolean; after?: boolean; }; instanceof?: { before?: boolean; after?: boolean; }; int?: { before?: boolean; after?: boolean; }; interface?: { before?: boolean; after?: boolean; }; let?: { before?: boolean; after?: boolean; }; long?: { before?: boolean; after?: boolean; }; native?: { before?: boolean; after?: boolean; }; new?: { before?: boolean; after?: boolean; }; null?: { before?: boolean; after?: boolean; }; of?: { before?: boolean; after?: boolean; }; package?: { before?: boolean; after?: boolean; }; private?: { before?: boolean; after?: boolean; }; protected?: { before?: boolean; after?: boolean; }; public?: { before?: boolean; after?: boolean; }; return?: { before?: boolean; after?: boolean; }; set?: { before?: boolean; after?: boolean; }; short?: { before?: boolean; after?: boolean; }; static?: { before?: boolean; after?: boolean; }; super?: { before?: boolean; after?: boolean; }; switch?: { before?: boolean; after?: boolean; }; synchronized?: { before?: boolean; after?: boolean; }; this?: { before?: boolean; after?: boolean; }; throw?: { before?: boolean; after?: boolean; }; throws?: { before?: boolean; after?: boolean; }; transient?: { before?: boolean; after?: boolean; }; true?: { before?: boolean; after?: boolean; }; try?: { before?: boolean; after?: boolean; }; typeof?: { before?: boolean; after?: boolean; }; var?: { before?: boolean; after?: boolean; }; void?: { before?: boolean; after?: boolean; }; volatile?: { before?: boolean; after?: boolean; }; while?: { before?: boolean; after?: boolean; }; with?: { before?: boolean; after?: boolean; }; yield?: { before?: boolean; after?: boolean; }; }; }]; // ----- line-comment-position ----- type LineCommentPosition = [] | [(("above" | "beside") | { position?: ("above" | "beside"); ignorePattern?: string; applyDefaultPatterns?: boolean; applyDefaultIgnorePatterns?: boolean; })]; // ----- linebreak-style ----- type LinebreakStyle = [] | [("unix" | "windows")]; // ----- lines-around-comment ----- type LinesAroundComment = [] | [{ beforeBlockComment?: boolean; afterBlockComment?: boolean; beforeLineComment?: boolean; afterLineComment?: boolean; allowBlockStart?: boolean; allowBlockEnd?: boolean; allowClassStart?: boolean; allowClassEnd?: boolean; allowObjectStart?: boolean; allowObjectEnd?: boolean; allowArrayStart?: boolean; allowArrayEnd?: boolean; ignorePattern?: string; applyDefaultIgnorePatterns?: boolean; afterHashbangComment?: boolean; }]; // ----- lines-around-directive ----- type LinesAroundDirective = [] | [(("always" | "never") | { before?: ("always" | "never"); after?: ("always" | "never"); })]; // ----- lines-between-class-members ----- type LinesBetweenClassMembers = [] | [({ enforce: [{ blankLine: ("always" | "never"); prev: ("method" | "field" | "*"); next: ("method" | "field" | "*"); }, ...({ blankLine: ("always" | "never"); prev: ("method" | "field" | "*"); next: ("method" | "field" | "*"); })[]]; } | ("always" | "never"))] | [({ enforce: [{ blankLine: ("always" | "never"); prev: ("method" | "field" | "*"); next: ("method" | "field" | "*"); }, ...({ blankLine: ("always" | "never"); prev: ("method" | "field" | "*"); next: ("method" | "field" | "*"); })[]]; } | ("always" | "never")), { exceptAfterSingleLine?: boolean; }]; // ----- logical-assignment-operators ----- type LogicalAssignmentOperators = (([] | ["always"] | ["always", { enforceForIfStatements?: boolean; }] | ["never"]) & unknown[]); // ----- markdown/fenced-code-language ----- type MarkdownFencedCodeLanguage = [] | [{ required?: string[]; }]; // ----- markdown/fenced-code-meta ----- type MarkdownFencedCodeMeta = [] | [("always" | "never")]; // ----- markdown/heading-increment ----- type MarkdownHeadingIncrement = [] | [{ frontmatterTitle?: string; }]; // ----- markdown/no-duplicate-definitions ----- type MarkdownNoDuplicateDefinitions = [] | [{ allowDefinitions?: string[]; allowFootnoteDefinitions?: string[]; checkFootnoteDefinitions?: boolean; }]; // ----- markdown/no-duplicate-headings ----- type MarkdownNoDuplicateHeadings = [] | [{ checkSiblingsOnly?: boolean; }]; // ----- markdown/no-empty-definitions ----- type MarkdownNoEmptyDefinitions = [] | [{ allowDefinitions?: string[]; allowFootnoteDefinitions?: string[]; checkFootnoteDefinitions?: boolean; }]; // ----- markdown/no-html ----- type MarkdownNoHtml = [] | [{ allowed?: string[]; allowedIgnoreCase?: boolean; }]; // ----- markdown/no-missing-atx-heading-space ----- type MarkdownNoMissingAtxHeadingSpace = [] | [{ checkClosedHeadings?: boolean; }]; // ----- markdown/no-missing-label-refs ----- type MarkdownNoMissingLabelRefs = [] | [{ allowLabels?: string[]; }]; // ----- markdown/no-missing-link-fragments ----- type MarkdownNoMissingLinkFragments = [] | [{ ignoreCase?: boolean; allowPattern?: string; }]; // ----- markdown/no-multiple-h1 ----- type MarkdownNoMultipleH1 = [] | [{ frontmatterTitle?: string; }]; // ----- markdown/no-space-in-emphasis ----- type MarkdownNoSpaceInEmphasis = [] | [{ checkStrikethrough?: boolean; }]; // ----- markdown/no-unused-definitions ----- type MarkdownNoUnusedDefinitions = [] | [{ allowDefinitions?: string[]; allowFootnoteDefinitions?: string[]; checkFootnoteDefinitions?: boolean; }]; // ----- markdown/table-column-count ----- type MarkdownTableColumnCount = [] | [{ checkMissingCells?: boolean; }]; // ----- max-classes-per-file ----- type MaxClassesPerFile = [] | [(number | { ignoreExpressions?: boolean; max?: number; })]; // ----- max-depth ----- type MaxDepth = [] | [(number | { maximum?: number; max?: number; })]; // ----- max-len ----- type MaxLen = [] | [({ code?: number; comments?: number; tabWidth?: number; ignorePattern?: string; ignoreComments?: boolean; ignoreStrings?: boolean; ignoreUrls?: boolean; ignoreTemplateLiterals?: boolean; ignoreRegExpLiterals?: boolean; ignoreTrailingComments?: boolean; } | number)] | [({ code?: number; comments?: number; tabWidth?: number; ignorePattern?: string; ignoreComments?: boolean; ignoreStrings?: boolean; ignoreUrls?: boolean; ignoreTemplateLiterals?: boolean; ignoreRegExpLiterals?: boolean; ignoreTrailingComments?: boolean; } | number), ({ code?: number; comments?: number; tabWidth?: number; ignorePattern?: string; ignoreComments?: boolean; ignoreStrings?: boolean; ignoreUrls?: boolean; ignoreTemplateLiterals?: boolean; ignoreRegExpLiterals?: boolean; ignoreTrailingComments?: boolean; } | number)] | [({ code?: number; comments?: number; tabWidth?: number; ignorePattern?: string; ignoreComments?: boolean; ignoreStrings?: boolean; ignoreUrls?: boolean; ignoreTemplateLiterals?: boolean; ignoreRegExpLiterals?: boolean; ignoreTrailingComments?: boolean; } | number), ({ code?: number; comments?: number; tabWidth?: number; ignorePattern?: string; ignoreComments?: boolean; ignoreStrings?: boolean; ignoreUrls?: boolean; ignoreTemplateLiterals?: boolean; ignoreRegExpLiterals?: boolean; ignoreTrailingComments?: boolean; } | number), { code?: number; comments?: number; tabWidth?: number; ignorePattern?: string; ignoreComments?: boolean; ignoreStrings?: boolean; ignoreUrls?: boolean; ignoreTemplateLiterals?: boolean; ignoreRegExpLiterals?: boolean; ignoreTrailingComments?: boolean; }]; // ----- max-lines ----- type MaxLines = [] | [(number | { max?: number; skipComments?: boolean; skipBlankLines?: boolean; })]; // ----- max-lines-per-function ----- type MaxLinesPerFunction = [] | [({ max?: number; skipComments?: boolean; skipBlankLines?: boolean; IIFEs?: boolean; } | number)]; // ----- max-nested-callbacks ----- type MaxNestedCallbacks = [] | [(number | { maximum?: number; max?: number; })]; // ----- max-params ----- type MaxParams = [] | [(number | { maximum?: number; max?: number; countVoidThis?: boolean; countThis?: ("never" | "except-void" | "always"); })]; // ----- max-statements ----- type MaxStatements = [] | [(number | { maximum?: number; max?: number; })] | [(number | { maximum?: number; max?: number; }), { ignoreTopLevelFunctions?: boolean; }]; // ----- max-statements-per-line ----- type MaxStatementsPerLine = [] | [{ max?: number; }]; // ----- multiline-comment-style ----- type MultilineCommentStyle = ([] | [("starred-block" | "bare-block")] | [] | ["separate-lines"] | ["separate-lines", { checkJSDoc?: boolean; }]); // ----- multiline-ternary ----- type MultilineTernary = [] | [("always" | "always-multiline" | "never")]; // ----- new-cap ----- type NewCap = [] | [{ newIsCap?: boolean; capIsNew?: boolean; newIsCapExceptions?: string[]; newIsCapExceptionPattern?: string; capIsNewExceptions?: string[]; capIsNewExceptionPattern?: string; properties?: boolean; }]; // ----- new-parens ----- type NewParens = [] | [("always" | "never")]; // ----- newline-after-var ----- type NewlineAfterVar = [] | [("never" | "always")]; // ----- newline-per-chained-call ----- type NewlinePerChainedCall = [] | [{ ignoreChainWithDepth?: number; }]; // ----- no-bitwise ----- type NoBitwise = [] | [{ allow?: ("^" | "|" | "&" | "<<" | ">>" | ">>>" | "^=" | "|=" | "&=" | "<<=" | ">>=" | ">>>=" | "~")[]; int32Hint?: boolean; }]; // ----- no-cond-assign ----- type NoCondAssign = [] | [("except-parens" | "always")]; // ----- no-confusing-arrow ----- type NoConfusingArrow = [] | [{ allowParens?: boolean; onlyOneSimpleParam?: boolean; }]; // ----- no-console ----- type NoConsole = [] | [{ allow?: [string, ...(string)[]]; }]; // ----- no-constant-condition ----- type NoConstantCondition = [] | [{ checkLoops?: ("all" | "allExceptWhileTrue" | "none" | true | false); }]; // ----- no-duplicate-imports ----- type NoDuplicateImports = [] | [{ includeExports?: boolean; allowSeparateTypeImports?: boolean; }]; // ----- no-else-return ----- type NoElseReturn = [] | [{ allowElseIf?: boolean; }]; // ----- no-empty ----- type NoEmpty = [] | [{ allowEmptyCatch?: boolean; }]; // ----- no-empty-function ----- type NoEmptyFunction = [] | [{ allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "asyncFunctions" | "asyncMethods" | "privateConstructors" | "protectedConstructors" | "decoratedFunctions" | "overrideMethods")[]; }]; // ----- no-empty-pattern ----- type NoEmptyPattern = [] | [{ allowObjectPatternsAsParameters?: boolean; }]; // ----- no-eval ----- type NoEval = [] | [{ allowIndirect?: boolean; }]; // ----- no-extend-native ----- type NoExtendNative = [] | [{ exceptions?: string[]; }]; // ----- no-extra-boolean-cast ----- type NoExtraBooleanCast = [] | [({ enforceForInnerExpressions?: boolean; } | { enforceForLogicalOperands?: boolean; })]; // ----- no-extra-parens ----- type NoExtraParens = ([] | ["functions"] | [] | ["all"] | ["all", { conditionalAssign?: boolean; ternaryOperandBinaryExpressions?: boolean; nestedBinaryExpressions?: boolean; returnAssign?: boolean; ignoreJSX?: ("none" | "all" | "single-line" | "multi-line"); enforceForArrowConditionals?: boolean; enforceForSequenceExpressions?: boolean; enforceForNewInMemberExpressions?: boolean; enforceForFunctionPrototypeMethods?: boolean; allowParensAfterCommentPattern?: string; }]); // ----- no-fallthrough ----- type NoFallthrough = [] | [{ commentPattern?: string; allowEmptyCase?: boolean; reportUnusedFallthroughComment?: boolean; }]; // ----- no-global-assign ----- type NoGlobalAssign = [] | [{ exceptions?: string[]; }]; // ----- no-implicit-coercion ----- type NoImplicitCoercion = [] | [{ boolean?: boolean; number?: boolean; string?: boolean; disallowTemplateShorthand?: boolean; allow?: ("~" | "!!" | "+" | "- -" | "-" | "*")[]; }]; // ----- no-implicit-globals ----- type NoImplicitGlobals = [] | [{ lexicalBindings?: boolean; }]; // ----- no-inline-comments ----- type NoInlineComments = [] | [{ ignorePattern?: string; }]; // ----- no-inner-declarations ----- type NoInnerDeclarations = [] | [("functions" | "both")] | [("functions" | "both"), { blockScopedFunctions?: ("allow" | "disallow"); }]; // ----- no-invalid-regexp ----- type NoInvalidRegexp = [] | [{ allowConstructorFlags?: string[]; }]; // ----- no-invalid-this ----- type NoInvalidThis = [] | [{ capIsConstructor?: boolean; }]; // ----- no-irregular-whitespace ----- type NoIrregularWhitespace = [] | [{ skipComments?: boolean; skipStrings?: boolean; skipTemplates?: boolean; skipRegExps?: boolean; skipJSXText?: boolean; }]; // ----- no-labels ----- type NoLabels = [] | [{ allowLoop?: boolean; allowSwitch?: boolean; }]; // ----- no-magic-numbers ----- type NoMagicNumbers = [] | [{ detectObjects?: boolean; enforceConst?: boolean; ignore?: (number | string)[]; ignoreArrayIndexes?: boolean; ignoreDefaultValues?: boolean; ignoreClassFieldInitialValues?: boolean; ignoreEnums?: boolean; ignoreNumericLiteralTypes?: boolean; ignoreReadonlyClassProperties?: boolean; ignoreTypeIndexes?: boolean; }]; // ----- no-misleading-character-class ----- type NoMisleadingCharacterClass = [] | [{ allowEscape?: boolean; }]; // ----- no-mixed-operators ----- type NoMixedOperators = [] | [{ groups?: [("+" | "-" | "*" | "/" | "%" | "**" | "&" | "|" | "^" | "~" | "<<" | ">>" | ">>>" | "==" | "!=" | "===" | "!==" | ">" | ">=" | "<" | "<=" | "&&" | "||" | "in" | "instanceof" | "?:" | "??"), ("+" | "-" | "*" | "/" | "%" | "**" | "&" | "|" | "^" | "~" | "<<" | ">>" | ">>>" | "==" | "!=" | "===" | "!==" | ">" | ">=" | "<" | "<=" | "&&" | "||" | "in" | "instanceof" | "?:" | "??"), ...(("+" | "-" | "*" | "/" | "%" | "**" | "&" | "|" | "^" | "~" | "<<" | ">>" | ">>>" | "==" | "!=" | "===" | "!==" | ">" | ">=" | "<" | "<=" | "&&" | "||" | "in" | "instanceof" | "?:" | "??"))[]][]; allowSamePrecedence?: boolean; }]; // ----- no-mixed-requires ----- type NoMixedRequires = [] | [(boolean | { grouping?: boolean; allowCall?: boolean; })]; // ----- no-mixed-spaces-and-tabs ----- type NoMixedSpacesAndTabs = [] | [("smart-tabs" | true | false)]; // ----- no-multi-assign ----- type NoMultiAssign = [] | [{ ignoreNonDeclaration?: boolean; }]; // ----- no-multi-spaces ----- type NoMultiSpaces = [] | [{ exceptions?: { [k: string]: boolean; }; ignoreEOLComments?: boolean; }]; // ----- no-multiple-empty-lines ----- type NoMultipleEmptyLines = [] | [{ max: number; maxEOF?: number; maxBOF?: number; }]; // ----- no-native-reassign ----- type NoNativeReassign = [] | [{ exceptions?: string[]; }]; // ----- no-param-reassign ----- type NoParamReassign = [] | [({ props?: false; } | { props?: true; ignorePropertyModificationsFor?: string[]; ignorePropertyModificationsForRegex?: string[]; })]; // ----- no-plusplus ----- type NoPlusplus = [] | [{ allowForLoopAfterthoughts?: boolean; }]; // ----- no-promise-executor-return ----- type NoPromiseExecutorReturn = [] | [{ allowVoid?: boolean; }]; // ----- no-redeclare ----- type NoRedeclare = [] | [{ builtinGlobals?: boolean; }]; // ----- no-restricted-exports ----- type NoRestrictedExports = [] | [({ restrictedNamedExports?: string[]; restrictedNamedExportsPattern?: string; } | { restrictedNamedExports?: string[]; restrictedNamedExportsPattern?: string; restrictDefaultExports?: { direct?: boolean; named?: boolean; defaultFrom?: boolean; namedFrom?: boolean; namespaceFrom?: boolean; }; })]; // ----- no-restricted-globals ----- type NoRestrictedGlobals = ((string | { name: string; message?: string; })[] | [] | [{ globals: (string | { name: string; message?: string; })[]; checkGlobalObject?: boolean; globalObjects?: string[]; }]); // ----- no-restricted-imports ----- type NoRestrictedImports = ((string | { name: string; message?: string; importNames?: string[]; allowImportNames?: string[]; allowTypeImports?: boolean; })[] | [] | [{ paths?: (string | { name: string; message?: string; importNames?: string[]; allowImportNames?: string[]; allowTypeImports?: boolean; })[]; patterns?: (string[] | ({ [k: string]: unknown | undefined; } | { [k: string]: unknown | undefined; })[]); }]); // ----- no-restricted-modules ----- type NoRestrictedModules = ((string | { name: string; message?: string; })[] | { paths?: (string | { name: string; message?: string; })[]; patterns?: string[]; }[]); // ----- no-restricted-properties ----- type NoRestrictedProperties = ({ [k: string]: unknown | undefined; } | { [k: string]: unknown | undefined; })[]; // ----- no-restricted-syntax ----- type NoRestrictedSyntax = (string | { selector: string; message?: string; })[]; // ----- no-return-assign ----- type NoReturnAssign = [] | [("except-parens" | "always")]; // ----- no-self-assign ----- type NoSelfAssign = [] | [{ props?: boolean; }]; // ----- no-sequences ----- type NoSequences = [] | [{ allowInParentheses?: boolean; }]; // ----- no-shadow ----- type NoShadow = [] | [{ builtinGlobals?: boolean; hoist?: ("all" | "functions" | "never" | "types" | "functions-and-types"); allow?: string[]; ignoreOnInitialization?: boolean; ignoreTypeValueShadow?: boolean; ignoreFunctionTypeParameterNameValueShadow?: boolean; }]; // ----- no-shadow-restricted-names ----- type NoShadowRestrictedNames = [] | [{ reportGlobalThis?: boolean; }]; // ----- no-sync ----- type NoSync = [] | [{ allowAtRootLevel?: boolean; }]; // ----- no-tabs ----- type NoTabs = [] | [{ allowIndentationTabs?: boolean; }]; // ----- no-trailing-spaces ----- type NoTrailingSpaces = [] | [{ skipBlankLines?: boolean; ignoreComments?: boolean; }]; // ----- no-undef ----- type NoUndef = [] | [{ typeof?: boolean; }]; // ----- no-underscore-dangle ----- type NoUnderscoreDangle = [] | [{ allow?: string[]; allowAfterThis?: boolean; allowAfterSuper?: boolean; allowAfterThisConstructor?: boolean; enforceInMethodNames?: boolean; allowFunctionParams?: boolean; enforceInClassFields?: boolean; allowInArrayDestructuring?: boolean; allowInObjectDestructuring?: boolean; }]; // ----- no-unneeded-ternary ----- type NoUnneededTernary = [] | [{ defaultAssignment?: boolean; }]; // ----- no-unreachable-loop ----- type NoUnreachableLoop = [] | [{ ignore?: ("WhileStatement" | "DoWhileStatement" | "ForStatement" | "ForInStatement" | "ForOfStatement")[]; }]; // ----- no-unsafe-negation ----- type NoUnsafeNegation = [] | [{ enforceForOrderingRelations?: boolean; }]; // ----- no-unsafe-optional-chaining ----- type NoUnsafeOptionalChaining = [] | [{ disallowArithmeticOperators?: boolean; }]; // ----- no-unused-expressions ----- type NoUnusedExpressions = [] | [{ allowShortCircuit?: boolean; allowTernary?: boolean; allowTaggedTemplates?: boolean; enforceForJSX?: boolean; ignoreDirectives?: boolean; }]; // ----- no-unused-vars ----- type NoUnusedVars = [] | [(("all" | "local") | { vars?: ("all" | "local"); varsIgnorePattern?: string; args?: ("all" | "after-used" | "none"); ignoreRestSiblings?: boolean; argsIgnorePattern?: string; caughtErrors?: ("all" | "none"); caughtErrorsIgnorePattern?: string; destructuredArrayIgnorePattern?: string; ignoreClassWithStaticInitBlock?: boolean; ignoreUsingDeclarations?: boolean; reportUsedIgnorePattern?: boolean; })]; // ----- no-use-before-define ----- type NoUseBeforeDefine = [] | [("nofunc" | { functions?: boolean; classes?: boolean; variables?: boolean; allowNamedExports?: boolean; enums?: boolean; typedefs?: boolean; ignoreTypeReferences?: boolean; })]; // ----- no-useless-computed-key ----- type NoUselessComputedKey = [] | [{ enforceForClassMembers?: boolean; }]; // ----- no-useless-escape ----- type NoUselessEscape = [] | [{ allowRegexCharacters?: string[]; }]; // ----- no-useless-rename ----- type NoUselessRename = [] | [{ ignoreDestructuring?: boolean; ignoreImport?: boolean; ignoreExport?: boolean; }]; // ----- no-void ----- type NoVoid = [] | [{ allowAsStatement?: boolean; }]; // ----- no-warning-comments ----- type NoWarningComments = [] | [{ terms?: string[]; location?: ("start" | "anywhere"); decoration?: [string, ...(string)[]]; }]; // ----- node/callback-return ----- type NodeCallbackReturn = [] | [string[]]; // ----- node/exports-style ----- type NodeExportsStyle = [] | [("module.exports" | "exports")] | [("module.exports" | "exports"), { allowBatchAssign?: boolean; }]; // ----- node/file-extension-in-import ----- type NodeFileExtensionInImport = [] | [("always" | "never")] | [("always" | "never"), { [k: string]: ("always" | "never") | undefined; }]; // ----- node/handle-callback-err ----- type NodeHandleCallbackErr = [] | [string]; // ----- node/hashbang ----- type NodeHashbang = [] | [{ convertPath?: ({ [k: string]: [string, string]; } | [{ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; }, ...({ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; })[]]); ignoreUnpublished?: boolean; additionalExecutables?: string[]; executableMap?: { [k: string]: string; }; }]; // ----- node/no-deprecated-api ----- type NodeNoDeprecatedApi = [] | [{ version?: string; ignoreModuleItems?: ("_linklist" | "_stream_wrap" | "async_hooks.currentId" | "async_hooks.triggerId" | "buffer.Buffer()" | "new buffer.Buffer()" | "buffer.SlowBuffer" | "constants" | "crypto._toBuf" | "crypto.Credentials" | "crypto.DEFAULT_ENCODING" | "crypto.createCipher" | "crypto.createCredentials" | "crypto.createDecipher" | "crypto.fips" | "crypto.prng" | "crypto.pseudoRandomBytes" | "crypto.rng" | "domain" | "events.EventEmitter.listenerCount" | "events.listenerCount" | "freelist" | "fs.SyncWriteStream" | "fs.exists" | "fs.lchmod" | "fs.lchmodSync" | "http.createClient" | "module.Module.createRequireFromPath" | "module.Module.requireRepl" | "module.Module._debug" | "module.createRequireFromPath" | "module.requireRepl" | "module._debug" | "net._setSimultaneousAccepts" | "os.getNetworkInterfaces" | "os.tmpDir" | "path._makeLong" | "process.EventEmitter" | "process.assert" | "process.binding" | "process.env.NODE_REPL_HISTORY_FILE" | "process.report.triggerReport" | "punycode" | "readline.codePointAt" | "readline.getStringWidth" | "readline.isFullWidthCodePoint" | "readline.stripVTControlCharacters" | "repl.REPLServer" | "repl.Recoverable" | "repl.REPL_MODE_MAGIC" | "repl.builtinModules" | "safe-buffer.Buffer()" | "new safe-buffer.Buffer()" | "safe-buffer.SlowBuffer" | "sys" | "timers.enroll" | "timers.unenroll" | "tls.CleartextStream" | "tls.CryptoStream" | "tls.SecurePair" | "tls.convertNPNProtocols" | "tls.createSecurePair" | "tls.parseCertString" | "tty.setRawMode" | "url.parse" | "url.resolve" | "util.debug" | "util.error" | "util.isArray" | "util.isBoolean" | "util.isBuffer" | "util.isDate" | "util.isError" | "util.isFunction" | "util.isNull" | "util.isNullOrUndefined" | "util.isNumber" | "util.isObject" | "util.isPrimitive" | "util.isRegExp" | "util.isString" | "util.isSymbol" | "util.isUndefined" | "util.log" | "util.print" | "util.pump" | "util.puts" | "util._extend" | "vm.runInDebugContext" | "zlib.BrotliCompress()" | "zlib.BrotliDecompress()" | "zlib.Deflate()" | "zlib.DeflateRaw()" | "zlib.Gunzip()" | "zlib.Gzip()" | "zlib.Inflate()" | "zlib.InflateRaw()" | "zlib.Unzip()")[]; ignoreGlobalItems?: ("Buffer()" | "new Buffer()" | "COUNTER_NET_SERVER_CONNECTION" | "COUNTER_NET_SERVER_CONNECTION_CLOSE" | "COUNTER_HTTP_SERVER_REQUEST" | "COUNTER_HTTP_SERVER_RESPONSE" | "COUNTER_HTTP_CLIENT_REQUEST" | "COUNTER_HTTP_CLIENT_RESPONSE" | "GLOBAL" | "Intl.v8BreakIterator" | "require.extensions" | "root" | "process.EventEmitter" | "process.assert" | "process.binding" | "process.env.NODE_REPL_HISTORY_FILE" | "process.report.triggerReport")[]; ignoreIndirectDependencies?: boolean; }]; // ----- node/no-extraneous-import ----- type NodeNoExtraneousImport = [] | [{ allowModules?: string[]; convertPath?: ({ [k: string]: [string, string]; } | [{ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; }, ...({ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; })[]]); resolvePaths?: string[]; resolverConfig?: { [k: string]: unknown | undefined; }; }]; // ----- node/no-extraneous-require ----- type NodeNoExtraneousRequire = [] | [{ allowModules?: string[]; convertPath?: ({ [k: string]: [string, string]; } | [{ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; }, ...({ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; })[]]); resolvePaths?: string[]; resolverConfig?: { [k: string]: unknown | undefined; }; tryExtensions?: string[]; }]; // ----- node/no-hide-core-modules ----- type NodeNoHideCoreModules = [] | [{ allow?: ("assert" | "buffer" | "child_process" | "cluster" | "console" | "constants" | "crypto" | "dgram" | "dns" | "events" | "fs" | "http" | "https" | "module" | "net" | "os" | "path" | "querystring" | "readline" | "repl" | "stream" | "string_decoder" | "timers" | "tls" | "tty" | "url" | "util" | "vm" | "zlib")[]; ignoreDirectDependencies?: boolean; ignoreIndirectDependencies?: boolean; }]; // ----- node/no-missing-import ----- type NodeNoMissingImport = [] | [{ allowModules?: string[]; resolvePaths?: string[]; resolverConfig?: { [k: string]: unknown | undefined; }; tryExtensions?: string[]; ignoreTypeImport?: boolean; tsconfigPath?: string; typescriptExtensionMap?: (unknown[][] | ("react" | "react-jsx" | "react-jsxdev" | "react-native" | "preserve")); }]; // ----- node/no-missing-require ----- type NodeNoMissingRequire = [] | [{ allowModules?: string[]; tryExtensions?: string[]; resolvePaths?: string[]; resolverConfig?: { [k: string]: unknown | undefined; }; typescriptExtensionMap?: (unknown[][] | ("react" | "react-jsx" | "react-jsxdev" | "react-native" | "preserve")); tsconfigPath?: string; }]; // ----- node/no-mixed-requires ----- type NodeNoMixedRequires = [] | [(boolean | { grouping?: boolean; allowCall?: boolean; })]; // ----- node/no-process-env ----- type NodeNoProcessEnv = [] | [{ allowedVariables?: string[]; }]; // ----- node/no-restricted-import ----- type NodeNoRestrictedImport = [] | [(string | { name: (string | string[]); message?: string; })[]]; // ----- node/no-restricted-require ----- type NodeNoRestrictedRequire = [] | [(string | { name: (string | string[]); message?: string; })[]]; // ----- node/no-sync ----- type NodeNoSync = [] | [{ allowAtRootLevel?: boolean; ignores?: (string | { from?: "file"; path?: string; name?: string[]; } | { from?: "lib"; name?: string[]; } | { from?: "package"; package?: string; name?: string[]; })[]; }]; // ----- node/no-top-level-await ----- type NodeNoTopLevelAwait = [] | [{ ignoreBin?: boolean; convertPath?: ({ [k: string]: [string, string]; } | [{ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; }, ...({ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; })[]]); }]; // ----- node/no-unpublished-bin ----- type NodeNoUnpublishedBin = [] | [{ convertPath?: ({ [k: string]: [string, string]; } | [{ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; }, ...({ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; })[]]); }]; // ----- node/no-unpublished-import ----- type NodeNoUnpublishedImport = [] | [{ allowModules?: string[]; convertPath?: ({ [k: string]: [string, string]; } | [{ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; }, ...({ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; })[]]); resolvePaths?: string[]; resolverConfig?: { [k: string]: unknown | undefined; }; tryExtensions?: string[]; ignoreTypeImport?: boolean; ignorePrivate?: boolean; }]; // ----- node/no-unpublished-require ----- type NodeNoUnpublishedRequire = [] | [{ allowModules?: string[]; convertPath?: ({ [k: string]: [string, string]; } | [{ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; }, ...({ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; })[]]); resolvePaths?: string[]; resolverConfig?: { [k: string]: unknown | undefined; }; tryExtensions?: string[]; ignorePrivate?: boolean; }]; // ----- node/no-unsupported-features/es-builtins ----- type NodeNoUnsupportedFeaturesEsBuiltins = [] | [{ version?: string; ignores?: ("AggregateError" | "Array" | "Array.from" | "Array.isArray" | "Array.length" | "Array.of" | "Array.toLocaleString" | "ArrayBuffer" | "ArrayBuffer.isView" | "Atomics" | "Atomics.add" | "Atomics.and" | "Atomics.compareExchange" | "Atomics.exchange" | "Atomics.isLockFree" | "Atomics.load" | "Atomics.notify" | "Atomics.or" | "Atomics.store" | "Atomics.sub" | "Atomics.wait" | "Atomics.waitAsync" | "Atomics.xor" | "BigInt" | "BigInt.asIntN" | "BigInt.asUintN" | "BigInt64Array" | "BigInt64Array.BYTES_PER_ELEMENT" | "BigInt64Array.from" | "BigInt64Array.name" | "BigInt64Array.of" | "BigUint64Array" | "BigUint64Array.BYTES_PER_ELEMENT" | "BigUint64Array.from" | "BigUint64Array.name" | "BigUint64Array.of" | "Boolean" | "DataView" | "Date" | "Date.UTC" | "Date.now" | "Date.parse" | "Date.toLocaleDateString" | "Date.toLocaleString" | "Date.toLocaleTimeString" | "Error" | "Error.cause" | "EvalError" | "FinalizationRegistry" | "Float32Array" | "Float32Array.BYTES_PER_ELEMENT" | "Float32Array.from" | "Float32Array.name" | "Float32Array.of" | "Float64Array" | "Float64Array.BYTES_PER_ELEMENT" | "Float64Array.from" | "Float64Array.name" | "Float64Array.of" | "Function" | "Function.length" | "Function.name" | "Infinity" | "Int16Array" | "Int16Array.BYTES_PER_ELEMENT" | "Int16Array.from" | "Int16Array.name" | "Int16Array.of" | "Int32Array" | "Int32Array.BYTES_PER_ELEMENT" | "Int32Array.from" | "Int32Array.name" | "Int32Array.of" | "Int8Array" | "Int8Array.BYTES_PER_ELEMENT" | "Int8Array.from" | "Int8Array.name" | "Int8Array.of" | "Intl" | "Intl.Collator" | "Intl.DateTimeFormat" | "Intl.DisplayNames" | "Intl.ListFormat" | "Intl.Locale" | "Intl.NumberFormat" | "Intl.PluralRules" | "Intl.RelativeTimeFormat" | "Intl.Segmenter" | "Intl.Segments" | "Intl.getCanonicalLocales" | "Intl.supportedValuesOf" | "JSON" | "JSON.parse" | "JSON.stringify" | "Map" | "Map.groupBy" | "Math" | "Math.E" | "Math.LN10" | "Math.LN2" | "Math.LOG10E" | "Math.LOG2E" | "Math.PI" | "Math.SQRT1_2" | "Math.SQRT2" | "Math.abs" | "Math.acos" | "Math.acosh" | "Math.asin" | "Math.asinh" | "Math.atan" | "Math.atan2" | "Math.atanh" | "Math.cbrt" | "Math.ceil" | "Math.clz32" | "Math.cos" | "Math.cosh" | "Math.exp" | "Math.expm1" | "Math.floor" | "Math.fround" | "Math.hypot" | "Math.imul" | "Math.log" | "Math.log10" | "Math.log1p" | "Math.log2" | "Math.max" | "Math.min" | "Math.pow" | "Math.random" | "Math.round" | "Math.sign" | "Math.sin" | "Math.sinh" | "Math.sqrt" | "Math.tan" | "Math.tanh" | "Math.trunc" | "NaN" | "Number.EPSILON" | "Number.MAX_SAFE_INTEGER" | "Number.MAX_VALUE" | "Number.MIN_SAFE_INTEGER" | "Number.MIN_VALUE" | "Number.NEGATIVE_INFINITY" | "Number.NaN" | "Number.POSITIVE_INFINITY" | "Number.isFinite" | "Number.isInteger" | "Number.isNaN" | "Number.isSafeInteger" | "Number.parseFloat" | "Number.parseInt" | "Number.toLocaleString" | "Object.assign" | "Object.create" | "Object.defineGetter" | "Object.defineProperties" | "Object.defineProperty" | "Object.defineSetter" | "Object.entries" | "Object.freeze" | "Object.fromEntries" | "Object.getOwnPropertyDescriptor" | "Object.getOwnPropertyDescriptors" | "Object.getOwnPropertyNames" | "Object.getOwnPropertySymbols" | "Object.getPrototypeOf" | "Object.groupBy" | "Object.hasOwn" | "Object.is" | "Object.isExtensible" | "Object.isFrozen" | "Object.isSealed" | "Object.keys" | "Object.lookupGetter" | "Object.lookupSetter" | "Object.preventExtensions" | "Object.proto" | "Object.seal" | "Object.setPrototypeOf" | "Object.values" | "Promise" | "Promise.all" | "Promise.allSettled" | "Promise.any" | "Promise.race" | "Promise.reject" | "Promise.resolve" | "Proxy" | "Proxy.revocable" | "RangeError" | "ReferenceError" | "Reflect" | "Reflect.apply" | "Reflect.construct" | "Reflect.defineProperty" | "Reflect.deleteProperty" | "Reflect.get" | "Reflect.getOwnPropertyDescriptor" | "Reflect.getPrototypeOf" | "Reflect.has" | "Reflect.isExtensible" | "Reflect.ownKeys" | "Reflect.preventExtensions" | "Reflect.set" | "Reflect.setPrototypeOf" | "RegExp" | "RegExp.dotAll" | "RegExp.hasIndices" | "RegExp.input" | "RegExp.lastIndex" | "RegExp.lastMatch" | "RegExp.lastParen" | "RegExp.leftContext" | "RegExp.n" | "RegExp.rightContext" | "Set" | "SharedArrayBuffer" | "String" | "String.fromCharCode" | "String.fromCodePoint" | "String.length" | "String.localeCompare" | "String.raw" | "String.toLocaleLowerCase" | "String.toLocaleUpperCase" | "Symbol" | "Symbol.asyncIterator" | "Symbol.for" | "Symbol.hasInstance" | "Symbol.isConcatSpreadable" | "Symbol.iterator" | "Symbol.keyFor" | "Symbol.match" | "Symbol.matchAll" | "Symbol.replace" | "Symbol.search" | "Symbol.species" | "Symbol.split" | "Symbol.toPrimitive" | "Symbol.toStringTag" | "Symbol.unscopables" | "SyntaxError" | "TypeError" | "URIError" | "Uint16Array" | "Uint16Array.BYTES_PER_ELEMENT" | "Uint16Array.from" | "Uint16Array.name" | "Uint16Array.of" | "Uint32Array" | "Uint32Array.BYTES_PER_ELEMENT" | "Uint32Array.from" | "Uint32Array.name" | "Uint32Array.of" | "Uint8Array" | "Uint8Array.BYTES_PER_ELEMENT" | "Uint8Array.from" | "Uint8Array.name" | "Uint8Array.of" | "Uint8ClampedArray" | "Uint8ClampedArray.BYTES_PER_ELEMENT" | "Uint8ClampedArray.from" | "Uint8ClampedArray.name" | "Uint8ClampedArray.of" | "WeakMap" | "WeakRef" | "WeakSet" | "decodeURI" | "decodeURIComponent" | "encodeURI" | "encodeURIComponent" | "escape" | "eval" | "globalThis" | "isFinite" | "isNaN" | "parseFloat" | "parseInt" | "unescape")[]; }]; // ----- node/no-unsupported-features/es-syntax ----- type NodeNoUnsupportedFeaturesEsSyntax = [] | [{ version?: string; ignores?: ("no-accessor-properties" | "accessor-properties" | "accessorProperties" | "no-arbitrary-module-namespace-names" | "arbitrary-module-namespace-names" | "arbitraryModuleNamespaceNames" | "no-array-from" | "array-from" | "arrayFrom" | "no-array-isarray" | "array-isarray" | "arrayIsarray" | "no-array-of" | "array-of" | "arrayOf" | "no-array-prototype-copywithin" | "array-prototype-copywithin" | "arrayPrototypeCopywithin" | "no-array-prototype-entries" | "array-prototype-entries" | "arrayPrototypeEntries" | "no-array-prototype-every" | "array-prototype-every" | "arrayPrototypeEvery" | "no-array-prototype-fill" | "array-prototype-fill" | "arrayPrototypeFill" | "no-array-prototype-filter" | "array-prototype-filter" | "arrayPrototypeFilter" | "no-array-prototype-find" | "array-prototype-find" | "arrayPrototypeFind" | "no-array-prototype-findindex" | "array-prototype-findindex" | "arrayPrototypeFindindex" | "no-array-prototype-findlast-findlastindex" | "array-prototype-findlast-findlastindex" | "arrayPrototypeFindlastFindlastindex" | "no-array-prototype-flat" | "array-prototype-flat" | "arrayPrototypeFlat" | "no-array-prototype-foreach" | "array-prototype-foreach" | "arrayPrototypeForeach" | "no-array-prototype-includes" | "array-prototype-includes" | "arrayPrototypeIncludes" | "no-array-prototype-indexof" | "array-prototype-indexof" | "arrayPrototypeIndexof" | "no-array-prototype-keys" | "array-prototype-keys" | "arrayPrototypeKeys" | "no-array-prototype-lastindexof" | "array-prototype-lastindexof" | "arrayPrototypeLastindexof" | "no-array-prototype-map" | "array-prototype-map" | "arrayPrototypeMap" | "no-array-prototype-reduce" | "array-prototype-reduce" | "arrayPrototypeReduce" | "no-array-prototype-reduceright" | "array-prototype-reduceright" | "arrayPrototypeReduceright" | "no-array-prototype-some" | "array-prototype-some" | "arrayPrototypeSome" | "no-array-prototype-toreversed" | "array-prototype-toreversed" | "arrayPrototypeToreversed" | "no-array-prototype-tosorted" | "array-prototype-tosorted" | "arrayPrototypeTosorted" | "no-array-prototype-tospliced" | "array-prototype-tospliced" | "arrayPrototypeTospliced" | "no-array-prototype-values" | "array-prototype-values" | "arrayPrototypeValues" | "no-array-prototype-with" | "array-prototype-with" | "arrayPrototypeWith" | "no-array-string-prototype-at" | "array-string-prototype-at" | "arrayStringPrototypeAt" | "no-arrow-functions" | "arrow-functions" | "arrowFunctions" | "no-async-functions" | "async-functions" | "asyncFunctions" | "no-async-iteration" | "async-iteration" | "asyncIteration" | "no-atomics-waitasync" | "atomics-waitasync" | "atomicsWaitasync" | "no-atomics" | "atomics" | "no-bigint" | "bigint" | "no-binary-numeric-literals" | "binary-numeric-literals" | "binaryNumericLiterals" | "no-block-scoped-functions" | "block-scoped-functions" | "blockScopedFunctions" | "no-block-scoped-variables" | "block-scoped-variables" | "blockScopedVariables" | "no-class-fields" | "class-fields" | "classFields" | "no-class-static-block" | "class-static-block" | "classStaticBlock" | "no-classes" | "classes" | "no-computed-properties" | "computed-properties" | "computedProperties" | "no-date-now" | "date-now" | "dateNow" | "no-date-prototype-getyear-setyear" | "date-prototype-getyear-setyear" | "datePrototypeGetyearSetyear" | "no-date-prototype-togmtstring" | "date-prototype-togmtstring" | "datePrototypeTogmtstring" | "no-default-parameters" | "default-parameters" | "defaultParameters" | "no-destructuring" | "destructuring" | "no-dynamic-import" | "dynamic-import" | "dynamicImport" | "no-error-cause" | "error-cause" | "errorCause" | "no-escape-unescape" | "escape-unescape" | "escapeUnescape" | "no-exponential-operators" | "exponential-operators" | "exponentialOperators" | "no-export-ns-from" | "export-ns-from" | "exportNsFrom" | "no-for-of-loops" | "for-of-loops" | "forOfLoops" | "no-function-declarations-in-if-statement-clauses-without-block" | "function-declarations-in-if-statement-clauses-without-block" | "functionDeclarationsInIfStatementClausesWithoutBlock" | "no-function-prototype-bind" | "function-prototype-bind" | "functionPrototypeBind" | "no-generators" | "generators" | "no-global-this" | "global-this" | "globalThis" | "no-hashbang" | "hashbang" | "no-import-meta" | "import-meta" | "importMeta" | "no-initializers-in-for-in" | "initializers-in-for-in" | "initializersInForIn" | "no-intl-datetimeformat-prototype-formatrange" | "intl-datetimeformat-prototype-formatrange" | "intlDatetimeformatPrototypeFormatrange" | "no-intl-datetimeformat-prototype-formattoparts" | "intl-datetimeformat-prototype-formattoparts" | "intlDatetimeformatPrototypeFormattoparts" | "no-intl-displaynames" | "intl-displaynames" | "intlDisplaynames" | "no-intl-getcanonicallocales" | "intl-getcanonicallocales" | "intlGetcanonicallocales" | "no-intl-listformat" | "intl-listformat" | "intlListformat" | "no-intl-locale" | "intl-locale" | "intlLocale" | "no-intl-numberformat-prototype-formatrange" | "intl-numberformat-prototype-formatrange" | "intlNumberformatPrototypeFormatrange" | "no-intl-numberformat-prototype-formatrangetoparts" | "intl-numberformat-prototype-formatrangetoparts" | "intlNumberformatPrototypeFormatrangetoparts" | "no-intl-numberformat-prototype-formattoparts" | "intl-numberformat-prototype-formattoparts" | "intlNumberformatPrototypeFormattoparts" | "no-intl-pluralrules-prototype-selectrange" | "intl-pluralrules-prototype-selectrange" | "intlPluralrulesPrototypeSelectrange" | "no-intl-pluralrules" | "intl-pluralrules" | "intlPluralrules" | "no-intl-relativetimeformat" | "intl-relativetimeformat" | "intlRelativetimeformat" | "no-intl-segmenter" | "intl-segmenter" | "intlSegmenter" | "no-intl-supportedvaluesof" | "intl-supportedvaluesof" | "intlSupportedvaluesof" | "no-json-superset" | "json-superset" | "jsonSuperset" | "no-json" | "json" | "no-keyword-properties" | "keyword-properties" | "keywordProperties" | "no-labelled-function-declarations" | "labelled-function-declarations" | "labelledFunctionDeclarations" | "no-legacy-object-prototype-accessor-methods" | "legacy-object-prototype-accessor-methods" | "legacyObjectPrototypeAccessorMethods" | "no-logical-assignment-operators" | "logical-assignment-operators" | "logicalAssignmentOperators" | "no-malformed-template-literals" | "malformed-template-literals" | "malformedTemplateLiterals" | "no-map" | "map" | "no-math-acosh" | "math-acosh" | "mathAcosh" | "no-math-asinh" | "math-asinh" | "mathAsinh" | "no-math-atanh" | "math-atanh" | "mathAtanh" | "no-math-cbrt" | "math-cbrt" | "mathCbrt" | "no-math-clz32" | "math-clz32" | "mathClz32" | "no-math-cosh" | "math-cosh" | "mathCosh" | "no-math-expm1" | "math-expm1" | "mathExpm1" | "no-math-fround" | "math-fround" | "mathFround" | "no-math-hypot" | "math-hypot" | "mathHypot" | "no-math-imul" | "math-imul" | "mathImul" | "no-math-log10" | "math-log10" | "mathLog10" | "no-math-log1p" | "math-log1p" | "mathLog1p" | "no-math-log2" | "math-log2" | "mathLog2" | "no-math-sign" | "math-sign" | "mathSign" | "no-math-sinh" | "math-sinh" | "mathSinh" | "no-math-tanh" | "math-tanh" | "mathTanh" | "no-math-trunc" | "math-trunc" | "mathTrunc" | "no-modules" | "modules" | "no-new-target" | "new-target" | "newTarget" | "new.target" | "no-nullish-coalescing-operators" | "nullish-coalescing-operators" | "nullishCoalescingOperators" | "no-number-epsilon" | "number-epsilon" | "numberEpsilon" | "no-number-isfinite" | "number-isfinite" | "numberIsfinite" | "no-number-isinteger" | "number-isinteger" | "numberIsinteger" | "no-number-isnan" | "number-isnan" | "numberIsnan" | "no-number-issafeinteger" | "number-issafeinteger" | "numberIssafeinteger" | "no-number-maxsafeinteger" | "number-maxsafeinteger" | "numberMaxsafeinteger" | "no-number-minsafeinteger" | "number-minsafeinteger" | "numberMinsafeinteger" | "no-number-parsefloat" | "number-parsefloat" | "numberParsefloat" | "no-number-parseint" | "number-parseint" | "numberParseint" | "no-numeric-separators" | "numeric-separators" | "numericSeparators" | "no-object-assign" | "object-assign" | "objectAssign" | "no-object-create" | "object-create" | "objectCreate" | "no-object-defineproperties" | "object-defineproperties" | "objectDefineproperties" | "no-object-defineproperty" | "object-defineproperty" | "objectDefineproperty" | "no-object-entries" | "object-entries" | "objectEntries" | "no-object-freeze" | "object-freeze" | "objectFreeze" | "no-object-fromentries" | "object-fromentries" | "objectFromentries" | "no-object-getownpropertydescriptor" | "object-getownpropertydescriptor" | "objectGetownpropertydescriptor" | "no-object-getownpropertydescriptors" | "object-getownpropertydescriptors" | "objectGetownpropertydescriptors" | "no-object-getownpropertynames" | "object-getownpropertynames" | "objectGetownpropertynames" | "no-object-getownpropertysymbols" | "object-getownpropertysymbols" | "objectGetownpropertysymbols" | "no-object-getprototypeof" | "object-getprototypeof" | "objectGetprototypeof" | "no-object-hasown" | "object-hasown" | "objectHasown" | "no-object-is" | "object-is" | "objectIs" | "no-object-isextensible" | "object-isextensible" | "objectIsextensible" | "no-object-isfrozen" | "object-isfrozen" | "objectIsfrozen" | "no-object-issealed" | "object-issealed" | "objectIssealed" | "no-object-keys" | "object-keys" | "objectKeys" | "no-object-map-groupby" | "object-map-groupby" | "objectMapGroupby" | "no-object-preventextensions" | "object-preventextensions" | "objectPreventextensions" | "no-object-seal" | "object-seal" | "objectSeal" | "no-object-setprototypeof" | "object-setprototypeof" | "objectSetprototypeof" | "no-object-super-properties" | "object-super-properties" | "objectSuperProperties" | "no-object-values" | "object-values" | "objectValues" | "no-octal-numeric-literals" | "octal-numeric-literals" | "octalNumericLiterals" | "no-optional-catch-binding" | "optional-catch-binding" | "optionalCatchBinding" | "no-optional-chaining" | "optional-chaining" | "optionalChaining" | "no-private-in" | "private-in" | "privateIn" | "no-promise-all-settled" | "promise-all-settled" | "promiseAllSettled" | "no-promise-any" | "promise-any" | "promiseAny" | "no-promise-prototype-finally" | "promise-prototype-finally" | "promisePrototypeFinally" | "no-promise-withresolvers" | "promise-withresolvers" | "promiseWithresolvers" | "no-promise" | "promise" | "no-property-shorthands" | "property-shorthands" | "propertyShorthands" | "no-proxy" | "proxy" | "no-reflect" | "reflect" | "no-regexp-d-flag" | "regexp-d-flag" | "regexpDFlag" | "no-regexp-lookbehind-assertions" | "regexp-lookbehind-assertions" | "regexpLookbehindAssertions" | "regexpLookbehind" | "no-regexp-named-capture-groups" | "regexp-named-capture-groups" | "regexpNamedCaptureGroups" | "no-regexp-prototype-compile" | "regexp-prototype-compile" | "regexpPrototypeCompile" | "no-regexp-prototype-flags" | "regexp-prototype-flags" | "regexpPrototypeFlags" | "no-regexp-s-flag" | "regexp-s-flag" | "regexpSFlag" | "regexpS" | "no-regexp-u-flag" | "regexp-u-flag" | "regexpUFlag" | "regexpU" | "no-regexp-unicode-property-escapes-2019" | "regexp-unicode-property-escapes-2019" | "regexpUnicodePropertyEscapes2019" | "no-regexp-unicode-property-escapes-2020" | "regexp-unicode-property-escapes-2020" | "regexpUnicodePropertyEscapes2020" | "no-regexp-unicode-property-escapes-2021" | "regexp-unicode-property-escapes-2021" | "regexpUnicodePropertyEscapes2021" | "no-regexp-unicode-property-escapes-2022" | "regexp-unicode-property-escapes-2022" | "regexpUnicodePropertyEscapes2022" | "no-regexp-unicode-property-escapes-2023" | "regexp-unicode-property-escapes-2023" | "regexpUnicodePropertyEscapes2023" | "no-regexp-unicode-property-escapes" | "regexp-unicode-property-escapes" | "regexpUnicodePropertyEscapes" | "regexpUnicodeProperties" | "no-regexp-v-flag" | "regexp-v-flag" | "regexpVFlag" | "no-regexp-y-flag" | "regexp-y-flag" | "regexpYFlag" | "regexpY" | "no-resizable-and-growable-arraybuffers" | "resizable-and-growable-arraybuffers" | "resizableAndGrowableArraybuffers" | "no-rest-parameters" | "rest-parameters" | "restParameters" | "no-rest-spread-properties" | "rest-spread-properties" | "restSpreadProperties" | "no-set" | "set" | "no-shadow-catch-param" | "shadow-catch-param" | "shadowCatchParam" | "no-shared-array-buffer" | "shared-array-buffer" | "sharedArrayBuffer" | "no-spread-elements" | "spread-elements" | "spreadElements" | "no-string-create-html-methods" | "string-create-html-methods" | "stringCreateHtmlMethods" | "no-string-fromcodepoint" | "string-fromcodepoint" | "stringFromcodepoint" | "no-string-prototype-codepointat" | "string-prototype-codepointat" | "stringPrototypeCodepointat" | "no-string-prototype-endswith" | "string-prototype-endswith" | "stringPrototypeEndswith" | "no-string-prototype-includes" | "string-prototype-includes" | "stringPrototypeIncludes" | "no-string-prototype-iswellformed-towellformed" | "string-prototype-iswellformed-towellformed" | "stringPrototypeIswellformedTowellformed" | "no-string-prototype-matchall" | "string-prototype-matchall" | "stringPrototypeMatchall" | "no-string-prototype-normalize" | "string-prototype-normalize" | "stringPrototypeNormalize" | "no-string-prototype-padstart-padend" | "string-prototype-padstart-padend" | "stringPrototypePadstartPadend" | "no-string-prototype-repeat" | "string-prototype-repeat" | "stringPrototypeRepeat" | "no-string-prototype-replaceall" | "string-prototype-replaceall" | "stringPrototypeReplaceall" | "no-string-prototype-startswith" | "string-prototype-startswith" | "stringPrototypeStartswith" | "no-string-prototype-substr" | "string-prototype-substr" | "stringPrototypeSubstr" | "no-string-prototype-trim" | "string-prototype-trim" | "stringPrototypeTrim" | "no-string-prototype-trimleft-trimright" | "string-prototype-trimleft-trimright" | "stringPrototypeTrimleftTrimright" | "no-string-prototype-trimstart-trimend" | "string-prototype-trimstart-trimend" | "stringPrototypeTrimstartTrimend" | "no-string-raw" | "string-raw" | "stringRaw" | "no-subclassing-builtins" | "subclassing-builtins" | "subclassingBuiltins" | "no-symbol-prototype-description" | "symbol-prototype-description" | "symbolPrototypeDescription" | "no-symbol" | "symbol" | "no-template-literals" | "template-literals" | "templateLiterals" | "no-top-level-await" | "top-level-await" | "topLevelAwait" | "no-trailing-commas" | "trailing-commas" | "trailingCommas" | "no-trailing-function-commas" | "trailing-function-commas" | "trailingFunctionCommas" | "trailingCommasInFunctions" | "no-typed-arrays" | "typed-arrays" | "typedArrays" | "no-unicode-codepoint-escapes" | "unicode-codepoint-escapes" | "unicodeCodepointEscapes" | "unicodeCodePointEscapes" | "no-weak-map" | "weak-map" | "weakMap" | "no-weak-set" | "weak-set" | "weakSet" | "no-weakrefs" | "weakrefs")[]; }]; // ----- node/no-unsupported-features/node-builtins ----- type NodeNoUnsupportedFeaturesNodeBuiltins = [] | [{ version?: string; allowExperimental?: boolean; ignores?: ("__filename" | "__dirname" | "require" | "require.cache" | "require.extensions" | "require.main" | "require.resolve" | "require.resolve.paths" | "module" | "module.children" | "module.exports" | "module.filename" | "module.id" | "module.isPreloading" | "module.loaded" | "module.parent" | "module.path" | "module.paths" | "module.require" | "exports" | "AbortController" | "AbortSignal" | "AbortSignal.abort" | "AbortSignal.timeout" | "AbortSignal.any" | "DOMException" | "FormData" | "Headers" | "MessageEvent" | "Navigator" | "Request" | "Response" | "WebAssembly" | "WebSocket" | "fetch" | "global" | "queueMicrotask" | "navigator" | "navigator.hardwareConcurrency" | "navigator.language" | "navigator.languages" | "navigator.locks" | "navigator.locks.request" | "navigator.locks.query" | "navigator.platform" | "navigator.userAgent" | "structuredClone" | "localStorage" | "sessionStorage" | "Storage" | "Blob" | "new Buffer()" | "Buffer" | "Buffer.alloc" | "Buffer.allocUnsafe" | "Buffer.allocUnsafeSlow" | "Buffer.byteLength" | "Buffer.compare" | "Buffer.concat" | "Buffer.copyBytesFrom" | "Buffer.from" | "Buffer.isBuffer" | "Buffer.isEncoding" | "File" | "atob" | "btoa" | "console" | "console.profile" | "console.profileEnd" | "console.timeStamp" | "console.Console" | "console.assert" | "console.clear" | "console.count" | "console.countReset" | "console.debug" | "console.dir" | "console.dirxml" | "console.error" | "console.group" | "console.groupCollapsed" | "console.groupEnd" | "console.info" | "console.log" | "console.table" | "console.time" | "console.timeEnd" | "console.timeLog" | "console.trace" | "console.warn" | "crypto" | "crypto.subtle" | "crypto.subtle.decapsulateBits" | "crypto.subtle.decapsulateKey" | "crypto.subtle.decrypt" | "crypto.subtle.deriveBits" | "crypto.subtle.deriveKey" | "crypto.subtle.digest" | "crypto.subtle.encapsulateBits" | "crypto.subtle.encapsulateKey" | "crypto.subtle.encrypt" | "crypto.subtle.exportKey" | "crypto.subtle.generateKey" | "crypto.subtle.getPublicKey" | "crypto.subtle.importKey" | "crypto.subtle.sign" | "crypto.subtle.unwrapKey" | "crypto.subtle.verify" | "crypto.subtle.wrapKey" | "crypto.getRandomValues" | "crypto.randomUUID" | "Crypto" | "CryptoKey" | "SubtleCrypto" | "SubtleCrypto.supports" | "CloseEvent" | "CustomEvent" | "Event" | "EventSource" | "EventTarget" | "PerformanceEntry" | "PerformanceMark" | "PerformanceMeasure" | "PerformanceObserver" | "PerformanceObserverEntryList" | "PerformanceResourceTiming" | "performance" | "performance.clearMarks" | "performance.clearMeasures" | "performance.clearResourceTimings" | "performance.eventLoopUtilization" | "performance.getEntries" | "performance.getEntriesByName" | "performance.getEntriesByType" | "performance.mark" | "performance.markResourceTiming" | "performance.measure" | "performance.nodeTiming" | "performance.nodeTiming.bootstrapComplete" | "performance.nodeTiming.environment" | "performance.nodeTiming.idleTime" | "performance.nodeTiming.loopExit" | "performance.nodeTiming.loopStart" | "performance.nodeTiming.nodeStart" | "performance.nodeTiming.uvMetricsInfo" | "performance.nodeTiming.v8Start" | "performance.now" | "performance.onresourcetimingbufferfull" | "performance.setResourceTimingBufferSize" | "performance.timeOrigin" | "performance.timerify" | "performance.toJSON" | "process" | "process.allowedNodeEnvironmentFlags" | "process.availableMemory" | "process.arch" | "process.argv" | "process.argv0" | "process.channel" | "process.config" | "process.connected" | "process.debugPort" | "process.env" | "process.execArgv" | "process.execPath" | "process.execve" | "process.exitCode" | "process.features.cached_builtins" | "process.features.debug" | "process.features.inspector" | "process.features.ipv6" | "process.features.require_module" | "process.features.tls" | "process.features.tls_alpn" | "process.features.tls_ocsp" | "process.features.tls_sni" | "process.features.typescript" | "process.features.uv" | "process.finalization.register" | "process.finalization.registerBeforeExit" | "process.finalization.unregister" | "process.getBuiltinModule" | "process.mainModule" | "process.noDeprecation" | "process.permission" | "process.pid" | "process.platform" | "process.ppid" | "process.ref" | "process.release" | "process.report" | "process.report.excludeEnv" | "process.sourceMapsEnabled" | "process.stdin" | "process.stdin.isRaw" | "process.stdin.isTTY" | "process.stdin.setRawMode" | "process.stdout" | "process.stdout.clearLine" | "process.stdout.clearScreenDown" | "process.stdout.columns" | "process.stdout.cursorTo" | "process.stdout.getColorDepth" | "process.stdout.getWindowSize" | "process.stdout.hasColors" | "process.stdout.isTTY" | "process.stdout.moveCursor" | "process.stdout.rows" | "process.stderr" | "process.stderr.clearLine" | "process.stderr.clearScreenDown" | "process.stderr.columns" | "process.stderr.cursorTo" | "process.stderr.getColorDepth" | "process.stderr.getWindowSize" | "process.stderr.hasColors" | "process.stderr.isTTY" | "process.stderr.moveCursor" | "process.stderr.rows" | "process.threadCpuUsage" | "process.throwDeprecation" | "process.title" | "process.traceDeprecation" | "process.version" | "process.versions" | "process.abort" | "process.chdir" | "process.constrainedMemory" | "process.cpuUsage" | "process.cwd" | "process.disconnect" | "process.dlopen" | "process.emitWarning" | "process.exit" | "process.getActiveResourcesInfo" | "process.getegid" | "process.geteuid" | "process.getgid" | "process.getgroups" | "process.getuid" | "process.hasUncaughtExceptionCaptureCallback" | "process.hrtime" | "process.hrtime.bigint" | "process.initgroups" | "process.kill" | "process.loadEnvFile" | "process.memoryUsage" | "process.rss" | "process.nextTick" | "process.resourceUsage" | "process.send" | "process.setegid" | "process.seteuid" | "process.setgid" | "process.setgroups" | "process.setuid" | "process.setSourceMapsEnabled" | "process.setUncaughtExceptionCaptureCallback" | "process.umask" | "process.unref" | "process.uptime" | "ReadableStream" | "ReadableStream.from" | "ReadableStreamDefaultReader" | "ReadableStreamBYOBReader" | "ReadableStreamDefaultController" | "ReadableByteStreamController" | "ReadableStreamBYOBRequest" | "WritableStream" | "WritableStreamDefaultWriter" | "WritableStreamDefaultController" | "TransformStream" | "TransformStreamDefaultController" | "ByteLengthQueuingStrategy" | "CountQueuingStrategy" | "TextEncoderStream" | "TextDecoderStream" | "CompressionStream" | "DecompressionStream" | "setInterval" | "clearInterval" | "setTimeout" | "clearTimeout" | "setImmediate" | "clearImmediate" | "URL" | "URL.canParse" | "URL.createObjectURL" | "URL.revokeObjectURL" | "URLSearchParams" | "TextDecoder" | "TextEncoder" | "BroadcastChannel" | "MessageChannel" | "MessagePort" | "assert" | "assert.Assert" | "assert.assert" | "assert.deepEqual" | "assert.deepStrictEqual" | "assert.doesNotMatch" | "assert.doesNotReject" | "assert.doesNotThrow" | "assert.equal" | "assert.fail" | "assert.ifError" | "assert.match" | "assert.notDeepEqual" | "assert.notDeepStrictEqual" | "assert.notEqual" | "assert.notStrictEqual" | "assert.ok" | "assert.partialDeepStrictEqual" | "assert.rejects" | "assert.strictEqual" | "assert.throws" | "assert.CallTracker" | "assert.strict" | "assert.strict.Assert" | "assert.strict.assert" | "assert.strict.deepEqual" | "assert.strict.deepStrictEqual" | "assert.strict.doesNotMatch" | "assert.strict.doesNotReject" | "assert.strict.doesNotThrow" | "assert.strict.equal" | "assert.strict.fail" | "assert.strict.ifError" | "assert.strict.match" | "assert.strict.notDeepEqual" | "assert.strict.notDeepStrictEqual" | "assert.strict.notEqual" | "assert.strict.notStrictEqual" | "assert.strict.ok" | "assert.strict.partialDeepStrictEqual" | "assert.strict.rejects" | "assert.strict.strictEqual" | "assert.strict.throws" | "assert.strict.CallTracker" | "assert/strict" | "assert/strict.Assert" | "assert/strict.assert" | "assert/strict.deepEqual" | "assert/strict.deepStrictEqual" | "assert/strict.doesNotMatch" | "assert/strict.doesNotReject" | "assert/strict.doesNotThrow" | "assert/strict.equal" | "assert/strict.fail" | "assert/strict.ifError" | "assert/strict.match" | "assert/strict.notDeepEqual" | "assert/strict.notDeepStrictEqual" | "assert/strict.notEqual" | "assert/strict.notStrictEqual" | "assert/strict.ok" | "assert/strict.partialDeepStrictEqual" | "assert/strict.rejects" | "assert/strict.strictEqual" | "assert/strict.throws" | "assert/strict.CallTracker" | "async_hooks" | "async_hooks.createHook" | "async_hooks.executionAsyncResource" | "async_hooks.executionAsyncId" | "async_hooks.triggerAsyncId" | "async_hooks.AsyncLocalStorage" | "async_hooks.AsyncLocalStorage.bind" | "async_hooks.AsyncLocalStorage.snapshot" | "async_hooks.AsyncResource" | "async_hooks.AsyncResource.bind" | "buffer" | "buffer.constants" | "buffer.INSPECT_MAX_BYTES" | "buffer.kMaxLength" | "buffer.kStringMaxLength" | "buffer.atob" | "buffer.btoa" | "buffer.isAscii" | "buffer.isUtf8" | "buffer.resolveObjectURL" | "buffer.transcode" | "buffer.SlowBuffer" | "buffer.Blob" | "new buffer.Buffer()" | "buffer.Buffer" | "buffer.Buffer.alloc" | "buffer.Buffer.allocUnsafe" | "buffer.Buffer.allocUnsafeSlow" | "buffer.Buffer.byteLength" | "buffer.Buffer.compare" | "buffer.Buffer.concat" | "buffer.Buffer.copyBytesFrom" | "buffer.Buffer.from" | "buffer.Buffer.isBuffer" | "buffer.Buffer.isEncoding" | "buffer.File" | "child_process" | "child_process.exec" | "child_process.execFile" | "child_process.fork" | "child_process.spawn" | "child_process.execFileSync" | "child_process.execSync" | "child_process.spawnSync" | "child_process.ChildProcess" | "cluster" | "cluster.isMaster" | "cluster.isPrimary" | "cluster.isWorker" | "cluster.schedulingPolicy" | "cluster.settings" | "cluster.worker" | "cluster.workers" | "cluster.disconnect" | "cluster.fork" | "cluster.setupMaster" | "cluster.setupPrimary" | "cluster.Worker" | "crypto.constants" | "crypto.fips" | "crypto.webcrypto" | "crypto.webcrypto.subtle" | "crypto.webcrypto.subtle.decapsulateBits" | "crypto.webcrypto.subtle.decapsulateKey" | "crypto.webcrypto.subtle.decrypt" | "crypto.webcrypto.subtle.deriveBits" | "crypto.webcrypto.subtle.deriveKey" | "crypto.webcrypto.subtle.digest" | "crypto.webcrypto.subtle.encapsulateBits" | "crypto.webcrypto.subtle.encapsulateKey" | "crypto.webcrypto.subtle.encrypt" | "crypto.webcrypto.subtle.exportKey" | "crypto.webcrypto.subtle.generateKey" | "crypto.webcrypto.subtle.getPublicKey" | "crypto.webcrypto.subtle.importKey" | "crypto.webcrypto.subtle.sign" | "crypto.webcrypto.subtle.unwrapKey" | "crypto.webcrypto.subtle.verify" | "crypto.webcrypto.subtle.wrapKey" | "crypto.webcrypto.getRandomValues" | "crypto.webcrypto.randomUUID" | "crypto.argon2" | "crypto.argon2Sync" | "crypto.checkPrime" | "crypto.checkPrimeSync" | "crypto.createCipher" | "crypto.createCipheriv" | "crypto.createDecipher" | "crypto.createDecipheriv" | "crypto.createDiffieHellman" | "crypto.createDiffieHellmanGroup" | "crypto.createECDH" | "crypto.createHash" | "crypto.createHmac" | "crypto.createPrivateKey" | "crypto.createPublicKey" | "crypto.createSecretKey" | "crypto.createSign" | "crypto.createVerify" | "crypto.decapsulate" | "crypto.diffieHellman" | "crypto.encapsulate" | "crypto.generateKey" | "crypto.generateKeyPair" | "crypto.generateKeyPairSync" | "crypto.generateKeySync" | "crypto.generatePrime" | "crypto.generatePrimeSync" | "crypto.getCipherInfo" | "crypto.getCiphers" | "crypto.getCurves" | "crypto.getDiffieHellman" | "crypto.getFips" | "crypto.getHashes" | "crypto.hash" | "crypto.hkdf" | "crypto.hkdfSync" | "crypto.pbkdf2" | "crypto.pbkdf2Sync" | "crypto.privateDecrypt" | "crypto.privateEncrypt" | "crypto.publicDecrypt" | "crypto.publicEncrypt" | "crypto.randomBytes" | "crypto.randomFillSync" | "crypto.randomFill" | "crypto.randomInt" | "crypto.scrypt" | "crypto.scryptSync" | "crypto.secureHeapUsed" | "crypto.setEngine" | "crypto.setFips" | "crypto.sign" | "crypto.timingSafeEqual" | "crypto.verify" | "crypto.Certificate" | "crypto.Certificate.exportChallenge" | "crypto.Certificate.exportPublicKey" | "crypto.Certificate.verifySpkac" | "crypto.Cipher" | "crypto.Decipher" | "crypto.DiffieHellman" | "crypto.DiffieHellmanGroup" | "crypto.ECDH" | "crypto.ECDH.convertKey" | "crypto.Hash()" | "new crypto.Hash()" | "crypto.Hash" | "crypto.Hmac()" | "new crypto.Hmac()" | "crypto.Hmac" | "crypto.KeyObject" | "crypto.KeyObject.from" | "crypto.Sign" | "crypto.Verify" | "crypto.X509Certificate" | "dgram" | "dgram.createSocket" | "dgram.Socket" | "diagnostics_channel" | "diagnostics_channel.hasSubscribers" | "diagnostics_channel.channel" | "diagnostics_channel.subscribe" | "diagnostics_channel.unsubscribe" | "diagnostics_channel.tracingChannel" | "diagnostics_channel.Channel" | "diagnostics_channel.TracingChannel" | "dns" | "dns.Resolver" | "dns.getServers" | "dns.lookup" | "dns.lookupService" | "dns.resolve" | "dns.resolve4" | "dns.resolve6" | "dns.resolveAny" | "dns.resolveCname" | "dns.resolveCaa" | "dns.resolveMx" | "dns.resolveNaptr" | "dns.resolveNs" | "dns.resolvePtr" | "dns.resolveSoa" | "dns.resolveSrv" | "dns.resolveTlsa" | "dns.resolveTxt" | "dns.reverse" | "dns.setDefaultResultOrder" | "dns.getDefaultResultOrder" | "dns.setServers" | "dns.promises" | "dns.promises.Resolver" | "dns.promises.cancel" | "dns.promises.getServers" | "dns.promises.lookup" | "dns.promises.lookupService" | "dns.promises.resolve" | "dns.promises.resolve4" | "dns.promises.resolve6" | "dns.promises.resolveAny" | "dns.promises.resolveCaa" | "dns.promises.resolveCname" | "dns.promises.resolveMx" | "dns.promises.resolveNaptr" | "dns.promises.resolveNs" | "dns.promises.resolvePtr" | "dns.promises.resolveSoa" | "dns.promises.resolveSrv" | "dns.promises.resolveTlsa" | "dns.promises.resolveTxt" | "dns.promises.reverse" | "dns.promises.setDefaultResultOrder" | "dns.promises.getDefaultResultOrder" | "dns.promises.setServers" | "dns/promises" | "dns/promises.Resolver" | "dns/promises.cancel" | "dns/promises.getServers" | "dns/promises.lookup" | "dns/promises.lookupService" | "dns/promises.resolve" | "dns/promises.resolve4" | "dns/promises.resolve6" | "dns/promises.resolveAny" | "dns/promises.resolveCaa" | "dns/promises.resolveCname" | "dns/promises.resolveMx" | "dns/promises.resolveNaptr" | "dns/promises.resolveNs" | "dns/promises.resolvePtr" | "dns/promises.resolveSoa" | "dns/promises.resolveSrv" | "dns/promises.resolveTlsa" | "dns/promises.resolveTxt" | "dns/promises.reverse" | "dns/promises.setDefaultResultOrder" | "dns/promises.getDefaultResultOrder" | "dns/promises.setServers" | "domain" | "domain.create" | "domain.Domain" | "events" | "events.Event" | "events.EventTarget" | "events.CustomEvent" | "events.NodeEventTarget" | "events.EventEmitter" | "events.EventEmitter.defaultMaxListeners" | "events.EventEmitter.errorMonitor" | "events.EventEmitter.captureRejections" | "events.EventEmitter.captureRejectionSymbol" | "events.EventEmitter.getEventListeners" | "events.EventEmitter.getMaxListeners" | "events.EventEmitter.once" | "events.EventEmitter.listenerCount" | "events.EventEmitter.on" | "events.EventEmitter.setMaxListeners" | "events.EventEmitter.addAbortListener" | "events.EventEmitterAsyncResource" | "events.EventEmitterAsyncResource.defaultMaxListeners" | "events.EventEmitterAsyncResource.errorMonitor" | "events.EventEmitterAsyncResource.captureRejections" | "events.EventEmitterAsyncResource.captureRejectionSymbol" | "events.EventEmitterAsyncResource.getEventListeners" | "events.EventEmitterAsyncResource.getMaxListeners" | "events.EventEmitterAsyncResource.once" | "events.EventEmitterAsyncResource.listenerCount" | "events.EventEmitterAsyncResource.on" | "events.EventEmitterAsyncResource.setMaxListeners" | "events.EventEmitterAsyncResource.addAbortListener" | "events.defaultMaxListeners" | "events.errorMonitor" | "events.captureRejections" | "events.captureRejectionSymbol" | "events.getEventListeners" | "events.getMaxListeners" | "events.once" | "events.listenerCount" | "events.on" | "events.setMaxListeners" | "events.addAbortListener" | "fs" | "fs.promises" | "fs.promises.FileHandle" | "fs.promises.access" | "fs.promises.appendFile" | "fs.promises.chmod" | "fs.promises.chown" | "fs.promises.constants" | "fs.promises.copyFile" | "fs.promises.cp" | "fs.promises.glob" | "fs.promises.lchmod" | "fs.promises.lchown" | "fs.promises.link" | "fs.promises.lstat" | "fs.promises.lutimes" | "fs.promises.mkdir" | "fs.promises.mkdtemp" | "fs.promises.mkdtempDisposable" | "fs.promises.open" | "fs.promises.opendir" | "fs.promises.readFile" | "fs.promises.readdir" | "fs.promises.readlink" | "fs.promises.realpath" | "fs.promises.rename" | "fs.promises.rm" | "fs.promises.rmdir" | "fs.promises.stat" | "fs.promises.statfs" | "fs.promises.symlink" | "fs.promises.truncate" | "fs.promises.unlink" | "fs.promises.utimes" | "fs.promises.watch" | "fs.promises.writeFile" | "fs.access" | "fs.appendFile" | "fs.chmod" | "fs.chown" | "fs.close" | "fs.copyFile" | "fs.cp" | "fs.createReadStream" | "fs.createWriteStream" | "fs.exists" | "fs.fchmod" | "fs.fchown" | "fs.fdatasync" | "fs.fstat" | "fs.fsync" | "fs.ftruncate" | "fs.futimes" | "fs.glob" | "fs.lchmod" | "fs.lchown" | "fs.link" | "fs.lstat" | "fs.lutimes" | "fs.mkdir" | "fs.mkdtemp" | "fs.native" | "fs.open" | "fs.openAsBlob" | "fs.opendir" | "fs.read" | "fs.readdir" | "fs.readFile" | "fs.readlink" | "fs.readv" | "fs.realpath" | "fs.realpath.native" | "fs.rename" | "fs.rm" | "fs.rmdir" | "fs.stat" | "fs.statfs" | "fs.symlink" | "fs.truncate" | "fs.unlink" | "fs.unwatchFile" | "fs.utimes" | "fs.watch" | "fs.watchFile" | "fs.write" | "fs.writeFile" | "fs.writev" | "fs.accessSync" | "fs.appendFileSync" | "fs.chmodSync" | "fs.chownSync" | "fs.closeSync" | "fs.copyFileSync" | "fs.cpSync" | "fs.existsSync" | "fs.fchmodSync" | "fs.fchownSync" | "fs.fdatasyncSync" | "fs.fstatSync" | "fs.fsyncSync" | "fs.ftruncateSync" | "fs.futimesSync" | "fs.globSync" | "fs.lchmodSync" | "fs.lchownSync" | "fs.linkSync" | "fs.lstatSync" | "fs.lutimesSync" | "fs.mkdirSync" | "fs.mkdtempSync" | "fs.mkdtempDisposableSync" | "fs.opendirSync" | "fs.openSync" | "fs.readdirSync" | "fs.readFileSync" | "fs.readlinkSync" | "fs.readSync" | "fs.readvSync" | "fs.realpathSync" | "fs.realpathSync.native" | "fs.renameSync" | "fs.rmdirSync" | "fs.rmSync" | "fs.statfsSync" | "fs.statSync" | "fs.symlinkSync" | "fs.truncateSync" | "fs.unlinkSync" | "fs.utimesSync" | "fs.writeFileSync" | "fs.writeSync" | "fs.writevSync" | "fs.constants" | "fs.Dir" | "fs.Dirent" | "fs.FSWatcher" | "fs.StatWatcher" | "fs.ReadStream" | "fs.Stats()" | "new fs.Stats()" | "fs.Stats" | "fs.StatFs" | "fs.WriteStream" | "fs.Utf8Stream" | "fs.common_objects" | "fs/promises" | "fs/promises.FileHandle" | "fs/promises.access" | "fs/promises.appendFile" | "fs/promises.chmod" | "fs/promises.chown" | "fs/promises.constants" | "fs/promises.copyFile" | "fs/promises.cp" | "fs/promises.glob" | "fs/promises.lchmod" | "fs/promises.lchown" | "fs/promises.link" | "fs/promises.lstat" | "fs/promises.lutimes" | "fs/promises.mkdir" | "fs/promises.mkdtemp" | "fs/promises.mkdtempDisposable" | "fs/promises.open" | "fs/promises.opendir" | "fs/promises.readFile" | "fs/promises.readdir" | "fs/promises.readlink" | "fs/promises.realpath" | "fs/promises.rename" | "fs/promises.rm" | "fs/promises.rmdir" | "fs/promises.stat" | "fs/promises.statfs" | "fs/promises.symlink" | "fs/promises.truncate" | "fs/promises.unlink" | "fs/promises.utimes" | "fs/promises.watch" | "fs/promises.writeFile" | "http2" | "http2.constants" | "http2.sensitiveHeaders" | "http2.createServer" | "http2.createSecureServer" | "http2.connect" | "http2.getDefaultSettings" | "http2.getPackedSettings" | "http2.getUnpackedSettings" | "http2.performServerHandshake" | "http2.Http2Session" | "http2.ServerHttp2Session" | "http2.ClientHttp2Session" | "http2.Http2Stream" | "http2.ClientHttp2Stream" | "http2.ServerHttp2Stream" | "http2.Http2Server" | "http2.Http2SecureServer" | "http2.Http2ServerRequest" | "http2.Http2ServerResponse" | "http" | "http.METHODS" | "http.STATUS_CODES" | "http.globalAgent" | "http.maxHeaderSize" | "http.createServer" | "http.get" | "http.request" | "http.validateHeaderName" | "http.validateHeaderValue" | "http.setMaxIdleHTTPParsers" | "http.Agent()" | "http.Agent" | "http.ClientRequest()" | "http.ClientRequest" | "http.Server()" | "http.Server" | "http.ServerResponse()" | "http.ServerResponse" | "http.IncomingMessage()" | "http.IncomingMessage" | "http.OutgoingMessage()" | "http.OutgoingMessage" | "http.WebSocket()" | "http.WebSocket" | "_http_agent" | "_http_client" | "_http_common" | "_http_incoming" | "_http_outgoing" | "_http_server" | "https" | "https.globalAgent" | "https.createServer" | "https.get" | "https.request" | "https.Agent" | "https.Server" | "inspector" | "inspector.Session" | "inspector.Network.dataReceived" | "inspector.Network.dataSent" | "inspector.Network.loadingFailed" | "inspector.Network.loadingFinished" | "inspector.Network.requestWillBeSent" | "inspector.Network.responseReceived" | "inspector.Network.webSocketCreated" | "inspector.Network.webSocketHandshakeResponseReceived" | "inspector.Network.webSocketClosed" | "inspector.NetworkResources.put" | "inspector.console" | "inspector.close" | "inspector.open" | "inspector.url" | "inspector.waitForDebugger" | "inspector/promises" | "inspector/promises.Session" | "inspector/promises.Network.dataReceived" | "inspector/promises.Network.dataSent" | "inspector/promises.Network.loadingFailed" | "inspector/promises.Network.loadingFinished" | "inspector/promises.Network.requestWillBeSent" | "inspector/promises.Network.responseReceived" | "inspector/promises.Network.webSocketCreated" | "inspector/promises.Network.webSocketHandshakeResponseReceived" | "inspector/promises.Network.webSocketClosed" | "inspector/promises.NetworkResources.put" | "inspector/promises.console" | "inspector/promises.close" | "inspector/promises.open" | "inspector/promises.url" | "inspector/promises.waitForDebugger" | "module.builtinModules" | "module.constants.compileCacheStatus" | "module.createRequire" | "module.createRequireFromPath" | "module.enableCompileCache" | "module.findPackageJSON" | "module.flushCompileCache" | "module.getCompileCacheDir" | "module.getSourceMapsSupport" | "module.isBuiltin" | "module.registerHooks" | "module.register" | "module.setSourceMapsSupport" | "module.stripTypeScriptTypes" | "module.syncBuiltinESMExports" | "module.findSourceMap" | "module.SourceMap" | "module.Module.builtinModules" | "module.Module.createRequire" | "module.Module.createRequireFromPath" | "module.Module.enableCompileCache" | "module.Module.findPackageJSON" | "module.Module.flushCompileCache" | "module.Module.getCompileCacheDir" | "module.Module.getSourceMapsSupport" | "module.Module.isBuiltin" | "module.Module.registerHooks" | "module.Module.register" | "module.Module.setSourceMapsSupport" | "module.Module.stripTypeScriptTypes" | "module.Module.syncBuiltinESMExports" | "module.Module.findSourceMap" | "module.Module.SourceMap" | "net" | "net.connect" | "net.createConnection" | "net.createServer" | "net.getDefaultAutoSelectFamily" | "net.setDefaultAutoSelectFamily" | "net.getDefaultAutoSelectFamilyAttemptTimeout" | "net.setDefaultAutoSelectFamilyAttemptTimeout" | "net.isIP" | "net.isIPv4" | "net.isIPv6" | "net.BlockList" | "net.BlockList.isBlockList" | "net.SocketAddress" | "net.SocketAddress.parse" | "net.Server" | "net.Socket" | "os" | "os.EOL" | "os.constants" | "os.constants.priority" | "os.devNull" | "os.availableParallelism" | "os.arch" | "os.cpus" | "os.endianness" | "os.freemem" | "os.getPriority" | "os.homedir" | "os.hostname" | "os.loadavg" | "os.machine" | "os.networkInterfaces" | "os.platform" | "os.release" | "os.setPriority" | "os.tmpdir" | "os.totalmem" | "os.type" | "os.uptime" | "os.userInfo" | "os.version" | "path" | "path.posix" | "path.posix.delimiter" | "path.posix.sep" | "path.posix.basename" | "path.posix.dirname" | "path.posix.extname" | "path.posix.format" | "path.posix.matchesGlob" | "path.posix.isAbsolute" | "path.posix.join" | "path.posix.normalize" | "path.posix.parse" | "path.posix.relative" | "path.posix.resolve" | "path.posix.toNamespacedPath" | "path.win32" | "path.win32.delimiter" | "path.win32.sep" | "path.win32.basename" | "path.win32.dirname" | "path.win32.extname" | "path.win32.format" | "path.win32.matchesGlob" | "path.win32.isAbsolute" | "path.win32.join" | "path.win32.normalize" | "path.win32.parse" | "path.win32.relative" | "path.win32.resolve" | "path.win32.toNamespacedPath" | "path.delimiter" | "path.sep" | "path.basename" | "path.dirname" | "path.extname" | "path.format" | "path.matchesGlob" | "path.isAbsolute" | "path.join" | "path.normalize" | "path.parse" | "path.relative" | "path.resolve" | "path.toNamespacedPath" | "path/posix" | "path/posix.delimiter" | "path/posix.sep" | "path/posix.basename" | "path/posix.dirname" | "path/posix.extname" | "path/posix.format" | "path/posix.matchesGlob" | "path/posix.isAbsolute" | "path/posix.join" | "path/posix.normalize" | "path/posix.parse" | "path/posix.relative" | "path/posix.resolve" | "path/posix.toNamespacedPath" | "path/win32" | "path/win32.delimiter" | "path/win32.sep" | "path/win32.basename" | "path/win32.dirname" | "path/win32.extname" | "path/win32.format" | "path/win32.matchesGlob" | "path/win32.isAbsolute" | "path/win32.join" | "path/win32.normalize" | "path/win32.parse" | "path/win32.relative" | "path/win32.resolve" | "path/win32.toNamespacedPath" | "perf_hooks" | "perf_hooks.performance" | "perf_hooks.performance.clearMarks" | "perf_hooks.performance.clearMeasures" | "perf_hooks.performance.clearResourceTimings" | "perf_hooks.performance.eventLoopUtilization" | "perf_hooks.performance.getEntries" | "perf_hooks.performance.getEntriesByName" | "perf_hooks.performance.getEntriesByType" | "perf_hooks.performance.mark" | "perf_hooks.performance.markResourceTiming" | "perf_hooks.performance.measure" | "perf_hooks.performance.nodeTiming" | "perf_hooks.performance.nodeTiming.bootstrapComplete" | "perf_hooks.performance.nodeTiming.environment" | "perf_hooks.performance.nodeTiming.idleTime" | "perf_hooks.performance.nodeTiming.loopExit" | "perf_hooks.performance.nodeTiming.loopStart" | "perf_hooks.performance.nodeTiming.nodeStart" | "perf_hooks.performance.nodeTiming.uvMetricsInfo" | "perf_hooks.performance.nodeTiming.v8Start" | "perf_hooks.performance.now" | "perf_hooks.performance.onresourcetimingbufferfull" | "perf_hooks.performance.setResourceTimingBufferSize" | "perf_hooks.performance.timeOrigin" | "perf_hooks.performance.timerify" | "perf_hooks.performance.toJSON" | "perf_hooks.createHistogram" | "perf_hooks.eventLoopUtilization" | "perf_hooks.timerify" | "perf_hooks.monitorEventLoopDelay" | "perf_hooks.PerformanceEntry" | "perf_hooks.PerformanceMark" | "perf_hooks.PerformanceMeasure" | "perf_hooks.PerformanceNodeEntry" | "perf_hooks.PerformanceNodeTiming" | "perf_hooks.PerformanceResourceTiming" | "perf_hooks.PerformanceObserver" | "perf_hooks.PerformanceObserverEntryList" | "perf_hooks.Histogram" | "perf_hooks.IntervalHistogram" | "perf_hooks.RecordableHistogram" | "punycode" | "punycode.ucs2" | "punycode.version" | "punycode.decode" | "punycode.encode" | "punycode.toASCII" | "punycode.toUnicode" | "querystring" | "querystring.decode" | "querystring.encode" | "querystring.escape" | "querystring.parse" | "querystring.stringify" | "querystring.unescape" | "readline" | "readline.promises" | "readline.promises.createInterface" | "readline.promises.Interface" | "readline.promises.Readline" | "readline.clearLine" | "readline.clearScreenDown" | "readline.createInterface" | "readline.cursorTo" | "readline.moveCursor" | "readline.Interface" | "readline.emitKeypressEvents" | "readline.InterfaceConstructor" | "readline/promises" | "readline/promises.createInterface" | "readline/promises.Interface" | "readline/promises.Readline" | "repl" | "repl.start" | "repl.writer" | "repl.REPLServer()" | "repl.REPLServer" | "repl.REPL_MODE_MAGIC" | "repl.REPL_MODE_SLOPPY" | "repl.REPL_MODE_STRICT" | "repl.Recoverable()" | "repl.Recoverable" | "repl.builtinModules" | "sea" | "sea.isSea" | "sea.getAsset" | "sea.getAssetAsBlob" | "sea.getAssetKeys" | "sea.getRawAsset" | "sea.sea.isSea" | "sea.sea.getAsset" | "sea.sea.getAssetAsBlob" | "sea.sea.getAssetKeys" | "sea.sea.getRawAsset" | "stream" | "stream.promises" | "stream.promises.pipeline" | "stream.promises.finished" | "stream.finished" | "stream.pipeline" | "stream.compose" | "stream.duplexPair" | "stream.Readable" | "stream.Readable.from" | "stream.Readable.isDisturbed" | "stream.Readable.fromWeb" | "stream.Readable.toWeb" | "stream.Writable" | "stream.Writable.fromWeb" | "stream.Writable.toWeb" | "stream.Duplex" | "stream.Duplex.from" | "stream.Duplex.fromWeb" | "stream.Duplex.toWeb" | "stream.Transform" | "stream.isErrored" | "stream.isReadable" | "stream.addAbortSignal" | "stream.getDefaultHighWaterMark" | "stream.setDefaultHighWaterMark" | "stream/promises.pipeline" | "stream/promises.finished" | "stream/web" | "stream/web.ReadableStream" | "stream/web.ReadableStream.from" | "stream/web.ReadableStreamDefaultReader" | "stream/web.ReadableStreamBYOBReader" | "stream/web.ReadableStreamDefaultController" | "stream/web.ReadableByteStreamController" | "stream/web.ReadableStreamBYOBRequest" | "stream/web.WritableStream" | "stream/web.WritableStreamDefaultWriter" | "stream/web.WritableStreamDefaultController" | "stream/web.TransformStream" | "stream/web.TransformStreamDefaultController" | "stream/web.ByteLengthQueuingStrategy" | "stream/web.CountQueuingStrategy" | "stream/web.TextEncoderStream" | "stream/web.TextDecoderStream" | "stream/web.CompressionStream" | "stream/web.DecompressionStream" | "stream/consumers" | "stream/consumers.arrayBuffer" | "stream/consumers.blob" | "stream/consumers.buffer" | "stream/consumers.json" | "stream/consumers.text" | "_stream_duplex" | "_stream_passthrough" | "_stream_readable" | "_stream_transform" | "_stream_wrap" | "_stream_writable" | "string_decoder" | "string_decoder.StringDecoder" | "sqlite" | "sqlite.constants" | "sqlite.constants.SQLITE_CHANGESET_OMIT" | "sqlite.constants.SQLITE_CHANGESET_REPLACE" | "sqlite.constants.SQLITE_CHANGESET_ABORT" | "sqlite.backup" | "sqlite.DatabaseSync" | "sqlite.Session" | "sqlite.StatementSync" | "sqlite.SQLITE_CHANGESET_OMIT" | "sqlite.SQLITE_CHANGESET_REPLACE" | "sqlite.SQLITE_CHANGESET_ABORT" | "test" | "test.after" | "test.afterEach" | "test.assert" | "test.assert.register" | "test.before" | "test.beforeEach" | "test.describe" | "test.describe.only" | "test.describe.skip" | "test.describe.todo" | "test.it" | "test.it.only" | "test.it.skip" | "test.it.todo" | "test.mock" | "test.mock.fn" | "test.mock.getter" | "test.mock.method" | "test.mock.module" | "test.mock.property" | "test.mock.reset" | "test.mock.restoreAll" | "test.mock.setter" | "test.mock.timers" | "test.mock.timers.enable" | "test.mock.timers.reset" | "test.mock.timers.tick" | "test.only" | "test.run" | "test.snapshot" | "test.snapshot.setDefaultSnapshotSerializers" | "test.snapshot.setResolveSnapshotPath" | "test.skip" | "test.suite" | "test.test" | "test.test.only" | "test.test.skip" | "test.test.todo" | "test.todo" | "timers" | "timers.Immediate" | "timers.Timeout" | "timers.setImmediate" | "timers.clearImmediate" | "timers.setInterval" | "timers.clearInterval" | "timers.setTimeout" | "timers.clearTimeout" | "timers.promises" | "timers.promises.setTimeout" | "timers.promises.setImmediate" | "timers.promises.setInterval" | "timers.promises.scheduler.wait" | "timers.promises.scheduler.yield" | "timers/promises" | "timers/promises.setTimeout" | "timers/promises.setImmediate" | "timers/promises.setInterval" | "timers/promises.scheduler.wait" | "timers/promises.scheduler.yield" | "tls" | "tls.checkServerIdentity" | "tls.connect" | "tls.createSecureContext" | "tls.createSecurePair" | "tls.createServer" | "tls.CryptoStream" | "tls.DEFAULT_CIPHERS" | "tls.DEFAULT_ECDH_CURVE" | "tls.DEFAULT_MAX_VERSION" | "tls.DEFAULT_MIN_VERSION" | "tls.getCACertificates" | "tls.getCiphers" | "tls.rootCertificates" | "tls.SecureContext" | "tls.SecurePair" | "tls.Server" | "tls.setDefaultCACertificates" | "tls.TLSSocket" | "_tls_common" | "_tls_wrap" | "trace_events" | "trace_events.createTracing" | "trace_events.getEnabledCategories" | "tty" | "tty.isatty" | "tty.ReadStream" | "tty.WriteStream" | "url" | "url.domainToASCII" | "url.domainToUnicode" | "url.fileURLToPath" | "url.format" | "url.pathToFileURL" | "url.urlToHttpOptions" | "url.URL" | "url.URL.canParse" | "url.URL.createObjectURL" | "url.URL.revokeObjectURL" | "url.URLPattern" | "url.URLSearchParams" | "url.Url" | "util.promisify" | "util.promisify.custom" | "util.callbackify" | "util.debuglog" | "util.debug" | "util.deprecate" | "util.diff" | "util.format" | "util.formatWithOptions" | "util.getCallSite" | "util.getCallSites" | "util.getSystemErrorName" | "util.getSystemErrorMap" | "util.getSystemErrorMessage" | "util.inherits" | "util.inspect" | "util.inspect.custom" | "util.inspect.defaultOptions" | "util.inspect.replDefaults" | "util.isDeepStrictEqual" | "util.parseArgs" | "util.parseEnv" | "util.setTraceSigInt" | "util.stripVTControlCharacters" | "util.styleText" | "util.toUSVString" | "util.transferableAbortController" | "util.transferableAbortSignal" | "util.aborted" | "util.MIMEType" | "util.MIMEParams" | "util.TextDecoder" | "util.TextEncoder" | "util.types" | "util.types.isExternal" | "util.types.isDate" | "util.types.isArgumentsObject" | "util.types.isBigIntObject" | "util.types.isBooleanObject" | "util.types.isNumberObject" | "util.types.isStringObject" | "util.types.isSymbolObject" | "util.types.isNativeError" | "util.types.isRegExp" | "util.types.isAsyncFunction" | "util.types.isGeneratorFunction" | "util.types.isGeneratorObject" | "util.types.isPromise" | "util.types.isMap" | "util.types.isSet" | "util.types.isMapIterator" | "util.types.isSetIterator" | "util.types.isWeakMap" | "util.types.isWeakSet" | "util.types.isArrayBuffer" | "util.types.isDataView" | "util.types.isSharedArrayBuffer" | "util.types.isProxy" | "util.types.isModuleNamespaceObject" | "util.types.isAnyArrayBuffer" | "util.types.isBoxedPrimitive" | "util.types.isArrayBufferView" | "util.types.isTypedArray" | "util.types.isUint8Array" | "util.types.isUint8ClampedArray" | "util.types.isUint16Array" | "util.types.isUint32Array" | "util.types.isInt8Array" | "util.types.isInt16Array" | "util.types.isInt32Array" | "util.types.isFloat16Array" | "util.types.isFloat32Array" | "util.types.isFloat64Array" | "util.types.isBigInt64Array" | "util.types.isBigUint64Array" | "util.types.isKeyObject" | "util.types.isCryptoKey" | "util.types.isWebAssemblyCompiledModule" | "util._extend" | "util.isArray" | "util.isBoolean" | "util.isBuffer" | "util.isDate" | "util.isError" | "util.isFunction" | "util.isNull" | "util.isNullOrUndefined" | "util.isNumber" | "util.isObject" | "util.isPrimitive" | "util.isRegExp" | "util.isString" | "util.isSymbol" | "util.isUndefined" | "util.log" | "util" | "util/types" | "util/types.isExternal" | "util/types.isDate" | "util/types.isArgumentsObject" | "util/types.isBigIntObject" | "util/types.isBooleanObject" | "util/types.isNumberObject" | "util/types.isStringObject" | "util/types.isSymbolObject" | "util/types.isNativeError" | "util/types.isRegExp" | "util/types.isAsyncFunction" | "util/types.isGeneratorFunction" | "util/types.isGeneratorObject" | "util/types.isPromise" | "util/types.isMap" | "util/types.isSet" | "util/types.isMapIterator" | "util/types.isSetIterator" | "util/types.isWeakMap" | "util/types.isWeakSet" | "util/types.isArrayBuffer" | "util/types.isDataView" | "util/types.isSharedArrayBuffer" | "util/types.isProxy" | "util/types.isModuleNamespaceObject" | "util/types.isAnyArrayBuffer" | "util/types.isBoxedPrimitive" | "util/types.isArrayBufferView" | "util/types.isTypedArray" | "util/types.isUint8Array" | "util/types.isUint8ClampedArray" | "util/types.isUint16Array" | "util/types.isUint32Array" | "util/types.isInt8Array" | "util/types.isInt16Array" | "util/types.isInt32Array" | "util/types.isFloat16Array" | "util/types.isFloat32Array" | "util/types.isFloat64Array" | "util/types.isBigInt64Array" | "util/types.isBigUint64Array" | "util/types.isKeyObject" | "util/types.isCryptoKey" | "util/types.isWebAssemblyCompiledModule" | "v8" | "v8.serialize" | "v8.deserialize" | "v8.Serializer" | "v8.Deserializer" | "v8.DefaultSerializer" | "v8.DefaultDeserializer" | "v8.promiseHooks" | "v8.promiseHooks.onInit" | "v8.promiseHooks.onSettled" | "v8.promiseHooks.onBefore" | "v8.promiseHooks.onAfter" | "v8.promiseHooks.createHook" | "v8.startupSnapshot" | "v8.startupSnapshot.addSerializeCallback" | "v8.startupSnapshot.addDeserializeCallback" | "v8.startupSnapshot.setDeserializeMainFunction" | "v8.startupSnapshot.isBuildingSnapshot" | "v8.cachedDataVersionTag" | "v8.getHeapCodeStatistics" | "v8.getHeapSnapshot" | "v8.getHeapSpaceStatistics" | "v8.getHeapStatistics" | "v8.isStringOneByteRepresentation" | "v8.queryObjects" | "v8.setFlagsFromString" | "v8.stopCoverage" | "v8.takeCoverage" | "v8.writeHeapSnapshot" | "v8.setHeapSnapshotNearHeapLimit" | "v8.GCProfiler" | "v8.startCpuProfile" | "vm.constants" | "vm.compileFunction" | "vm.createContext" | "vm.isContext" | "vm.measureMemory" | "vm.runInContext" | "vm.runInNewContext" | "vm.runInThisContext" | "vm.Script" | "vm.Module" | "vm.SourceTextModule" | "vm.SyntheticModule" | "vm" | "wasi.WASI" | "wasi" | "worker_threads" | "worker_threads.parentPort" | "worker_threads.resourceLimits" | "worker_threads.SHARE_ENV" | "worker_threads.threadId" | "worker_threads.threadName" | "worker_threads.workerData" | "worker_threads.getEnvironmentData" | "worker_threads.getHeapStatistics" | "worker_threads.markAsUncloneable" | "worker_threads.markAsUntransferable" | "worker_threads.isInternalThread" | "worker_threads.isMainThread" | "worker_threads.isMarkedAsUntransferable" | "worker_threads.locks" | "worker_threads.locks.request" | "worker_threads.locks.query" | "worker_threads.moveMessagePortToContext" | "worker_threads.postMessageToThread" | "worker_threads.receiveMessageOnPort" | "worker_threads.setEnvironmentData" | "worker_threads.BroadcastChannel" | "worker_threads.MessageChannel" | "worker_threads.MessagePort" | "worker_threads.Worker" | "zlib.brotliCompress" | "zlib.brotliCompressSync" | "zlib.brotliDecompress" | "zlib.brotliDecompressSync" | "zlib.constants" | "zlib.constants.ZSTD_e_continue" | "zlib.constants.ZSTD_e_flush" | "zlib.constants.ZSTD_e_end" | "zlib.constants.ZSTD_fast" | "zlib.constants.ZSTD_dfast" | "zlib.constants.ZSTD_greedy" | "zlib.constants.ZSTD_lazy" | "zlib.constants.ZSTD_lazy2" | "zlib.constants.ZSTD_btlazy2" | "zlib.constants.ZSTD_btopt" | "zlib.constants.ZSTD_btultra" | "zlib.constants.ZSTD_btultra2" | "zlib.constants.ZSTD_c_compressionLevel" | "zlib.constants.ZSTD_c_windowLog" | "zlib.constants.ZSTD_c_hashLog" | "zlib.constants.ZSTD_c_chainLog" | "zlib.constants.ZSTD_c_searchLog" | "zlib.constants.ZSTD_c_minMatch" | "zlib.constants.ZSTD_c_targetLength" | "zlib.constants.ZSTD_c_strategy" | "zlib.constants.ZSTD_c_enableLongDistanceMatching" | "zlib.constants.ZSTD_c_ldmHashLog" | "zlib.constants.ZSTD_c_ldmMinMatch" | "zlib.constants.ZSTD_c_ldmBucketSizeLog" | "zlib.constants.ZSTD_c_ldmHashRateLog" | "zlib.constants.ZSTD_c_contentSizeFlag" | "zlib.constants.ZSTD_c_checksumFlag" | "zlib.constants.ZSTD_c_dictIDFlag" | "zlib.constants.ZSTD_c_nbWorkers" | "zlib.constants.ZSTD_c_jobSize" | "zlib.constants.ZSTD_c_overlapLog" | "zlib.constants.ZSTD_d_windowLogMax" | "zlib.constants.ZSTD_CLEVEL_DEFAULT" | "zlib.constants.ZSTD_error_no_error" | "zlib.constants.ZSTD_error_GENERIC" | "zlib.constants.ZSTD_error_prefix_unknown" | "zlib.constants.ZSTD_error_version_unsupported" | "zlib.constants.ZSTD_error_frameParameter_unsupported" | "zlib.constants.ZSTD_error_frameParameter_windowTooLarge" | "zlib.constants.ZSTD_error_corruption_detected" | "zlib.constants.ZSTD_error_checksum_wrong" | "zlib.constants.ZSTD_error_literals_headerWrong" | "zlib.constants.ZSTD_error_dictionary_corrupted" | "zlib.constants.ZSTD_error_dictionary_wrong" | "zlib.constants.ZSTD_error_dictionaryCreation_failed" | "zlib.constants.ZSTD_error_parameter_unsupported" | "zlib.constants.ZSTD_error_parameter_combination_unsupported" | "zlib.constants.ZSTD_error_parameter_outOfBound" | "zlib.constants.ZSTD_error_tableLog_tooLarge" | "zlib.constants.ZSTD_error_maxSymbolValue_tooLarge" | "zlib.constants.ZSTD_error_maxSymbolValue_tooSmall" | "zlib.constants.ZSTD_error_stabilityCondition_notRespected" | "zlib.constants.ZSTD_error_stage_wrong" | "zlib.constants.ZSTD_error_init_missing" | "zlib.constants.ZSTD_error_memory_allocation" | "zlib.constants.ZSTD_error_workSpace_tooSmall" | "zlib.constants.ZSTD_error_dstSize_tooSmall" | "zlib.constants.ZSTD_error_srcSize_wrong" | "zlib.constants.ZSTD_error_dstBuffer_null" | "zlib.constants.ZSTD_error_noForwardProgress_destFull" | "zlib.constants.ZSTD_error_noForwardProgress_inputEmpty" | "zlib.crc32" | "zlib.createBrotliCompress" | "zlib.createBrotliDecompress" | "zlib.createDeflate" | "zlib.createDeflateRaw" | "zlib.createGunzip" | "zlib.createGzip" | "zlib.createInflate" | "zlib.createInflateRaw" | "zlib.createUnzip" | "zlib.createZstdCompress" | "zlib.createZstdDecompress" | "zlib.deflate" | "zlib.deflateRaw" | "zlib.deflateRawSync" | "zlib.deflateSync" | "zlib.gunzip" | "zlib.gunzipSync" | "zlib.gzip" | "zlib.gzipSync" | "zlib.inflate" | "zlib.inflateRaw" | "zlib.inflateRawSync" | "zlib.inflateSync" | "zlib.unzip" | "zlib.unzipSync" | "zlib.zstdCompress" | "zlib.zstdCompressSync" | "zlib.zstdDecompress" | "zlib.zstdDecompressSync" | "zlib.BrotliCompress()" | "zlib.BrotliCompress" | "zlib.BrotliDecompress()" | "zlib.BrotliDecompress" | "zlib.Deflate()" | "zlib.Deflate" | "zlib.DeflateRaw()" | "zlib.DeflateRaw" | "zlib.Gunzip()" | "zlib.Gunzip" | "zlib.Gzip()" | "zlib.Gzip" | "zlib.Inflate()" | "zlib.Inflate" | "zlib.InflateRaw()" | "zlib.InflateRaw" | "zlib.Unzip()" | "zlib.Unzip" | "zlib.ZstdCompress" | "zlib.ZstdDecompress" | "zlib.ZstdOptions" | "zlib" | "import.meta.resolve" | "import.meta.dirname" | "import.meta.filename" | "import.meta.main")[]; }]; // ----- node/prefer-global/buffer ----- type NodePreferGlobalBuffer = [] | [("always" | "never")]; // ----- node/prefer-global/console ----- type NodePreferGlobalConsole = [] | [("always" | "never")]; // ----- node/prefer-global/crypto ----- type NodePreferGlobalCrypto = [] | [("always" | "never")]; // ----- node/prefer-global/process ----- type NodePreferGlobalProcess = [] | [("always" | "never")]; // ----- node/prefer-global/text-decoder ----- type NodePreferGlobalTextDecoder = [] | [("always" | "never")]; // ----- node/prefer-global/text-encoder ----- type NodePreferGlobalTextEncoder = [] | [("always" | "never")]; // ----- node/prefer-global/timers ----- type NodePreferGlobalTimers = [] | [("always" | "never")]; // ----- node/prefer-global/url ----- type NodePreferGlobalUrl = [] | [("always" | "never")]; // ----- node/prefer-global/url-search-params ----- type NodePreferGlobalUrlSearchParams = [] | [("always" | "never")]; // ----- node/prefer-node-protocol ----- type NodePreferNodeProtocol = [] | [{ version?: string; }]; // ----- node/shebang ----- type NodeShebang = [] | [{ convertPath?: ({ [k: string]: [string, string]; } | [{ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; }, ...({ include: [string, ...(string)[]]; exclude?: string[]; replace: [string, string]; })[]]); ignoreUnpublished?: boolean; additionalExecutables?: string[]; executableMap?: { [k: string]: string; }; }]; // ----- nonblock-statement-body-position ----- type NonblockStatementBodyPosition = [] | [("beside" | "below" | "any")] | [("beside" | "below" | "any"), { overrides?: { if?: ("beside" | "below" | "any"); else?: ("beside" | "below" | "any"); while?: ("beside" | "below" | "any"); do?: ("beside" | "below" | "any"); for?: ("beside" | "below" | "any"); }; }]; // ----- object-curly-newline ----- type ObjectCurlyNewline = [] | [((("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }) | { ObjectExpression?: (("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }); ObjectPattern?: (("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }); ImportDeclaration?: (("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }); ExportDeclaration?: (("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; }); })]; // ----- object-curly-spacing ----- type ObjectCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), { arraysInObjects?: boolean; objectsInObjects?: boolean; }]; // ----- object-property-newline ----- type ObjectPropertyNewline = [] | [{ allowAllPropertiesOnSameLine?: boolean; allowMultiplePropertiesPerLine?: boolean; }]; // ----- object-shorthand ----- type ObjectShorthand = ([] | [("always" | "methods" | "properties" | "never" | "consistent" | "consistent-as-needed")] | [] | [("always" | "methods" | "properties")] | [("always" | "methods" | "properties"), { avoidQuotes?: boolean; }] | [] | [("always" | "methods")] | [("always" | "methods"), { ignoreConstructors?: boolean; methodsIgnorePattern?: string; avoidQuotes?: boolean; avoidExplicitReturnArrows?: boolean; }]); // ----- one-var ----- type OneVar = [] | [(("always" | "never" | "consecutive") | { separateRequires?: boolean; var?: ("always" | "never" | "consecutive"); let?: ("always" | "never" | "consecutive"); const?: ("always" | "never" | "consecutive"); using?: ("always" | "never" | "consecutive"); awaitUsing?: ("always" | "never" | "consecutive"); } | { initialized?: ("always" | "never" | "consecutive"); uninitialized?: ("always" | "never" | "consecutive"); })]; // ----- one-var-declaration-per-line ----- type OneVarDeclarationPerLine = [] | [("always" | "initializations")]; // ----- operator-assignment ----- type OperatorAssignment = [] | [("always" | "never")]; // ----- operator-linebreak ----- type OperatorLinebreak = [] | [("after" | "before" | "none" | null)] | [("after" | "before" | "none" | null), { overrides?: { [k: string]: ("after" | "before" | "none" | "ignore") | undefined; }; }]; // ----- padded-blocks ----- type PaddedBlocks = [] | [(("always" | "never") | { blocks?: ("always" | "never"); switches?: ("always" | "never"); classes?: ("always" | "never"); })] | [(("always" | "never") | { blocks?: ("always" | "never"); switches?: ("always" | "never"); classes?: ("always" | "never"); }), { allowSingleLineBlocks?: boolean; }]; // ----- padding-line-between-statements ----- type _PaddingLineBetweenStatementsPaddingType = ("any" | "never" | "always"); type _PaddingLineBetweenStatementsStatementType = (("*" | "block-like" | "cjs-export" | "cjs-import" | "directive" | "expression" | "iife" | "multiline-block-like" | "multiline-expression" | "multiline-const" | "multiline-let" | "multiline-var" | "singleline-const" | "singleline-let" | "singleline-var" | "block" | "empty" | "function" | "break" | "case" | "class" | "const" | "continue" | "debugger" | "default" | "do" | "export" | "for" | "if" | "import" | "let" | "return" | "switch" | "throw" | "try" | "var" | "while" | "with") | [("*" | "block-like" | "cjs-export" | "cjs-import" | "directive" | "expression" | "iife" | "multiline-block-like" | "multiline-expression" | "multiline-const" | "multiline-let" | "multiline-var" | "singleline-const" | "singleline-let" | "singleline-var" | "block" | "empty" | "function" | "break" | "case" | "class" | "const" | "continue" | "debugger" | "default" | "do" | "export" | "for" | "if" | "import" | "let" | "return" | "switch" | "throw" | "try" | "var" | "while" | "with"), ...(("*" | "block-like" | "cjs-export" | "cjs-import" | "directive" | "expression" | "iife" | "multiline-block-like" | "multiline-expression" | "multiline-const" | "multiline-let" | "multiline-var" | "singleline-const" | "singleline-let" | "singleline-var" | "block" | "empty" | "function" | "break" | "case" | "class" | "const" | "continue" | "debugger" | "default" | "do" | "export" | "for" | "if" | "import" | "let" | "return" | "switch" | "throw" | "try" | "var" | "while" | "with"))[]]); type PaddingLineBetweenStatements = { blankLine: _PaddingLineBetweenStatementsPaddingType; prev: _PaddingLineBetweenStatementsStatementType; next: _PaddingLineBetweenStatementsStatementType; }[]; // ----- perfectionist/sort-array-includes ----- type PerfectionistSortArrayIncludes = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: "literal"; }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: "literal"; })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: "literal"; })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-classes ----- type PerfectionistSortClasses = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]; selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method"); decoratorNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]; selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method"); decoratorNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]; selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method"); decoratorNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; useExperimentalDependencyDetection?: boolean; ignoreCallbackDependenciesPatterns?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-decorators ----- type PerfectionistSortDecorators = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); sortOnParameters?: boolean; sortOnProperties?: boolean; sortOnAccessors?: boolean; sortOnMethods?: boolean; sortOnClasses?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-enums ----- type PerfectionistSortEnums = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; sortByValue?: ("always" | "ifNumericEnum" | "never"); useExperimentalDependencyDetection?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-export-attributes ----- type PerfectionistSortExportAttributes = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-exports ----- type PerfectionistSortExports = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[]; selector?: "export"; }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[]; selector?: "export"; })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[]; selector?: "export"; })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-heritage-clauses ----- type PerfectionistSortHeritageClauses = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; partitionByNewLine?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); }[]; // ----- perfectionist/sort-import-attributes ----- type PerfectionistSortImportAttributes = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-imports ----- type PerfectionistSortImports = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first"); order?: ("asc" | "desc"); sortBy?: ("specifier" | "path"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); sortBy?: ("specifier" | "path"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first"); order?: ("asc" | "desc"); sortBy?: ("specifier" | "path"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("specifier" | "path"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[]; selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type"); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[]; selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type"); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first"); order?: ("asc" | "desc"); sortBy?: ("specifier" | "path"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("specifier" | "path"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[]; selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type"); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first"); order?: ("asc" | "desc"); sortBy?: ("specifier" | "path"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("specifier" | "path"); })[]; newlinesBetween?: ("ignore" | number); tsconfig?: { rootDir: string; filename?: string; }; maxLineLength?: number; sortSideEffects?: boolean; environment?: ("node" | "bun"); useExperimentalDependencyDetection?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; internalPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }[]; // ----- perfectionist/sort-interfaces ----- type PerfectionistSortInterfaces = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("optional" | "required" | "multiline")[]; selector?: ("index-signature" | "member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("optional" | "required" | "multiline")[]; selector?: ("index-signature" | "member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("optional" | "required" | "multiline")[]; selector?: ("index-signature" | "member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); hasNumericKeysOnly?: boolean; declarationCommentMatchesPattern?: (({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)[] | ({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)); matchesAstSelector?: string; declarationMatchesPattern?: (({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)[] | ({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)); }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-intersection-types ----- type PerfectionistSortIntersectionTypes = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union"); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union"); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union"); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-jsx-props ----- type PerfectionistSortJsxProps = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("shorthand" | "multiline")[]; selector?: "prop"; elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("shorthand" | "multiline")[]; selector?: "prop"; elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("shorthand" | "multiline")[]; selector?: "prop"; elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; tagMatchesPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }; partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-maps ----- type PerfectionistSortMaps = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-modules ----- type PerfectionistSortModules = [] | [{ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]; selector?: ("enum" | "function" | "interface" | "type" | "class"); decoratorNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]; selector?: ("enum" | "function" | "interface" | "type" | "class"); decoratorNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]; selector?: ("enum" | "function" | "interface" | "type" | "class"); decoratorNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useExperimentalDependencyDetection?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }]; // ----- perfectionist/sort-named-exports ----- type PerfectionistSortNamedExports = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type")[]; selector?: "export"; }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type")[]; selector?: "export"; })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type")[]; selector?: "export"; })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; ignoreAlias?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-named-imports ----- type PerfectionistSortNamedImports = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type")[]; selector?: "import"; }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type")[]; selector?: "import"; })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("value" | "type")[]; selector?: "import"; })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; ignoreAlias?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-object-types ----- type PerfectionistSortObjectTypes = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("optional" | "required" | "multiline")[]; selector?: ("index-signature" | "member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("optional" | "required" | "multiline")[]; selector?: ("index-signature" | "member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("optional" | "required" | "multiline")[]; selector?: ("index-signature" | "member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); hasNumericKeysOnly?: boolean; declarationCommentMatchesPattern?: (({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)[] | ({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)); matchesAstSelector?: string; declarationMatchesPattern?: (({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)[] | ({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)); }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-objects ----- type PerfectionistSortObjects = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("multiline")[]; selector?: ("member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("multiline")[]; selector?: ("member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); modifiers?: ("multiline")[]; selector?: ("member" | "method" | "property"); elementValuePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); sortBy?: ("name" | "value"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); objectType?: ("destructured" | "non-destructured"); hasNumericKeysOnly?: boolean; declarationCommentMatchesPattern?: (({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)[] | ({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)); callingFunctionNamePattern?: (({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)[] | ({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)); matchesAstSelector?: string; declarationMatchesPattern?: (({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)[] | ({ scope?: ("shallow" | "deep"); pattern: string; flags?: string; } | string)); }; partitionByComputedKey?: boolean; styledComponents?: boolean; useExperimentalDependencyDetection?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-sets ----- type PerfectionistSortSets = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: "literal"; }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: "literal"; })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: "literal"; })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-switch-case ----- type PerfectionistSortSwitchCase = [] | [{ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); }]; // ----- perfectionist/sort-union-types ----- type PerfectionistSortUnionTypes = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union"); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union"); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union"); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- perfectionist/sort-variable-declarations ----- type PerfectionistSortVariableDeclarations = { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); specialCharacters?: ("remove" | "trim" | "keep"); ignoreCase?: boolean; alphabet?: string; locales?: (string | string[]); order?: ("asc" | "desc"); customGroups?: ({ fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); anyOf: [{ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("initialized" | "uninitialized"); }, ...({ elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("initialized" | "uninitialized"); })[]]; } | { fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); groupName: string; newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); elementNamePattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); selector?: ("initialized" | "uninitialized"); })[]; newlinesInside?: (("ignore" | number) | "newlinesBetween"); groups?: (string | [string, ...(string)[]] | { newlinesBetween: ("ignore" | number); } | { group: (string | [string, ...(string)[]]); fallbackSort?: { type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); order?: ("asc" | "desc"); }; commentAbove?: string; type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order"); newlinesInside?: ("ignore" | number); order?: ("asc" | "desc"); })[]; newlinesBetween?: ("ignore" | number); useConfigurationIf?: { allNamesMatchPattern?: (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)); matchesAstSelector?: string; }; useExperimentalDependencyDetection?: boolean; partitionByComment?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string)) | { block?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); line?: (boolean | (({ pattern: string; flags?: string; } | string)[] | ({ pattern: string; flags?: string; } | string))); }); partitionByNewLine?: boolean; }[]; // ----- prefer-arrow-callback ----- type PreferArrowCallback = [] | [{ allowNamedFunctions?: boolean; allowUnboundThis?: boolean; }]; // ----- prefer-const ----- type PreferConst = [] | [{ destructuring?: ("any" | "all"); ignoreReadBeforeAssign?: boolean; }]; // ----- prefer-destructuring ----- type PreferDestructuring = [] | [({ VariableDeclarator?: { array?: boolean; object?: boolean; }; AssignmentExpression?: { array?: boolean; object?: boolean; }; } | { array?: boolean; object?: boolean; })] | [({ VariableDeclarator?: { array?: boolean; object?: boolean; }; AssignmentExpression?: { array?: boolean; object?: boolean; }; } | { array?: boolean; object?: boolean; }), { enforceForRenamedProperties?: boolean; }]; // ----- prefer-promise-reject-errors ----- type PreferPromiseRejectErrors = [] | [{ allowEmptyReject?: boolean; }]; // ----- prefer-reflect ----- type PreferReflect = [] | [{ exceptions?: ("apply" | "call" | "delete" | "defineProperty" | "getOwnPropertyDescriptor" | "getPrototypeOf" | "setPrototypeOf" | "isExtensible" | "getOwnPropertyNames" | "preventExtensions")[]; }]; // ----- prefer-regex-literals ----- type PreferRegexLiterals = [] | [{ disallowRedundantWrapping?: boolean; }]; // ----- preserve-caught-error ----- type PreserveCaughtError = [] | [{ requireCatchParameter?: boolean; }]; // ----- quote-props ----- type QuoteProps = ([] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [("always" | "as-needed" | "consistent" | "consistent-as-needed"), { keywords?: boolean; unnecessary?: boolean; numbers?: boolean; }]); // ----- quotes ----- type Quotes = [] | [("single" | "double" | "backtick")] | [("single" | "double" | "backtick"), ("avoid-escape" | { avoidEscape?: boolean; allowTemplateLiterals?: boolean; })]; // ----- radix ----- type Radix = [] | [("always" | "as-needed")]; // ----- react-refresh/only-export-components ----- type ReactRefreshOnlyExportComponents = [] | [{ extraHOCs?: string[]; allowExportNames?: string[]; allowConstantExport?: boolean; checkJS?: boolean; }]; // ----- react/dom-no-unknown-property ----- type ReactDomNoUnknownProperty = [] | [{ ignore?: string[]; requireDataLowercase?: boolean; }]; // ----- react/exhaustive-deps ----- type ReactExhaustiveDeps = [] | [{ additionalHooks?: string; enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean; experimental_autoDependenciesHooks?: string[]; requireExplicitEffectDeps?: boolean; }]; // ----- react/jsx-no-useless-fragment ----- type ReactJsxNoUselessFragment = [] | [{ allowEmptyFragment?: boolean; allowExpressions?: boolean; }]; // ----- react/no-unstable-default-props ----- type ReactNoUnstableDefaultProps = [] | [{ safeDefaultProps?: string[]; }]; // ----- react/rules-of-hooks ----- type ReactRulesOfHooks = [] | [{ additionalHooks?: string; }]; // ----- react/use-state ----- type ReactUseState = [] | [{ enforceAssignment?: boolean; enforceLazyInitialization?: boolean; enforceSetterName?: boolean; }]; // ----- react/x-exhaustive-deps ----- type ReactXExhaustiveDeps = [] | [{ additionalHooks?: string; enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean; experimental_autoDependenciesHooks?: string[]; requireExplicitEffectDeps?: boolean; }]; // ----- react/x-no-unstable-default-props ----- type ReactXNoUnstableDefaultProps = [] | [{ safeDefaultProps?: string[]; }]; // ----- react/x-rules-of-hooks ----- type ReactXRulesOfHooks = [] | [{ additionalHooks?: string; }]; // ----- react/x-use-state ----- type ReactXUseState = [] | [{ enforceAssignment?: boolean; enforceLazyInitialization?: boolean; enforceSetterName?: boolean; }]; // ----- regexp/hexadecimal-escape ----- type RegexpHexadecimalEscape = [] | [("always" | "never")]; // ----- regexp/letter-case ----- type RegexpLetterCase = [] | [{ caseInsensitive?: ("lowercase" | "uppercase" | "ignore"); unicodeEscape?: ("lowercase" | "uppercase" | "ignore"); hexadecimalEscape?: ("lowercase" | "uppercase" | "ignore"); controlEscape?: ("lowercase" | "uppercase" | "ignore"); }]; // ----- regexp/match-any ----- type RegexpMatchAny = [] | [{ allows?: [("[\\s\\S]" | "[\\S\\s]" | "[^]" | "dotAll"), ...(("[\\s\\S]" | "[\\S\\s]" | "[^]" | "dotAll"))[]]; }]; // ----- regexp/no-dupe-disjunctions ----- type RegexpNoDupeDisjunctions = [] | [{ report?: ("all" | "trivial" | "interesting"); reportExponentialBacktracking?: ("none" | "certain" | "potential"); reportUnreachable?: ("certain" | "potential"); }]; // ----- regexp/no-lazy-ends ----- type RegexpNoLazyEnds = [] | [{ ignorePartial?: boolean; }]; // ----- regexp/no-legacy-features ----- type RegexpNoLegacyFeatures = [] | [{ staticProperties?: ("input" | "$_" | "lastMatch" | "$&" | "lastParen" | "$+" | "leftContext" | "$`" | "rightContext" | "$'" | "$1" | "$2" | "$3" | "$4" | "$5" | "$6" | "$7" | "$8" | "$9")[]; prototypeMethods?: ("compile")[]; }]; // ----- regexp/no-misleading-capturing-group ----- type RegexpNoMisleadingCapturingGroup = [] | [{ reportBacktrackingEnds?: boolean; }]; // ----- regexp/no-misleading-unicode-character ----- type RegexpNoMisleadingUnicodeCharacter = [] | [{ fixable?: boolean; }]; // ----- regexp/no-missing-g-flag ----- type RegexpNoMissingGFlag = [] | [{ strictTypes?: boolean; }]; // ----- regexp/no-obscure-range ----- type RegexpNoObscureRange = [] | [{ allowed?: (("all" | "alphanumeric") | [("all" | "alphanumeric")] | [("alphanumeric" | string), ...(("alphanumeric" | string))[]]); }]; // ----- regexp/no-super-linear-backtracking ----- type RegexpNoSuperLinearBacktracking = [] | [{ report?: ("certain" | "potential"); }]; // ----- regexp/no-super-linear-move ----- type RegexpNoSuperLinearMove = [] | [{ report?: ("certain" | "potential"); ignoreSticky?: boolean; ignorePartial?: boolean; }]; // ----- regexp/no-unused-capturing-group ----- type RegexpNoUnusedCapturingGroup = [] | [{ fixable?: boolean; allowNamed?: boolean; }]; // ----- regexp/no-useless-character-class ----- type RegexpNoUselessCharacterClass = [] | [{ ignores?: string[]; }]; // ----- regexp/no-useless-flag ----- type RegexpNoUselessFlag = [] | [{ ignore?: ("i" | "m" | "s" | "g" | "y")[]; strictTypes?: boolean; }]; // ----- regexp/no-useless-non-capturing-group ----- type RegexpNoUselessNonCapturingGroup = [] | [{ allowTop?: (boolean | ("always" | "never" | "partial")); }]; // ----- regexp/optimal-quantifier-concatenation ----- type RegexpOptimalQuantifierConcatenation = [] | [{ capturingGroups?: ("ignore" | "report"); }]; // ----- regexp/prefer-character-class ----- type RegexpPreferCharacterClass = [] | [{ minAlternatives?: number; }]; // ----- regexp/prefer-d ----- type RegexpPreferD = [] | [{ insideCharacterClass?: ("ignore" | "range" | "d"); }]; // ----- regexp/prefer-lookaround ----- type RegexpPreferLookaround = [] | [{ lookbehind?: boolean; strictTypes?: boolean; }]; // ----- regexp/prefer-named-replacement ----- type RegexpPreferNamedReplacement = [] | [{ strictTypes?: boolean; }]; // ----- regexp/prefer-quantifier ----- type RegexpPreferQuantifier = [] | [{ allows?: string[]; }]; // ----- regexp/prefer-range ----- type RegexpPreferRange = [] | [{ target?: (("all" | "alphanumeric") | [("all" | "alphanumeric")] | [("alphanumeric" | string), ...(("alphanumeric" | string))[]]); }]; // ----- regexp/prefer-result-array-groups ----- type RegexpPreferResultArrayGroups = [] | [{ strictTypes?: boolean; }]; // ----- regexp/sort-character-class-elements ----- type RegexpSortCharacterClassElements = [] | [{ order?: ("\\s" | "\\w" | "\\d" | "\\p" | "*" | "\\q" | "[]")[]; }]; // ----- regexp/unicode-escape ----- type RegexpUnicodeEscape = [] | [("unicodeCodePointEscape" | "unicodeEscape")]; // ----- regexp/unicode-property ----- type RegexpUnicodeProperty = [] | [{ generalCategory?: ("always" | "never" | "ignore"); key?: ("short" | "long" | "ignore"); property?: (("short" | "long" | "ignore") | { binary?: ("short" | "long" | "ignore"); generalCategory?: ("short" | "long" | "ignore"); script?: ("short" | "long" | "ignore"); }); }]; // ----- require-atomic-updates ----- type RequireAtomicUpdates = [] | [{ allowProperties?: boolean; }]; // ----- require-unicode-regexp ----- type RequireUnicodeRegexp = [] | [{ requireFlag?: ("u" | "v"); }]; // ----- rest-spread-spacing ----- type RestSpreadSpacing = [] | [("always" | "never")]; // ----- semi ----- type Semi = ([] | ["never"] | ["never", { beforeStatementContinuationChars?: ("always" | "any" | "never"); }] | [] | ["always"] | ["always", { omitLastInOneLineBlock?: boolean; omitLastInOneLineClassBody?: boolean; }]); // ----- semi-spacing ----- type SemiSpacing = [] | [{ before?: boolean; after?: boolean; }]; // ----- semi-style ----- type SemiStyle = [] | [("last" | "first")]; // ----- sort-imports ----- type SortImports = [] | [{ ignoreCase?: boolean; memberSyntaxSortOrder?: [("none" | "all" | "multiple" | "single"), ("none" | "all" | "multiple" | "single"), ("none" | "all" | "multiple" | "single"), ("none" | "all" | "multiple" | "single")]; ignoreDeclarationSort?: boolean; ignoreMemberSort?: boolean; allowSeparatedGroups?: boolean; }]; // ----- sort-keys ----- type SortKeys = [] | [("asc" | "desc")] | [("asc" | "desc"), { caseSensitive?: boolean; natural?: boolean; minKeys?: number; allowLineSeparatedGroups?: boolean; ignoreComputedKeys?: boolean; }]; // ----- sort-vars ----- type SortVars = [] | [{ ignoreCase?: boolean; }]; // ----- space-before-blocks ----- type SpaceBeforeBlocks = [] | [(("always" | "never") | { keywords?: ("always" | "never" | "off"); functions?: ("always" | "never" | "off"); classes?: ("always" | "never" | "off"); })]; // ----- space-before-function-paren ----- type SpaceBeforeFunctionParen = [] | [(("always" | "never") | { anonymous?: ("always" | "never" | "ignore"); named?: ("always" | "never" | "ignore"); asyncArrow?: ("always" | "never" | "ignore"); })]; // ----- space-in-parens ----- type SpaceInParens = [] | [("always" | "never")] | [("always" | "never"), { exceptions?: ("{}" | "[]" | "()" | "empty")[]; }]; // ----- space-infix-ops ----- type SpaceInfixOps = [] | [{ int32Hint?: boolean; }]; // ----- space-unary-ops ----- type SpaceUnaryOps = [] | [{ words?: boolean; nonwords?: boolean; overrides?: { [k: string]: boolean | undefined; }; }]; // ----- spaced-comment ----- type SpacedComment = [] | [("always" | "never")] | [("always" | "never"), { exceptions?: string[]; markers?: string[]; line?: { exceptions?: string[]; markers?: string[]; }; block?: { exceptions?: string[]; markers?: string[]; balanced?: boolean; }; }]; // ----- strict ----- type Strict = [] | [("never" | "global" | "function" | "safe")]; // ----- switch-colon-spacing ----- type SwitchColonSpacing = [] | [{ before?: boolean; after?: boolean; }]; // ----- tailwindcss/enforce-canonical-classes ----- type TailwindcssEnforceCanonicalClasses = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; collapse?: boolean; logical?: boolean; }]; // ----- tailwindcss/enforce-consistent-class-order ----- type TailwindcssEnforceConsistentClassOrder = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; componentClassOrder?: ("asc" | "desc" | "preserve"); componentClassPosition?: ("start" | "end"); order?: ("asc" | "desc" | "official" | "strict"); unknownClassOrder?: ("asc" | "desc" | "preserve"); unknownClassPosition?: ("start" | "end"); }]; // ----- tailwindcss/enforce-consistent-important-position ----- type TailwindcssEnforceConsistentImportantPosition = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; position?: ("legacy" | "recommended"); }]; // ----- tailwindcss/enforce-consistent-line-wrapping ----- type TailwindcssEnforceConsistentLineWrapping = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; classesPerLine?: number; group?: ("newLine" | "emptyLine" | "never"); indent?: ("tab" | number); lineBreakStyle?: ("unix" | "windows"); preferSingleLine?: boolean; printWidth?: number; strictness?: ("strict" | "loose"); }]; // ----- tailwindcss/enforce-consistent-variable-syntax ----- type TailwindcssEnforceConsistentVariableSyntax = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; syntax?: ("shorthand" | "variable"); }]; // ----- tailwindcss/enforce-shorthand-classes ----- type TailwindcssEnforceShorthandClasses = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; }]; // ----- tailwindcss/no-conflicting-classes ----- type TailwindcssNoConflictingClasses = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; }]; // ----- tailwindcss/no-deprecated-classes ----- type TailwindcssNoDeprecatedClasses = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; }]; // ----- tailwindcss/no-duplicate-classes ----- type TailwindcssNoDuplicateClasses = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; }]; // ----- tailwindcss/no-restricted-classes ----- type TailwindcssNoRestrictedClasses = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; restrict?: ({ fix?: string; message?: string; pattern: string; } | string)[]; }]; // ----- tailwindcss/no-unknown-classes ----- type TailwindcssNoUnknownClasses = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; ignore?: string[]; }]; // ----- tailwindcss/no-unnecessary-whitespace ----- type TailwindcssNoUnnecessaryWhitespace = [] | [{ selectors?: ({ kind: "attribute"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | ({ callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; path?: string; } | { callTarget?: ("all" | "first" | "last" | number); kind: "callee"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name?: string; path: string; }) | { kind: "tag"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; } | { kind: "variable"; match?: ({ type: "strings"; } | { path?: string; type: "objectKeys"; } | { path?: string; type: "objectValues"; })[]; name: string; })[]; callees?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; attributes?: (string | [string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]])[]; variables?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; tags?: ([string, ({ match: "strings"; } | { match: "objectKeys"; pathPattern?: string; } | { match: "objectValues"; pathPattern?: string; })[]] | string)[]; entryPoint?: string; messageStyle?: ("visual" | "compact" | "raw"); tailwindConfig?: string; tsconfig?: string; detectComponentClasses?: boolean; rootFontSize?: number; allowMultiline?: boolean; }]; // ----- template-curly-spacing ----- type TemplateCurlySpacing = [] | [("always" | "never")]; // ----- template-tag-spacing ----- type TemplateTagSpacing = [] | [("always" | "never")]; // ----- test/consistent-each-for ----- type TestConsistentEachFor = [] | [{ test?: ("each" | "for"); it?: ("each" | "for"); describe?: ("each" | "for"); suite?: ("each" | "for"); }]; // ----- test/consistent-test-filename ----- type TestConsistentTestFilename = [] | [{ pattern?: string; allTestPattern?: string; }]; // ----- test/consistent-test-it ----- type TestConsistentTestIt = [] | [{ fn?: ("test" | "it"); withinDescribe?: ("test" | "it"); }]; // ----- test/consistent-vitest-vi ----- type TestConsistentVitestVi = [] | [{ fn?: ("vi" | "vitest"); }]; // ----- test/expect-expect ----- type TestExpectExpect = [] | [{ assertFunctionNames?: string[]; additionalTestBlockFunctions?: string[]; }]; // ----- test/max-expects ----- type TestMaxExpects = [] | [{ max?: number; }]; // ----- test/max-nested-describe ----- type TestMaxNestedDescribe = [] | [{ max?: number; }]; // ----- test/no-conditional-expect ----- type TestNoConditionalExpect = [] | [{ expectAssertions?: boolean; }]; // ----- test/no-focused-tests ----- type TestNoFocusedTests = [] | [{ fixable?: boolean; }]; // ----- test/no-hooks ----- type TestNoHooks = [] | [{ allow?: ("beforeAll" | "beforeEach" | "afterAll" | "afterEach")[]; }]; // ----- test/no-large-snapshots ----- type TestNoLargeSnapshots = [] | [{ maxSize?: number; inlineMaxSize?: number; allowedSnapshots?: { [k: string]: unknown[] | undefined; }; }]; // ----- test/no-restricted-matchers ----- type TestNoRestrictedMatchers = [] | [{ [k: string]: (string | null) | undefined; }]; // ----- test/no-restricted-vi-methods ----- type TestNoRestrictedViMethods = [] | [{ [k: string]: (string | null) | undefined; }]; // ----- test/no-standalone-expect ----- type TestNoStandaloneExpect = [] | [{ additionalTestBlockFunctions?: string[]; }]; // ----- test/prefer-expect-assertions ----- type TestPreferExpectAssertions = [] | [{ onlyFunctionsWithAsyncKeyword?: boolean; onlyFunctionsWithExpectInLoop?: boolean; onlyFunctionsWithExpectInCallback?: boolean; }]; // ----- test/prefer-import-in-mock ----- type TestPreferImportInMock = [] | [{ fixable?: boolean; }]; // ----- test/prefer-lowercase-title ----- type TestPreferLowercaseTitle = [] | [{ ignore?: ("describe" | "test" | "it")[]; allowedPrefixes?: string[]; ignoreTopLevelDescribe?: boolean; lowercaseFirstCharacterOnly?: boolean; }]; // ----- test/prefer-snapshot-hint ----- type TestPreferSnapshotHint = [] | [("always" | "multi")]; // ----- test/require-hook ----- type TestRequireHook = [] | [{ allowedFunctionCalls?: string[]; }]; // ----- test/require-mock-type-parameters ----- type TestRequireMockTypeParameters = [] | [{ checkImportFunctions?: boolean; }]; // ----- test/require-top-level-describe ----- type TestRequireTopLevelDescribe = [] | [{ maxNumberOfTopLevelDescribes?: number; }]; // ----- test/unbound-method ----- type TestUnboundMethod = [] | [{ ignoreStatic?: boolean; }]; // ----- test/valid-expect ----- type TestValidExpect = [] | [{ alwaysAwait?: boolean; asyncMatchers?: string[]; minArgs?: number; maxArgs?: number; }]; // ----- test/valid-title ----- type TestValidTitle = [] | [{ ignoreTypeOfDescribeName?: boolean; allowArguments?: boolean; disallowedWords?: string[]; [k: string]: (string | [string] | [string, string] | { [k: string]: (string | [string] | [string, string]) | undefined; }); }]; // ----- toml/array-bracket-newline ----- type TomlArrayBracketNewline = [] | [(("always" | "never" | "consistent") | { multiline?: boolean; minItems?: (number | null); })]; // ----- toml/array-bracket-spacing ----- type TomlArrayBracketSpacing = [] | [("always" | "never")] | [("always" | "never"), { singleValue?: boolean; objectsInArrays?: boolean; arraysInArrays?: boolean; }]; // ----- toml/array-element-newline ----- type TomlArrayElementNewline = [] | [(_TomlArrayElementNewlineBasicConfig | { ArrayExpression?: _TomlArrayElementNewlineBasicConfig; ArrayPattern?: _TomlArrayElementNewlineBasicConfig; TOMLArray?: _TomlArrayElementNewlineBasicConfig; })]; type _TomlArrayElementNewlineBasicConfig = (("always" | "never" | "consistent") | { multiline?: boolean; minItems?: (number | null); }); // ----- toml/comma-style ----- type TomlCommaStyle = [] | [("first" | "last")] | [("first" | "last"), { exceptions?: { [k: string]: boolean | undefined; }; }]; // ----- toml/indent ----- type TomlIndent = [] | [("tab" | number)] | [("tab" | number), { subTables?: number; keyValuePairs?: number; }]; // ----- toml/inline-table-curly-newline ----- type TomlInlineTableCurlyNewline = [] | [(("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; })]; // ----- toml/inline-table-curly-spacing ----- type TomlInlineTableCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), { arraysInObjects?: boolean; objectsInObjects?: boolean; emptyObjects?: ("ignore" | "always" | "never"); }]; // ----- toml/inline-table-key-value-newline ----- type TomlInlineTableKeyValueNewline = [] | [{ allowAllPropertiesOnSameLine?: boolean; }]; // ----- toml/key-spacing ----- type TomlKeySpacing = [] | [({ align?: (("equal" | "value") | { on?: ("equal" | "value"); mode?: ("strict" | "minimum"); beforeEqual?: boolean; afterEqual?: boolean; }); mode?: ("strict" | "minimum"); beforeEqual?: boolean; afterEqual?: boolean; } | { singleLine?: { mode?: ("strict" | "minimum"); beforeEqual?: boolean; afterEqual?: boolean; }; multiLine?: { align?: (("equal" | "value") | { on?: ("equal" | "value"); mode?: ("strict" | "minimum"); beforeEqual?: boolean; afterEqual?: boolean; }); mode?: ("strict" | "minimum"); beforeEqual?: boolean; afterEqual?: boolean; }; } | { singleLine?: { mode?: ("strict" | "minimum"); beforeEqual?: boolean; afterEqual?: boolean; }; multiLine?: { mode?: ("strict" | "minimum"); beforeEqual?: boolean; afterEqual?: boolean; }; align?: { on?: ("equal" | "value"); mode?: ("strict" | "minimum"); beforeEqual?: boolean; afterEqual?: boolean; }; })]; // ----- toml/no-mixed-type-in-array ----- type TomlNoMixedTypeInArray = [] | [{ typeMap?: { string?: string; boolean?: string; integer?: string; float?: string; offsetDateTime?: string; localDateTime?: string; localDate?: string; localTime?: string; array?: string; inlineTable?: string; }; }]; // ----- toml/no-non-decimal-integer ----- type TomlNoNonDecimalInteger = [] | [{ allowHexadecimal?: boolean; allowOctal?: boolean; allowBinary?: boolean; }]; // ----- toml/precision-of-fractional-seconds ----- type TomlPrecisionOfFractionalSeconds = [] | [{ max?: number; }]; // ----- toml/precision-of-integer ----- type TomlPrecisionOfInteger = [] | [{ maxBit?: number; }]; // ----- toml/quoted-keys ----- type TomlQuotedKeys = [] | [{ prefer?: ("as-needed" | "always"); numbers?: boolean; }]; // ----- toml/spaced-comment ----- type TomlSpacedComment = [] | [("always" | "never")] | [("always" | "never"), { exceptions?: string[]; markers?: string[]; }]; // ----- toml/table-bracket-spacing ----- type TomlTableBracketSpacing = [] | [("always" | "never")]; // ----- ts/array-type ----- type TsArrayType = [] | [{ default?: ("array" | "generic" | "array-simple"); readonly?: ("array" | "generic" | "array-simple"); }]; // ----- ts/ban-ts-comment ----- type TsBanTsComment = [] | [{ minimumDescriptionLength?: number; "ts-check"?: (boolean | "allow-with-description" | { descriptionFormat?: string; }); "ts-expect-error"?: (boolean | "allow-with-description" | { descriptionFormat?: string; }); "ts-ignore"?: (boolean | "allow-with-description" | { descriptionFormat?: string; }); "ts-nocheck"?: (boolean | "allow-with-description" | { descriptionFormat?: string; }); }]; // ----- ts/class-literal-property-style ----- type TsClassLiteralPropertyStyle = [] | [("fields" | "getters")]; // ----- ts/class-methods-use-this ----- type TsClassMethodsUseThis = [] | [{ enforceForClassFields?: boolean; exceptMethods?: string[]; ignoreClassesThatImplementAnInterface?: (boolean | "public-fields"); ignoreOverrideMethods?: boolean; }]; // ----- ts/consistent-generic-constructors ----- type TsConsistentGenericConstructors = [] | [("type-annotation" | "constructor")]; // ----- ts/consistent-indexed-object-style ----- type TsConsistentIndexedObjectStyle = [] | [("record" | "index-signature")]; // ----- ts/consistent-return ----- type TsConsistentReturn = [] | [{ treatUndefinedAsUnspecified?: boolean; }]; // ----- ts/consistent-type-assertions ----- type TsConsistentTypeAssertions = [] | [({ assertionStyle: "never"; } | { arrayLiteralTypeAssertions?: ("allow" | "allow-as-parameter" | "never"); assertionStyle?: ("as" | "angle-bracket"); objectLiteralTypeAssertions?: ("allow" | "allow-as-parameter" | "never"); })]; // ----- ts/consistent-type-definitions ----- type TsConsistentTypeDefinitions = [] | [("interface" | "type")]; // ----- ts/consistent-type-exports ----- type TsConsistentTypeExports = [] | [{ fixMixedExportsWithInlineTypeSpecifier?: boolean; }]; // ----- ts/consistent-type-imports ----- type TsConsistentTypeImports = [] | [{ disallowTypeAnnotations?: boolean; fixStyle?: ("separate-type-imports" | "inline-type-imports"); prefer?: ("type-imports" | "no-type-imports"); }]; // ----- ts/dot-notation ----- type TsDotNotation = [] | [{ allowIndexSignaturePropertyAccess?: boolean; allowKeywords?: boolean; allowPattern?: string; allowPrivateClassPropertyAccess?: boolean; allowProtectedClassPropertyAccess?: boolean; }]; // ----- ts/explicit-function-return-type ----- type TsExplicitFunctionReturnType = [] | [{ allowConciseArrowFunctionExpressionsStartingWithVoid?: boolean; allowDirectConstAssertionInArrowFunctions?: boolean; allowedNames?: string[]; allowExpressions?: boolean; allowFunctionsWithoutTypeParameters?: boolean; allowHigherOrderFunctions?: boolean; allowIIFEs?: boolean; allowTypedFunctionExpressions?: boolean; }]; // ----- ts/explicit-member-accessibility ----- type TsExplicitMemberAccessibility = [] | [{ accessibility?: ("explicit" | "no-public" | "off"); ignoredMethodNames?: string[]; overrides?: { accessors?: ("explicit" | "no-public" | "off"); constructors?: ("explicit" | "no-public" | "off"); methods?: ("explicit" | "no-public" | "off"); parameterProperties?: ("explicit" | "no-public" | "off"); properties?: ("explicit" | "no-public" | "off"); }; }]; // ----- ts/explicit-module-boundary-types ----- type TsExplicitModuleBoundaryTypes = [] | [{ allowArgumentsExplicitlyTypedAsAny?: boolean; allowDirectConstAssertionInArrowFunctions?: boolean; allowedNames?: string[]; allowHigherOrderFunctions?: boolean; allowOverloadFunctions?: boolean; allowTypedFunctionExpressions?: boolean; }]; // ----- ts/init-declarations ----- type TsInitDeclarations = ([] | ["always"] | [] | ["never"] | ["never", { ignoreForLoopInit?: boolean; }]); // ----- ts/max-params ----- type TsMaxParams = [] | [{ countVoidThis?: boolean; max?: number; maximum?: number; }]; // ----- ts/member-ordering ----- type TsMemberOrdering = [] | [{ classes?: ("never" | (("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization") | ("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization")[])[] | { memberTypes?: ((("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization") | ("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization")[])[] | "never"); optionalityOrder?: ("optional-first" | "required-first"); order?: ("alphabetically" | "alphabetically-case-insensitive" | "as-written" | "natural" | "natural-case-insensitive"); }); classExpressions?: ("never" | (("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization") | ("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization")[])[] | { memberTypes?: ((("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization") | ("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization")[])[] | "never"); optionalityOrder?: ("optional-first" | "required-first"); order?: ("alphabetically" | "alphabetically-case-insensitive" | "as-written" | "natural" | "natural-case-insensitive"); }); default?: ("never" | (("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization") | ("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization")[])[] | { memberTypes?: ((("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization") | ("readonly-signature" | "signature" | "readonly-field" | "public-readonly-field" | "public-decorated-readonly-field" | "decorated-readonly-field" | "static-readonly-field" | "public-static-readonly-field" | "instance-readonly-field" | "public-instance-readonly-field" | "abstract-readonly-field" | "public-abstract-readonly-field" | "protected-readonly-field" | "protected-decorated-readonly-field" | "protected-static-readonly-field" | "protected-instance-readonly-field" | "protected-abstract-readonly-field" | "private-readonly-field" | "private-decorated-readonly-field" | "private-static-readonly-field" | "private-instance-readonly-field" | "#private-readonly-field" | "#private-static-readonly-field" | "#private-instance-readonly-field" | "field" | "public-field" | "public-decorated-field" | "decorated-field" | "static-field" | "public-static-field" | "instance-field" | "public-instance-field" | "abstract-field" | "public-abstract-field" | "protected-field" | "protected-decorated-field" | "protected-static-field" | "protected-instance-field" | "protected-abstract-field" | "private-field" | "private-decorated-field" | "private-static-field" | "private-instance-field" | "#private-field" | "#private-static-field" | "#private-instance-field" | "method" | "public-method" | "public-decorated-method" | "decorated-method" | "static-method" | "public-static-method" | "instance-method" | "public-instance-method" | "abstract-method" | "public-abstract-method" | "protected-method" | "protected-decorated-method" | "protected-static-method" | "protected-instance-method" | "protected-abstract-method" | "private-method" | "private-decorated-method" | "private-static-method" | "private-instance-method" | "#private-method" | "#private-static-method" | "#private-instance-method" | "call-signature" | "constructor" | "public-constructor" | "protected-constructor" | "private-constructor" | "accessor" | "public-accessor" | "public-decorated-accessor" | "decorated-accessor" | "static-accessor" | "public-static-accessor" | "instance-accessor" | "public-instance-accessor" | "abstract-accessor" | "public-abstract-accessor" | "protected-accessor" | "protected-decorated-accessor" | "protected-static-accessor" | "protected-instance-accessor" | "protected-abstract-accessor" | "private-accessor" | "private-decorated-accessor" | "private-static-accessor" | "private-instance-accessor" | "#private-accessor" | "#private-static-accessor" | "#private-instance-accessor" | "get" | "public-get" | "public-decorated-get" | "decorated-get" | "static-get" | "public-static-get" | "instance-get" | "public-instance-get" | "abstract-get" | "public-abstract-get" | "protected-get" | "protected-decorated-get" | "protected-static-get" | "protected-instance-get" | "protected-abstract-get" | "private-get" | "private-decorated-get" | "private-static-get" | "private-instance-get" | "#private-get" | "#private-static-get" | "#private-instance-get" | "set" | "public-set" | "public-decorated-set" | "decorated-set" | "static-set" | "public-static-set" | "instance-set" | "public-instance-set" | "abstract-set" | "public-abstract-set" | "protected-set" | "protected-decorated-set" | "protected-static-set" | "protected-instance-set" | "protected-abstract-set" | "private-set" | "private-decorated-set" | "private-static-set" | "private-instance-set" | "#private-set" | "#private-static-set" | "#private-instance-set" | "static-initialization" | "static-static-initialization" | "public-static-static-initialization" | "instance-static-initialization" | "public-instance-static-initialization" | "abstract-static-initialization" | "public-abstract-static-initialization" | "protected-static-static-initialization" | "protected-instance-static-initialization" | "protected-abstract-static-initialization" | "private-static-static-initialization" | "private-instance-static-initialization" | "#private-static-static-initialization" | "#private-instance-static-initialization")[])[] | "never"); optionalityOrder?: ("optional-first" | "required-first"); order?: ("alphabetically" | "alphabetically-case-insensitive" | "as-written" | "natural" | "natural-case-insensitive"); }); interfaces?: ("never" | (("readonly-signature" | "signature" | "readonly-field" | "field" | "method" | "constructor") | ("readonly-signature" | "signature" | "readonly-field" | "field" | "method" | "constructor")[])[] | { memberTypes?: ((("readonly-signature" | "signature" | "readonly-field" | "field" | "method" | "constructor") | ("readonly-signature" | "signature" | "readonly-field" | "field" | "method" | "constructor")[])[] | "never"); optionalityOrder?: ("optional-first" | "required-first"); order?: ("alphabetically" | "alphabetically-case-insensitive" | "as-written" | "natural" | "natural-case-insensitive"); }); typeLiterals?: ("never" | (("readonly-signature" | "signature" | "readonly-field" | "field" | "method" | "constructor") | ("readonly-signature" | "signature" | "readonly-field" | "field" | "method" | "constructor")[])[] | { memberTypes?: ((("readonly-signature" | "signature" | "readonly-field" | "field" | "method" | "constructor") | ("readonly-signature" | "signature" | "readonly-field" | "field" | "method" | "constructor")[])[] | "never"); optionalityOrder?: ("optional-first" | "required-first"); order?: ("alphabetically" | "alphabetically-case-insensitive" | "as-written" | "natural" | "natural-case-insensitive"); }); }]; // ----- ts/method-signature-style ----- type TsMethodSignatureStyle = [] | [("property" | "method")]; // ----- ts/naming-convention ----- type _TsNamingConventionFormatOptionsConfig = (_TsNamingConventionPredefinedFormats[] | null); type _TsNamingConventionPredefinedFormats = ("camelCase" | "strictCamelCase" | "PascalCase" | "StrictPascalCase" | "snake_case" | "UPPER_CASE"); type _TsNamingConventionUnderscoreOptions = ("forbid" | "allow" | "require" | "requireDouble" | "allowDouble" | "allowSingleOrDouble"); type _TsNamingConvention_PrefixSuffixConfig = string[]; type _TsNamingConventionTypeModifiers = ("boolean" | "string" | "number" | "function" | "array"); type TsNamingConvention = ({ custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); modifiers?: ("const" | "readonly" | "static" | "public" | "protected" | "private" | "#private" | "abstract" | "destructured" | "global" | "exported" | "unused" | "requiresQuotes" | "override" | "async" | "default" | "namespace")[]; selector: ("default" | "variableLike" | "memberLike" | "typeLike" | "method" | "property" | "accessor" | "variable" | "function" | "parameter" | "parameterProperty" | "classicAccessor" | "enumMember" | "classMethod" | "objectLiteralMethod" | "typeMethod" | "classProperty" | "objectLiteralProperty" | "typeProperty" | "autoAccessor" | "class" | "interface" | "typeAlias" | "enum" | "typeParameter" | "import")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "default"; modifiers?: ("const" | "readonly" | "static" | "public" | "protected" | "private" | "#private" | "abstract" | "destructured" | "global" | "exported" | "unused" | "requiresQuotes" | "override" | "async" | "default" | "namespace")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "variableLike"; modifiers?: ("unused" | "async")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "variable"; modifiers?: ("const" | "destructured" | "exported" | "global" | "unused" | "async")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "function"; modifiers?: ("exported" | "global" | "unused" | "async")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "parameter"; modifiers?: ("destructured" | "unused")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "memberLike"; modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "readonly" | "requiresQuotes" | "static" | "override" | "async")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "classProperty"; modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "readonly" | "requiresQuotes" | "static" | "override")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "objectLiteralProperty"; modifiers?: ("public" | "requiresQuotes")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "typeProperty"; modifiers?: ("public" | "readonly" | "requiresQuotes")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "parameterProperty"; modifiers?: ("private" | "protected" | "public" | "readonly")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "property"; modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "readonly" | "requiresQuotes" | "static" | "override" | "async")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "classMethod"; modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "requiresQuotes" | "static" | "override" | "async")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "objectLiteralMethod"; modifiers?: ("public" | "requiresQuotes" | "async")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "typeMethod"; modifiers?: ("public" | "requiresQuotes")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "method"; modifiers?: ("abstract" | "private" | "#private" | "protected" | "public" | "requiresQuotes" | "static" | "override" | "async")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "classicAccessor"; modifiers?: ("abstract" | "private" | "protected" | "public" | "requiresQuotes" | "static" | "override")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "autoAccessor"; modifiers?: ("abstract" | "private" | "protected" | "public" | "requiresQuotes" | "static" | "override")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "accessor"; modifiers?: ("abstract" | "private" | "protected" | "public" | "requiresQuotes" | "static" | "override")[]; types?: _TsNamingConventionTypeModifiers[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "enumMember"; modifiers?: ("requiresQuotes")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "typeLike"; modifiers?: ("abstract" | "exported" | "unused")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "class"; modifiers?: ("abstract" | "exported" | "unused")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "interface"; modifiers?: ("exported" | "unused")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "typeAlias"; modifiers?: ("exported" | "unused")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "enum"; modifiers?: ("exported" | "unused")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "typeParameter"; modifiers?: ("unused")[]; } | { custom?: _TsNamingConvention_MatchRegexConfig; failureMessage?: string; format: _TsNamingConventionFormatOptionsConfig; leadingUnderscore?: _TsNamingConventionUnderscoreOptions; prefix?: _TsNamingConvention_PrefixSuffixConfig; suffix?: _TsNamingConvention_PrefixSuffixConfig; trailingUnderscore?: _TsNamingConventionUnderscoreOptions; filter?: (string | _TsNamingConvention_MatchRegexConfig); selector: "import"; modifiers?: ("default" | "namespace")[]; })[]; interface _TsNamingConvention_MatchRegexConfig { match: boolean; regex: string; } // ----- ts/no-base-to-string ----- type TsNoBaseToString = [] | [{ checkUnknown?: boolean; ignoredTypeNames?: string[]; }]; // ----- ts/no-confusing-void-expression ----- type TsNoConfusingVoidExpression = [] | [{ ignoreArrowShorthand?: boolean; ignoreVoidOperator?: boolean; ignoreVoidReturningFunctions?: boolean; }]; // ----- ts/no-deprecated ----- type TsNoDeprecated = [] | [{ allow?: (string | { from: "file"; name: (string | [string, ...(string)[]]); path?: string; } | { from: "lib"; name: (string | [string, ...(string)[]]); } | { from: "package"; name: (string | [string, ...(string)[]]); package: string; })[]; }]; // ----- ts/no-duplicate-type-constituents ----- type TsNoDuplicateTypeConstituents = [] | [{ ignoreIntersections?: boolean; ignoreUnions?: boolean; }]; // ----- ts/no-empty-function ----- type TsNoEmptyFunction = [] | [{ allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "private-constructors" | "protected-constructors" | "asyncFunctions" | "asyncMethods" | "decoratedFunctions" | "overrideMethods")[]; }]; // ----- ts/no-empty-interface ----- type TsNoEmptyInterface = [] | [{ allowSingleExtends?: boolean; }]; // ----- ts/no-empty-object-type ----- type TsNoEmptyObjectType = [] | [{ allowInterfaces?: ("always" | "never" | "with-single-extends"); allowObjectTypes?: ("always" | "never"); allowWithName?: string; }]; // ----- ts/no-explicit-any ----- type TsNoExplicitAny = [] | [{ fixToUnknown?: boolean; ignoreRestArgs?: boolean; }]; // ----- ts/no-extraneous-class ----- type TsNoExtraneousClass = [] | [{ allowConstructorOnly?: boolean; allowEmpty?: boolean; allowStaticOnly?: boolean; allowWithDecorator?: boolean; }]; // ----- ts/no-floating-promises ----- type TsNoFloatingPromises = [] | [{ allowForKnownSafeCalls?: (string | { from: "file"; name: (string | [string, ...(string)[]]); path?: string; } | { from: "lib"; name: (string | [string, ...(string)[]]); } | { from: "package"; name: (string | [string, ...(string)[]]); package: string; })[]; allowForKnownSafePromises?: (string | { from: "file"; name: (string | [string, ...(string)[]]); path?: string; } | { from: "lib"; name: (string | [string, ...(string)[]]); } | { from: "package"; name: (string | [string, ...(string)[]]); package: string; })[]; checkThenables?: boolean; ignoreIIFE?: boolean; ignoreVoid?: boolean; }]; // ----- ts/no-inferrable-types ----- type TsNoInferrableTypes = [] | [{ ignoreParameters?: boolean; ignoreProperties?: boolean; }]; // ----- ts/no-invalid-this ----- type TsNoInvalidThis = [] | [{ capIsConstructor?: boolean; }]; // ----- ts/no-invalid-void-type ----- type TsNoInvalidVoidType = [] | [{ allowAsThisParameter?: boolean; allowInGenericTypeArguments?: (boolean | [string, ...(string)[]]); }]; // ----- ts/no-magic-numbers ----- type TsNoMagicNumbers = [] | [{ detectObjects?: boolean; enforceConst?: boolean; ignore?: (number | string)[]; ignoreArrayIndexes?: boolean; ignoreDefaultValues?: boolean; ignoreClassFieldInitialValues?: boolean; ignoreEnums?: boolean; ignoreNumericLiteralTypes?: boolean; ignoreReadonlyClassProperties?: boolean; ignoreTypeIndexes?: boolean; }]; // ----- ts/no-meaningless-void-operator ----- type TsNoMeaninglessVoidOperator = [] | [{ checkNever?: boolean; }]; // ----- ts/no-misused-promises ----- type TsNoMisusedPromises = [] | [{ checksConditionals?: boolean; checksSpreads?: boolean; checksVoidReturn?: (boolean | { arguments?: boolean; attributes?: boolean; inheritedMethods?: boolean; properties?: boolean; returns?: boolean; variables?: boolean; }); }]; // ----- ts/no-misused-spread ----- type TsNoMisusedSpread = [] | [{ allow?: (string | { from: "file"; name: (string | [string, ...(string)[]]); path?: string; } | { from: "lib"; name: (string | [string, ...(string)[]]); } | { from: "package"; name: (string | [string, ...(string)[]]); package: string; })[]; }]; // ----- ts/no-namespace ----- type TsNoNamespace = [] | [{ allowDeclarations?: boolean; allowDefinitionFiles?: boolean; }]; // ----- ts/no-redeclare ----- type TsNoRedeclare = [] | [{ builtinGlobals?: boolean; ignoreDeclarationMerge?: boolean; }]; // ----- ts/no-require-imports ----- type TsNoRequireImports = [] | [{ allow?: string[]; allowAsImport?: boolean; }]; // ----- ts/no-restricted-imports ----- type TsNoRestrictedImports = ((string | { name: string; message?: string; importNames?: string[]; allowImportNames?: string[]; allowTypeImports?: boolean; })[] | [] | [{ paths?: (string | { name: string; message?: string; importNames?: string[]; allowImportNames?: string[]; allowTypeImports?: boolean; })[]; patterns?: (string[] | { importNames?: [string, ...(string)[]]; allowImportNames?: [string, ...(string)[]]; group?: [string, ...(string)[]]; regex?: string; importNamePattern?: string; allowImportNamePattern?: string; message?: string; caseSensitive?: boolean; allowTypeImports?: boolean; }[]); }]); // ----- ts/no-restricted-types ----- type TsNoRestrictedTypes = [] | [{ types?: { [k: string]: (true | string | { fixWith?: string; message?: string; suggest?: string[]; }) | undefined; }; }]; // ----- ts/no-shadow ----- type TsNoShadow = [] | [{ allow?: string[]; builtinGlobals?: boolean; hoist?: ("all" | "functions" | "functions-and-types" | "never" | "types"); ignoreFunctionTypeParameterNameValueShadow?: boolean; ignoreOnInitialization?: boolean; ignoreTypeValueShadow?: boolean; }]; // ----- ts/no-this-alias ----- type TsNoThisAlias = [] | [{ allowDestructuring?: boolean; allowedNames?: string[]; }]; // ----- ts/no-type-alias ----- type TsNoTypeAlias = [] | [{ allowAliases?: ("always" | "never" | "in-unions" | "in-intersections" | "in-unions-and-intersections"); allowCallbacks?: ("always" | "never"); allowConditionalTypes?: ("always" | "never"); allowConstructors?: ("always" | "never"); allowGenerics?: ("always" | "never"); allowLiterals?: ("always" | "never" | "in-unions" | "in-intersections" | "in-unions-and-intersections"); allowMappedTypes?: ("always" | "never" | "in-unions" | "in-intersections" | "in-unions-and-intersections"); allowTupleTypes?: ("always" | "never" | "in-unions" | "in-intersections" | "in-unions-and-intersections"); }]; // ----- ts/no-unnecessary-boolean-literal-compare ----- type TsNoUnnecessaryBooleanLiteralCompare = [] | [{ allowComparingNullableBooleansToFalse?: boolean; allowComparingNullableBooleansToTrue?: boolean; allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean; }]; // ----- ts/no-unnecessary-condition ----- type TsNoUnnecessaryCondition = [] | [{ allowConstantLoopConditions?: (boolean | ("always" | "never" | "only-allowed-literals")); allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean; checkTypePredicates?: boolean; }]; // ----- ts/no-unnecessary-type-assertion ----- type TsNoUnnecessaryTypeAssertion = [] | [{ checkLiteralConstAssertions?: boolean; typesToIgnore?: string[]; }]; // ----- ts/no-unsafe-member-access ----- type TsNoUnsafeMemberAccess = [] | [{ allowOptionalChaining?: boolean; }]; // ----- ts/no-unused-expressions ----- type TsNoUnusedExpressions = [] | [{ allowShortCircuit?: boolean; allowTernary?: boolean; allowTaggedTemplates?: boolean; enforceForJSX?: boolean; ignoreDirectives?: boolean; }]; // ----- ts/no-unused-vars ----- type TsNoUnusedVars = [] | [(("all" | "local") | { args?: ("all" | "after-used" | "none"); argsIgnorePattern?: string; caughtErrors?: ("all" | "none"); caughtErrorsIgnorePattern?: string; destructuredArrayIgnorePattern?: string; enableAutofixRemoval?: { imports?: boolean; }; ignoreClassWithStaticInitBlock?: boolean; ignoreRestSiblings?: boolean; ignoreUsingDeclarations?: boolean; reportUsedIgnorePattern?: boolean; vars?: ("all" | "local"); varsIgnorePattern?: string; })]; // ----- ts/no-use-before-define ----- type TsNoUseBeforeDefine = [] | [("nofunc" | { allowNamedExports?: boolean; classes?: boolean; enums?: boolean; functions?: boolean; ignoreTypeReferences?: boolean; typedefs?: boolean; variables?: boolean; })]; // ----- ts/no-useless-default-assignment ----- type TsNoUselessDefaultAssignment = [] | [{ allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean; }]; // ----- ts/no-var-requires ----- type TsNoVarRequires = [] | [{ allow?: string[]; }]; // ----- ts/only-throw-error ----- type TsOnlyThrowError = [] | [{ allow?: (string | { from: "file"; name: (string | [string, ...(string)[]]); path?: string; } | { from: "lib"; name: (string | [string, ...(string)[]]); } | { from: "package"; name: (string | [string, ...(string)[]]); package: string; })[]; allowRethrowing?: boolean; allowThrowingAny?: boolean; allowThrowingUnknown?: boolean; }]; // ----- ts/parameter-properties ----- type TsParameterProperties = [] | [{ allow?: ("readonly" | "private" | "protected" | "public" | "private readonly" | "protected readonly" | "public readonly")[]; prefer?: ("class-property" | "parameter-property"); }]; // ----- ts/prefer-destructuring ----- type TsPreferDestructuring = [] | [({ AssignmentExpression?: { array?: boolean; object?: boolean; }; VariableDeclarator?: { array?: boolean; object?: boolean; }; } | { array?: boolean; object?: boolean; })] | [({ AssignmentExpression?: { array?: boolean; object?: boolean; }; VariableDeclarator?: { array?: boolean; object?: boolean; }; } | { array?: boolean; object?: boolean; }), { enforceForDeclarationWithTypeAnnotation?: boolean; enforceForRenamedProperties?: boolean; }]; // ----- ts/prefer-literal-enum-member ----- type TsPreferLiteralEnumMember = [] | [{ allowBitwiseExpressions?: boolean; }]; // ----- ts/prefer-nullish-coalescing ----- type TsPreferNullishCoalescing = [] | [{ allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean; ignoreBooleanCoercion?: boolean; ignoreConditionalTests?: boolean; ignoreIfStatements?: boolean; ignoreMixedLogicalExpressions?: boolean; ignorePrimitives?: ({ bigint?: boolean; boolean?: boolean; number?: boolean; string?: boolean; } | true); ignoreTernaryTests?: boolean; }]; // ----- ts/prefer-optional-chain ----- type TsPreferOptionalChain = [] | [{ allowPotentiallyUnsafeFixesThatModifyTheReturnTypeIKnowWhatImDoing?: boolean; checkAny?: boolean; checkBigInt?: boolean; checkBoolean?: boolean; checkNumber?: boolean; checkString?: boolean; checkUnknown?: boolean; requireNullish?: boolean; }]; // ----- ts/prefer-promise-reject-errors ----- type TsPreferPromiseRejectErrors = [] | [{ allow?: (string | { from: "file"; name: (string | [string, ...(string)[]]); path?: string; } | { from: "lib"; name: (string | [string, ...(string)[]]); } | { from: "package"; name: (string | [string, ...(string)[]]); package: string; })[]; allowEmptyReject?: boolean; allowThrowingAny?: boolean; allowThrowingUnknown?: boolean; }]; // ----- ts/prefer-readonly ----- type TsPreferReadonly = [] | [{ onlyInlineLambdas?: boolean; }]; // ----- ts/prefer-readonly-parameter-types ----- type TsPreferReadonlyParameterTypes = [] | [{ allow?: (string | { from: "file"; name: (string | [string, ...(string)[]]); path?: string; } | { from: "lib"; name: (string | [string, ...(string)[]]); } | { from: "package"; name: (string | [string, ...(string)[]]); package: string; })[]; checkParameterProperties?: boolean; ignoreInferredTypes?: boolean; treatMethodsAsReadonly?: boolean; }]; // ----- ts/prefer-string-starts-ends-with ----- type TsPreferStringStartsEndsWith = [] | [{ allowSingleElementEquality?: ("always" | "never"); }]; // ----- ts/promise-function-async ----- type TsPromiseFunctionAsync = [] | [{ allowAny?: boolean; allowedPromiseNames?: string[]; checkArrowFunctions?: boolean; checkFunctionDeclarations?: boolean; checkFunctionExpressions?: boolean; checkMethodDeclarations?: boolean; }]; // ----- ts/require-array-sort-compare ----- type TsRequireArraySortCompare = [] | [{ ignoreStringArrays?: boolean; }]; // ----- ts/restrict-plus-operands ----- type TsRestrictPlusOperands = [] | [{ allowAny?: boolean; allowBoolean?: boolean; allowNullish?: boolean; allowNumberAndString?: boolean; allowRegExp?: boolean; skipCompoundAssignments?: boolean; }]; // ----- ts/restrict-template-expressions ----- type TsRestrictTemplateExpressions = [] | [{ allowAny?: boolean; allowArray?: boolean; allowBoolean?: boolean; allowNullish?: boolean; allowNumber?: boolean; allowRegExp?: boolean; allowNever?: boolean; allow?: (string | { from: "file"; name: (string | [string, ...(string)[]]); path?: string; } | { from: "lib"; name: (string | [string, ...(string)[]]); } | { from: "package"; name: (string | [string, ...(string)[]]); package: string; })[]; }]; // ----- ts/return-await ----- type TsReturnAwait = [] | [(("always" | "error-handling-correctness-only" | "in-try-catch" | "never") & string)]; // ----- ts/sort-type-constituents ----- type TsSortTypeConstituents = [] | [{ caseSensitive?: boolean; checkIntersections?: boolean; checkUnions?: boolean; groupOrder?: ("conditional" | "function" | "import" | "intersection" | "keyword" | "nullish" | "literal" | "named" | "object" | "operator" | "tuple" | "union")[]; }]; // ----- ts/strict-boolean-expressions ----- type TsStrictBooleanExpressions = [] | [{ allowAny?: boolean; allowNullableBoolean?: boolean; allowNullableEnum?: boolean; allowNullableNumber?: boolean; allowNullableObject?: boolean; allowNullableString?: boolean; allowNumber?: boolean; allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean; allowString?: boolean; }]; // ----- ts/strict-void-return ----- type TsStrictVoidReturn = [] | [{ allowReturnAny?: boolean; }]; // ----- ts/switch-exhaustiveness-check ----- type TsSwitchExhaustivenessCheck = [] | [{ allowDefaultCaseForExhaustiveSwitch?: boolean; considerDefaultExhaustiveForUnions?: boolean; defaultCaseCommentPattern?: string; requireDefaultForNonUnion?: boolean; }]; // ----- ts/triple-slash-reference ----- type TsTripleSlashReference = [] | [{ lib?: ("always" | "never"); path?: ("always" | "never"); types?: ("always" | "never" | "prefer-import"); }]; // ----- ts/typedef ----- type TsTypedef = [] | [{ arrayDestructuring?: boolean; arrowParameter?: boolean; memberVariableDeclaration?: boolean; objectDestructuring?: boolean; parameter?: boolean; propertyDeclaration?: boolean; variableDeclaration?: boolean; variableDeclarationIgnoreFunction?: boolean; }]; // ----- ts/unbound-method ----- type TsUnboundMethod = [] | [{ ignoreStatic?: boolean; }]; // ----- ts/unified-signatures ----- type TsUnifiedSignatures = [] | [{ ignoreDifferentlyNamedParameters?: boolean; ignoreOverloadsWithDifferentJSDoc?: boolean; }]; // ----- unicode-bom ----- type UnicodeBom = [] | [("always" | "never")]; // ----- unicorn/better-regex ----- type UnicornBetterRegex = [] | [{ sortCharacterClasses?: boolean; }]; // ----- unicorn/catch-error-name ----- type UnicornCatchErrorName = [] | [{ name?: string; ignore?: unknown[]; }]; // ----- unicorn/consistent-function-scoping ----- type UnicornConsistentFunctionScoping = [] | [{ checkArrowFunctions?: boolean; }]; // ----- unicorn/escape-case ----- type UnicornEscapeCase = [] | [("uppercase" | "lowercase")]; // ----- unicorn/expiring-todo-comments ----- type UnicornExpiringTodoComments = [] | [{ terms?: string[]; ignore?: unknown[]; ignoreDates?: boolean; ignoreDatesOnPullRequests?: boolean; allowWarningComments?: boolean; date?: string; }]; // ----- unicorn/explicit-length-check ----- type UnicornExplicitLengthCheck = [] | [{ "non-zero"?: ("greater-than" | "not-equal"); }]; // ----- unicorn/filename-case ----- type UnicornFilenameCase = [] | [({ case?: ("camelCase" | "snakeCase" | "kebabCase" | "pascalCase"); ignore?: unknown[]; multipleFileExtensions?: boolean; } | { cases?: { camelCase?: boolean; snakeCase?: boolean; kebabCase?: boolean; pascalCase?: boolean; }; ignore?: unknown[]; multipleFileExtensions?: boolean; })]; // ----- unicorn/import-style ----- type UnicornImportStyle = [] | [{ checkImport?: boolean; checkDynamicImport?: boolean; checkExportFrom?: boolean; checkRequire?: boolean; extendDefaultStyles?: boolean; styles?: _UnicornImportStyle_ModuleStyles; }]; type _UnicornImportStyleStyles = (false | _UnicornImportStyle_BooleanObject) | undefined; interface _UnicornImportStyle_ModuleStyles { [k: string]: _UnicornImportStyleStyles | undefined; } interface _UnicornImportStyle_BooleanObject { [k: string]: boolean | undefined; } // ----- unicorn/isolated-functions ----- type UnicornIsolatedFunctions = [] | [{ overrideGlobals?: { [k: string]: (boolean | ("readonly" | "writable" | "writeable" | "off")) | undefined; }; functions?: string[]; selectors?: string[]; comments?: string[]; }]; // ----- unicorn/no-array-reduce ----- type UnicornNoArrayReduce = [] | [{ allowSimpleOperations?: boolean; }]; // ----- unicorn/no-array-reverse ----- type UnicornNoArrayReverse = [] | [{ allowExpressionStatement?: boolean; }]; // ----- unicorn/no-array-sort ----- type UnicornNoArraySort = [] | [{ allowExpressionStatement?: boolean; }]; // ----- unicorn/no-instanceof-builtins ----- type UnicornNoInstanceofBuiltins = [] | [{ useErrorIsError?: boolean; strategy?: ("loose" | "strict"); include?: string[]; exclude?: string[]; }]; // ----- unicorn/no-keyword-prefix ----- type UnicornNoKeywordPrefix = [] | [{ disallowedPrefixes?: [] | [string]; checkProperties?: boolean; onlyCamelCase?: boolean; }]; // ----- unicorn/no-null ----- type UnicornNoNull = [] | [{ checkStrictEquality?: boolean; }]; // ----- unicorn/no-typeof-undefined ----- type UnicornNoTypeofUndefined = [] | [{ checkGlobalVariables?: boolean; }]; // ----- unicorn/no-unnecessary-polyfills ----- type UnicornNoUnnecessaryPolyfills = [] | [{ targets: (string | unknown[] | { [k: string]: unknown | undefined; }); }]; // ----- unicorn/no-useless-undefined ----- type UnicornNoUselessUndefined = [] | [{ checkArguments?: boolean; checkArrowFunctionBody?: boolean; }]; // ----- unicorn/number-literal-case ----- type UnicornNumberLiteralCase = [] | [{ hexadecimalValue?: ("uppercase" | "lowercase"); }]; // ----- unicorn/numeric-separators-style ----- type UnicornNumericSeparatorsStyle = [] | [{ binary?: { onlyIfContainsSeparator?: boolean; minimumDigits?: number; groupLength?: number; }; octal?: { onlyIfContainsSeparator?: boolean; minimumDigits?: number; groupLength?: number; }; hexadecimal?: { onlyIfContainsSeparator?: boolean; minimumDigits?: number; groupLength?: number; }; number?: { onlyIfContainsSeparator?: boolean; minimumDigits?: number; groupLength?: number; }; onlyIfContainsSeparator?: boolean; }]; // ----- unicorn/prefer-add-event-listener ----- type UnicornPreferAddEventListener = [] | [{ excludedPackages?: string[]; }]; // ----- unicorn/prefer-array-find ----- type UnicornPreferArrayFind = [] | [{ checkFromLast?: boolean; }]; // ----- unicorn/prefer-array-flat ----- type UnicornPreferArrayFlat = [] | [{ functions?: unknown[]; }]; // ----- unicorn/prefer-at ----- type UnicornPreferAt = [] | [{ getLastElementFunctions?: unknown[]; checkAllIndexAccess?: boolean; }]; // ----- unicorn/prefer-export-from ----- type UnicornPreferExportFrom = [] | [{ ignoreUsedVariables?: boolean; }]; // ----- unicorn/prefer-number-properties ----- type UnicornPreferNumberProperties = [] | [{ checkInfinity?: boolean; checkNaN?: boolean; }]; // ----- unicorn/prefer-object-from-entries ----- type UnicornPreferObjectFromEntries = [] | [{ functions?: unknown[]; }]; // ----- unicorn/prefer-single-call ----- type UnicornPreferSingleCall = [] | [{ ignore?: unknown[]; }]; // ----- unicorn/prefer-structured-clone ----- type UnicornPreferStructuredClone = [] | [{ functions?: unknown[]; }]; // ----- unicorn/prefer-switch ----- type UnicornPreferSwitch = [] | [{ minimumCases?: number; emptyDefaultCase?: ("no-default-comment" | "do-nothing-comment" | "no-default-case"); }]; // ----- unicorn/prefer-ternary ----- type UnicornPreferTernary = [] | [("always" | "only-single-line")]; // ----- unicorn/prevent-abbreviations ----- type UnicornPreventAbbreviations = [] | [{ checkProperties?: boolean; checkVariables?: boolean; checkDefaultAndNamespaceImports?: (boolean | string); checkShorthandImports?: (boolean | string); checkShorthandProperties?: boolean; checkFilenames?: boolean; extendDefaultReplacements?: boolean; replacements?: _UnicornPreventAbbreviations_Abbreviations; extendDefaultAllowList?: boolean; allowList?: _UnicornPreventAbbreviations_BooleanObject; ignore?: unknown[]; }]; type _UnicornPreventAbbreviationsReplacements = (false | _UnicornPreventAbbreviations_BooleanObject) | undefined; interface _UnicornPreventAbbreviations_Abbreviations { [k: string]: _UnicornPreventAbbreviationsReplacements | undefined; } interface _UnicornPreventAbbreviations_BooleanObject { [k: string]: boolean | undefined; } interface _UnicornPreventAbbreviations_BooleanObject { [k: string]: boolean | undefined; } // ----- unicorn/relative-url-style ----- type UnicornRelativeUrlStyle = [] | [("never" | "always")]; // ----- unicorn/string-content ----- type UnicornStringContent = [] | [{ patterns?: { [k: string]: (string | { suggest: string; fix?: boolean; message?: string; }) | undefined; }; }]; // ----- unicorn/switch-case-braces ----- type UnicornSwitchCaseBraces = [] | [("always" | "avoid")]; // ----- unicorn/template-indent ----- type UnicornTemplateIndent = [] | [{ indent?: (string | number); tags?: string[]; functions?: string[]; selectors?: string[]; comments?: string[]; }]; // ----- unicorn/text-encoding-identifier-case ----- type UnicornTextEncodingIdentifierCase = [] | [{ withDash?: boolean; }]; // ----- unused-imports/no-unused-imports ----- type UnusedImportsNoUnusedImports = [] | [(("all" | "local") | { args?: ("all" | "after-used" | "none"); argsIgnorePattern?: string; caughtErrors?: ("all" | "none"); caughtErrorsIgnorePattern?: string; destructuredArrayIgnorePattern?: string; enableAutofixRemoval?: { imports?: boolean; }; ignoreClassWithStaticInitBlock?: boolean; ignoreRestSiblings?: boolean; ignoreUsingDeclarations?: boolean; reportUsedIgnorePattern?: boolean; vars?: ("all" | "local"); varsIgnorePattern?: string; })]; // ----- unused-imports/no-unused-vars ----- type UnusedImportsNoUnusedVars = [] | [(("all" | "local") | { args?: ("all" | "after-used" | "none"); argsIgnorePattern?: string; caughtErrors?: ("all" | "none"); caughtErrorsIgnorePattern?: string; destructuredArrayIgnorePattern?: string; enableAutofixRemoval?: { imports?: boolean; }; ignoreClassWithStaticInitBlock?: boolean; ignoreRestSiblings?: boolean; ignoreUsingDeclarations?: boolean; reportUsedIgnorePattern?: boolean; vars?: ("all" | "local"); varsIgnorePattern?: string; })]; // ----- use-isnan ----- type UseIsnan = [] | [{ enforceForSwitchCase?: boolean; enforceForIndexOf?: boolean; }]; // ----- valid-typeof ----- type ValidTypeof = [] | [{ requireStringLiterals?: boolean; }]; // ----- wrap-iife ----- type WrapIife = [] | [("outside" | "inside" | "any")] | [("outside" | "inside" | "any"), { functionPrototypeMethods?: boolean; }]; // ----- yaml/block-mapping ----- type YamlBlockMapping = [] | [(("always" | "never") | { singleline?: ("always" | "never" | "ignore"); multiline?: ("always" | "never" | "ignore"); })]; // ----- yaml/block-mapping-colon-indicator-newline ----- type YamlBlockMappingColonIndicatorNewline = [] | [("always" | "never")]; // ----- yaml/block-mapping-question-indicator-newline ----- type YamlBlockMappingQuestionIndicatorNewline = [] | [("always" | "never")]; // ----- yaml/block-sequence ----- type YamlBlockSequence = [] | [(("always" | "never") | { singleline?: ("always" | "never" | "ignore"); multiline?: ("always" | "never" | "ignore"); })]; // ----- yaml/block-sequence-hyphen-indicator-newline ----- type YamlBlockSequenceHyphenIndicatorNewline = [] | [("always" | "never")] | [("always" | "never"), { nestedHyphen?: ("always" | "never"); blockMapping?: ("always" | "never"); }]; // ----- yaml/file-extension ----- type YamlFileExtension = [] | [{ extension?: ("yaml" | "yml"); caseSensitive?: boolean; }]; // ----- yaml/flow-mapping-curly-newline ----- type YamlFlowMappingCurlyNewline = [] | [(("always" | "never") | { multiline?: boolean; minProperties?: number; consistent?: boolean; })]; // ----- yaml/flow-mapping-curly-spacing ----- type YamlFlowMappingCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), { arraysInObjects?: boolean; objectsInObjects?: boolean; emptyObjects?: ("ignore" | "always" | "never"); }]; // ----- yaml/flow-sequence-bracket-newline ----- type YamlFlowSequenceBracketNewline = [] | [(("always" | "never" | "consistent") | { multiline?: boolean; minItems?: (number | null); })]; // ----- yaml/flow-sequence-bracket-spacing ----- type YamlFlowSequenceBracketSpacing = [] | [("always" | "never")] | [("always" | "never"), { singleValue?: boolean; objectsInArrays?: boolean; arraysInArrays?: boolean; }]; // ----- yaml/indent ----- type YamlIndent = [] | [number] | [number, { indentBlockSequences?: boolean; indicatorValueIndent?: number; alignMultilineFlowScalars?: boolean; }]; // ----- yaml/key-name-casing ----- type YamlKeyNameCasing = [] | [{ camelCase?: boolean; PascalCase?: boolean; SCREAMING_SNAKE_CASE?: boolean; "kebab-case"?: boolean; snake_case?: boolean; ignores?: string[]; }]; // ----- yaml/key-spacing ----- type YamlKeySpacing = [] | [({ align?: (("colon" | "value") | { on?: ("colon" | "value"); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; } | { singleLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; multiLine?: { align?: (("colon" | "value") | { on?: ("colon" | "value"); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; } | { singleLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; multiLine?: { mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; align?: { on?: ("colon" | "value"); mode?: ("strict" | "minimum"); beforeColon?: boolean; afterColon?: boolean; }; })]; // ----- yaml/no-irregular-whitespace ----- type YamlNoIrregularWhitespace = [] | [{ skipComments?: boolean; skipQuotedScalars?: boolean; }]; // ----- yaml/no-multiple-empty-lines ----- type YamlNoMultipleEmptyLines = [] | [{ max: number; maxEOF?: number; maxBOF?: number; }]; // ----- yaml/plain-scalar ----- type YamlPlainScalar = [] | [("always" | "never")] | [("always" | "never"), { ignorePatterns?: string[]; overrides?: { mappingKey?: ("always" | "never" | null); }; }]; // ----- yaml/quotes ----- type YamlQuotes = [] | [{ prefer?: ("double" | "single"); avoidEscape?: boolean; }]; // ----- yaml/sort-keys ----- type YamlSortKeys = ([{ pathPattern: string; hasProperties?: string[]; order: ((string | { keyPattern?: string; order?: { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }; })[] | { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }); minKeys?: number; allowLineSeparatedGroups?: boolean; }, ...({ pathPattern: string; hasProperties?: string[]; order: ((string | { keyPattern?: string; order?: { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }; })[] | { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }); minKeys?: number; allowLineSeparatedGroups?: boolean; })[]] | [] | [("asc" | "desc")] | [("asc" | "desc"), { caseSensitive?: boolean; natural?: boolean; minKeys?: number; allowLineSeparatedGroups?: boolean; }]); // ----- yaml/sort-sequence-values ----- type YamlSortSequenceValues = [{ pathPattern: string; order: ((string | { valuePattern?: string; order?: { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }; })[] | { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }); minValues?: number; }, ...({ pathPattern: string; order: ((string | { valuePattern?: string; order?: { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }; })[] | { type?: ("asc" | "desc"); caseSensitive?: boolean; natural?: boolean; }); minValues?: number; })[]]; // ----- yaml/spaced-comment ----- type YamlSpacedComment = [] | [("always" | "never")] | [("always" | "never"), { exceptions?: string[]; markers?: string[]; }]; // ----- yield-star-spacing ----- type YieldStarSpacing = [] | [(("before" | "after" | "both" | "neither") | { before?: boolean; after?: boolean; })]; // ----- yoda ----- type Yoda = [] | [("always" | "never")] | [("always" | "never"), { exceptRange?: boolean; onlyEquality?: boolean; }]; // Names of all the configs type ConfigNames = 'maston/command/rules' | 'maston/eslint-comments/setup' | 'maston/eslint-comments/rules' | 'maston/disables/scripts' | 'maston/disables/cli' | 'maston/disables/bin' | 'maston/disables/dts' | 'maston/disables/cjs' | 'maston/disables/config-files' | 'maston/ignores' | 'maston/imports/setup' | 'maston/imports/rules' | 'maston/javascript/setup' | 'maston/javascript/rules' | 'maston/jsdoc/setup' | 'maston/jsdoc/rules' | 'maston/jsonc/setup' | 'maston/jsonc/rules' | 'maston/jsx/setup' | 'maston/markdown/setup' | 'maston/markdown/processor' | 'maston/markdown/parser' | 'maston/markdown/disables' | 'maston/node/setup' | 'maston/node/rules' | 'maston/perfectionist/setup' | 'maston/perfectionist/rules' | 'maston/react/setup' | 'maston/react/rules' | 'maston/regexp/rules' | 'maston/sort/package-json' | 'maston/sort/tsconfig-json' | 'maston/tailwindcss/setup' | 'maston/tailwindcss/rules' | 'maston/test/setup' | 'maston/test/rules' | 'maston/toml/setup' | 'maston/toml/rules' | 'maston/typescript/setup' | 'maston/typescript/parser' | 'maston/typescript/rules' | 'maston/unicorn/setup' | 'maston/unicorn/rules' | 'maston/yaml/setup' | 'maston/yaml/rules'; //#endregion export { ConfigNames, RuleOptions };