oxlint
Version:
Linter for the JavaScript Oxidation Compiler
1,362 lines • 56.3 kB
TypeScript
//#region src-js/package/config.generated.d.ts
type AllowWarnDeny = ("allow" | "off" | "warn" | "error" | "deny") | number;
type GlobalValue = "readonly" | "writable" | "off";
type ExternalPluginEntry = string | {
/**
* Custom name/alias for the plugin.
*
* Note: The following plugin names are reserved because they are implemented natively in Rust within oxlint and cannot be used for JS plugins:
* - react (includes react-hooks)
* - unicorn
* - typescript (includes @typescript-eslint)
* - oxc
* - import (includes import-x)
* - jsdoc
* - jest
* - vitest
* - jsx-a11y (includes jsx-a11y-x)
* - nextjs
* - react-perf
* - promise
* - node
* - vue
* - eslint
*
* If you need to use the JavaScript version of any of these plugins, provide a custom alias to avoid conflicts.
*/
name: string;
/**
* Path or package name of the plugin
*/
specifier: string;
};
/**
* A set of glob patterns.
* Patterns are matched against paths relative to the configuration file's directory.
*/
type GlobSet = string[];
type LintPluginOptionsSchema = "eslint" | "react" | "unicorn" | "typescript" | "oxc" | "import" | "jsdoc" | "jest" | "vitest" | "jsx-a11y" | "nextjs" | "react-perf" | "promise" | "node" | "vue";
type LintPlugins = LintPluginOptionsSchema[];
type DummyRule = AllowWarnDeny | [AllowWarnDeny, ...unknown[]];
type OxlintOverrides = OxlintOverride[];
type JestVersionSchema = number | string;
type TagNamePreference = string | {
message: string;
replacement: string;
[k: string]: unknown;
} | {
message: string;
[k: string]: unknown;
} | boolean;
type OneOrManyFor_String = string | string[];
type CustomComponent = string | {
attribute: string;
name: string;
[k: string]: unknown;
} | {
attributes: string[];
name: string;
[k: string]: unknown;
};
/**
* Oxlint Configuration File
*
* This configuration is aligned with ESLint v8's configuration schema (`eslintrc.json`).
*
* Usage: `oxlint -c oxlintrc.json`
*
* Example
*
* `.oxlintrc.json`
*
* ```json
* {
* "$schema": "./node_modules/oxlint/configuration_schema.json",
* "plugins": [
* "import",
* "typescript",
* "unicorn"
* ],
* "env": {
* "browser": true
* },
* "globals": {
* "foo": "readonly"
* },
* "settings": {
* "react": {
* "version": "18.2.0"
* },
* "custom": {
* "option": true
* }
* },
* "rules": {
* "eqeqeq": "warn",
* "import/no-cycle": "error",
* "react/self-closing-comp": [
* "error",
* {
* "html": false
* }
* ]
* },
* "overrides": [
* {
* "files": [
* "*.test.ts",
* "*.spec.ts"
* ],
* "rules": {
* "@typescript-eslint/no-explicit-any": "off"
* }
* }
* ]
* }
* ```
*
* `oxlint.config.ts`
*
* ```ts
* import { defineConfig } from "oxlint";
*
* export default defineConfig({
* plugins: ["import", "typescript", "unicorn"],
* env: {
* "browser": true
* },
* globals: {
* "foo": "readonly"
* },
* settings: {
* react: {
* version: "18.2.0"
* },
* custom: { option: true }
* },
* rules: {
* "eqeqeq": "warn",
* "import/no-cycle": "error",
* "react/self-closing-comp": ["error", { "html": false }]
* },
* overrides: [
* {
* files: ["*.test.ts", "*.spec.ts"],
* rules: {
* "@typescript-eslint/no-explicit-any": "off"
* }
* }
* ]
* });
* ```
*/
interface Oxlintrc$1 {
/**
* Schema URI for editor tooling.
*/
$schema?: string;
categories?: RuleCategories;
/**
* Environments enable and disable collections of global variables.
*/
env?: OxlintEnv;
/**
* Paths of configuration files that this configuration file extends (inherits from). The files
* are resolved relative to the location of the configuration file that contains the `extends`
* property. The configuration files are merged from the first to the last, with the last file
* overriding the previous ones.
*/
extends?: string[];
/**
* Enabled or disabled specific global variables.
*/
globals?: OxlintGlobals;
/**
* Globs to ignore during linting. These are resolved from the configuration file path.
*/
ignorePatterns?: string[];
/**
* JS plugins, allows usage of ESLint plugins with Oxlint.
*
* Read more about JS plugins in
* [the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).
*
* Note: JS plugins are in alpha and not subject to semver.
*
* Examples:
*
* Basic usage with a local plugin path.
*
* ```json
* {
* "jsPlugins": [
* "./custom-plugin.js"
* ],
* "rules": {
* "custom/rule-name": "warn"
* }
* }
* ```
*
* Basic usage with a TypeScript plugin and a local plugin path.
*
* TypeScript plugin files are supported in the following environments:
* - Deno and Bun: TypeScript files are supported natively.
* - Node.js >=22.18.0 and Node.js ^20.19.0: TypeScript files are supported natively with built-in
* type-stripping enabled by default.
*
* For older Node.js versions, TypeScript plugins are not supported. Please use JavaScript plugins or upgrade your Node version.
*
* ```json
* {
* "jsPlugins": [
* "./custom-plugin.ts"
* ],
* "rules": {
* "custom/rule-name": "warn"
* }
* }
* ```
*
* Using a built-in Rust plugin alongside a JS plugin with the same name
* by giving the JS plugin an alias.
*
* ```json
* {
* "plugins": [
* "import"
* ],
* "jsPlugins": [
* {
* "name": "import-js",
* "specifier": "eslint-plugin-import"
* }
* ],
* "rules": {
* "import/no-cycle": "error",
* "import-js/no-unresolved": "warn"
* }
* }
* ```
*/
jsPlugins?: null | ExternalPluginEntry[];
/**
* Oxlint config options.
*/
options?: OxlintOptions;
/**
* Add, remove, or otherwise reconfigure rules for specific files or groups of files.
*/
overrides?: OxlintOverrides;
/**
* Enabled built-in plugins for Oxlint.
* You can view the list of available plugins on
* [the website](https://oxc.rs/docs/guide/usage/linter/plugins.html#supported-plugins).
*
* NOTE: Setting the `plugins` field will overwrite the base set of plugins.
* The `plugins` array should reflect all of the plugins you want to use.
*/
plugins?: LintPlugins;
/**
* Example
*
* `.oxlintrc.json`
*
* ```json
* {
* "$schema": "./node_modules/oxlint/configuration_schema.json",
* "rules": {
* "eqeqeq": "warn",
* "import/no-cycle": "error",
* "prefer-const": [
* "error",
* {
* "ignoreReadBeforeAssign": true
* }
* ]
* }
* }
* ```
*
* See [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html) for the list of
* rules.
*/
rules?: DummyRuleMap;
/**
* Plugin-specific configuration for both built-in and custom plugins.
* This includes settings for built-in plugins such as `react` and `jsdoc`
* as well as configuring settings for JS custom plugins loaded via `jsPlugins`.
*/
settings?: OxlintPluginSettings;
}
/**
* Configure an entire category of rules all at once.
*
* Rules enabled or disabled this way will be overwritten by individual rules in the `rules` field.
*
* Example
* ```json
* {
* "$schema": "./node_modules/oxlint/configuration_schema.json",
* "categories": {
* "correctness": "warn"
* },
* "rules": {
* "eslint/no-unused-vars": "error"
* }
* }
* ```
*/
interface RuleCategories {
correctness?: AllowWarnDeny;
nursery?: AllowWarnDeny;
pedantic?: AllowWarnDeny;
perf?: AllowWarnDeny;
restriction?: AllowWarnDeny;
style?: AllowWarnDeny;
suspicious?: AllowWarnDeny;
}
/**
* Predefine global variables.
*
* Environments specify what global variables are predefined.
* Available environments:
* - amd - require() and define() globals.
* - applescript - AppleScript globals.
* - astro - Astro globals.
* - atomtest - Atom test globals.
* - audioworklet - AudioWorklet globals.
* - browser - browser globals.
* - builtin - Latest ECMAScript globals, equivalent to es2026.
* - commonjs - CommonJS globals and scoping.
* - embertest - Ember test globals.
* - es2015 - ECMAScript 2015 globals.
* - es2016 - ECMAScript 2016 globals.
* - es2017 - ECMAScript 2017 globals.
* - es2018 - ECMAScript 2018 globals.
* - es2019 - ECMAScript 2019 globals.
* - es2020 - ECMAScript 2020 globals.
* - es2021 - ECMAScript 2021 globals.
* - es2022 - ECMAScript 2022 globals.
* - es2023 - ECMAScript 2023 globals.
* - es2024 - ECMAScript 2024 globals.
* - es2025 - ECMAScript 2025 globals.
* - es2026 - ECMAScript 2026 globals.
* - es6 - ECMAScript 6 globals except modules.
* - greasemonkey - GreaseMonkey globals.
* - jasmine - Jasmine globals.
* - jest - Jest globals.
* - jquery - jQuery globals.
* - meteor - Meteor globals.
* - mocha - Mocha globals.
* - mongo - MongoDB globals.
* - nashorn - Java 8 Nashorn globals.
* - node - Node.js globals and scoping.
* - phantomjs - PhantomJS globals.
* - prototypejs - Prototype.js globals.
* - protractor - Protractor globals.
* - qunit - QUnit globals.
* - serviceworker - Service Worker globals.
* - shared-node-browser - Node.js and Browser common globals.
* - shelljs - ShellJS globals.
* - svelte - Svelte globals.
* - vitest - Vitest globals.
* - vue - Vue globals.
* - webextensions - WebExtensions globals.
* - worker - Web Workers globals.
*/
interface OxlintEnv {
[k: string]: boolean;
}
/**
* Add or remove global variables.
*
* For each global variable, set the corresponding value equal to `"writable"`
* to allow the variable to be overwritten or `"readonly"` to disallow overwriting.
*
* Globals can be disabled by setting their value to `"off"`. For example, in
* an environment where most Es2015 globals are available but `Promise` is unavailable,
* you might use this config:
*
* ```json
* {
* "$schema": "./node_modules/oxlint/configuration_schema.json",
* "env": {
* "es6": true
* },
* "globals": {
* "Promise": "off"
* }
* }
* ```
*
* You may also use `"readable"` or `false` to represent `"readonly"`, and
* `"writeable"` or `true` to represent `"writable"`.
*/
interface OxlintGlobals {
[k: string]: GlobalValue;
}
/**
* Options for the linter.
*/
interface OxlintOptions {
/**
* Ensure warnings produce a non-zero exit code.
*
* Equivalent to passing `--deny-warnings` on the CLI.
*/
denyWarnings?: boolean;
/**
* Specify a warning threshold. Exits with an error status if warnings exceed this value.
*
* Equivalent to passing `--max-warnings` on the CLI.
*/
maxWarnings?: number;
/**
* Report unused disable directives (e.g. `// oxlint-disable-line` or `// eslint-disable-line`).
*
* Equivalent to passing `--report-unused-disable-directives-severity` on the CLI.
* CLI flags take precedence over this value when both are set.
* Only supported in the root configuration file.
*/
reportUnusedDisableDirectives?: AllowWarnDeny;
/**
* Whether oxlint should respect `eslint-disable*` and `eslint-enable*`
* directives in addition to its native `oxlint-*` directives.
*
* Defaults to `true`.
* Only supported in the root configuration file.
*/
respectEslintDisableDirectives?: boolean;
/**
* Enable rules that require type information.
*
* Equivalent to passing `--type-aware` on the CLI.
*
* Note that this requires the `oxlint-tsgolint` package to be installed.
*/
typeAware?: boolean;
/**
* Enable experimental type checking (includes TypeScript compiler diagnostics).
*
* Equivalent to passing `--type-check` on the CLI.
*
* Note that this requires the `oxlint-tsgolint` package to be installed.
*/
typeCheck?: boolean;
}
interface OxlintOverride {
/**
* Environments enable and disable collections of global variables.
*/
env?: OxlintEnv;
/**
* A list of glob patterns to exclude from this override.
*
* Files matching these patterns are not globally ignored; this override
* simply does not apply to them.
*
* ## Example
* `[ "*.generated.ts", "fixtures/**" ]`
*/
excludeFiles?: GlobSet;
/**
* A list of glob patterns to override.
*
* ## Example
* `[ "*.test.ts", "*.spec.ts" ]`
*/
files: GlobSet;
/**
* Enabled or disabled specific global variables.
*/
globals?: OxlintGlobals;
/**
* JS plugins for this override, allows usage of ESLint plugins with Oxlint.
*
* Read more about JS plugins in
* [the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).
*
* Note: JS plugins are in alpha and not subject to semver.
*/
jsPlugins?: null | ExternalPluginEntry[];
/**
* Optionally change what plugins are enabled for this override. When
* omitted, the base config's plugins are used.
*/
plugins?: LintPlugins;
rules?: DummyRuleMap;
}
/**
* See [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html)
*/
interface DummyRuleMap {
"accessor-pairs"?: DummyRule;
"array-callback-return"?: DummyRule;
"arrow-body-style"?: DummyRule;
"block-scoped-var"?: DummyRule;
"capitalized-comments"?: DummyRule;
"class-methods-use-this"?: DummyRule;
complexity?: DummyRule;
"constructor-super"?: DummyRule;
curly?: DummyRule;
"default-case"?: DummyRule;
"default-case-last"?: DummyRule;
"default-param-last"?: DummyRule;
eqeqeq?: DummyRule;
"for-direction"?: DummyRule;
"func-name-matching"?: DummyRule;
"func-names"?: DummyRule;
"func-style"?: DummyRule;
"getter-return"?: DummyRule;
"grouped-accessor-pairs"?: DummyRule;
"guard-for-in"?: DummyRule;
"id-length"?: DummyRule;
"id-match"?: DummyRule;
"import/consistent-type-specifier-style"?: DummyRule;
"import/default"?: DummyRule;
"import/export"?: DummyRule;
"import/exports-last"?: DummyRule;
"import/extensions"?: DummyRule;
"import/first"?: DummyRule;
"import/group-exports"?: DummyRule;
"import/max-dependencies"?: DummyRule;
"import/named"?: DummyRule;
"import/namespace"?: DummyRule;
"import/newline-after-import"?: DummyRule;
"import/no-absolute-path"?: DummyRule;
"import/no-amd"?: DummyRule;
"import/no-anonymous-default-export"?: DummyRule;
"import/no-commonjs"?: DummyRule;
"import/no-cycle"?: DummyRule;
"import/no-default-export"?: DummyRule;
"import/no-duplicates"?: DummyRule;
"import/no-dynamic-require"?: DummyRule;
"import/no-empty-named-blocks"?: DummyRule;
"import/no-mutable-exports"?: DummyRule;
"import/no-named-as-default"?: DummyRule;
"import/no-named-as-default-member"?: DummyRule;
"import/no-named-default"?: DummyRule;
"import/no-named-export"?: DummyRule;
"import/no-namespace"?: DummyRule;
"import/no-nodejs-modules"?: DummyRule;
"import/no-relative-parent-imports"?: DummyRule;
"import/no-self-import"?: DummyRule;
"import/no-unassigned-import"?: DummyRule;
"import/no-webpack-loader-syntax"?: DummyRule;
"import/prefer-default-export"?: DummyRule;
"import/unambiguous"?: DummyRule;
"init-declarations"?: DummyRule;
"jest/consistent-test-it"?: DummyRule;
"jest/expect-expect"?: DummyRule;
"jest/max-expects"?: DummyRule;
"jest/max-nested-describe"?: DummyRule;
"jest/no-alias-methods"?: DummyRule;
"jest/no-commented-out-tests"?: DummyRule;
"jest/no-conditional-expect"?: DummyRule;
"jest/no-conditional-in-test"?: DummyRule;
"jest/no-confusing-set-timeout"?: DummyRule;
"jest/no-deprecated-functions"?: DummyRule;
"jest/no-disabled-tests"?: DummyRule;
"jest/no-done-callback"?: DummyRule;
"jest/no-duplicate-hooks"?: DummyRule;
"jest/no-export"?: DummyRule;
"jest/no-focused-tests"?: DummyRule;
"jest/no-hooks"?: DummyRule;
"jest/no-identical-title"?: DummyRule;
"jest/no-interpolation-in-snapshots"?: DummyRule;
"jest/no-jasmine-globals"?: DummyRule;
"jest/no-large-snapshots"?: DummyRule;
"jest/no-mocks-import"?: DummyRule;
"jest/no-restricted-jest-methods"?: DummyRule;
"jest/no-restricted-matchers"?: DummyRule;
"jest/no-standalone-expect"?: DummyRule;
"jest/no-test-prefixes"?: DummyRule;
"jest/no-test-return-statement"?: DummyRule;
"jest/no-unneeded-async-expect-function"?: DummyRule;
"jest/no-untyped-mock-factory"?: DummyRule;
"jest/padding-around-after-all-blocks"?: DummyRule;
"jest/padding-around-test-blocks"?: DummyRule;
"jest/prefer-called-with"?: DummyRule;
"jest/prefer-comparison-matcher"?: DummyRule;
"jest/prefer-each"?: DummyRule;
"jest/prefer-ending-with-an-expect"?: DummyRule;
"jest/prefer-equality-matcher"?: DummyRule;
"jest/prefer-expect-assertions"?: DummyRule;
"jest/prefer-expect-resolves"?: DummyRule;
"jest/prefer-hooks-in-order"?: DummyRule;
"jest/prefer-hooks-on-top"?: DummyRule;
"jest/prefer-importing-jest-globals"?: DummyRule;
"jest/prefer-jest-mocked"?: DummyRule;
"jest/prefer-lowercase-title"?: DummyRule;
"jest/prefer-mock-promise-shorthand"?: DummyRule;
"jest/prefer-mock-return-shorthand"?: DummyRule;
"jest/prefer-snapshot-hint"?: DummyRule;
"jest/prefer-spy-on"?: DummyRule;
"jest/prefer-strict-equal"?: DummyRule;
"jest/prefer-to-be"?: DummyRule;
"jest/prefer-to-contain"?: DummyRule;
"jest/prefer-to-have-been-called"?: DummyRule;
"jest/prefer-to-have-been-called-times"?: DummyRule;
"jest/prefer-to-have-length"?: DummyRule;
"jest/prefer-todo"?: DummyRule;
"jest/require-hook"?: DummyRule;
"jest/require-to-throw-message"?: DummyRule;
"jest/require-top-level-describe"?: DummyRule;
"jest/valid-describe-callback"?: DummyRule;
"jest/valid-expect"?: DummyRule;
"jest/valid-expect-in-promise"?: DummyRule;
"jest/valid-title"?: DummyRule;
"jsdoc/check-access"?: DummyRule;
"jsdoc/check-property-names"?: DummyRule;
"jsdoc/check-tag-names"?: DummyRule;
"jsdoc/empty-tags"?: DummyRule;
"jsdoc/implements-on-classes"?: DummyRule;
"jsdoc/no-defaults"?: DummyRule;
"jsdoc/require-param"?: DummyRule;
"jsdoc/require-param-description"?: DummyRule;
"jsdoc/require-param-name"?: DummyRule;
"jsdoc/require-param-type"?: DummyRule;
"jsdoc/require-property"?: DummyRule;
"jsdoc/require-property-description"?: DummyRule;
"jsdoc/require-property-name"?: DummyRule;
"jsdoc/require-property-type"?: DummyRule;
"jsdoc/require-returns"?: DummyRule;
"jsdoc/require-returns-description"?: DummyRule;
"jsdoc/require-returns-type"?: DummyRule;
"jsdoc/require-throws-description"?: DummyRule;
"jsdoc/require-throws-type"?: DummyRule;
"jsdoc/require-yields"?: DummyRule;
"jsdoc/require-yields-description"?: DummyRule;
"jsdoc/require-yields-type"?: DummyRule;
"jsx-a11y/alt-text"?: DummyRule;
"jsx-a11y/anchor-ambiguous-text"?: DummyRule;
"jsx-a11y/anchor-has-content"?: DummyRule;
"jsx-a11y/anchor-is-valid"?: DummyRule;
"jsx-a11y/aria-activedescendant-has-tabindex"?: DummyRule;
"jsx-a11y/aria-props"?: DummyRule;
"jsx-a11y/aria-proptypes"?: DummyRule;
"jsx-a11y/aria-role"?: DummyRule;
"jsx-a11y/aria-unsupported-elements"?: DummyRule;
"jsx-a11y/autocomplete-valid"?: DummyRule;
"jsx-a11y/click-events-have-key-events"?: DummyRule;
"jsx-a11y/control-has-associated-label"?: DummyRule;
"jsx-a11y/heading-has-content"?: DummyRule;
"jsx-a11y/html-has-lang"?: DummyRule;
"jsx-a11y/iframe-has-title"?: DummyRule;
"jsx-a11y/img-redundant-alt"?: DummyRule;
"jsx-a11y/interactive-supports-focus"?: DummyRule;
"jsx-a11y/label-has-associated-control"?: DummyRule;
"jsx-a11y/lang"?: DummyRule;
"jsx-a11y/media-has-caption"?: DummyRule;
"jsx-a11y/mouse-events-have-key-events"?: DummyRule;
"jsx-a11y/no-access-key"?: DummyRule;
"jsx-a11y/no-aria-hidden-on-focusable"?: DummyRule;
"jsx-a11y/no-autofocus"?: DummyRule;
"jsx-a11y/no-distracting-elements"?: DummyRule;
"jsx-a11y/no-interactive-element-to-noninteractive-role"?: DummyRule;
"jsx-a11y/no-noninteractive-element-interactions"?: DummyRule;
"jsx-a11y/no-noninteractive-element-to-interactive-role"?: DummyRule;
"jsx-a11y/no-noninteractive-tabindex"?: DummyRule;
"jsx-a11y/no-redundant-roles"?: DummyRule;
"jsx-a11y/no-static-element-interactions"?: DummyRule;
"jsx-a11y/prefer-tag-over-role"?: DummyRule;
"jsx-a11y/role-has-required-aria-props"?: DummyRule;
"jsx-a11y/role-supports-aria-props"?: DummyRule;
"jsx-a11y/scope"?: DummyRule;
"jsx-a11y/tabindex-no-positive"?: DummyRule;
"logical-assignment-operators"?: DummyRule;
"max-classes-per-file"?: DummyRule;
"max-depth"?: DummyRule;
"max-lines"?: DummyRule;
"max-lines-per-function"?: DummyRule;
"max-nested-callbacks"?: DummyRule;
"max-params"?: DummyRule;
"max-statements"?: DummyRule;
"new-cap"?: DummyRule;
"nextjs/google-font-display"?: DummyRule;
"nextjs/google-font-preconnect"?: DummyRule;
"nextjs/inline-script-id"?: DummyRule;
"nextjs/next-script-for-ga"?: DummyRule;
"nextjs/no-assign-module-variable"?: DummyRule;
"nextjs/no-async-client-component"?: DummyRule;
"nextjs/no-before-interactive-script-outside-document"?: DummyRule;
"nextjs/no-css-tags"?: DummyRule;
"nextjs/no-document-import-in-page"?: DummyRule;
"nextjs/no-duplicate-head"?: DummyRule;
"nextjs/no-head-element"?: DummyRule;
"nextjs/no-head-import-in-document"?: DummyRule;
"nextjs/no-html-link-for-pages"?: DummyRule;
"nextjs/no-img-element"?: DummyRule;
"nextjs/no-page-custom-font"?: DummyRule;
"nextjs/no-script-component-in-head"?: DummyRule;
"nextjs/no-styled-jsx-in-document"?: DummyRule;
"nextjs/no-sync-scripts"?: DummyRule;
"nextjs/no-title-in-document-head"?: DummyRule;
"nextjs/no-typos"?: DummyRule;
"nextjs/no-unwanted-polyfillio"?: DummyRule;
"no-alert"?: DummyRule;
"no-array-constructor"?: DummyRule;
"no-async-promise-executor"?: DummyRule;
"no-await-in-loop"?: DummyRule;
"no-bitwise"?: DummyRule;
"no-caller"?: DummyRule;
"no-case-declarations"?: DummyRule;
"no-class-assign"?: DummyRule;
"no-compare-neg-zero"?: DummyRule;
"no-cond-assign"?: DummyRule;
"no-console"?: DummyRule;
"no-const-assign"?: DummyRule;
"no-constant-binary-expression"?: DummyRule;
"no-constant-condition"?: DummyRule;
"no-constructor-return"?: DummyRule;
"no-continue"?: DummyRule;
"no-control-regex"?: DummyRule;
"no-debugger"?: DummyRule;
"no-delete-var"?: DummyRule;
"no-div-regex"?: DummyRule;
"no-dupe-class-members"?: DummyRule;
"no-dupe-else-if"?: DummyRule;
"no-dupe-keys"?: DummyRule;
"no-duplicate-case"?: DummyRule;
"no-duplicate-imports"?: DummyRule;
"no-else-return"?: DummyRule;
"no-empty"?: DummyRule;
"no-empty-character-class"?: DummyRule;
"no-empty-function"?: DummyRule;
"no-empty-pattern"?: DummyRule;
"no-empty-static-block"?: DummyRule;
"no-eq-null"?: DummyRule;
"no-eval"?: DummyRule;
"no-ex-assign"?: DummyRule;
"no-extend-native"?: DummyRule;
"no-extra-bind"?: DummyRule;
"no-extra-boolean-cast"?: DummyRule;
"no-extra-label"?: DummyRule;
"no-fallthrough"?: DummyRule;
"no-func-assign"?: DummyRule;
"no-global-assign"?: DummyRule;
"no-implicit-coercion"?: DummyRule;
"no-implicit-globals"?: DummyRule;
"no-implied-eval"?: DummyRule;
"no-import-assign"?: DummyRule;
"no-inline-comments"?: DummyRule;
"no-inner-declarations"?: DummyRule;
"no-invalid-regexp"?: DummyRule;
"no-irregular-whitespace"?: DummyRule;
"no-iterator"?: DummyRule;
"no-label-var"?: DummyRule;
"no-labels"?: DummyRule;
"no-lone-blocks"?: DummyRule;
"no-lonely-if"?: DummyRule;
"no-loop-func"?: DummyRule;
"no-loss-of-precision"?: DummyRule;
"no-magic-numbers"?: DummyRule;
"no-misleading-character-class"?: DummyRule;
"no-multi-assign"?: DummyRule;
"no-multi-str"?: DummyRule;
"no-negated-condition"?: DummyRule;
"no-nested-ternary"?: DummyRule;
"no-new"?: DummyRule;
"no-new-func"?: DummyRule;
"no-new-native-nonconstructor"?: DummyRule;
"no-new-wrappers"?: DummyRule;
"no-nonoctal-decimal-escape"?: DummyRule;
"no-obj-calls"?: DummyRule;
"no-object-constructor"?: DummyRule;
"no-param-reassign"?: DummyRule;
"no-plusplus"?: DummyRule;
"no-promise-executor-return"?: DummyRule;
"no-proto"?: DummyRule;
"no-prototype-builtins"?: DummyRule;
"no-redeclare"?: DummyRule;
"no-regex-spaces"?: DummyRule;
"no-restricted-exports"?: DummyRule;
"no-restricted-globals"?: DummyRule;
"no-restricted-imports"?: DummyRule;
"no-restricted-properties"?: DummyRule;
"no-return-assign"?: DummyRule;
"no-script-url"?: DummyRule;
"no-self-assign"?: DummyRule;
"no-self-compare"?: DummyRule;
"no-sequences"?: DummyRule;
"no-setter-return"?: DummyRule;
"no-shadow"?: DummyRule;
"no-shadow-restricted-names"?: DummyRule;
"no-sparse-arrays"?: DummyRule;
"no-template-curly-in-string"?: DummyRule;
"no-ternary"?: DummyRule;
"no-this-before-super"?: DummyRule;
"no-throw-literal"?: DummyRule;
"no-unassigned-vars"?: DummyRule;
"no-undef"?: DummyRule;
"no-undefined"?: DummyRule;
"no-underscore-dangle"?: DummyRule;
"no-unexpected-multiline"?: DummyRule;
"no-unmodified-loop-condition"?: DummyRule;
"no-unneeded-ternary"?: DummyRule;
"no-unreachable"?: DummyRule;
"no-unsafe-finally"?: DummyRule;
"no-unsafe-negation"?: DummyRule;
"no-unsafe-optional-chaining"?: DummyRule;
"no-unused-expressions"?: DummyRule;
"no-unused-labels"?: DummyRule;
"no-unused-private-class-members"?: DummyRule;
"no-unused-vars"?: DummyRule;
"no-use-before-define"?: DummyRule;
"no-useless-assignment"?: DummyRule;
"no-useless-backreference"?: DummyRule;
"no-useless-call"?: DummyRule;
"no-useless-catch"?: DummyRule;
"no-useless-computed-key"?: DummyRule;
"no-useless-concat"?: DummyRule;
"no-useless-constructor"?: DummyRule;
"no-useless-escape"?: DummyRule;
"no-useless-rename"?: DummyRule;
"no-useless-return"?: DummyRule;
"no-var"?: DummyRule;
"no-void"?: DummyRule;
"no-warning-comments"?: DummyRule;
"no-with"?: DummyRule;
"node/callback-return"?: DummyRule;
"node/global-require"?: DummyRule;
"node/handle-callback-err"?: DummyRule;
"node/no-exports-assign"?: DummyRule;
"node/no-new-require"?: DummyRule;
"node/no-path-concat"?: DummyRule;
"node/no-process-env"?: DummyRule;
"object-shorthand"?: DummyRule;
"operator-assignment"?: DummyRule;
"oxc/approx-constant"?: DummyRule;
"oxc/bad-array-method-on-arguments"?: DummyRule;
"oxc/bad-bitwise-operator"?: DummyRule;
"oxc/bad-char-at-comparison"?: DummyRule;
"oxc/bad-comparison-sequence"?: DummyRule;
"oxc/bad-min-max-func"?: DummyRule;
"oxc/bad-object-literal-comparison"?: DummyRule;
"oxc/bad-replace-all-arg"?: DummyRule;
"oxc/branches-sharing-code"?: DummyRule;
"oxc/const-comparisons"?: DummyRule;
"oxc/double-comparisons"?: DummyRule;
"oxc/erasing-op"?: DummyRule;
"oxc/misrefactored-assign-op"?: DummyRule;
"oxc/missing-throw"?: DummyRule;
"oxc/no-accumulating-spread"?: DummyRule;
"oxc/no-async-await"?: DummyRule;
"oxc/no-async-endpoint-handlers"?: DummyRule;
"oxc/no-barrel-file"?: DummyRule;
"oxc/no-const-enum"?: DummyRule;
"oxc/no-map-spread"?: DummyRule;
"oxc/no-optional-chaining"?: DummyRule;
"oxc/no-rest-spread-properties"?: DummyRule;
"oxc/no-this-in-exported-function"?: DummyRule;
"oxc/number-arg-out-of-range"?: DummyRule;
"oxc/only-used-in-recursion"?: DummyRule;
"oxc/uninvoked-array-callback"?: DummyRule;
"prefer-arrow-callback"?: DummyRule;
"prefer-const"?: DummyRule;
"prefer-destructuring"?: DummyRule;
"prefer-exponentiation-operator"?: DummyRule;
"prefer-named-capture-group"?: DummyRule;
"prefer-numeric-literals"?: DummyRule;
"prefer-object-has-own"?: DummyRule;
"prefer-object-spread"?: DummyRule;
"prefer-promise-reject-errors"?: DummyRule;
"prefer-regex-literals"?: DummyRule;
"prefer-rest-params"?: DummyRule;
"prefer-spread"?: DummyRule;
"prefer-template"?: DummyRule;
"preserve-caught-error"?: DummyRule;
"promise/always-return"?: DummyRule;
"promise/avoid-new"?: DummyRule;
"promise/catch-or-return"?: DummyRule;
"promise/no-callback-in-promise"?: DummyRule;
"promise/no-multiple-resolved"?: DummyRule;
"promise/no-nesting"?: DummyRule;
"promise/no-new-statics"?: DummyRule;
"promise/no-promise-in-callback"?: DummyRule;
"promise/no-return-in-finally"?: DummyRule;
"promise/no-return-wrap"?: DummyRule;
"promise/param-names"?: DummyRule;
"promise/prefer-await-to-callbacks"?: DummyRule;
"promise/prefer-await-to-then"?: DummyRule;
"promise/prefer-catch"?: DummyRule;
"promise/spec-only"?: DummyRule;
"promise/valid-params"?: DummyRule;
radix?: DummyRule;
"react-perf/jsx-no-jsx-as-prop"?: DummyRule;
"react-perf/jsx-no-new-array-as-prop"?: DummyRule;
"react-perf/jsx-no-new-function-as-prop"?: DummyRule;
"react-perf/jsx-no-new-object-as-prop"?: DummyRule;
"react/button-has-type"?: DummyRule;
"react/checked-requires-onchange-or-readonly"?: DummyRule;
"react/display-name"?: DummyRule;
"react/exhaustive-deps"?: DummyRule;
"react/forbid-component-props"?: DummyRule;
"react/forbid-dom-props"?: DummyRule;
"react/forbid-elements"?: DummyRule;
"react/forward-ref-uses-ref"?: DummyRule;
"react/hook-use-state"?: DummyRule;
"react/iframe-missing-sandbox"?: DummyRule;
"react/jsx-boolean-value"?: DummyRule;
"react/jsx-curly-brace-presence"?: DummyRule;
"react/jsx-filename-extension"?: DummyRule;
"react/jsx-fragments"?: DummyRule;
"react/jsx-handler-names"?: DummyRule;
"react/jsx-key"?: DummyRule;
"react/jsx-max-depth"?: DummyRule;
"react/jsx-no-comment-textnodes"?: DummyRule;
"react/jsx-no-constructed-context-values"?: DummyRule;
"react/jsx-no-duplicate-props"?: DummyRule;
"react/jsx-no-script-url"?: DummyRule;
"react/jsx-no-target-blank"?: DummyRule;
"react/jsx-no-undef"?: DummyRule;
"react/jsx-no-useless-fragment"?: DummyRule;
"react/jsx-pascal-case"?: DummyRule;
"react/jsx-props-no-spread-multi"?: DummyRule;
"react/jsx-props-no-spreading"?: DummyRule;
"react/no-array-index-key"?: DummyRule;
"react/no-children-prop"?: DummyRule;
"react/no-clone-element"?: DummyRule;
"react/no-danger"?: DummyRule;
"react/no-danger-with-children"?: DummyRule;
"react/no-did-mount-set-state"?: DummyRule;
"react/no-did-update-set-state"?: DummyRule;
"react/no-direct-mutation-state"?: DummyRule;
"react/no-find-dom-node"?: DummyRule;
"react/no-is-mounted"?: DummyRule;
"react/no-multi-comp"?: DummyRule;
"react/no-namespace"?: DummyRule;
"react/no-object-type-as-default-prop"?: DummyRule;
"react/no-react-children"?: DummyRule;
"react/no-redundant-should-component-update"?: DummyRule;
"react/no-render-return-value"?: DummyRule;
"react/no-set-state"?: DummyRule;
"react/no-string-refs"?: DummyRule;
"react/no-this-in-sfc"?: DummyRule;
"react/no-unescaped-entities"?: DummyRule;
"react/no-unknown-property"?: DummyRule;
"react/no-unsafe"?: DummyRule;
"react/no-unstable-nested-components"?: DummyRule;
"react/no-will-update-set-state"?: DummyRule;
"react/only-export-components"?: DummyRule;
"react/prefer-es6-class"?: DummyRule;
"react/prefer-function-component"?: DummyRule;
"react/react-in-jsx-scope"?: DummyRule;
"react/require-render-return"?: DummyRule;
"react/rules-of-hooks"?: DummyRule;
"react/self-closing-comp"?: DummyRule;
"react/state-in-constructor"?: DummyRule;
"react/style-prop-object"?: DummyRule;
"react/void-dom-elements-no-children"?: DummyRule;
"require-await"?: DummyRule;
"require-unicode-regexp"?: DummyRule;
"require-yield"?: DummyRule;
"sort-imports"?: DummyRule;
"sort-keys"?: DummyRule;
"sort-vars"?: DummyRule;
"symbol-description"?: DummyRule;
"typescript/adjacent-overload-signatures"?: DummyRule;
"typescript/array-type"?: DummyRule;
"typescript/await-thenable"?: DummyRule;
"typescript/ban-ts-comment"?: DummyRule;
"typescript/ban-tslint-comment"?: DummyRule;
"typescript/ban-types"?: DummyRule;
"typescript/class-literal-property-style"?: DummyRule;
"typescript/consistent-generic-constructors"?: DummyRule;
"typescript/consistent-indexed-object-style"?: DummyRule;
"typescript/consistent-return"?: DummyRule;
"typescript/consistent-type-assertions"?: DummyRule;
"typescript/consistent-type-definitions"?: DummyRule;
"typescript/consistent-type-exports"?: DummyRule;
"typescript/consistent-type-imports"?: DummyRule;
"typescript/dot-notation"?: DummyRule;
"typescript/explicit-function-return-type"?: DummyRule;
"typescript/explicit-member-accessibility"?: DummyRule;
"typescript/explicit-module-boundary-types"?: DummyRule;
"typescript/method-signature-style"?: DummyRule;
"typescript/no-array-delete"?: DummyRule;
"typescript/no-base-to-string"?: DummyRule;
"typescript/no-confusing-non-null-assertion"?: DummyRule;
"typescript/no-confusing-void-expression"?: DummyRule;
"typescript/no-deprecated"?: DummyRule;
"typescript/no-duplicate-enum-values"?: DummyRule;
"typescript/no-duplicate-type-constituents"?: DummyRule;
"typescript/no-dynamic-delete"?: DummyRule;
"typescript/no-empty-interface"?: DummyRule;
"typescript/no-empty-object-type"?: DummyRule;
"typescript/no-explicit-any"?: DummyRule;
"typescript/no-extra-non-null-assertion"?: DummyRule;
"typescript/no-extraneous-class"?: DummyRule;
"typescript/no-floating-promises"?: DummyRule;
"typescript/no-for-in-array"?: DummyRule;
"typescript/no-implied-eval"?: DummyRule;
"typescript/no-import-type-side-effects"?: DummyRule;
"typescript/no-inferrable-types"?: DummyRule;
"typescript/no-invalid-void-type"?: DummyRule;
"typescript/no-meaningless-void-operator"?: DummyRule;
"typescript/no-misused-new"?: DummyRule;
"typescript/no-misused-promises"?: DummyRule;
"typescript/no-misused-spread"?: DummyRule;
"typescript/no-mixed-enums"?: DummyRule;
"typescript/no-namespace"?: DummyRule;
"typescript/no-non-null-asserted-nullish-coalescing"?: DummyRule;
"typescript/no-non-null-asserted-optional-chain"?: DummyRule;
"typescript/no-non-null-assertion"?: DummyRule;
"typescript/no-redundant-type-constituents"?: DummyRule;
"typescript/no-require-imports"?: DummyRule;
"typescript/no-restricted-types"?: DummyRule;
"typescript/no-this-alias"?: DummyRule;
"typescript/no-unnecessary-boolean-literal-compare"?: DummyRule;
"typescript/no-unnecessary-condition"?: DummyRule;
"typescript/no-unnecessary-parameter-property-assignment"?: DummyRule;
"typescript/no-unnecessary-qualifier"?: DummyRule;
"typescript/no-unnecessary-template-expression"?: DummyRule;
"typescript/no-unnecessary-type-arguments"?: DummyRule;
"typescript/no-unnecessary-type-assertion"?: DummyRule;
"typescript/no-unnecessary-type-constraint"?: DummyRule;
"typescript/no-unnecessary-type-conversion"?: DummyRule;
"typescript/no-unnecessary-type-parameters"?: DummyRule;
"typescript/no-unsafe-argument"?: DummyRule;
"typescript/no-unsafe-assignment"?: DummyRule;
"typescript/no-unsafe-call"?: DummyRule;
"typescript/no-unsafe-declaration-merging"?: DummyRule;
"typescript/no-unsafe-enum-comparison"?: DummyRule;
"typescript/no-unsafe-function-type"?: DummyRule;
"typescript/no-unsafe-member-access"?: DummyRule;
"typescript/no-unsafe-return"?: DummyRule;
"typescript/no-unsafe-type-assertion"?: DummyRule;
"typescript/no-unsafe-unary-minus"?: DummyRule;
"typescript/no-useless-default-assignment"?: DummyRule;
"typescript/no-useless-empty-export"?: DummyRule;
"typescript/no-var-requires"?: DummyRule;
"typescript/no-wrapper-object-types"?: DummyRule;
"typescript/non-nullable-type-assertion-style"?: DummyRule;
"typescript/only-throw-error"?: DummyRule;
"typescript/parameter-properties"?: DummyRule;
"typescript/prefer-as-const"?: DummyRule;
"typescript/prefer-enum-initializers"?: DummyRule;
"typescript/prefer-find"?: DummyRule;
"typescript/prefer-for-of"?: DummyRule;
"typescript/prefer-function-type"?: DummyRule;
"typescript/prefer-includes"?: DummyRule;
"typescript/prefer-literal-enum-member"?: DummyRule;
"typescript/prefer-namespace-keyword"?: DummyRule;
"typescript/prefer-nullish-coalescing"?: DummyRule;
"typescript/prefer-optional-chain"?: DummyRule;
"typescript/prefer-promise-reject-errors"?: DummyRule;
"typescript/prefer-readonly"?: DummyRule;
"typescript/prefer-readonly-parameter-types"?: DummyRule;
"typescript/prefer-reduce-type-parameter"?: DummyRule;
"typescript/prefer-regexp-exec"?: DummyRule;
"typescript/prefer-return-this-type"?: DummyRule;
"typescript/prefer-string-starts-ends-with"?: DummyRule;
"typescript/prefer-ts-expect-error"?: DummyRule;
"typescript/promise-function-async"?: DummyRule;
"typescript/related-getter-setter-pairs"?: DummyRule;
"typescript/require-array-sort-compare"?: DummyRule;
"typescript/require-await"?: DummyRule;
"typescript/restrict-plus-operands"?: DummyRule;
"typescript/restrict-template-expressions"?: DummyRule;
"typescript/return-await"?: DummyRule;
"typescript/strict-boolean-expressions"?: DummyRule;
"typescript/strict-void-return"?: DummyRule;
"typescript/switch-exhaustiveness-check"?: DummyRule;
"typescript/triple-slash-reference"?: DummyRule;
"typescript/unbound-method"?: DummyRule;
"typescript/unified-signatures"?: DummyRule;
"typescript/use-unknown-in-catch-callback-variable"?: DummyRule;
"unicode-bom"?: DummyRule;
"unicorn/catch-error-name"?: DummyRule;
"unicorn/consistent-assert"?: DummyRule;
"unicorn/consistent-date-clone"?: DummyRule;
"unicorn/consistent-empty-array-spread"?: DummyRule;
"unicorn/consistent-existence-index-check"?: DummyRule;
"unicorn/consistent-function-scoping"?: DummyRule;
"unicorn/consistent-template-literal-escape"?: DummyRule;
"unicorn/custom-error-definition"?: DummyRule;
"unicorn/empty-brace-spaces"?: DummyRule;
"unicorn/error-message"?: DummyRule;
"unicorn/escape-case"?: DummyRule;
"unicorn/explicit-length-check"?: DummyRule;
"unicorn/filename-case"?: DummyRule;
"unicorn/import-style"?: DummyRule;
"unicorn/new-for-builtins"?: DummyRule;
"unicorn/no-abusive-eslint-disable"?: DummyRule;
"unicorn/no-accessor-recursion"?: DummyRule;
"unicorn/no-anonymous-default-export"?: DummyRule;
"unicorn/no-array-callback-reference"?: DummyRule;
"unicorn/no-array-for-each"?: DummyRule;
"unicorn/no-array-method-this-argument"?: DummyRule;
"unicorn/no-array-reduce"?: DummyRule;
"unicorn/no-array-reverse"?: DummyRule;
"unicorn/no-array-sort"?: DummyRule;
"unicorn/no-await-expression-member"?: DummyRule;
"unicorn/no-await-in-promise-methods"?: DummyRule;
"unicorn/no-console-spaces"?: DummyRule;
"unicorn/no-document-cookie"?: DummyRule;
"unicorn/no-empty-file"?: DummyRule;
"unicorn/no-hex-escape"?: DummyRule;
"unicorn/no-immediate-mutation"?: DummyRule;
"unicorn/no-instanceof-array"?: DummyRule;
"unicorn/no-instanceof-builtins"?: DummyRule;
"unicorn/no-invalid-fetch-options"?: DummyRule;
"unicorn/no-invalid-remove-event-listener"?: DummyRule;
"unicorn/no-length-as-slice-end"?: DummyRule;
"unicorn/no-lonely-if"?: DummyRule;
"unicorn/no-magic-array-flat-depth"?: DummyRule;
"unicorn/no-negated-condition"?: DummyRule;
"unicorn/no-negation-in-equality-check"?: DummyRule;
"unicorn/no-nested-ternary"?: DummyRule;
"unicorn/no-new-array"?: DummyRule;
"unicorn/no-new-buffer"?: DummyRule;
"unicorn/no-null"?: DummyRule;
"unicorn/no-object-as-default-parameter"?: DummyRule;
"unicorn/no-process-exit"?: DummyRule;
"unicorn/no-single-promise-in-promise-methods"?: DummyRule;
"unicorn/no-static-only-class"?: DummyRule;
"unicorn/no-thenable"?: DummyRule;
"unicorn/no-this-assignment"?: DummyRule;
"unicorn/no-typeof-undefined"?: DummyRule;
"unicorn/no-unnecessary-array-flat-depth"?: DummyRule;
"unicorn/no-unnecessary-array-splice-count"?: DummyRule;
"unicorn/no-unnecessary-await"?: DummyRule;
"unicorn/no-unnecessary-slice-end"?: DummyRule;
"unicorn/no-unreadable-array-destructuring"?: DummyRule;
"unicorn/no-unreadable-iife"?: DummyRule;
"unicorn/no-useless-collection-argument"?: DummyRule;
"unicorn/no-useless-error-capture-stack-trace"?: DummyRule;
"unicorn/no-useless-fallback-in-spread"?: DummyRule;
"unicorn/no-useless-iterator-to-array"?: DummyRule;
"unicorn/no-useless-length-check"?: DummyRule;
"unicorn/no-useless-promise-resolve-reject"?: DummyRule;
"unicorn/no-useless-spread"?: DummyRule;
"unicorn/no-useless-switch-case"?: DummyRule;
"unicorn/no-useless-undefined"?: DummyRule;
"unicorn/no-zero-fractions"?: DummyRule;
"unicorn/number-literal-case"?: DummyRule;
"unicorn/numeric-separators-style"?: DummyRule;
"unicorn/prefer-add-event-listener"?: DummyRule;
"unicorn/prefer-array-find"?: DummyRule;
"unicorn/prefer-array-flat"?: DummyRule;
"unicorn/prefer-array-flat-map"?: DummyRule;
"unicorn/prefer-array-index-of"?: DummyRule;
"unicorn/prefer-array-some"?: DummyRule;
"unicorn/prefer-at"?: DummyRule;
"unicorn/prefer-bigint-literals"?: DummyRule;
"unicorn/prefer-blob-reading-methods"?: DummyRule;
"unicorn/prefer-class-fields"?: DummyRule;
"unicorn/prefer-classlist-toggle"?: DummyRule;
"unicorn/prefer-code-point"?: DummyRule;
"unicorn/prefer-date-now"?: DummyRule;
"unicorn/prefer-default-parameters"?: DummyRule;
"unicorn/prefer-dom-node-append"?: DummyRule;
"unicorn/prefer-dom-node-dataset"?: DummyRule;
"unicorn/prefer-dom-node-remove"?: DummyRule;
"unicorn/prefer-dom-node-text-content"?: DummyRule;
"unicorn/prefer-event-target"?: DummyRule;
"unicorn/prefer-global-this"?: DummyRule;
"unicorn/prefer-import-meta-properties"?: DummyRule;
"unicorn/prefer-includes"?: DummyRule;
"unicorn/prefer-keyboard-event-key"?: DummyRule;
"unicorn/prefer-logical-operator-over-ternary"?: DummyRule;
"unicorn/prefer-math-min-max"?: DummyRule;
"unicorn/prefer-math-trunc"?: DummyRule;
"unicorn/prefer-modern-dom-apis"?: DummyRule;
"unicorn/prefer-modern-math-apis"?: DummyRule;
"unicorn/prefer-module"?: DummyRule;
"unicorn/prefer-native-coercion-functions"?: DummyRule;
"unicorn/prefer-negative-index"?: DummyRule;
"unicorn/prefer-node-protocol"?: DummyRule;
"unicorn/prefer-number-properties"?: DummyRule;
"unicorn/prefer-object-from-entries"?: DummyRule;
"unicorn/prefer-optional-catch-binding"?: DummyRule;
"unicorn/prefer-prototype-methods"?: DummyRule;
"unicorn/prefer-query-selector"?: DummyRule;
"unicorn/prefer-reflect-apply"?: DummyRule;
"unicorn/prefer-regexp-test"?: DummyRule;
"unicorn/prefer-response-static-json"?: DummyRule;
"unicorn/prefer-set-has"?: DummyRule;
"unicorn/prefer-set-size"?: DummyRule;
"unicorn/prefer-spread"?: DummyRule;
"unicorn/prefer-string-raw"?: DummyRule;
"unicorn/prefer-string-replace-all"?: DummyRule;
"unicorn/prefer-string-slice"?: DummyRule;
"unicorn/prefer-string-starts-ends-with"?: DummyRule;
"unicorn/prefer-string-trim-start-end"?: DummyRule;
"unicorn/prefer-structured-clone"?: DummyRule;
"unicorn/prefer-ternary"?: DummyRule;
"unicorn/prefer-top-level-await"?: DummyRule;
"unicorn/prefer-type-error"?: DummyRule;
"unicorn/relative-url-style"?: DummyRule;
"unicorn/require-array-join-separator"?: DummyRule;
"unicorn/require-module-attributes"?: DummyRule;
"unicorn/require-module-specifiers"?: DummyRule;
"unicorn/require-number-to-fixed-digits-argument"?: DummyRule;
"unicorn/require-post-message-target-origin"?: DummyRule;
"unicorn/switch-case-braces"?: DummyRule;
"unicorn/switch-case-break-position"?: DummyRule;
"unicorn/text-encoding-identifier-case"?: DummyRule;
"unicorn/throw-new-error"?: DummyRule;
"use-isnan"?: DummyRule;
"valid-typeof"?: DummyRule;
"vars-on-top"?: DummyRule;
"vitest/consistent-each-for"?: DummyRule;
"vitest/consistent-test-filename"?: DummyRule;
"vitest/consistent-test-it"?: DummyRule;
"vitest/consistent-vitest-vi"?: DummyRule;
"vitest/expect-expect"?: DummyRule;
"vitest/hoisted-apis-on-top"?: DummyRule;
"vitest/max-expects"?: DummyRule;
"vitest/max-nested-describe"?: DummyRule;
"vitest/no-alias-methods"?: DummyRule;
"vitest/no-commented-out-tests"?: DummyRule;
"vitest/no-conditional-expect"?: DummyRule;
"vitest/no-conditional-in-test"?: DummyRule;
"vitest/no-conditional-tests"?: DummyRule;
"vitest/no-disabled-tests"?: DummyRule;
"vitest/no-duplicate-hooks"?: DummyRule;
"vitest/no-focused-tests"?: DummyRule;
"vitest/no-hooks"?: DummyRule;
"vitest/no-identical-title"?: DummyRule;
"vitest/no-import-node-test"?: DummyRule;
"vitest/no-importing-vitest-globals"?: DummyRule;
"vitest/no-interpolation-in-snapshots"?: DummyRule;
"vitest/no-large-snapshots"?: DummyRule;
"vitest/no-mocks-import"?: DummyRule;
"vitest/no-restricted-matchers"?: DummyRule;
"vitest/no-restricted-vi-methods"?: DummyRule;
"vitest/no-standalone-expect"?: DummyRule;
"vitest/no-test-prefixes"?: DummyRule;
"vitest/no-test-return-statement"?: DummyRule;
"vitest/no-unneeded-async-expect-function"?: DummyRule;
"vitest/padding-around-after-all-blocks"?: DummyRule;
"vitest/prefer-called-exactly-once-with"?: DummyRule;
"vitest/prefer-called-once"?: DummyRule;
"vitest/prefer-called-times"?: DummyRule;
"vitest/prefer-called-with"?: DummyRule;
"vitest/prefer-comparison-matcher"?: DummyRule;
"vitest/prefer-describe-function-title"?: DummyRule;
"vitest/prefer-each"?: DummyRule;
"vitest/prefer-equality-matcher"?: DummyRule;
"vitest/prefer-expect-assertions"?: DummyRule;
"vitest/prefer-expect-resolves"?: DummyRule;
"vitest/prefer-expect-type-of"?: DummyRule;
"vitest/prefer-hooks-in-order"?: DummyRule;
"vitest/prefer-hooks-on-top"?: DummyRule;
"vitest/prefer-import-in-mock"?: DummyRule;
"vitest/prefer-importing-vitest-globals"?: DummyRule;
"vitest/prefer-lowercase-title"?: DummyRule;
"vitest/prefer-mock-promise-shorthand"?: DummyRule;
"vitest/prefer-mock-return-shorthand"?: DummyRule;
"vitest/prefer-snapshot-hint"?: DummyRule;
"vitest/prefer-spy-on"?: DummyRule;
"vitest/prefer-strict-boolean-matchers"?: DummyRule;
"vitest/prefer-strict-equal"?: DummyRule;
"vitest/prefer-to-be"?: DummyRule;
"vitest/prefer-to-be-falsy"?: DummyRule;
"vitest/prefer-to-be-object"?: DummyRule;
"vitest/prefer-to-be-truthy"?: DummyRule;
"vitest/prefer-to-contain"?: DummyRule;
"vitest/prefer-to-have-been-called-times"?: DummyRule;
"vitest/prefer-to-have-length"?: DummyRule;
"vitest/prefer-todo"?: DummyRule;
"vitest/require-awaited-expect-poll"?: DummyRule;
"vitest/require-hook"?: DummyRule;
"vitest/require-local-test-context-for-concurrent-snapshots"?: DummyRule;
"vitest/require-mock-type-parameters"?: DummyRule;
"vitest/require-test-timeout"?: DummyRule;
"vitest/require-to-throw-message"?: DummyRule;
"vitest/require-top-level-describe"?: DummyRule;
"vitest/valid-describe-callback"?: DummyRule;
"vitest/valid-expect"?: DummyRule;
"vitest/valid-expect-in-promise"?: DummyRule;
"vitest/valid-title"?: DummyRule;
"vitest/warn-todo"?: DummyRule;
"vue/component-definition-name-casing"?: DummyRule;
"vue/define-emits-declaration"?: DummyRule;
"vue/define-props-declaration"?: DummyRule;
"vue/define-props-destructuring"?: DummyRule;
"vue/max-props"?: DummyRule;
"vue/no-arrow-functions-in-watch"?: DummyRule;
"vue/no-computed-properties-in-data"?: DummyRule;
"vue/no-deprecated-data-object-declaration"?: DummyRule;
"vue/no-deprecated-delete-set"?: DummyRule;
"vue/no-deprecated-destroyed-lifecycle"?: DummyRule;
"vue/no-deprecated-events-api"?: DummyRule;
"vue/no-deprecated-model-definition"?: DummyRule;
"vue/no-deprecated-props-default-this"?: DummyRule;
"vue/no-deprecated-vue-config-keycodes"?: DummyRule;
"vue/no-export-in-script-setup"?: DummyRule;
"vue/no-expose-after-await"?: DummyRule;
"vue/no-import-compiler-macros"?: DummyRule;
"vue/no-lifecycle-after-await"?: DummyRule;
"vue/no-multiple-slot-args"?: DummyRule;
"vue/no-required-prop-with-default"?: DummyRule;
"vue/no-reserved-component-names"?: DummyRule;
"vue/no-shared-component-data"?: DummyRule;
"vue/no-this-in-before-route-enter"?: DummyRule;
"vue/no-watch-after-await"?: DummyRule;
"vue/prefer-import-from-vue"?: DummyRule;
"vue/require-default-export"?: DummyRule;
"vue/require-prop-type-constructor"?: DummyRule;
"vue/require-render-return"?: DummyRule;
"vue/require-slots-as-functions"?: DummyRule;
"vue/require-typed-ref"?: DummyRule;
"vue/return-in-computed-property"?: DummyRule;
"vue/return-in-emits-validator"?: DummyRule;
"vue/valid-define-emits"?: DummyRule;
"vue/valid-define-options"?: DummyRule;
"vue/valid-define-props"?: DummyRule;
"vue/valid-next-tick"?: DummyRule;
yoda?: DummyRule;
[k: string]: DummyRule | undefined;
}
/**
* Configure the behavior of linter plugins.
*
* Here's an example if you're using Next.js in a monorepo:
*
* ```json
* {
* "settings": {
* "next": {
* "rootDir": "apps/dashboard/"
* },
* "react": {
* "linkComponents": [
* {
* "name": "Link",
* "linkAttribute": "to"
* }
* ]
* },
* "jsx-a11y": {
* "components": {
* "Link": "a",
* "Button": "button"
* }
* }
* }
* }
* ```
*/
interface OxlintPluginSettings {
jest?: JestPluginSettings;
jsdoc?: JSDocPluginSettings;
"jsx-a11y"?: JSXA11YPluginSettings;
next?: NextPluginSettings;
react?: ReactPluginSettings;
vitest?: VitestPluginSettings;
[k: string]: unknown;
}
/**
* Configure Jest plugin rules.
*
* See [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest)'s
* configuration for a full reference.
*/
interface JestPluginSettings {
/**
* Jest version — accepts a number (`29`) or a semver string (`"29.1.0"` or `"v29.1.0"`),
*