Discover modules > cue.dev/x/npmjs/eslint
v0.2.0
#Plugins: ¶
"@angular-eslint/component-class-suffix"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			suffixes?: [...string]
			...
		},
		...
	]
])
¶

Classes decorated with @Component must have suffix "Component" (or custom) in their name. See more at https://angular.dev/style-guide#style-02-03 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/component-class-suffix.md

"@angular-eslint/component-max-inline-declarations"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			template?:   >=0
			styles?:     >=0
			animations?: >=0
			...
		},
		...
	]
])
¶

Enforces a maximum number of lines in inline template, styles and animations. See more at https://angular.dev/style-guide#style-05-04 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/component-max-inline-declarations.md

"@angular-eslint/component-selector"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			type?:   matchN(1, [string, [..."element" | "attribute"]])
			prefix?: string | [...]
			style?:  "camelCase" | "kebab-case"
			...
		},
		...
	]
])
¶

Component selectors should follow given naming rules. See more at https://angular.dev/style-guide#style-02-07, https://angular.dev/style-guide#style-05-02 and https://angular.dev/style-guide#style-05-03. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/component-selector.md

"@angular-eslint/consistent-component-styles"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Ensures consistent usage of `styles`/`styleUrls`/`styleUrl` within Component metadata https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-component-styles.md

"@angular-eslint/contextual-decorator"?: _ ¶

Ensures that classes use contextual decorators in its body https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/contextual-decorator.md

"@angular-eslint/contextual-lifecycle"?: _ ¶

Ensures that lifecycle methods are used in a correct context https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/contextual-lifecycle.md

"@angular-eslint/directive-class-suffix"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			suffixes?: [...string]
			...
		},
		...
	]
])
¶

Classes decorated with @Directive must have suffix "Directive" (or custom) in their name. See more at https://angular.dev/style-guide#style-02-03 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/directive-class-suffix.md

"@angular-eslint/directive-selector"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			type?:   matchN(1, [string, [..."element" | "attribute"]])
			prefix?: string | [...]
			style?:  "camelCase" | "kebab-case"
			...
		},
		...
	]
])
¶

Directive selectors should follow given naming rules. See more at https://angular.dev/style-guide#style-02-06 and https://angular.dev/style-guide#style-02-08. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/directive-selector.md

"@angular-eslint/no-async-lifecycle-method"?: _ ¶

Angular Lifecycle methods should not be async. Angular does not wait for async lifecycle but the code incorrectly suggests it does. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-async-lifecycle-method.md

"@angular-eslint/no-attribute-decorator"?: _ ¶

The @Attribute decorator is used to obtain a single value for an attribute. This is a much less common use-case than getting a stream of values (using @Input), so often the @Attribute decorator is mistakenly used when @Input was what was intended. This rule disallows usage of @Attribute decorator altogether in order to prevent these mistakes. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-attribute-decorator.md

"@angular-eslint/no-conflicting-lifecycle"?: _ ¶

Ensures that directives not implement conflicting lifecycle interfaces. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-conflicting-lifecycle.md

"@angular-eslint/no-duplicates-in-metadata-arrays"?: _ ¶

Ensures that metadata arrays do not contain duplicate entries. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-duplicates-in-metadata-arrays.md

"@angular-eslint/no-empty-lifecycle-method"?: _ ¶

Disallows declaring empty lifecycle methods https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-empty-lifecycle-method.md

"@angular-eslint/no-forward-ref"?: _ ¶

Disallows usage of `forwardRef` references for DI https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-forward-ref.md

"@angular-eslint/no-host-metadata-property"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowStatic?: bool
			...
		},
		...
	]
])
¶

Disallows usage of the `host` metadata property. NOTE: This used to be recommended by the Angular Team, but now they recommend the exact opposite: https://github.com/angular/angular/issues/54284 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-host-metadata-property.md

"@angular-eslint/no-input-prefix"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			prefixes?: [...string]
			...
		},
		...
	]
])
¶

Ensures that input bindings, including aliases, are not named or prefixed by the configured disallowed prefixes https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-input-prefix.md

"@angular-eslint/no-input-rename"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowedNames?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

Ensures that input bindings are not aliased https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-input-rename.md

"@angular-eslint/no-inputs-metadata-property"?: _ ¶

Disallows usage of the `inputs` metadata property. See more at https://angular.dev/style-guide#style-05-12 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-inputs-metadata-property.md

"@angular-eslint/no-lifecycle-call"?: _ ¶

Disallows explicit calls to lifecycle methods https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-lifecycle-call.md

"@angular-eslint/no-output-native"?: _ ¶

Ensures that output bindings, including aliases, are not named as standard DOM events https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-output-native.md

"@angular-eslint/no-output-on-prefix"?: _ ¶

Ensures that output bindings, including aliases, are not named "on", nor prefixed with it. See more at https://angular.dev/style-guide#style-05-16 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-output-on-prefix.md

"@angular-eslint/no-output-rename"?: _ ¶

Ensures that output bindings are not aliased https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-output-rename.md

"@angular-eslint/no-outputs-metadata-property"?: _ ¶

Disallows usage of the `outputs` metadata property. See more at https://angular.dev/style-guide#style-05-12 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-outputs-metadata-property.md

"@angular-eslint/no-pipe-impure"?: _ ¶

Disallows the declaration of impure pipes https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-pipe-impure.md

"@angular-eslint/no-queries-metadata-property"?: _ ¶

Disallows usage of the `queries` metadata property. See more at https://angular.dev/style-guide#style-05-12. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/no-queries-metadata-property.md

"@angular-eslint/pipe-prefix"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			prefixes?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

Enforce consistent prefix for pipes. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/pipe-prefix.md

"@angular-eslint/prefer-on-push-component-change-detection"?: _ ¶

Ensures component's `changeDetection` is set to `ChangeDetectionStrategy.OnPush` https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-on-push-component-change-detection.md

"@angular-eslint/prefer-standalone"?: _ ¶

Ensures component, directive and pipe `standalone` property is set to `true` in the component decorator https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-standalone.md

"@angular-eslint/prefer-standalone-component"?: _ ¶

Ensures component `standalone` property is set to `true` in the component decorator https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-standalone-component.md

"@angular-eslint/prefer-output-readonly"?: _ ¶

Prefer to declare `@Output` as `readonly` since they are not supposed to be reassigned https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-output-readonly.md

"@angular-eslint/relative-url-prefix"?: _ ¶

The ./ and ../ prefix is standard syntax for relative URLs; don't depend on Angular's current ability to do without that prefix. See more at https://angular.dev/style-guide#style-05-04 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/relative-url-prefix.md

"@angular-eslint/require-localize-metadata"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			requireDescription?: bool
			requireMeaning?:     bool
			...
		},
		...
	]
])
¶

Ensures that $localize tagged messages contain helpful metadata to aid with translations. https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/require-localize-metadata.md

"@angular-eslint/sort-lifecycle-methods"?: _ ¶

Ensures that lifecycle methods are declared in order of execution https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/sort-lifecycle-methods.md

"@angular-eslint/sort-ngmodule-metadata-arrays"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			locale?: string
			...
		},
		...
	]
])
¶

Ensures ASC alphabetical order for `NgModule` metadata arrays for easy visual scanning https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/sort-ngmodule-metadata-arrays.md

"@angular-eslint/use-component-selector"?: _ ¶

Component selector must be declared https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/use-component-selector.md

"@angular-eslint/use-component-view-encapsulation"?: _ ¶

Disallows using `ViewEncapsulation.None` https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/use-component-view-encapsulation.md

"@angular-eslint/use-injectable-provided-in"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreClassNamePattern?: string
			...
		},
		...
	]
])
¶

Using the `providedIn` property makes `Injectables` tree-shakable https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/use-injectable-provided-in.md

"@angular-eslint/use-lifecycle-interface"?: _ ¶

Ensures that classes implement lifecycle interfaces corresponding to the declared lifecycle methods. See more at https://angular.dev/style-guide#style-09-01 https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/use-lifecycle-interface.md

"@angular-eslint/use-pipe-transform-interface"?: _ ¶

Ensures that `Pipes` implement `PipeTransform` interface https://github.com/angular-eslint/angular-eslint/blob/main/packages/eslint-plugin/docs/rules/use-pipe-transform-interface.md

"eslint-plugin-import/no-unresolved"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			commonjs?:            bool
			amd?:                 bool
			esmodule?:            bool
			ignore?:              list.UniqueItems() & [_, ...] & [...string]
			caseSensitive?:       bool
			caseSensitiveStrict?: bool
			...
		},
		...
	]
])
¶

Ensure imports point to a file/module that can be resolved. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-unresolved.md

"eslint-plugin-import/named"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			commonjs?: bool
			...
		},
		...
	]
])
¶

Ensure named imports correspond to a named export in the remote file. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/named.md

"eslint-plugin-import/default"?: _ ¶

Ensure a default export is present, given a default import. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/default.md

"eslint-plugin-import/namespace"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowComputed?: bool
			...
		},
		...
	]
])
¶

Ensure imported namespaces contain dereferenced properties as they are dereferenced. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/namespace.md

"eslint-plugin-import/no-namespace"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignore?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

Forbid namespace (a.k.a. "wildcard" `*`) imports. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-namespace.md

"eslint-plugin-import/export"?: _ ¶

Forbid any invalid exports, i.e. re-export of the same name. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/export.md

"eslint-plugin-import/no-mutable-exports"?: _ ¶

Forbid the use of mutable exports with `var` or `let`. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-mutable-exports.md

"eslint-plugin-import/extensions"?: _ ¶

Ensure consistent use of file extension within the import path. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/extensions.md

"eslint-plugin-import/no-restricted-paths"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			zones?: [_, ...] & [...close({
				target?:  matchN(>=1, [string, list.UniqueItems() & [...string] & [_, ...]])
				from?:    matchN(>=1, [string, list.UniqueItems() & [...string] & [_, ...]])
				except?:  list.UniqueItems() & [...string]
				message?: string
			})]
			basePath?: string
			...
		},
		...
	]
])
¶

Enforce which files can be imported in a given folder. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-restricted-paths.md

"eslint-plugin-import/no-internal-modules"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Forbid importing the submodules of other modules. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-internal-modules.md

"eslint-plugin-import/group-exports"?: _ ¶

Prefer named exports to be grouped together in a single export declaration https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/group-exports.md

"eslint-plugin-import/no-relative-packages"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			commonjs?: bool
			amd?:      bool
			esmodule?: bool
			ignore?:   list.UniqueItems() & [_, ...] & [...string]
			...
		},
		...
	]
])
¶

Forbid importing packages through relative paths. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-relative-packages.md

"eslint-plugin-import/no-relative-parent-imports"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			commonjs?: bool
			amd?:      bool
			esmodule?: bool
			ignore?:   list.UniqueItems() & [_, ...] & [...string]
			...
		},
		...
	]
])
¶

Forbid importing modules from parent directories. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-relative-parent-imports.md

"eslint-plugin-import/consistent-type-specifier-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce or ban the use of inline type-only markers for named imports. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/consistent-type-specifier-style.md

"eslint-plugin-import/no-self-import"?: _ ¶

Forbid a module from importing itself. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-self-import.md

"eslint-plugin-import/no-cycle"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			commonjs?:                           bool
			amd?:                                bool
			esmodule?:                           bool
			ignore?:                             list.UniqueItems() & [_, ...] & [...string]
			maxDepth?:                           matchN(>=1, [int & >=1, "∞"])
			ignoreExternal?:                     bool
			allowUnsafeDynamicCyclicDependency?: bool
			...
		},
		...
	]
])
¶

Forbid a module from importing a module with a dependency path back to itself. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-cycle.md

"eslint-plugin-import/no-named-default"?: _ ¶

Forbid named default exports. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-named-default.md

"eslint-plugin-import/no-named-as-default"?: _ ¶

Forbid use of exported name as identifier of default export. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-named-as-default.md

"eslint-plugin-import/no-named-as-default-member"?: _ ¶

Forbid use of exported name as property of default export. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-named-as-default-member.md

"eslint-plugin-import/no-anonymous-default-export"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowArray?:             bool
			allowArrowFunction?:     bool
			allowCallExpression?:    bool
			allowAnonymousClass?:    bool
			allowAnonymousFunction?: bool
			allowLiteral?:           bool
			allowObject?:            bool
			allowNew?:               bool
			...
		},
		...
	]
])
¶

Forbid anonymous values as default exports. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-anonymous-default-export.md

"eslint-plugin-import/no-unused-modules"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			src?:            list.UniqueItems() & [...strings.MinRunes(1)]
			ignoreExports?:  list.UniqueItems() & [...strings.MinRunes(1)]
			missingExports?: bool
			unusedExports?:  bool
			...
		},
		...
	]
])
¶

Forbid modules without exports, or exports without matching import in another module. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-unused-modules.md

"eslint-plugin-import/no-commonjs"?: _ ¶

Forbid CommonJS `require` calls and `module.exports` or `exports.*`. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-commonjs.md

"eslint-plugin-import/no-amd"?: _ ¶

Forbid AMD `require` and `define` calls. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-amd.md

"eslint-plugin-import/no-duplicates"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			considerQueryString?: bool
			"prefer-inline"?:     bool
			...
		},
		...
	]
])
¶

Forbid repeated import of the same module in multiple places. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-duplicates.md

"eslint-plugin-import/first"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Ensure all imports appear before other statements. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/first.md

"eslint-plugin-import/max-dependencies"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			max?:               number
			ignoreTypeImports?: bool
			...
		},
		...
	]
])
¶

Enforce the maximum number of dependencies a module can have. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/max-dependencies.md

"eslint-plugin-import/no-extraneous-dependencies"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			devDependencies?:      matchN(1, [bool, [...]])
			optionalDependencies?: matchN(1, [bool, [...]])
			peerDependencies?:     matchN(1, [bool, [...]])
			bundledDependencies?:  matchN(1, [bool, [...]])
			packageDir?:           matchN(1, [string, [...]])
			includeInternal?:      bool
			includeTypes?:         bool
			...
		},
		...
	]
])
¶

Forbid the use of extraneous packages. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-extraneous-dependencies.md

"eslint-plugin-import/no-absolute-path"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			commonjs?: bool
			amd?:      bool
			esmodule?: bool
			ignore?:   list.UniqueItems() & [_, ...] & [...string]
			...
		},
		...
	]
])
¶

Forbid import of modules using absolute paths. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-absolute-path.md

"eslint-plugin-import/no-nodejs-modules"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

Forbid Node.js builtin modules. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-nodejs-modules.md

"eslint-plugin-import/no-webpack-loader-syntax"?: _ ¶

Forbid webpack loader syntax in imports. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-webpack-loader-syntax.md

"eslint-plugin-import/order"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			groups?:                        [...]
			pathGroupsExcludedImportTypes?: [...]
			distinctGroup?:                 bool
			pathGroups?: [...close({
				pattern!:        string
				patternOptions?: {...}
				group!: "builtin" |
					"external" |
					"internal" |
					"unknown" |
					"parent" |
					"sibling" |
					"index" |
					"object" |
					"type"
				position?: "after" | "before"
			})]
			"newlines-between"?: "ignore" | "always" | "always-and-inside-groups" | "never"
			alphabetize?: close({
				caseInsensitive?: bool
				order?:           "ignore" | "asc" | "desc"
				orderImportKind?: "ignore" | "asc" | "desc"
			})
			warnOnUnassignedImports?: bool
			...
		},
		...
	]
])
¶

Enforce a convention in module import order. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/order.md

"eslint-plugin-import/newline-after-import"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			count?:            int & >=1
			exactCount?:       bool
			considerComments?: bool
			...
		},
		...
	]
])
¶

Enforce a newline after import statements. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/newline-after-import.md

"eslint-plugin-import/prefer-default-export"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			target?: "single" | "any"
			...
		},
		...
	]
])
¶

Prefer a default export if module exports a single name or multiple names. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/prefer-default-export.md

"eslint-plugin-import/no-default-export"?: _ ¶

Forbid default exports. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-default-export.md

"eslint-plugin-import/no-named-export"?: _ ¶

Forbid named exports. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-named-export.md

"eslint-plugin-import/no-dynamic-require"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			esmodule?: bool
			...
		},
		...
	]
])
¶

Forbid `require()` calls with expressions. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-dynamic-require.md

"eslint-plugin-import/unambiguous"?: _ ¶

Forbid potentially ambiguous parse goal (`script` vs. `module`). https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/unambiguous.md

"eslint-plugin-import/no-unassigned-import"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			devDependencies?:      matchN(1, [bool, [...]])
			optionalDependencies?: matchN(1, [bool, [...]])
			peerDependencies?:     matchN(1, [bool, [...]])
			allow?:                [...string]
			...
		},
		...
	]
])
¶

Forbid unassigned imports https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-unassigned-import.md

"eslint-plugin-import/no-useless-path-segments"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			commonjs?:       bool
			noUselessIndex?: bool
			...
		},
		...
	]
])
¶

Forbid unnecessary path segments in import and require statements. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-useless-path-segments.md

"eslint-plugin-import/dynamic-import-chunkname"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			importFunctions?:        list.UniqueItems() & [...string]
			webpackChunknameFormat?: string
			...
		},
		...
	]
])
¶

Enforce a leading comment with the webpackChunkName for dynamic imports. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/dynamic-import-chunkname.md

"eslint-plugin-import/no-import-module-exports"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			exceptions?: [...]
			...
		},
		...
	]
])
¶

Forbid import statements with CommonJS module.exports.

"eslint-plugin-import/no-empty-named-blocks"?: _ ¶

Forbid empty named import blocks. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-empty-named-blocks.md

"eslint-plugin-import/exports-last"?: _ ¶

Ensure all exports appear after other statements. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/exports-last.md

"eslint-plugin-import/no-deprecated"?: _ ¶

Forbid imported names marked with `@deprecated` documentation tag. https://github.com/import-js/eslint-plugin-import/blob/v2.29.1/docs/rules/no-deprecated.md

"eslint-plugin-import/imports-first"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Replaced by `import/first`. https://github.com/import-js/eslint-plugin-import/blob/7b25c1cb95ee18acc1531002fd343e1e6031f9ed/docs/rules/imports-first.md

"eslint-plugin-unicorn/better-regex"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			sortCharacterClasses?: bool
			...
		},
		...
	]
])
¶

Improve regexes by making them shorter, consistent, and safer. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/better-regex.md

"eslint-plugin-unicorn/catch-error-name"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			name?:   string
			ignore?: list.UniqueItems()
			...
		},
		...
	]
])
¶

Enforce a specific parameter name in catch clauses. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/catch-error-name.md

"eslint-plugin-unicorn/consistent-destructuring"?: _ ¶

Use destructured variables over properties. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/consistent-destructuring.md

"eslint-plugin-unicorn/consistent-empty-array-spread"?: _ ¶

Prefer consistent types when spreading a ternary in an array literal. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/consistent-empty-array-spread.md

"eslint-plugin-unicorn/consistent-function-scoping"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkArrowFunctions?: bool
			...
		},
		...
	]
])
¶

Move function definitions to the highest possible scope. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/consistent-function-scoping.md

"eslint-plugin-unicorn/custom-error-definition"?: _ ¶

Enforce correct `Error` subclassing. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/custom-error-definition.md

"eslint-plugin-unicorn/empty-brace-spaces"?: _ ¶

Enforce no spaces between braces. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/empty-brace-spaces.md

"eslint-plugin-unicorn/error-message"?: _ ¶

Enforce passing a `message` value when creating a built-in error. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/error-message.md

"eslint-plugin-unicorn/escape-case"?: _ ¶

Require escape sequences to use uppercase values. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/escape-case.md

"eslint-plugin-unicorn/expiring-todo-comments"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			terms?:                     [...string]
			ignore?:                    list.UniqueItems()
			ignoreDatesOnPullRequests?: bool
			allowWarningComments?:      bool
			date?:                      time.Format("2006-01-02")
			...
		},
		...
	]
])
¶

Add expiration conditions to TODO comments. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/expiring-todo-comments.md

"eslint-plugin-unicorn/explicit-length-check"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			"non-zero"?: "greater-than" | "not-equal"
			...
		},
		...
	]
])
¶

Enforce explicitly comparing the `length` or `size` property of a value. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/explicit-length-check.md

"eslint-plugin-unicorn/filename-case"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce a case style for filenames. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/filename-case.md

"eslint-plugin-unicorn/import-style"?: _ ¶

Enforce specific import styles per module. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/import-style.md

"eslint-plugin-unicorn/new-for-builtins"?: _ ¶

Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/new-for-builtins.md

"eslint-plugin-unicorn/no-abusive-eslint-disable"?: _ ¶

Enforce specifying rules to disable in `eslint-disable` comments. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-abusive-eslint-disable.md

"eslint-plugin-unicorn/no-anonymous-default-export"?: _ ¶

Disallow anonymous functions and classes as the default export. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-anonymous-default-export.md

"eslint-plugin-unicorn/no-array-callback-reference"?: _ ¶

Prevent passing a function reference directly to iterator methods. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-array-callback-reference.md

"eslint-plugin-unicorn/no-array-for-each"?: _ ¶

Prefer `for…of` over the `forEach` method. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-array-for-each.md

"eslint-plugin-unicorn/no-array-method-this-argument"?: _ ¶

Disallow using the `this` argument in array methods. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-array-method-this-argument.md

"eslint-plugin-unicorn/no-array-push-push"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignore?: list.UniqueItems()
			...
		},
		...
	]
])
¶

Enforce combining multiple `Array#push()` into one call. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-array-push-push.md

"eslint-plugin-unicorn/no-array-reduce"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowSimpleOperations?: bool
			...
		},
		...
	]
])
¶

Disallow `Array#reduce()` and `Array#reduceRight()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-array-reduce.md

"eslint-plugin-unicorn/no-await-expression-member"?: _ ¶

Disallow member access from await expression. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-await-expression-member.md

"eslint-plugin-unicorn/no-await-in-promise-methods"?: _ ¶

Disallow using `await` in `Promise` method parameters. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-await-in-promise-methods.md

"eslint-plugin-unicorn/no-console-spaces"?: _ ¶

Do not use leading/trailing space between `console.log` parameters. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-console-spaces.md

"eslint-plugin-unicorn/no-document-cookie"?: _ ¶

Do not use `document.cookie` directly. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-document-cookie.md

"eslint-plugin-unicorn/no-empty-file"?: _ ¶

Disallow empty files. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-empty-file.md

"eslint-plugin-unicorn/no-for-loop"?: _ ¶

Do not use a `for` loop that can be replaced with a `for-of` loop. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-for-loop.md

"eslint-plugin-unicorn/no-hex-escape"?: _ ¶

Enforce the use of Unicode escapes instead of hexadecimal escapes. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-hex-escape.md

"eslint-plugin-unicorn/no-instanceof-array"?: _ ¶

Require `Array.isArray()` instead of `instanceof Array`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-instanceof-array.md

"eslint-plugin-unicorn/no-invalid-fetch-options"?: _ ¶

Disallow invalid options in `fetch()` and `new Request()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-invalid-fetch-options.md

"eslint-plugin-unicorn/no-invalid-remove-event-listener"?: _ ¶

Prevent calling `EventTarget#removeEventListener()` with the result of an expression. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-invalid-remove-event-listener.md

"eslint-plugin-unicorn/no-keyword-prefix"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			disallowedPrefixes?: list.UniqueItems() & list.MaxItems(1) & [string, ...] & [_, ...]
			checkProperties?:    bool
			onlyCamelCase?:      bool
			...
		},
		...
	]
])
¶

Disallow identifiers starting with `new` or `class`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-keyword-prefix.md

"eslint-plugin-unicorn/no-lonely-if"?: _ ¶

Disallow `if` statements as the only statement in `if` blocks without `else`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-lonely-if.md

"eslint-plugin-unicorn/no-magic-array-flat-depth"?: _ ¶

Disallow a magic number as the `depth` argument in `Array#flat(…).` https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-magic-array-flat-depth.md

"eslint-plugin-unicorn/no-negated-condition"?: _ ¶

Disallow negated conditions. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-negated-condition.md

"eslint-plugin-unicorn/no-negation-in-equality-check"?: _ ¶

Disallow negated expression in equality check. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-negation-in-equality-check.md

"eslint-plugin-unicorn/no-nested-ternary"?: _ ¶

Disallow nested ternary expressions. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-nested-ternary.md

"eslint-plugin-unicorn/no-new-array"?: _ ¶

Disallow `new Array()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-new-array.md

"eslint-plugin-unicorn/no-new-buffer"?: _ ¶

Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-new-buffer.md

"eslint-plugin-unicorn/no-null"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkStrictEquality?: bool
			...
		},
		...
	]
])
¶

Disallow the use of the `null` literal. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-null.md

"eslint-plugin-unicorn/no-object-as-default-parameter"?: _ ¶

Disallow the use of objects as default parameters. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-object-as-default-parameter.md

"eslint-plugin-unicorn/no-process-exit"?: _ ¶

Disallow `process.exit()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-process-exit.md

"eslint-plugin-unicorn/no-single-promise-in-promise-methods"?: _ ¶

Disallow passing single-element arrays to `Promise` methods. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-single-promise-in-promise-methods.md

"eslint-plugin-unicorn/no-static-only-class"?: _ ¶

Disallow classes that only have static members. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-static-only-class.md

"eslint-plugin-unicorn/no-thenable"?: _ ¶

Disallow `then` property. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-thenable.md

"eslint-plugin-unicorn/no-this-assignment"?: _ ¶

Disallow assigning `this` to a variable. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-this-assignment.md

"eslint-plugin-unicorn/no-typeof-undefined"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkGlobalVariables?: bool
			...
		},
		...
	]
])
¶

Disallow comparing `undefined` using `typeof`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-typeof-undefined.md

"eslint-plugin-unicorn/no-unnecessary-await"?: _ ¶

Disallow awaiting non-promise values. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-unnecessary-await.md

"eslint-plugin-unicorn/no-unnecessary-polyfills"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			targets?: string | [...] | {...}
			...
		},
		...
	]
])
¶

Enforce the use of built-in methods instead of unnecessary polyfills. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-unnecessary-polyfills.md

"eslint-plugin-unicorn/no-unreadable-array-destructuring"?: _ ¶

Disallow unreadable array destructuring. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-unreadable-array-destructuring.md

"eslint-plugin-unicorn/no-unreadable-iife"?: _ ¶

Disallow unreadable IIFEs. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-unreadable-iife.md

"eslint-plugin-unicorn/no-unused-properties"?: _ ¶

Disallow unused object properties. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-unused-properties.md

"eslint-plugin-unicorn/no-useless-fallback-in-spread"?: _ ¶

Disallow useless fallback when spreading in object literals. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-useless-fallback-in-spread.md

"eslint-plugin-unicorn/no-useless-length-check"?: _ ¶

Disallow useless array length check. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-useless-length-check.md

"eslint-plugin-unicorn/no-useless-promise-resolve-reject"?: _ ¶

Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-useless-promise-resolve-reject.md

"eslint-plugin-unicorn/no-useless-spread"?: _ ¶

Disallow unnecessary spread. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-useless-spread.md

"eslint-plugin-unicorn/no-useless-switch-case"?: _ ¶

Disallow useless case in switch statements. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-useless-switch-case.md

"eslint-plugin-unicorn/no-useless-undefined"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkArguments?:         bool
			checkArrowFunctionBody?: bool
			...
		},
		...
	]
])
¶

Disallow useless `undefined`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-useless-undefined.md

"eslint-plugin-unicorn/no-zero-fractions"?: _ ¶

Disallow number literals with zero fractions or dangling dots. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/no-zero-fractions.md

"eslint-plugin-unicorn/number-literal-case"?: _ ¶

Enforce proper case for numeric literals. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/number-literal-case.md

"eslint-plugin-unicorn/numeric-separators-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			binary?: close({
				onlyIfContainsSeparator?: bool
				minimumDigits?:           int & >=0
				groupLength?:             int & >=1
			})
			octal?: close({
				onlyIfContainsSeparator?: bool
				minimumDigits?:           int & >=0
				groupLength?:             int & >=1
			})
			hexadecimal?: close({
				onlyIfContainsSeparator?: bool
				minimumDigits?:           int & >=0
				groupLength?:             int & >=1
			})
			number?: close({
				onlyIfContainsSeparator?: bool
				minimumDigits?:           int & >=0
				groupLength?:             int & >=1
			})
			onlyIfContainsSeparator?: bool
			...
		},
		...
	]
])
¶

Enforce the style of numeric separators by correctly grouping digits. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/numeric-separators-style.md

"eslint-plugin-unicorn/prefer-add-event-listener"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			excludedPackages?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-add-event-listener.md

"eslint-plugin-unicorn/prefer-array-find"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkFromLast?: bool
			...
		},
		...
	]
])
¶

Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-array-find.md

"eslint-plugin-unicorn/prefer-array-flat-map"?: _ ¶

Prefer `.flatMap(…)` over `.map(…).flat()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-array-flat-map.md

"eslint-plugin-unicorn/prefer-array-flat"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			functions?: list.UniqueItems()
			...
		},
		...
	]
])
¶

Prefer `Array#flat()` over legacy techniques to flatten arrays. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-array-flat.md

"eslint-plugin-unicorn/prefer-array-index-of"?: _ ¶

Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-array-index-of.md

"eslint-plugin-unicorn/prefer-array-some"?: _ ¶

Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-array-some.md

"eslint-plugin-unicorn/prefer-at"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			getLastElementFunctions?: list.UniqueItems()
			checkAllIndexAccess?:     bool
			...
		},
		...
	]
])
¶

Prefer `.at()` method for index access and `String#charAt()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-at.md

"eslint-plugin-unicorn/prefer-blob-reading-methods"?: _ ¶

Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-blob-reading-methods.md

"eslint-plugin-unicorn/prefer-code-point"?: _ ¶

Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-code-point.md

"eslint-plugin-unicorn/prefer-date-now"?: _ ¶

Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-date-now.md

"eslint-plugin-unicorn/prefer-default-parameters"?: _ ¶

Prefer default parameters over reassignment. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-default-parameters.md

"eslint-plugin-unicorn/prefer-dom-node-append"?: _ ¶

Prefer `Node#append()` over `Node#appendChild()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-dom-node-append.md

"eslint-plugin-unicorn/prefer-dom-node-dataset"?: _ ¶

Prefer using `.dataset` on DOM elements over calling attribute methods. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-dom-node-dataset.md

"eslint-plugin-unicorn/prefer-dom-node-remove"?: _ ¶

Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-dom-node-remove.md

"eslint-plugin-unicorn/prefer-dom-node-text-content"?: _ ¶

Prefer `.textContent` over `.innerText`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-dom-node-text-content.md

"eslint-plugin-unicorn/prefer-event-target"?: _ ¶

Prefer `EventTarget` over `EventEmitter`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-event-target.md

"eslint-plugin-unicorn/prefer-export-from"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreUsedVariables?: bool
			...
		},
		...
	]
])
¶

Prefer `export…from` when re-exporting. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-export-from.md

"eslint-plugin-unicorn/prefer-includes"?: _ ¶

Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-includes.md

"eslint-plugin-unicorn/prefer-json-parse-buffer"?: _ ¶

Prefer reading a JSON file as a buffer. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-json-parse-buffer.md

"eslint-plugin-unicorn/prefer-keyboard-event-key"?: _ ¶

Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-keyboard-event-key.md

"eslint-plugin-unicorn/prefer-logical-operator-over-ternary"?: _ ¶

Prefer using a logical operator over a ternary. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-logical-operator-over-ternary.md

"eslint-plugin-unicorn/prefer-math-trunc"?: _ ¶

Enforce the use of `Math.trunc` instead of bitwise operators. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-math-trunc.md

"eslint-plugin-unicorn/prefer-modern-dom-apis"?: _ ¶

Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-modern-dom-apis.md

"eslint-plugin-unicorn/prefer-modern-math-apis"?: _ ¶

Prefer modern `Math` APIs over legacy patterns. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-modern-math-apis.md

"eslint-plugin-unicorn/prefer-module"?: _ ¶

Prefer JavaScript modules (ESM) over CommonJS. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-module.md

"eslint-plugin-unicorn/prefer-native-coercion-functions"?: _ ¶

Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-native-coercion-functions.md

"eslint-plugin-unicorn/prefer-negative-index"?: _ ¶

Prefer negative index over `.length - index` when possible. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-negative-index.md

"eslint-plugin-unicorn/prefer-node-protocol"?: _ ¶

Prefer using the `node:` protocol when importing Node.js builtin modules. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-node-protocol.md

"eslint-plugin-unicorn/prefer-number-properties"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkInfinity?: bool
			checkNaN?:      bool
			...
		},
		...
	]
])
¶

Prefer `Number` static properties over global ones. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-number-properties.md

"eslint-plugin-unicorn/prefer-object-from-entries"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			functions?: list.UniqueItems()
			...
		},
		...
	]
])
¶

Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-object-from-entries.md

"eslint-plugin-unicorn/prefer-optional-catch-binding"?: _ ¶

Prefer omitting the `catch` binding parameter. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-optional-catch-binding.md

"eslint-plugin-unicorn/prefer-prototype-methods"?: _ ¶

Prefer borrowing methods from the prototype instead of the instance. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-prototype-methods.md

"eslint-plugin-unicorn/prefer-query-selector"?: _ ¶

Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-query-selector.md

"eslint-plugin-unicorn/prefer-reflect-apply"?: _ ¶

Prefer `Reflect.apply()` over `Function#apply()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-reflect-apply.md

"eslint-plugin-unicorn/prefer-regexp-test"?: _ ¶

Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-regexp-test.md

"eslint-plugin-unicorn/prefer-set-has"?: _ ¶

Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-set-has.md

"eslint-plugin-unicorn/prefer-set-size"?: _ ¶

Prefer using `Set#size` instead of `Array#length`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-set-size.md

"eslint-plugin-unicorn/prefer-spread"?: _ ¶

Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split(”)`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-spread.md

"eslint-plugin-unicorn/prefer-string-raw"?: _ ¶

Prefer using the `String.raw` tag to avoid escaping `\`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-string-raw.md

"eslint-plugin-unicorn/prefer-string-replace-all"?: _ ¶

Prefer `String#replaceAll()` over regex searches with the global flag. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-string-replace-all.md

"eslint-plugin-unicorn/prefer-string-slice"?: _ ¶

Prefer `String#slice()` over `String#substr()` and `String#substring()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-string-slice.md

"eslint-plugin-unicorn/prefer-string-starts-ends-with"?: _ ¶

Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-string-starts-ends-with.md

"eslint-plugin-unicorn/prefer-string-trim-start-end"?: _ ¶

Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-string-trim-start-end.md

"eslint-plugin-unicorn/prefer-structured-clone"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			functions?: list.UniqueItems()
			...
		},
		...
	]
])
¶

Prefer using `structuredClone` to create a deep clone. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-structured-clone.md

"eslint-plugin-unicorn/prefer-switch"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			minimumCases?:     int & >=2
			emptyDefaultCase?: "no-default-comment" | "do-nothing-comment" | "no-default-case"
			...
		},
		...
	]
])
¶

Prefer `switch` over multiple `else-if`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-switch.md

"eslint-plugin-unicorn/prefer-ternary"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Prefer ternary expressions over simple `if-else` statements. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-ternary.md

"eslint-plugin-unicorn/prefer-top-level-await"?: _ ¶

Prefer top-level await over top-level promises and async function calls. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-top-level-await.md

"eslint-plugin-unicorn/prefer-type-error"?: _ ¶

Enforce throwing `TypeError` in type checking conditions. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prefer-type-error.md

"eslint-plugin-unicorn/prevent-abbreviations"?: _ ¶

Prevent abbreviations. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/prevent-abbreviations.md

"eslint-plugin-unicorn/relative-url-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent relative URL style. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/relative-url-style.md

"eslint-plugin-unicorn/require-array-join-separator"?: _ ¶

Enforce using the separator argument with `Array#join()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/require-array-join-separator.md

"eslint-plugin-unicorn/require-number-to-fixed-digits-argument"?: _ ¶

Enforce using the digits argument with `Number#toFixed()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/require-number-to-fixed-digits-argument.md

"eslint-plugin-unicorn/require-post-message-target-origin"?: _ ¶

Enforce using the `targetOrigin` argument with `window.postMessage()`. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/require-post-message-target-origin.md

"eslint-plugin-unicorn/string-content"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			patterns?: [string]: matchN(
				>=1,
				[
					string,
					close({
						suggest!: string
						fix?:     bool
						message?: string
					})
				]
			)
			...
		},
		...
	]
])
¶

Enforce better string content. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/string-content.md

"eslint-plugin-unicorn/switch-case-braces"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent brace style for `case` clauses. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/switch-case-braces.md

"eslint-plugin-unicorn/template-indent"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			indent?:    matchN(1, [=~"^\\s+$", int & >=1])
			tags?:      list.UniqueItems() & [...string]
			functions?: list.UniqueItems() & [...string]
			selectors?: list.UniqueItems() & [...string]
			comments?:  list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

Fix whitespace-insensitive template indentation. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/template-indent.md

"eslint-plugin-unicorn/text-encoding-identifier-case"?: _ ¶

Enforce consistent case for text encoding identifiers. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/text-encoding-identifier-case.md

"eslint-plugin-unicorn/throw-new-error"?: _ ¶

Require `new` when creating an error. https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/rules/throw-new-error.md

"eslint-plugin-unicorn/import-index"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#import-index

"eslint-plugin-unicorn/no-array-instanceof"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#no-array-instanceof

"eslint-plugin-unicorn/no-fn-reference-in-iterator"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#no-fn-reference-in-iterator

"eslint-plugin-unicorn/no-reduce"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#no-reduce

"eslint-plugin-unicorn/no-unsafe-regex"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#no-unsafe-regex

"eslint-plugin-unicorn/prefer-dataset"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-dataset

"eslint-plugin-unicorn/prefer-event-key"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-event-key

"eslint-plugin-unicorn/prefer-exponentiation-operator"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-exponentiation-operator

"eslint-plugin-unicorn/prefer-flat-map"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-flat-map

"eslint-plugin-unicorn/prefer-node-append"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-node-append

"eslint-plugin-unicorn/prefer-node-remove"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-node-remove

"eslint-plugin-unicorn/prefer-object-has-own"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-object-has-own

"eslint-plugin-unicorn/prefer-replace-all"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-replace-all

"eslint-plugin-unicorn/prefer-starts-ends-with"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-starts-ends-with

"eslint-plugin-unicorn/prefer-text-content"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-text-content

"eslint-plugin-unicorn/prefer-trim-start-end"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#prefer-trim-start-end

"eslint-plugin-unicorn/regex-shorthand"?: _ ¶

https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v54.0.0/docs/deprecated-rules.md#regex-shorthand

"eslint-plugin-vue/array-bracket-newline"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce linebreaks after opening and before closing array brackets in `<template>` https://eslint.vuejs.org/rules/array-bracket-newline.html

"eslint-plugin-vue/array-bracket-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent spacing inside array brackets in `<template>` https://eslint.vuejs.org/rules/array-bracket-spacing.html

"eslint-plugin-vue/array-element-newline"?: _ ¶

Enforce line breaks after each array element in `<template>` https://eslint.vuejs.org/rules/array-element-newline.html

"eslint-plugin-vue/arrow-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			before?: bool
			after?:  bool
			...
		},
		...
	]
])
¶

Enforce consistent spacing before and after the arrow in arrow functions in `<template>` https://eslint.vuejs.org/rules/arrow-spacing.html

"eslint-plugin-vue/attribute-hyphenation"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce attribute naming style on custom components in template https://eslint.vuejs.org/rules/attribute-hyphenation.html

"eslint-plugin-vue/attributes-order"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			order?: list.UniqueItems() & [
				...matchN(
					>=1,
					[
						"DEFINITION" |
							"LIST_RENDERING" |
							"CONDITIONALS" |
							"RENDER_MODIFIERS" |
							"GLOBAL" |
							"UNIQUE" |
							"SLOT" |
							"TWO_WAY_BINDING" |
							"OTHER_DIRECTIVES" |
							"OTHER_ATTR" |
							"ATTR_STATIC" |
							"ATTR_DYNAMIC" |
							"ATTR_SHORTHAND_BOOL" |
							"EVENTS" |
							"CONTENT",
						[
							..."DEFINITION" |
								"LIST_RENDERING" |
								"CONDITIONALS" |
								"RENDER_MODIFIERS" |
								"GLOBAL" |
								"UNIQUE" |
								"SLOT" |
								"TWO_WAY_BINDING" |
								"OTHER_DIRECTIVES" |
								"OTHER_ATTR" |
								"ATTR_STATIC" |
								"ATTR_DYNAMIC" |
								"ATTR_SHORTHAND_BOOL" |
								"EVENTS" |
								"CONTENT",
						],
					],
				),
			]
			alphabetical?: bool
			...
		},
		...
	]
])
¶

enforce order of attributes https://eslint.vuejs.org/rules/attributes-order.html

"eslint-plugin-vue/block-lang"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

disallow use other than available `lang` https://eslint.vuejs.org/rules/block-lang.html

"eslint-plugin-vue/block-order"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			order?: list.UniqueItems() & [...matchN(>=1, [string, list.UniqueItems() & [...string]])]
			...
		},
		...
	]
])
¶

enforce order of component top-level elements https://eslint.vuejs.org/rules/block-order.html

"eslint-plugin-vue/block-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Disallow or enforce spaces inside of blocks after opening block and before closing block in `<template>` https://eslint.vuejs.org/rules/block-spacing.html

"eslint-plugin-vue/block-tag-newline"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			singleline?:    "always" | "never" | "consistent" | "ignore"
			multiline?:     "always" | "never" | "consistent" | "ignore"
			maxEmptyLines?: >=0
			blocks?: close({
				[=~"^(?:\\S+)$"]: close({
					singleline?:    "always" | "never" | "consistent" | "ignore"
					multiline?:     "always" | "never" | "consistent" | "ignore"
					maxEmptyLines?: >=0
				})
			})
			...
		},
		...
	]
])
¶

enforce line breaks after opening and before closing block-level tags https://eslint.vuejs.org/rules/block-tag-newline.html

"eslint-plugin-vue/brace-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent brace style for blocks in `<template>` https://eslint.vuejs.org/rules/brace-style.html

"eslint-plugin-vue/camelcase"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreDestructuring?: bool
			ignoreImports?:       bool
			ignoreGlobals?:       bool
			properties?:          "always" | "never"
			allow?:               list.UniqueItems() & [...string] & [...]
			...
		},
		...
	]
])
¶

Enforce camelcase naming convention in `<template>` https://eslint.vuejs.org/rules/camelcase.html

"eslint-plugin-vue/comma-dangle"?: _ ¶

Require or disallow trailing commas in `<template>` https://eslint.vuejs.org/rules/comma-dangle.html

"eslint-plugin-vue/comma-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			before?: bool
			after?:  bool
			...
		},
		...
	]
])
¶

Enforce consistent spacing before and after commas in `<template>` https://eslint.vuejs.org/rules/comma-spacing.html

"eslint-plugin-vue/comma-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent comma style in `<template>` https://eslint.vuejs.org/rules/comma-style.html

"eslint-plugin-vue/comment-directive"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			reportUnusedDisableDirectives?: bool
			...
		},
		...
	]
])
¶

support comment-directives in `<template>` https://eslint.vuejs.org/rules/comment-directive.html

"eslint-plugin-vue/component-api-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce component API style https://eslint.vuejs.org/rules/component-api-style.html

"eslint-plugin-vue/component-definition-name-casing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce specific casing for component definition name https://eslint.vuejs.org/rules/component-definition-name-casing.html

"eslint-plugin-vue/component-name-in-template-casing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce specific casing for the component naming style in template https://eslint.vuejs.org/rules/component-name-in-template-casing.html

"eslint-plugin-vue/component-options-name-casing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce the casing of component name in `components` options https://eslint.vuejs.org/rules/component-options-name-casing.html

"eslint-plugin-vue/component-tags-order"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			order?: list.UniqueItems() & [...matchN(>=1, [string, list.UniqueItems() & [...string]])]
			...
		},
		...
	]
])
¶

enforce order of component top-level elements https://eslint.vuejs.org/rules/component-tags-order.html

"eslint-plugin-vue/custom-event-name-casing"?: _ ¶

enforce specific casing for custom event name https://eslint.vuejs.org/rules/custom-event-name-casing.html

"eslint-plugin-vue/define-emits-declaration"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce declaration style of `defineEmits` https://eslint.vuejs.org/rules/define-emits-declaration.html

"eslint-plugin-vue/define-macros-order"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			order?: list.UniqueItems() & [
				..."defineEmits" | "defineProps" | "defineOptions" | "defineSlots" | "defineModel",
			]
			defineExposeLast?: bool
			...
		},
		...
	]
])
¶

enforce order of `defineEmits` and `defineProps` compiler macros https://eslint.vuejs.org/rules/define-macros-order.html

"eslint-plugin-vue/define-props-declaration"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce declaration style of `defineProps` https://eslint.vuejs.org/rules/define-props-declaration.html

"eslint-plugin-vue/dot-location"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent newlines before and after dots in `<template>` https://eslint.vuejs.org/rules/dot-location.html

"eslint-plugin-vue/dot-notation"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowKeywords?: bool
			allowPattern?:  string
			...
		},
		...
	]
])
¶

Enforce dot notation whenever possible in `<template>` https://eslint.vuejs.org/rules/dot-notation.html

"eslint-plugin-vue/enforce-style-attribute"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: list.UniqueItems() & [_, ...] & [..."plain" | "scoped" | "module"]
			...
		},
		...
	]
])
¶

enforce or forbid the use of the `scoped` and `module` attributes in SFC top level style tags https://eslint.vuejs.org/rules/enforce-style-attribute.html

"eslint-plugin-vue/eqeqeq"?: _ ¶

Require the use of `===` and `!==` in `<template>` https://eslint.vuejs.org/rules/eqeqeq.html

"eslint-plugin-vue/first-attribute-linebreak"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			multiline?:  "below" | "beside" | "ignore"
			singleline?: "below" | "beside" | "ignore"
			...
		},
		...
	]
])
¶

enforce the location of first attribute https://eslint.vuejs.org/rules/first-attribute-linebreak.html

"eslint-plugin-vue/func-call-spacing"?: _ ¶

Require or disallow spacing between function identifiers and their invocations in `<template>` https://eslint.vuejs.org/rules/func-call-spacing.html

"eslint-plugin-vue/html-button-has-type"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			button?: bool
			submit?: bool
			reset?:  bool
			...
		},
		...
	]
])
¶

disallow usage of button without an explicit type attribute https://eslint.vuejs.org/rules/html-button-has-type.html

"eslint-plugin-vue/html-closing-bracket-newline"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			singleline?: "always" | "never"
			multiline?:  "always" | "never"
			selfClosingTag?: struct.MinFields(1) & close({
				singleline?: "always" | "never"
				multiline?:  "always" | "never"
			})
			...
		},
		...
	]
])
¶

require or disallow a line break before tag's closing brackets https://eslint.vuejs.org/rules/html-closing-bracket-newline.html

"eslint-plugin-vue/html-closing-bracket-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			startTag?:       "always" | "never"
			endTag?:         "always" | "never"
			selfClosingTag?: "always" | "never"
			...
		},
		...
	]
])
¶

require or disallow a space before tag's closing brackets https://eslint.vuejs.org/rules/html-closing-bracket-spacing.html

"eslint-plugin-vue/html-comment-content-newline"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce unified line brake in HTML comments https://eslint.vuejs.org/rules/html-comment-content-newline.html

"eslint-plugin-vue/html-comment-content-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce unified spacing in HTML comments https://eslint.vuejs.org/rules/html-comment-content-spacing.html

"eslint-plugin-vue/html-comment-indent"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce consistent indentation in HTML comments https://eslint.vuejs.org/rules/html-comment-indent.html

"eslint-plugin-vue/html-end-tags"?: _ ¶

enforce end tag style https://eslint.vuejs.org/rules/html-end-tags.html

"eslint-plugin-vue/html-indent"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce consistent indentation in `<template>` https://eslint.vuejs.org/rules/html-indent.html

"eslint-plugin-vue/html-quotes"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce quotes style of HTML attributes https://eslint.vuejs.org/rules/html-quotes.html

"eslint-plugin-vue/html-self-closing"?: _ ¶

enforce self-closing style https://eslint.vuejs.org/rules/html-self-closing.html

"eslint-plugin-vue/jsx-uses-vars"?: _ ¶

prevent variables used in JSX to be marked as unused https://eslint.vuejs.org/rules/jsx-uses-vars.html

"eslint-plugin-vue/key-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent spacing between keys and values in object literal properties in `<template>` https://eslint.vuejs.org/rules/key-spacing.html

"eslint-plugin-vue/keyword-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			before?: bool
			after?:  bool
			overrides?: close({
				abstract?: close({
					before?: bool
					after?:  bool
				})
				as?: close({
					before?: bool
					after?:  bool
				})
				async?: close({
					before?: bool
					after?:  bool
				})
				await?: close({
					before?: bool
					after?:  bool
				})
				boolean?: close({
					before?: bool
					after?:  bool
				})
				break?: close({
					before?: bool
					after?:  bool
				})
				byte?: close({
					before?: bool
					after?:  bool
				})
				case?: close({
					before?: bool
					after?:  bool
				})
				catch?: close({
					before?: bool
					after?:  bool
				})
				char?: close({
					before?: bool
					after?:  bool
				})
				class?: close({
					before?: bool
					after?:  bool
				})
				const?: close({
					before?: bool
					after?:  bool
				})
				continue?: close({
					before?: bool
					after?:  bool
				})
				debugger?: close({
					before?: bool
					after?:  bool
				})
				default?: close({
					before?: bool
					after?:  bool
				})
				delete?: close({
					before?: bool
					after?:  bool
				})
				do?: close({
					before?: bool
					after?:  bool
				})
				double?: close({
					before?: bool
					after?:  bool
				})
				else?: close({
					before?: bool
					after?:  bool
				})
				enum?: close({
					before?: bool
					after?:  bool
				})
				export?: close({
					before?: bool
					after?:  bool
				})
				extends?: close({
					before?: bool
					after?:  bool
				})
				false?: close({
					before?: bool
					after?:  bool
				})
				final?: close({
					before?: bool
					after?:  bool
				})
				finally?: close({
					before?: bool
					after?:  bool
				})
				float?: close({
					before?: bool
					after?:  bool
				})
				for?: close({
					before?: bool
					after?:  bool
				})
				from?: close({
					before?: bool
					after?:  bool
				})
				function?: close({
					before?: bool
					after?:  bool
				})
				get?: close({
					before?: bool
					after?:  bool
				})
				goto?: close({
					before?: bool
					after?:  bool
				})
				if?: close({
					before?: bool
					after?:  bool
				})
				implements?: close({
					before?: bool
					after?:  bool
				})
				import?: close({
					before?: bool
					after?:  bool
				})
				in?: close({
					before?: bool
					after?:  bool
				})
				instanceof?: close({
					before?: bool
					after?:  bool
				})
				int?: close({
					before?: bool
					after?:  bool
				})
				interface?: close({
					before?: bool
					after?:  bool
				})
				let?: close({
					before?: bool
					after?:  bool
				})
				long?: close({
					before?: bool
					after?:  bool
				})
				native?: close({
					before?: bool
					after?:  bool
				})
				new?: close({
					before?: bool
					after?:  bool
				})
				null?: close({
					before?: bool
					after?:  bool
				})
				of?: close({
					before?: bool
					after?:  bool
				})
				package?: close({
					before?: bool
					after?:  bool
				})
				private?: close({
					before?: bool
					after?:  bool
				})
				protected?: close({
					before?: bool
					after?:  bool
				})
				public?: close({
					before?: bool
					after?:  bool
				})
				return?: close({
					before?: bool
					after?:  bool
				})
				set?: close({
					before?: bool
					after?:  bool
				})
				short?: close({
					before?: bool
					after?:  bool
				})
				static?: close({
					before?: bool
					after?:  bool
				})
				super?: close({
					before?: bool
					after?:  bool
				})
				switch?: close({
					before?: bool
					after?:  bool
				})
				synchronized?: close({
					before?: bool
					after?:  bool
				})
				this?: close({
					before?: bool
					after?:  bool
				})
				throw?: close({
					before?: bool
					after?:  bool
				})
				throws?: close({
					before?: bool
					after?:  bool
				})
				transient?: close({
					before?: bool
					after?:  bool
				})
				true?: close({
					before?: bool
					after?:  bool
				})
				try?: close({
					before?: bool
					after?:  bool
				})
				typeof?: close({
					before?: bool
					after?:  bool
				})
				var?: close({
					before?: bool
					after?:  bool
				})
				void?: close({
					before?: bool
					after?:  bool
				})
				volatile?: close({
					before?: bool
					after?:  bool
				})
				while?: close({
					before?: bool
					after?:  bool
				})
				with?: close({
					before?: bool
					after?:  bool
				})
				yield?: close({
					before?: bool
					after?:  bool
				})
			})
			...
		},
		...
	]
])
¶

Enforce consistent spacing before and after keywords in `<template>` https://eslint.vuejs.org/rules/keyword-spacing.html

"eslint-plugin-vue/match-component-file-name"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			extensions?:      list.UniqueItems() & [...string]
			shouldMatchCase?: bool
			...
		},
		...
	]
])
¶

require component name property to match its file name https://eslint.vuejs.org/rules/match-component-file-name.html

"eslint-plugin-vue/match-component-import-name"?: _ ¶

require the registered component name to match the imported component name https://eslint.vuejs.org/rules/match-component-import-name.html

"eslint-plugin-vue/max-attributes-per-line"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			singleline?: matchN(>=1, [>=1, close({max?: >=1})])
			multiline?:  matchN(>=1, [>=1, close({max?: >=1})])
			...
		},
		...
	]
])
¶

enforce the maximum number of attributes per line https://eslint.vuejs.org/rules/max-attributes-per-line.html

"eslint-plugin-vue/max-len"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce a maximum line length in `.vue` files https://eslint.vuejs.org/rules/max-len.html

"eslint-plugin-vue/max-lines-per-block"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			style?:          int & >=1
			template?:       int & >=1
			script?:         int & >=1
			skipBlankLines?: bool
			...
		},
		...
	]
])
¶

enforce maximum number of lines in Vue SFC blocks https://eslint.vuejs.org/rules/max-lines-per-block.html

"eslint-plugin-vue/multi-word-component-names"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignores?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

require component names to be always multi-word https://eslint.vuejs.org/rules/multi-word-component-names.html

"eslint-plugin-vue/multiline-html-element-content-newline"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreWhenEmpty?: bool
			ignores?:         list.UniqueItems() & [...string]
			allowEmptyLines?: bool
			...
		},
		...
	]
])
¶

require a line break before and after the contents of a multiline element https://eslint.vuejs.org/rules/multiline-html-element-content-newline.html

"eslint-plugin-vue/multiline-ternary"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce newlines between operands of ternary expressions in `<template>` https://eslint.vuejs.org/rules/multiline-ternary.html

"eslint-plugin-vue/mustache-interpolation-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce unified spacing in mustache interpolations https://eslint.vuejs.org/rules/mustache-interpolation-spacing.html

"eslint-plugin-vue/new-line-between-multi-line-property"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			minLineOfMultilineProperty?: >=2
			...
		},
		...
	]
])
¶

enforce new lines between multi-line properties in Vue components https://eslint.vuejs.org/rules/new-line-between-multi-line-property.html

"eslint-plugin-vue/next-tick-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce Promise or callback style in `nextTick` https://eslint.vuejs.org/rules/next-tick-style.html

"eslint-plugin-vue/no-arrow-functions-in-watch"?: _ ¶

disallow using arrow functions to define watcher https://eslint.vuejs.org/rules/no-arrow-functions-in-watch.html

"eslint-plugin-vue/no-async-in-computed-properties"?: _ ¶

disallow asynchronous actions in computed properties https://eslint.vuejs.org/rules/no-async-in-computed-properties.html

"eslint-plugin-vue/no-bare-strings-in-template"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowlist?:  list.UniqueItems() & [...string]
			attributes?: close({[=~"^(?:\\S+|/.*/[a-z]*)$"]: list.UniqueItems() & [...string]})
			directives?: list.UniqueItems() & [...=~"^v-"]
			...
		},
		...
	]
])
¶

disallow the use of bare strings in `<template>` https://eslint.vuejs.org/rules/no-bare-strings-in-template.html

"eslint-plugin-vue/no-boolean-default"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

disallow boolean defaults https://eslint.vuejs.org/rules/no-boolean-default.html

"eslint-plugin-vue/no-child-content"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			additionalDirectives?: list.UniqueItems() & [_, ...] & [...string]
			...
		},
		...
	]
])
¶

disallow element's child contents which would be overwritten by a directive like `v-html` or `v-text` https://eslint.vuejs.org/rules/no-child-content.html

"eslint-plugin-vue/no-computed-properties-in-data"?: _ ¶

disallow accessing computed properties in `data`. https://eslint.vuejs.org/rules/no-computed-properties-in-data.html

"eslint-plugin-vue/no-console"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: list.UniqueItems() & [...string] & [_, ...]
			...
		},
		...
	]
])
¶

Disallow the use of `console` in `<template>` https://eslint.vuejs.org/rules/no-console.html

"eslint-plugin-vue/no-constant-condition"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkLoops?: bool
			...
		},
		...
	]
])
¶

Disallow constant expressions in conditions in `<template>` https://eslint.vuejs.org/rules/no-constant-condition.html

"eslint-plugin-vue/no-custom-modifiers-on-v-model"?: _ ¶

disallow custom modifiers on v-model used on the component https://eslint.vuejs.org/rules/no-custom-modifiers-on-v-model.html

"eslint-plugin-vue/no-deprecated-data-object-declaration"?: _ ¶

disallow using deprecated object declaration on data (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-data-object-declaration.html

"eslint-plugin-vue/no-deprecated-destroyed-lifecycle"?: _ ¶

disallow using deprecated `destroyed` and `beforeDestroy` lifecycle hooks (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-destroyed-lifecycle.html

"eslint-plugin-vue/no-deprecated-dollar-listeners-api"?: _ ¶

disallow using deprecated `$listeners` (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-dollar-listeners-api.html

"eslint-plugin-vue/no-deprecated-dollar-scopedslots-api"?: _ ¶

disallow using deprecated `$scopedSlots` (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-dollar-scopedslots-api.html

"eslint-plugin-vue/no-deprecated-events-api"?: _ ¶

disallow using deprecated events api (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-events-api.html

"eslint-plugin-vue/no-deprecated-filter"?: _ ¶

disallow using deprecated filters syntax (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-filter.html

"eslint-plugin-vue/no-deprecated-functional-template"?: _ ¶

disallow using deprecated the `functional` template (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-functional-template.html

"eslint-plugin-vue/no-deprecated-html-element-is"?: _ ¶

disallow using deprecated the `is` attribute on HTML elements (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-html-element-is.html

"eslint-plugin-vue/no-deprecated-inline-template"?: _ ¶

disallow using deprecated `inline-template` attribute (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-inline-template.html

"eslint-plugin-vue/no-deprecated-model-definition"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowVue3Compat?: bool
			...
		},
		...
	]
])
¶

disallow deprecated `model` definition (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-model-definition.html

"eslint-plugin-vue/no-deprecated-props-default-this"?: _ ¶

disallow deprecated `this` access in props default function (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-props-default-this.html

"eslint-plugin-vue/no-deprecated-router-link-tag-prop"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			components?: list.UniqueItems() & [...string] & [_, ...]
			...
		},
		...
	]
])
¶

disallow using deprecated `tag` property on `RouterLink` (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-router-link-tag-prop.html

"eslint-plugin-vue/no-deprecated-scope-attribute"?: _ ¶

disallow deprecated `scope` attribute (in Vue.js 2.5.0+) https://eslint.vuejs.org/rules/no-deprecated-scope-attribute.html

"eslint-plugin-vue/no-deprecated-slot-attribute"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignore?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

disallow deprecated `slot` attribute (in Vue.js 2.6.0+) https://eslint.vuejs.org/rules/no-deprecated-slot-attribute.html

"eslint-plugin-vue/no-deprecated-slot-scope-attribute"?: _ ¶

disallow deprecated `slot-scope` attribute (in Vue.js 2.6.0+) https://eslint.vuejs.org/rules/no-deprecated-slot-scope-attribute.html

"eslint-plugin-vue/no-deprecated-v-bind-sync"?: _ ¶

disallow use of deprecated `.sync` modifier on `v-bind` directive (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-v-bind-sync.html

"eslint-plugin-vue/no-deprecated-v-is"?: _ ¶

disallow deprecated `v-is` directive (in Vue.js 3.1.0+) https://eslint.vuejs.org/rules/no-deprecated-v-is.html

"eslint-plugin-vue/no-deprecated-v-on-native-modifier"?: _ ¶

disallow using deprecated `.native` modifiers (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-v-on-native-modifier.html

"eslint-plugin-vue/no-deprecated-v-on-number-modifiers"?: _ ¶

disallow using deprecated number (keycode) modifiers (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-v-on-number-modifiers.html

"eslint-plugin-vue/no-deprecated-vue-config-keycodes"?: _ ¶

disallow using deprecated `Vue.config.keyCodes` (in Vue.js 3.0.0+) https://eslint.vuejs.org/rules/no-deprecated-vue-config-keycodes.html

"eslint-plugin-vue/no-dupe-keys"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			groups?: [...]
			...
		},
		...
	]
])
¶

disallow duplication of field names https://eslint.vuejs.org/rules/no-dupe-keys.html

"eslint-plugin-vue/no-dupe-v-else-if"?: _ ¶

disallow duplicate conditions in `v-if` / `v-else-if` chains https://eslint.vuejs.org/rules/no-dupe-v-else-if.html

"eslint-plugin-vue/no-duplicate-attr-inheritance"?: _ ¶

enforce `inheritAttrs` to be set to `false` when using `v-bind="$attrs"` https://eslint.vuejs.org/rules/no-duplicate-attr-inheritance.html

"eslint-plugin-vue/no-duplicate-attributes"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowCoexistClass?: bool
			allowCoexistStyle?: bool
			...
		},
		...
	]
])
¶

disallow duplication of attributes https://eslint.vuejs.org/rules/no-duplicate-attributes.html

"eslint-plugin-vue/no-empty-component-block"?: _ ¶

disallow the `<template>` `<script>` `<style>` block to be empty https://eslint.vuejs.org/rules/no-empty-component-block.html

"eslint-plugin-vue/no-empty-pattern"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowObjectPatternsAsParameters?: bool
			...
		},
		...
	]
])
¶

Disallow empty destructuring patterns in `<template>` https://eslint.vuejs.org/rules/no-empty-pattern.html

"eslint-plugin-vue/no-export-in-script-setup"?: _ ¶

disallow `export` in `<script setup>` https://eslint.vuejs.org/rules/no-export-in-script-setup.html

"eslint-plugin-vue/no-expose-after-await"?: _ ¶

disallow asynchronously registered `expose` https://eslint.vuejs.org/rules/no-expose-after-await.html

"eslint-plugin-vue/no-extra-parens"?: _ ¶

Disallow unnecessary parentheses in `<template>` https://eslint.vuejs.org/rules/no-extra-parens.html

"eslint-plugin-vue/no-invalid-model-keys"?: _ ¶

require valid keys in model option https://eslint.vuejs.org/rules/no-invalid-model-keys.html

"eslint-plugin-vue/no-irregular-whitespace"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			skipComments?:            bool
			skipStrings?:             bool
			skipTemplates?:           bool
			skipRegExps?:             bool
			skipHTMLAttributeValues?: bool
			skipHTMLTextContents?:    bool
			...
		},
		...
	]
])
¶

disallow irregular whitespace in `.vue` files https://eslint.vuejs.org/rules/no-irregular-whitespace.html

"eslint-plugin-vue/no-lifecycle-after-await"?: _ ¶

disallow asynchronously registered lifecycle hooks https://eslint.vuejs.org/rules/no-lifecycle-after-await.html

"eslint-plugin-vue/no-lone-template"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreAccessible?: bool
			...
		},
		...
	]
])
¶

disallow unnecessary `<template>` https://eslint.vuejs.org/rules/no-lone-template.html

"eslint-plugin-vue/no-loss-of-precision"?: _ ¶

Disallow literal numbers that lose precision in `<template>` https://eslint.vuejs.org/rules/no-loss-of-precision.html

"eslint-plugin-vue/no-multi-spaces"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreProperties?: bool
			...
		},
		...
	]
])
¶

disallow multiple spaces https://eslint.vuejs.org/rules/no-multi-spaces.html

"eslint-plugin-vue/no-multiple-objects-in-class"?: _ ¶

disallow to pass multiple objects into array to class https://eslint.vuejs.org/rules/no-multiple-objects-in-class.html

"eslint-plugin-vue/no-multiple-slot-args"?: _ ¶

disallow to pass multiple arguments to scoped slots https://eslint.vuejs.org/rules/no-multiple-slot-args.html

"eslint-plugin-vue/no-multiple-template-root"?: _ ¶

disallow adding multiple root nodes to the template https://eslint.vuejs.org/rules/no-multiple-template-root.html

"eslint-plugin-vue/no-mutating-props"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			shallowOnly?: bool
			...
		},
		...
	]
])
¶

disallow mutation of component props https://eslint.vuejs.org/rules/no-mutating-props.html

"eslint-plugin-vue/no-parsing-error"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			"abrupt-closing-of-empty-comment"?:                       bool
			"absence-of-digits-in-numeric-character-reference"?:      bool
			"cdata-in-html-content"?:                                 bool
			"character-reference-outside-unicode-range"?:             bool
			"control-character-in-input-stream"?:                     bool
			"control-character-reference"?:                           bool
			"eof-before-tag-name"?:                                   bool
			"eof-in-cdata"?:                                          bool
			"eof-in-comment"?:                                        bool
			"eof-in-tag"?:                                            bool
			"incorrectly-closed-comment"?:                            bool
			"incorrectly-opened-comment"?:                            bool
			"invalid-first-character-of-tag-name"?:                   bool
			"missing-attribute-value"?:                               bool
			"missing-end-tag-name"?:                                  bool
			"missing-semicolon-after-character-reference"?:           bool
			"missing-whitespace-between-attributes"?:                 bool
			"nested-comment"?:                                        bool
			"noncharacter-character-reference"?:                      bool
			"noncharacter-in-input-stream"?:                          bool
			"null-character-reference"?:                              bool
			"surrogate-character-reference"?:                         bool
			"surrogate-in-input-stream"?:                             bool
			"unexpected-character-in-attribute-name"?:                bool
			"unexpected-character-in-unquoted-attribute-value"?:      bool
			"unexpected-equals-sign-before-attribute-name"?:          bool
			"unexpected-null-character"?:                             bool
			"unexpected-question-mark-instead-of-tag-name"?:          bool
			"unexpected-solidus-in-tag"?:                             bool
			"unknown-named-character-reference"?:                     bool
			"end-tag-with-attributes"?:                               bool
			"duplicate-attribute"?:                                   bool
			"end-tag-with-trailing-solidus"?:                         bool
			"non-void-html-element-start-tag-with-trailing-solidus"?: bool
			"x-invalid-end-tag"?:                                     bool
			"x-invalid-namespace"?:                                   bool
			...
		},
		...
	]
])
¶

disallow parsing errors in `<template>` https://eslint.vuejs.org/rules/no-parsing-error.html

"eslint-plugin-vue/no-potential-component-option-typo"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			presets?:   list.UniqueItems() & [..."all" | "vue" | "vue-router" | "nuxt"] & [...]
			custom?:    list.UniqueItems() & [...] & [...string]
			threshold?: >=1
			...
		},
		...
	]
])
¶

disallow a potential typo in your component property https://eslint.vuejs.org/rules/no-potential-component-option-typo.html

"eslint-plugin-vue/no-ref-as-operand"?: _ ¶

disallow use of value wrapped by `ref()` (Composition API) as an operand https://eslint.vuejs.org/rules/no-ref-as-operand.html

"eslint-plugin-vue/no-ref-object-destructure"?: _ ¶

disallow usages of ref objects that can lead to loss of reactivity https://eslint.vuejs.org/rules/no-ref-object-destructure.html

"eslint-plugin-vue/no-ref-object-reactivity-loss"?: _ ¶

disallow usages of ref objects that can lead to loss of reactivity https://eslint.vuejs.org/rules/no-ref-object-reactivity-loss.html

"eslint-plugin-vue/no-required-prop-with-default"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			autofix?: bool
			...
		},
		...
	]
])
¶

enforce props with default values to be optional https://eslint.vuejs.org/rules/no-required-prop-with-default.html

"eslint-plugin-vue/no-reserved-component-names"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			disallowVueBuiltInComponents?:  bool
			disallowVue3BuiltInComponents?: bool
			...
		},
		...
	]
])
¶

disallow the use of reserved names in component definitions https://eslint.vuejs.org/rules/no-reserved-component-names.html

"eslint-plugin-vue/no-reserved-keys"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			reserved?: [...]
			groups?:   [...]
			...
		},
		...
	]
])
¶

disallow overwriting reserved keys https://eslint.vuejs.org/rules/no-reserved-keys.html

"eslint-plugin-vue/no-reserved-props"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			vueVersion?: 2 | 3
			...
		},
		...
	]
])
¶

disallow reserved names in props https://eslint.vuejs.org/rules/no-reserved-props.html

"eslint-plugin-vue/no-restricted-block"?: _ ¶

disallow specific block https://eslint.vuejs.org/rules/no-restricted-block.html

"eslint-plugin-vue/no-restricted-call-after-await"?: _ ¶

disallow asynchronously called restricted methods https://eslint.vuejs.org/rules/no-restricted-call-after-await.html

"eslint-plugin-vue/no-restricted-class"?: _ ¶

disallow specific classes in Vue components https://eslint.vuejs.org/rules/no-restricted-class.html

"eslint-plugin-vue/no-restricted-component-names"?: _ ¶

disallow specific component names https://eslint.vuejs.org/rules/no-restricted-component-names.html

"eslint-plugin-vue/no-restricted-component-options"?: _ ¶

disallow specific component option https://eslint.vuejs.org/rules/no-restricted-component-options.html

"eslint-plugin-vue/no-restricted-custom-event"?: _ ¶

disallow specific custom event https://eslint.vuejs.org/rules/no-restricted-custom-event.html

"eslint-plugin-vue/no-restricted-html-elements"?: _ ¶

disallow specific HTML elements https://eslint.vuejs.org/rules/no-restricted-html-elements.html

"eslint-plugin-vue/no-restricted-props"?: _ ¶

disallow specific props https://eslint.vuejs.org/rules/no-restricted-props.html

"eslint-plugin-vue/no-restricted-static-attribute"?: _ ¶

disallow specific attribute https://eslint.vuejs.org/rules/no-restricted-static-attribute.html

"eslint-plugin-vue/no-restricted-syntax"?: _ ¶

Disallow specified syntax in `<template>` https://eslint.vuejs.org/rules/no-restricted-syntax.html

"eslint-plugin-vue/no-restricted-v-bind"?: _ ¶

disallow specific argument in `v-bind` https://eslint.vuejs.org/rules/no-restricted-v-bind.html

"eslint-plugin-vue/no-restricted-v-on"?: _ ¶

disallow specific argument in `v-on` https://eslint.vuejs.org/rules/no-restricted-v-on.html

"eslint-plugin-vue/no-root-v-if"?: _ ¶

disallow `v-if` directives on root element https://eslint.vuejs.org/rules/no-root-v-if.html

"eslint-plugin-vue/no-setup-props-destructure"?: _ ¶

disallow usages that lose the reactivity of `props` passed to `setup` https://eslint.vuejs.org/rules/no-setup-props-destructure.html

"eslint-plugin-vue/no-setup-props-reactivity-loss"?: _ ¶

disallow usages that lose the reactivity of `props` passed to `setup` https://eslint.vuejs.org/rules/no-setup-props-reactivity-loss.html

"eslint-plugin-vue/no-shared-component-data"?: _ ¶

enforce component's data property to be a function https://eslint.vuejs.org/rules/no-shared-component-data.html

"eslint-plugin-vue/no-side-effects-in-computed-properties"?: _ ¶

disallow side effects in computed properties https://eslint.vuejs.org/rules/no-side-effects-in-computed-properties.html

"eslint-plugin-vue/no-spaces-around-equal-signs-in-attribute"?: _ ¶

disallow spaces around equal signs in attribute https://eslint.vuejs.org/rules/no-spaces-around-equal-signs-in-attribute.html

"eslint-plugin-vue/no-sparse-arrays"?: _ ¶

Disallow sparse arrays in `<template>` https://eslint.vuejs.org/rules/no-sparse-arrays.html

"eslint-plugin-vue/no-static-inline-styles"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowBinding?: bool
			...
		},
		...
	]
])
¶

disallow static inline `style` attributes https://eslint.vuejs.org/rules/no-static-inline-styles.html

"eslint-plugin-vue/no-template-key"?: _ ¶

disallow `key` attribute on `<template>` https://eslint.vuejs.org/rules/no-template-key.html

"eslint-plugin-vue/no-template-shadow"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

disallow variable declarations from shadowing variables declared in the outer scope https://eslint.vuejs.org/rules/no-template-shadow.html

"eslint-plugin-vue/no-template-target-blank"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowReferrer?:       bool
			enforceDynamicLinks?: "always" | "never"
			...
		},
		...
	]
])
¶

disallow target="_blank" attribute without rel="noopener noreferrer" https://eslint.vuejs.org/rules/no-template-target-blank.html

"eslint-plugin-vue/no-textarea-mustache"?: _ ¶

disallow mustaches in `<textarea>` https://eslint.vuejs.org/rules/no-textarea-mustache.html

"eslint-plugin-vue/no-this-in-before-route-enter"?: _ ¶

disallow `this` usage in a `beforeRouteEnter` method https://eslint.vuejs.org/rules/no-this-in-before-route-enter.html

"eslint-plugin-vue/no-undef-components"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignorePatterns?: [...]
			...
		},
		...
	]
])
¶

disallow use of undefined components in `<template>` https://eslint.vuejs.org/rules/no-undef-components.html

"eslint-plugin-vue/no-undef-properties"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignores?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

disallow undefined properties https://eslint.vuejs.org/rules/no-undef-properties.html

"eslint-plugin-vue/no-unsupported-features"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			version?: string
			ignores?: list.UniqueItems() & [
				..."slot-scope-attribute" |
					"dynamic-directive-arguments" |
					"v-slot" |
					"script-setup" |
					"style-css-vars-injection" |
					"v-model-argument" |
					"v-model-custom-modifiers" |
					"v-is" |
					"is-attribute-with-vue-prefix" |
					"v-memo" |
					"v-bind-prop-modifier-shorthand" |
					"v-bind-attr-modifier" |
					"define-options" |
					"define-slots" |
					"define-model" |
					"v-bind-same-name-shorthand",
			]
			...
		},
		...
	]
])
¶

disallow unsupported Vue.js syntax on the specified version https://eslint.vuejs.org/rules/no-unsupported-features.html

"eslint-plugin-vue/no-unused-components"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreWhenBindingPresent?: bool
			...
		},
		...
	]
])
¶

disallow registering components that are not used inside templates https://eslint.vuejs.org/rules/no-unused-components.html

"eslint-plugin-vue/no-unused-emit-declarations"?: _ ¶

disallow unused emit declarations https://eslint.vuejs.org/rules/no-unused-emit-declarations.html

"eslint-plugin-vue/no-unused-properties"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			groups?:   list.UniqueItems() & [..."props" | "data" | "asyncData" | "computed" | "methods" | "setup"]
			deepData?: bool
			ignorePublicMembers?: bool
			unreferencedOptions?: list.UniqueItems() & [..."unknownMemberAsUnreferenced" | "returnAsUnreferenced"]
			...
		},
		...
	]
])
¶

disallow unused properties https://eslint.vuejs.org/rules/no-unused-properties.html

"eslint-plugin-vue/no-unused-refs"?: _ ¶

disallow unused refs https://eslint.vuejs.org/rules/no-unused-refs.html

"eslint-plugin-vue/no-unused-vars"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignorePattern?: string
			...
		},
		...
	]
])
¶

disallow unused variable definitions of v-for directives or scope attributes https://eslint.vuejs.org/rules/no-unused-vars.html

"eslint-plugin-vue/no-use-computed-property-like-method"?: _ ¶

disallow use computed property like method https://eslint.vuejs.org/rules/no-use-computed-property-like-method.html

"eslint-plugin-vue/no-use-v-else-with-v-for"?: _ ¶

disallow using `v-else-if`/`v-else` on the same element as `v-for` https://eslint.vuejs.org/rules/no-use-v-else-with-v-for.html

"eslint-plugin-vue/no-use-v-if-with-v-for"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowUsingIterationVar?: bool
			...
		},
		...
	]
])
¶

disallow using `v-if` on the same element as `v-for` https://eslint.vuejs.org/rules/no-use-v-if-with-v-for.html

"eslint-plugin-vue/no-useless-concat"?: _ ¶

Disallow unnecessary concatenation of literals or template literals in `<template>` https://eslint.vuejs.org/rules/no-useless-concat.html

"eslint-plugin-vue/no-useless-mustaches"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreIncludesComment?: bool
			ignoreStringEscape?:    bool
			...
		},
		...
	]
])
¶

disallow unnecessary mustache interpolations https://eslint.vuejs.org/rules/no-useless-mustaches.html

"eslint-plugin-vue/no-useless-template-attributes"?: _ ¶

disallow useless attribute on `<template>` https://eslint.vuejs.org/rules/no-useless-template-attributes.html

"eslint-plugin-vue/no-useless-v-bind"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreIncludesComment?: bool
			ignoreStringEscape?:    bool
			...
		},
		...
	]
])
¶

disallow unnecessary `v-bind` directives https://eslint.vuejs.org/rules/no-useless-v-bind.html

"eslint-plugin-vue/no-v-for-template-key-on-child"?: _ ¶

disallow key of `<template v-for>` placed on child elements https://eslint.vuejs.org/rules/no-v-for-template-key-on-child.html

"eslint-plugin-vue/no-v-for-template-key"?: _ ¶

disallow `key` attribute on `<template v-for>` https://eslint.vuejs.org/rules/no-v-for-template-key.html

"eslint-plugin-vue/no-v-html"?: _ ¶

disallow use of v-html to prevent XSS attack https://eslint.vuejs.org/rules/no-v-html.html

"eslint-plugin-vue/no-v-model-argument"?: _ ¶

disallow adding an argument to `v-model` used in custom component https://eslint.vuejs.org/rules/no-v-model-argument.html

"eslint-plugin-vue/no-v-text-v-html-on-component"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

disallow v-text / v-html on component https://eslint.vuejs.org/rules/no-v-text-v-html-on-component.html

"eslint-plugin-vue/no-v-text"?: _ ¶

disallow use of v-text https://eslint.vuejs.org/rules/no-v-text.html

"eslint-plugin-vue/no-watch-after-await"?: _ ¶

disallow asynchronously registered `watch` https://eslint.vuejs.org/rules/no-watch-after-await.html

"eslint-plugin-vue/object-curly-newline"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent line breaks after opening and before closing braces in `<template>` https://eslint.vuejs.org/rules/object-curly-newline.html

"eslint-plugin-vue/object-curly-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent spacing inside braces in `<template>` https://eslint.vuejs.org/rules/object-curly-spacing.html

"eslint-plugin-vue/object-property-newline"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowAllPropertiesOnSameLine?:   bool
			allowMultiplePropertiesPerLine?: bool
			...
		},
		...
	]
])
¶

Enforce placing object properties on separate lines in `<template>` https://eslint.vuejs.org/rules/object-property-newline.html

"eslint-plugin-vue/object-shorthand"?: _ ¶

Require or disallow method and property shorthand syntax for object literals in `<template>` https://eslint.vuejs.org/rules/object-shorthand.html

"eslint-plugin-vue/one-component-per-file"?: _ ¶

enforce that each component should be in its own file https://eslint.vuejs.org/rules/one-component-per-file.html

"eslint-plugin-vue/operator-linebreak"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent linebreak style for operators in `<template>` https://eslint.vuejs.org/rules/operator-linebreak.html

"eslint-plugin-vue/order-in-components"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			order?: [...]
			...
		},
		...
	]
])
¶

enforce order of properties in components https://eslint.vuejs.org/rules/order-in-components.html

"eslint-plugin-vue/padding-line-between-blocks"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

require or disallow padding lines between blocks https://eslint.vuejs.org/rules/padding-line-between-blocks.html

"eslint-plugin-vue/padding-line-between-tags"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

require or disallow newlines between sibling tags in template https://eslint.vuejs.org/rules/padding-line-between-tags.html

"eslint-plugin-vue/padding-lines-in-component-definition"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

require or disallow padding lines in component definition https://eslint.vuejs.org/rules/padding-lines-in-component-definition.html

"eslint-plugin-vue/prefer-define-options"?: _ ¶

enforce use of `defineOptions` instead of default export. https://eslint.vuejs.org/rules/prefer-define-options.html

"eslint-plugin-vue/prefer-import-from-vue"?: _ ¶

enforce import from 'vue' instead of import from '@vue/*' https://eslint.vuejs.org/rules/prefer-import-from-vue.html

"eslint-plugin-vue/prefer-prop-type-boolean-first"?: _ ¶

enforce `Boolean` comes first in component prop types https://eslint.vuejs.org/rules/prefer-prop-type-boolean-first.html

"eslint-plugin-vue/prefer-separate-static-class"?: _ ¶

require static class names in template to be in a separate `class` attribute https://eslint.vuejs.org/rules/prefer-separate-static-class.html

"eslint-plugin-vue/prefer-template"?: _ ¶

Require template literals instead of string concatenation in `<template>` https://eslint.vuejs.org/rules/prefer-template.html

"eslint-plugin-vue/prefer-true-attribute-shorthand"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

require shorthand form attribute when `v-bind` value is `true` https://eslint.vuejs.org/rules/prefer-true-attribute-shorthand.html

"eslint-plugin-vue/prop-name-casing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce specific casing for the Prop name in Vue components https://eslint.vuejs.org/rules/prop-name-casing.html

"eslint-plugin-vue/quote-props"?: _ ¶

Require quotes around object literal property names in `<template>` https://eslint.vuejs.org/rules/quote-props.html

"eslint-plugin-vue/require-component-is"?: _ ¶

require `v-bind:is` of `<component>` elements https://eslint.vuejs.org/rules/require-component-is.html

"eslint-plugin-vue/require-default-prop"?: _ ¶

require default value for props https://eslint.vuejs.org/rules/require-default-prop.html

"eslint-plugin-vue/require-direct-export"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			disallowFunctionalComponentFunction?: bool
			...
		},
		...
	]
])
¶

require the component to be directly exported https://eslint.vuejs.org/rules/require-direct-export.html

"eslint-plugin-vue/require-emit-validator"?: _ ¶

require type definitions in emits https://eslint.vuejs.org/rules/require-emit-validator.html

"eslint-plugin-vue/require-explicit-emits"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowProps?: bool
			...
		},
		...
	]
])
¶

require `emits` option with name triggered by `$emit()` https://eslint.vuejs.org/rules/require-explicit-emits.html

"eslint-plugin-vue/require-explicit-slots"?: _ ¶

require slots to be explicitly defined https://eslint.vuejs.org/rules/require-explicit-slots.html

"eslint-plugin-vue/require-expose"?: _ ¶

require declare public properties using `expose` https://eslint.vuejs.org/rules/require-expose.html

"eslint-plugin-vue/require-macro-variable-name"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			defineProps?: string
			defineEmits?: string
			defineSlots?: string
			useSlots?:    string
			useAttrs?:    string
			...
		},
		...
	]
])
¶

require a certain macro variable name https://eslint.vuejs.org/rules/require-macro-variable-name.html

"eslint-plugin-vue/require-name-property"?: _ ¶

require a name property in Vue components https://eslint.vuejs.org/rules/require-name-property.html

"eslint-plugin-vue/require-prop-comment"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			type?: "JSDoc" | "line" | "block" | "any"
			...
		},
		...
	]
])
¶

require props to have a comment https://eslint.vuejs.org/rules/require-prop-comment.html

"eslint-plugin-vue/require-prop-type-constructor"?: _ ¶

require prop type to be a constructor https://eslint.vuejs.org/rules/require-prop-type-constructor.html

"eslint-plugin-vue/require-prop-types"?: _ ¶

require type definitions in props https://eslint.vuejs.org/rules/require-prop-types.html

"eslint-plugin-vue/require-render-return"?: _ ¶

enforce render function to always return value https://eslint.vuejs.org/rules/require-render-return.html

"eslint-plugin-vue/require-slots-as-functions"?: _ ¶

enforce properties of `$slots` to be used as a function https://eslint.vuejs.org/rules/require-slots-as-functions.html

"eslint-plugin-vue/require-toggle-inside-transition"?: _ ¶

require control the display of the content inside `<transition>` https://eslint.vuejs.org/rules/require-toggle-inside-transition.html

"eslint-plugin-vue/require-typed-object-prop"?: _ ¶

enforce adding type declarations to object props https://eslint.vuejs.org/rules/require-typed-object-prop.html

"eslint-plugin-vue/require-typed-ref"?: _ ¶

require `ref` and `shallowRef` functions to be strongly typed https://eslint.vuejs.org/rules/require-typed-ref.html

"eslint-plugin-vue/require-v-for-key"?: _ ¶

require `v-bind:key` with `v-for` directives https://eslint.vuejs.org/rules/require-v-for-key.html

"eslint-plugin-vue/require-valid-default-prop"?: _ ¶

enforce props default values to be valid https://eslint.vuejs.org/rules/require-valid-default-prop.html

"eslint-plugin-vue/return-in-computed-property"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			treatUndefinedAsUnspecified?: bool
			...
		},
		...
	]
])
¶

enforce that a return statement is present in computed property https://eslint.vuejs.org/rules/return-in-computed-property.html

"eslint-plugin-vue/return-in-emits-validator"?: _ ¶

enforce that a return statement is present in emits validator https://eslint.vuejs.org/rules/return-in-emits-validator.html

"eslint-plugin-vue/script-indent"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce consistent indentation in `<script>` https://eslint.vuejs.org/rules/script-indent.html

"eslint-plugin-vue/script-setup-uses-vars"?: _ ¶

prevent `<script setup>` variables used in `<template>` to be marked as unused https://eslint.vuejs.org/rules/script-setup-uses-vars.html

"eslint-plugin-vue/singleline-html-element-content-newline"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreWhenNoAttributes?: bool
			ignoreWhenEmpty?:        bool
			ignores?:                list.UniqueItems() & [...string]
			externalIgnores?:        list.UniqueItems() & [...string]
			...
		},
		...
	]
])
¶

require a line break before and after the contents of a singleline element https://eslint.vuejs.org/rules/singleline-html-element-content-newline.html

"eslint-plugin-vue/sort-keys"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce sort-keys in a manner that is compatible with order-in-components https://eslint.vuejs.org/rules/sort-keys.html

"eslint-plugin-vue/space-in-parens"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent spacing inside parentheses in `<template>` https://eslint.vuejs.org/rules/space-in-parens.html

"eslint-plugin-vue/space-infix-ops"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			int32Hint?: bool
			...
		},
		...
	]
])
¶

Require spacing around infix operators in `<template>` https://eslint.vuejs.org/rules/space-infix-ops.html

"eslint-plugin-vue/space-unary-ops"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			words?:    bool
			nonwords?: bool
			overrides?: [string]: bool
			...
		},
		...
	]
])
¶

Enforce consistent spacing before or after unary operators in `<template>` https://eslint.vuejs.org/rules/space-unary-ops.html

"eslint-plugin-vue/static-class-names-order"?: _ ¶

enforce static class names order https://eslint.vuejs.org/rules/static-class-names-order.html

"eslint-plugin-vue/template-curly-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Require or disallow spacing around embedded expressions of template strings in `<template>` https://eslint.vuejs.org/rules/template-curly-spacing.html

"eslint-plugin-vue/this-in-template"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

disallow usage of `this` in template https://eslint.vuejs.org/rules/this-in-template.html

"eslint-plugin-vue/use-v-on-exact"?: _ ¶

enforce usage of `exact` modifier on `v-on` https://eslint.vuejs.org/rules/use-v-on-exact.html

"eslint-plugin-vue/v-bind-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce `v-bind` directive style https://eslint.vuejs.org/rules/v-bind-style.html

"eslint-plugin-vue/v-for-delimiter-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce `v-for` directive's delimiter style https://eslint.vuejs.org/rules/v-for-delimiter-style.html

"eslint-plugin-vue/v-if-else-key"?: _ ¶

require key attribute for conditionally rendered repeated components https://eslint.vuejs.org/rules/v-if-else-key.html

"eslint-plugin-vue/v-on-event-hyphenation"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce v-on event naming style on custom components in template https://eslint.vuejs.org/rules/v-on-event-hyphenation.html

"eslint-plugin-vue/v-on-function-call"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce or forbid parentheses after method calls without arguments in `v-on` directives https://eslint.vuejs.org/rules/v-on-function-call.html

"eslint-plugin-vue/v-on-handler-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce writing style for handlers in `v-on` directives https://eslint.vuejs.org/rules/v-on-handler-style.html

"eslint-plugin-vue/v-on-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce `v-on` directive style https://eslint.vuejs.org/rules/v-on-style.html

"eslint-plugin-vue/v-slot-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

enforce `v-slot` directive style https://eslint.vuejs.org/rules/v-slot-style.html

"eslint-plugin-vue/valid-attribute-name"?: _ ¶

require valid attribute names https://eslint.vuejs.org/rules/valid-attribute-name.html

"eslint-plugin-vue/valid-define-emits"?: _ ¶

enforce valid `defineEmits` compiler macro https://eslint.vuejs.org/rules/valid-define-emits.html

"eslint-plugin-vue/valid-define-options"?: _ ¶

enforce valid `defineOptions` compiler macro https://eslint.vuejs.org/rules/valid-define-options.html

"eslint-plugin-vue/valid-define-props"?: _ ¶

enforce valid `defineProps` compiler macro https://eslint.vuejs.org/rules/valid-define-props.html

"eslint-plugin-vue/valid-model-definition"?: _ ¶

require valid keys in model option https://eslint.vuejs.org/rules/valid-model-definition.html

"eslint-plugin-vue/valid-next-tick"?: _ ¶

enforce valid `nextTick` function calls https://eslint.vuejs.org/rules/valid-next-tick.html

"eslint-plugin-vue/valid-template-root"?: _ ¶

enforce valid template root https://eslint.vuejs.org/rules/valid-template-root.html

"eslint-plugin-vue/valid-v-bind-sync"?: _ ¶

enforce valid `.sync` modifier on `v-bind` directives https://eslint.vuejs.org/rules/valid-v-bind-sync.html

"eslint-plugin-vue/valid-v-bind"?: _ ¶

enforce valid `v-bind` directives https://eslint.vuejs.org/rules/valid-v-bind.html

"eslint-plugin-vue/valid-v-cloak"?: _ ¶

enforce valid `v-cloak` directives https://eslint.vuejs.org/rules/valid-v-cloak.html

"eslint-plugin-vue/valid-v-else-if"?: _ ¶

enforce valid `v-else-if` directives https://eslint.vuejs.org/rules/valid-v-else-if.html

"eslint-plugin-vue/valid-v-else"?: _ ¶

enforce valid `v-else` directives https://eslint.vuejs.org/rules/valid-v-else.html

"eslint-plugin-vue/valid-v-for"?: _ ¶

enforce valid `v-for` directives https://eslint.vuejs.org/rules/valid-v-for.html

"eslint-plugin-vue/valid-v-html"?: _ ¶

enforce valid `v-html` directives https://eslint.vuejs.org/rules/valid-v-html.html

"eslint-plugin-vue/valid-v-if"?: _ ¶

enforce valid `v-if` directives https://eslint.vuejs.org/rules/valid-v-if.html

"eslint-plugin-vue/valid-v-is"?: _ ¶

enforce valid `v-is` directives https://eslint.vuejs.org/rules/valid-v-is.html

"eslint-plugin-vue/valid-v-memo"?: _ ¶

enforce valid `v-memo` directives https://eslint.vuejs.org/rules/valid-v-memo.html

"eslint-plugin-vue/valid-v-model"?: _ ¶

enforce valid `v-model` directives https://eslint.vuejs.org/rules/valid-v-model.html

"eslint-plugin-vue/valid-v-on"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			modifiers?: [...]
			...
		},
		...
	]
])
¶

enforce valid `v-on` directives https://eslint.vuejs.org/rules/valid-v-on.html

"eslint-plugin-vue/valid-v-once"?: _ ¶

enforce valid `v-once` directives https://eslint.vuejs.org/rules/valid-v-once.html

"eslint-plugin-vue/valid-v-pre"?: _ ¶

enforce valid `v-pre` directives https://eslint.vuejs.org/rules/valid-v-pre.html

"eslint-plugin-vue/valid-v-show"?: _ ¶

enforce valid `v-show` directives https://eslint.vuejs.org/rules/valid-v-show.html

"eslint-plugin-vue/valid-v-slot"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowModifiers?: bool
			...
		},
		...
	]
])
¶

enforce valid `v-slot` directives https://eslint.vuejs.org/rules/valid-v-slot.html

"eslint-plugin-vue/valid-v-text"?: _ ¶

enforce valid `v-text` directives https://eslint.vuejs.org/rules/valid-v-text.html

"@typescript-eslint/adjacent-overload-signatures"?: _ ¶

Require that function overload signatures be consecutive https://typescript-eslint.io/rules/adjacent-overload-signatures

"@typescript-eslint/array-type"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			default?:  _
			readonly?: _
			...
		},
		...
	]
])
¶

Require consistently using either `T[]` or `Array<T>` for arrays https://typescript-eslint.io/rules/array-type

"@typescript-eslint/await-thenable"?: _ ¶

Disallow awaiting a value that is not a Thenable https://typescript-eslint.io/rules/await-thenable

"@typescript-eslint/ban-ts-comment"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			"ts-expect-error"?:        _
			"ts-ignore"?:              _
			"ts-nocheck"?:             _
			"ts-check"?:               _
			minimumDescriptionLength?: number
			...
		},
		...
	]
])
¶

Disallow `@ts-<directive>` comments or require descriptions after directives https://typescript-eslint.io/rules/ban-ts-comment

"@typescript-eslint/ban-tslint-comment"?: _ ¶

Disallow `// tslint:<rule-flag>` comments https://typescript-eslint.io/rules/ban-tslint-comment

"@typescript-eslint/ban-types"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			types?: [string]: _
			extendDefaults?: bool
			...
		},
		...
	]
])
¶

Disallow certain types https://typescript-eslint.io/rules/ban-types

"@typescript-eslint/block-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Disallow or enforce spaces inside of blocks after opening block and before closing block https://typescript-eslint.io/rules/block-spacing

"@typescript-eslint/brace-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent brace style for blocks https://typescript-eslint.io/rules/brace-style

"@typescript-eslint/class-literal-property-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce that literals on classes are exposed in a consistent style https://typescript-eslint.io/rules/class-literal-property-style

"@typescript-eslint/class-methods-use-this"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			exceptMethods?:                         [...string]
			enforceForClassFields?:                 bool
			ignoreOverrideMethods?:                 bool
			ignoreClassesThatImplementAnInterface?: matchN(1, [bool, "public-fields"])
			...
		},
		...
	]
])
¶

Enforce that class methods utilize `this` https://typescript-eslint.io/rules/class-methods-use-this

"@typescript-eslint/comma-dangle"?: _ ¶

Require or disallow trailing commas https://typescript-eslint.io/rules/comma-dangle

"@typescript-eslint/comma-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			before?: bool
			after?:  bool
			...
		},
		...
	]
])
¶

Enforce consistent spacing before and after commas https://typescript-eslint.io/rules/comma-spacing

"@typescript-eslint/consistent-generic-constructors"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce specifying generic type arguments on type annotation or constructor name of a constructor call https://typescript-eslint.io/rules/consistent-generic-constructors

"@typescript-eslint/consistent-indexed-object-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), "record" | "index-signature", ...],
])
¶

Require or disallow the `Record` type https://typescript-eslint.io/rules/consistent-indexed-object-style

"@typescript-eslint/consistent-return"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			treatUndefinedAsUnspecified?: bool
			...
		},
		...
	]
])
¶

Require `return` statements to either always or never specify values https://typescript-eslint.io/rules/consistent-return

"@typescript-eslint/consistent-type-assertions"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent usage of type assertions https://typescript-eslint.io/rules/consistent-type-assertions

"@typescript-eslint/consistent-type-definitions"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), "interface" | "type", ...],
])
¶

Enforce type definitions to consistently use either `interface` or `type` https://typescript-eslint.io/rules/consistent-type-definitions

"@typescript-eslint/consistent-type-exports"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			fixMixedExportsWithInlineTypeSpecifier?: bool
			...
		},
		...
	]
])
¶

Enforce consistent usage of type exports https://typescript-eslint.io/rules/consistent-type-exports

"@typescript-eslint/consistent-type-imports"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			disallowTypeAnnotations?: bool
			fixStyle?:                "separate-type-imports" | "inline-type-imports"
			prefer?:                  "type-imports" | "no-type-imports"
			...
		},
		...
	]
])
¶

Enforce consistent usage of type imports https://typescript-eslint.io/rules/consistent-type-imports

"@typescript-eslint/default-param-last"?: _ ¶

Enforce default parameters to be last https://typescript-eslint.io/rules/default-param-last

"@typescript-eslint/dot-notation"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowKeywords?:                     bool
			allowPattern?:                      string
			allowPrivateClassPropertyAccess?:   bool
			allowProtectedClassPropertyAccess?: bool
			allowIndexSignaturePropertyAccess?: bool
			...
		},
		...
	]
])
¶

Enforce dot notation whenever possible https://typescript-eslint.io/rules/dot-notation

"@typescript-eslint/explicit-function-return-type"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowConciseArrowFunctionExpressionsStartingWithVoid?: bool
			allowExpressions?:                                     bool
			allowHigherOrderFunctions?:                            bool
			allowTypedFunctionExpressions?:                        bool
			allowDirectConstAssertionInArrowFunctions?:            bool
			allowFunctionsWithoutTypeParameters?:                  bool
			allowedNames?:                                         [...string]
			allowIIFEs?:                                           bool
			...
		},
		...
	]
])
¶

Require explicit return types on functions and class methods https://typescript-eslint.io/rules/explicit-function-return-type

"@typescript-eslint/explicit-member-accessibility"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			accessibility?: _
			overrides?: close({
				accessors?:           _
				constructors?:        _
				methods?:             _
				properties?:          _
				parameterProperties?: _
			})
			ignoredMethodNames?: [...string]
			...
		},
		...
	]
])
¶

Require explicit accessibility modifiers on class properties and methods https://typescript-eslint.io/rules/explicit-member-accessibility

"@typescript-eslint/explicit-module-boundary-types"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowArgumentsExplicitlyTypedAsAny?:        bool
			allowDirectConstAssertionInArrowFunctions?: bool
			allowedNames?:                              [...string]
			allowHigherOrderFunctions?:                 bool
			allowTypedFunctionExpressions?:             bool
			...
		},
		...
	]
])
¶

Require explicit return and argument types on exported functions' and classes' public class methods https://typescript-eslint.io/rules/explicit-module-boundary-types

"@typescript-eslint/func-call-spacing"?: _ ¶

Require or disallow spacing between function identifiers and their invocations https://typescript-eslint.io/rules/func-call-spacing

"@typescript-eslint/indent"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent indentation https://typescript-eslint.io/rules/indent

"@typescript-eslint/init-declarations"?: _ ¶

Require or disallow initialization in variable declarations https://typescript-eslint.io/rules/init-declarations

"@typescript-eslint/key-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent spacing between property names and type annotations in types and interfaces https://typescript-eslint.io/rules/key-spacing

"@typescript-eslint/keyword-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			before?: bool
			after?:  bool
			overrides?: close({
				abstract?: close({
					before?: bool
					after?:  bool
				})
				as?: close({
					before?: bool
					after?:  bool
				})
				async?: close({
					before?: bool
					after?:  bool
				})
				await?: close({
					before?: bool
					after?:  bool
				})
				boolean?: close({
					before?: bool
					after?:  bool
				})
				break?: close({
					before?: bool
					after?:  bool
				})
				byte?: close({
					before?: bool
					after?:  bool
				})
				case?: close({
					before?: bool
					after?:  bool
				})
				catch?: close({
					before?: bool
					after?:  bool
				})
				char?: close({
					before?: bool
					after?:  bool
				})
				class?: close({
					before?: bool
					after?:  bool
				})
				const?: close({
					before?: bool
					after?:  bool
				})
				continue?: close({
					before?: bool
					after?:  bool
				})
				debugger?: close({
					before?: bool
					after?:  bool
				})
				default?: close({
					before?: bool
					after?:  bool
				})
				delete?: close({
					before?: bool
					after?:  bool
				})
				do?: close({
					before?: bool
					after?:  bool
				})
				double?: close({
					before?: bool
					after?:  bool
				})
				else?: close({
					before?: bool
					after?:  bool
				})
				enum?: close({
					before?: bool
					after?:  bool
				})
				export?: close({
					before?: bool
					after?:  bool
				})
				extends?: close({
					before?: bool
					after?:  bool
				})
				false?: close({
					before?: bool
					after?:  bool
				})
				final?: close({
					before?: bool
					after?:  bool
				})
				finally?: close({
					before?: bool
					after?:  bool
				})
				float?: close({
					before?: bool
					after?:  bool
				})
				for?: close({
					before?: bool
					after?:  bool
				})
				from?: close({
					before?: bool
					after?:  bool
				})
				function?: close({
					before?: bool
					after?:  bool
				})
				get?: close({
					before?: bool
					after?:  bool
				})
				goto?: close({
					before?: bool
					after?:  bool
				})
				if?: close({
					before?: bool
					after?:  bool
				})
				implements?: close({
					before?: bool
					after?:  bool
				})
				import?: close({
					before?: bool
					after?:  bool
				})
				in?: close({
					before?: bool
					after?:  bool
				})
				instanceof?: close({
					before?: bool
					after?:  bool
				})
				int?: close({
					before?: bool
					after?:  bool
				})
				interface?: close({
					before?: bool
					after?:  bool
				})
				let?: close({
					before?: bool
					after?:  bool
				})
				long?: close({
					before?: bool
					after?:  bool
				})
				native?: close({
					before?: bool
					after?:  bool
				})
				new?: close({
					before?: bool
					after?:  bool
				})
				null?: close({
					before?: bool
					after?:  bool
				})
				of?: close({
					before?: bool
					after?:  bool
				})
				package?: close({
					before?: bool
					after?:  bool
				})
				private?: close({
					before?: bool
					after?:  bool
				})
				protected?: close({
					before?: bool
					after?:  bool
				})
				public?: close({
					before?: bool
					after?:  bool
				})
				return?: close({
					before?: bool
					after?:  bool
				})
				set?: close({
					before?: bool
					after?:  bool
				})
				short?: close({
					before?: bool
					after?:  bool
				})
				static?: close({
					before?: bool
					after?:  bool
				})
				super?: close({
					before?: bool
					after?:  bool
				})
				switch?: close({
					before?: bool
					after?:  bool
				})
				synchronized?: close({
					before?: bool
					after?:  bool
				})
				this?: close({
					before?: bool
					after?:  bool
				})
				throw?: close({
					before?: bool
					after?:  bool
				})
				throws?: close({
					before?: bool
					after?:  bool
				})
				transient?: close({
					before?: bool
					after?:  bool
				})
				true?: close({
					before?: bool
					after?:  bool
				})
				try?: close({
					before?: bool
					after?:  bool
				})
				typeof?: close({
					before?: bool
					after?:  bool
				})
				var?: close({
					before?: bool
					after?:  bool
				})
				void?: close({
					before?: bool
					after?:  bool
				})
				volatile?: close({
					before?: bool
					after?:  bool
				})
				while?: close({
					before?: bool
					after?:  bool
				})
				with?: close({
					before?: bool
					after?:  bool
				})
				yield?: close({
					before?: bool
					after?:  bool
				})
				type?: close({
					before?: bool
					after?:  bool
				})
			})
			...
		},
		...
	]
])
¶

Enforce consistent spacing before and after keywords https://typescript-eslint.io/rules/keyword-spacing

"@typescript-eslint/lines-around-comment"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			beforeBlockComment?:         bool
			afterBlockComment?:          bool
			beforeLineComment?:          bool
			afterLineComment?:           bool
			allowBlockStart?:            bool
			allowBlockEnd?:              bool
			allowClassStart?:            bool
			allowClassEnd?:              bool
			allowObjectStart?:           bool
			allowObjectEnd?:             bool
			allowArrayStart?:            bool
			allowArrayEnd?:              bool
			allowInterfaceStart?:        bool
			allowInterfaceEnd?:          bool
			allowTypeStart?:             bool
			allowTypeEnd?:               bool
			allowEnumStart?:             bool
			allowEnumEnd?:               bool
			allowModuleStart?:           bool
			allowModuleEnd?:             bool
			ignorePattern?:              string
			applyDefaultIgnorePatterns?: bool
			...
		},
		...
	]
])
¶

Require empty lines around comments https://typescript-eslint.io/rules/lines-around-comment

"@typescript-eslint/lines-between-class-members"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Require or disallow an empty line between class members https://typescript-eslint.io/rules/lines-between-class-members

"@typescript-eslint/max-params"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			maximum?:       int & >=0
			max?:           int & >=0
			countVoidThis?: bool
			...
		},
		...
	]
])
¶

Enforce a maximum number of parameters in function definitions https://typescript-eslint.io/rules/max-params

"@typescript-eslint/member-delimiter-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			multiline?: close({
				delimiter?:   _
				requireLast?: bool
			})
			singleline?: close({
				delimiter?:   _
				requireLast?: bool
			})
			overrides?: close({
				interface?:   _
				typeLiteral?: _
			})
			multilineDetection?: "brackets" | "last-member"
			...
		},
		...
	]
])
¶

Require a specific member delimiter style for interfaces and type literals https://typescript-eslint.io/rules/member-delimiter-style

"@typescript-eslint/member-ordering"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			default?:          _
			classes?:          _
			classExpressions?: _
			interfaces?:       _
			typeLiterals?:     _
			...
		},
		...
	]
])
¶

Require a consistent member declaration order https://typescript-eslint.io/rules/member-ordering

"@typescript-eslint/method-signature-style"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce using a particular method signature syntax https://typescript-eslint.io/rules/method-signature-style

"@typescript-eslint/naming-convention"?: _ ¶

Enforce naming conventions for everything across a codebase https://typescript-eslint.io/rules/naming-convention

"@typescript-eslint/no-array-constructor"?: _ ¶

Disallow generic `Array` constructors https://typescript-eslint.io/rules/no-array-constructor

"@typescript-eslint/no-array-delete"?: _ ¶

Disallow using the `delete` operator on array values https://typescript-eslint.io/rules/no-array-delete

"@typescript-eslint/no-base-to-string"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoredTypeNames?: [...string]
			...
		},
		...
	]
])
¶

Require `.toString()` to only be called on objects which provide useful information when stringified https://typescript-eslint.io/rules/no-base-to-string

"@typescript-eslint/no-confusing-non-null-assertion"?: _ ¶

Disallow non-null assertion in locations that may be confusing https://typescript-eslint.io/rules/no-confusing-non-null-assertion

"@typescript-eslint/no-confusing-void-expression"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreArrowShorthand?: bool
			ignoreVoidOperator?:   bool
			...
		},
		...
	]
])
¶

Require expressions of type void to appear in statement position https://typescript-eslint.io/rules/no-confusing-void-expression

"@typescript-eslint/no-dupe-class-members"?: _ ¶

Disallow duplicate class members https://typescript-eslint.io/rules/no-dupe-class-members

"@typescript-eslint/no-duplicate-enum-values"?: _ ¶

Disallow duplicate enum member values https://typescript-eslint.io/rules/no-duplicate-enum-values

"@typescript-eslint/no-duplicate-type-constituents"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreIntersections?: bool
			ignoreUnions?:        bool
			...
		},
		...
	]
])
¶

Disallow duplicate constituents of union or intersection types https://typescript-eslint.io/rules/no-duplicate-type-constituents

"@typescript-eslint/no-dynamic-delete"?: _ ¶

Disallow using the `delete` operator on computed key expressions https://typescript-eslint.io/rules/no-dynamic-delete

"@typescript-eslint/no-empty-function"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: list.UniqueItems() & [
				..."functions" |
					"arrowFunctions" |
					"generatorFunctions" |
					"methods" |
					"generatorMethods" |
					"getters" |
					"setters" |
					"constructors" |
					"private-constructors" |
					"protected-constructors" |
					"asyncFunctions" |
					"asyncMethods" |
					"decoratedFunctions" |
					"overrideMethods",
			]
			...
		},
		...
	]
])
¶

Disallow empty functions https://typescript-eslint.io/rules/no-empty-function

"@typescript-eslint/no-empty-interface"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowSingleExtends?: bool
			...
		},
		...
	]
])
¶

Disallow the declaration of empty interfaces https://typescript-eslint.io/rules/no-empty-interface

"@typescript-eslint/no-explicit-any"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			fixToUnknown?:   bool
			ignoreRestArgs?: bool
			...
		},
		...
	]
])
¶

Disallow the `any` type https://typescript-eslint.io/rules/no-explicit-any

"@typescript-eslint/no-extra-non-null-assertion"?: _ ¶

Disallow extra non-null assertions https://typescript-eslint.io/rules/no-extra-non-null-assertion

"@typescript-eslint/no-extra-parens"?: _ ¶

Disallow unnecessary parentheses https://typescript-eslint.io/rules/no-extra-parens

"@typescript-eslint/no-extra-semi"?: _ ¶

Disallow unnecessary semicolons https://typescript-eslint.io/rules/no-extra-semi

"@typescript-eslint/no-extraneous-class"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowConstructorOnly?: bool
			allowEmpty?:           bool
			allowStaticOnly?:      bool
			allowWithDecorator?:   bool
			...
		},
		...
	]
])
¶

Disallow classes used as namespaces https://typescript-eslint.io/rules/no-extraneous-class

"@typescript-eslint/no-floating-promises"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreVoid?: bool
			ignoreIIFE?: bool
			allowForKnownSafePromises?: [...matchN(
				1,
				[
					string,
					close({
						from!: "file"
						name!: matchN(1, [string, list.UniqueItems() & [_, ...] & [...string]])
						path?: string
					}), close({
						from!: "lib"
						name!: matchN(1, [string, list.UniqueItems() & [_, ...] & [...string]])
					}), close({
						from!:    "package"
						name!:    matchN(1, [string, list.UniqueItems() & [_, ...] & [...string]])
						package!: string
					})
				]
			)]
			...
		},
		...
	]
])
¶

Require Promise-like statements to be handled appropriately https://typescript-eslint.io/rules/no-floating-promises

"@typescript-eslint/no-for-in-array"?: _ ¶

Disallow iterating over an array with a for-in loop https://typescript-eslint.io/rules/no-for-in-array

"@typescript-eslint/no-implied-eval"?: _ ¶

Disallow the use of `eval()`-like methods https://typescript-eslint.io/rules/no-implied-eval

"@typescript-eslint/no-import-type-side-effects"?: _ ¶

Enforce the use of top-level import type qualifier when an import only has specifiers with inline type qualifiers https://typescript-eslint.io/rules/no-import-type-side-effects

"@typescript-eslint/no-inferrable-types"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreParameters?: bool
			ignoreProperties?: bool
			...
		},
		...
	]
])
¶

Disallow explicit type declarations for variables or parameters initialized to a number, string, or boolean https://typescript-eslint.io/rules/no-inferrable-types

"@typescript-eslint/no-invalid-this"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			capIsConstructor?: bool
			...
		},
		...
	]
])
¶

Disallow `this` keywords outside of classes or class-like objects https://typescript-eslint.io/rules/no-invalid-this

"@typescript-eslint/no-invalid-void-type"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowInGenericTypeArguments?: matchN(1, [bool, [...string] & [_, ...]])
			allowAsThisParameter?:        bool
			...
		},
		...
	]
])
¶

Disallow `void` type outside of generic or return types https://typescript-eslint.io/rules/no-invalid-void-type

"@typescript-eslint/no-loop-func"?: _ ¶

Disallow function declarations that contain unsafe references inside loop statements https://typescript-eslint.io/rules/no-loop-func

"@typescript-eslint/no-loss-of-precision"?: _ ¶

Disallow literal numbers that lose precision https://typescript-eslint.io/rules/no-loss-of-precision

"@typescript-eslint/no-magic-numbers"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			detectObjects?:       bool
			enforceConst?:        bool
			ignore?:              list.UniqueItems() & [...matchN(>=1, [number, =~"^[+-]?(?:0|[1-9][0-9]*)n$"])]
			ignoreArrayIndexes?:  bool
			ignoreDefaultValues?: bool
			ignoreClassFieldInitialValues?: bool
			ignoreNumericLiteralTypes?:     bool
			ignoreEnums?:                   bool
			ignoreReadonlyClassProperties?: bool
			ignoreTypeIndexes?:             bool
			...
		},
		...
	]
])
¶

Disallow magic numbers https://typescript-eslint.io/rules/no-magic-numbers

"@typescript-eslint/no-meaningless-void-operator"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkNever?: bool
			...
		},
		...
	]
])
¶

Disallow the `void` operator except when used to discard a value https://typescript-eslint.io/rules/no-meaningless-void-operator

"@typescript-eslint/no-misused-new"?: _ ¶

Enforce valid definition of `new` and `constructor` https://typescript-eslint.io/rules/no-misused-new

"@typescript-eslint/no-misused-promises"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checksConditionals?: bool
			checksVoidReturn?: matchN(
				1,
				[
					bool,
					close({
						arguments?:  bool
						attributes?: bool
						properties?: bool
						returns?:    bool
						variables?:  bool
					})
				]
			)
			checksSpreads?: bool
			...
		},
		...
	]
])
¶

Disallow Promises in places not designed to handle them https://typescript-eslint.io/rules/no-misused-promises

"@typescript-eslint/no-mixed-enums"?: _ ¶

Disallow enums from having both number and string members https://typescript-eslint.io/rules/no-mixed-enums

"@typescript-eslint/no-namespace"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowDeclarations?:    bool
			allowDefinitionFiles?: bool
			...
		},
		...
	]
])
¶

Disallow TypeScript namespaces https://typescript-eslint.io/rules/no-namespace

"@typescript-eslint/no-non-null-asserted-nullish-coalescing"?: _ ¶

Disallow non-null assertions in the left operand of a nullish coalescing operator https://typescript-eslint.io/rules/no-non-null-asserted-nullish-coalescing

"@typescript-eslint/no-non-null-asserted-optional-chain"?: _ ¶

Disallow non-null assertions after an optional chain expression https://typescript-eslint.io/rules/no-non-null-asserted-optional-chain

"@typescript-eslint/no-non-null-assertion"?: _ ¶

Disallow non-null assertions using the `!` postfix operator https://typescript-eslint.io/rules/no-non-null-assertion

"@typescript-eslint/no-redeclare"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			builtinGlobals?:         bool
			ignoreDeclarationMerge?: bool
			...
		},
		...
	]
])
¶

Disallow variable redeclaration https://typescript-eslint.io/rules/no-redeclare

"@typescript-eslint/no-redundant-type-constituents"?: _ ¶

Disallow members of unions and intersections that do nothing or override type information https://typescript-eslint.io/rules/no-redundant-type-constituents

"@typescript-eslint/no-require-imports"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: [...string]
			...
		},
		...
	]
])
¶

Disallow invocation of `require()` https://typescript-eslint.io/rules/no-require-imports

"@typescript-eslint/no-restricted-imports"?: _ ¶

Disallow specified modules when loaded by `import` https://typescript-eslint.io/rules/no-restricted-imports

"@typescript-eslint/no-shadow"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			builtinGlobals?:                             bool
			hoist?:                                      "all" | "functions" | "never"
			allow?:                                      [...string]
			ignoreOnInitialization?:                     bool
			ignoreTypeValueShadow?:                      bool
			ignoreFunctionTypeParameterNameValueShadow?: bool
			...
		},
		...
	]
])
¶

Disallow variable declarations from shadowing variables declared in the outer scope https://typescript-eslint.io/rules/no-shadow

"@typescript-eslint/no-this-alias"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowDestructuring?: bool
			allowedNames?:       [...string]
			...
		},
		...
	]
])
¶

Disallow aliasing `this` https://typescript-eslint.io/rules/no-this-alias

"@typescript-eslint/no-throw-literal"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowThrowingAny?:     bool
			allowThrowingUnknown?: bool
			...
		},
		...
	]
])
¶

Disallow throwing literals as exceptions https://typescript-eslint.io/rules/no-throw-literal

"@typescript-eslint/no-type-alias"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowAliases?:          _
			allowCallbacks?:        _
			allowConditionalTypes?: _
			allowConstructors?:     _
			allowLiterals?:         _
			allowMappedTypes?:      _
			allowTupleTypes?:       _
			allowGenerics?:         _
			...
		},
		...
	]
])
¶

Disallow type aliases https://typescript-eslint.io/rules/no-type-alias

"@typescript-eslint/no-unnecessary-boolean-literal-compare"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowComparingNullableBooleansToTrue?:  bool
			allowComparingNullableBooleansToFalse?: bool
			...
		},
		...
	]
])
¶

Disallow unnecessary equality comparisons against boolean literals https://typescript-eslint.io/rules/no-unnecessary-boolean-literal-compare

"@typescript-eslint/no-unnecessary-condition"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowConstantLoopConditions?:                            bool
			allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: bool
			...
		},
		...
	]
])
¶

Disallow conditionals where the type is always truthy or always falsy https://typescript-eslint.io/rules/no-unnecessary-condition

"@typescript-eslint/no-unnecessary-qualifier"?: _ ¶

Disallow unnecessary namespace qualifiers https://typescript-eslint.io/rules/no-unnecessary-qualifier

"@typescript-eslint/no-unnecessary-template-expression"?: _ ¶

Disallow unnecessary template expressions https://typescript-eslint.io/rules/no-unnecessary-template-expression

"@typescript-eslint/no-unnecessary-type-arguments"?: _ ¶

Disallow type arguments that are equal to the default https://typescript-eslint.io/rules/no-unnecessary-type-arguments

"@typescript-eslint/no-unnecessary-type-assertion"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			typesToIgnore?: [...string]
			...
		},
		...
	]
])
¶

Disallow type assertions that do not change the type of an expression https://typescript-eslint.io/rules/no-unnecessary-type-assertion

"@typescript-eslint/no-unnecessary-type-constraint"?: _ ¶

Disallow unnecessary constraints on generic types https://typescript-eslint.io/rules/no-unnecessary-type-constraint

"@typescript-eslint/no-unsafe-argument"?: _ ¶

Disallow calling a function with a value with type `any` https://typescript-eslint.io/rules/no-unsafe-argument

"@typescript-eslint/no-unsafe-assignment"?: _ ¶

Disallow assigning a value with type `any` to variables and properties https://typescript-eslint.io/rules/no-unsafe-assignment

"@typescript-eslint/no-unsafe-call"?: _ ¶

Disallow calling a value with type `any` https://typescript-eslint.io/rules/no-unsafe-call

"@typescript-eslint/no-unsafe-declaration-merging"?: _ ¶

Disallow unsafe declaration merging https://typescript-eslint.io/rules/no-unsafe-declaration-merging

"@typescript-eslint/no-unsafe-enum-comparison"?: _ ¶

Disallow comparing an enum value with a non-enum value https://typescript-eslint.io/rules/no-unsafe-enum-comparison

"@typescript-eslint/no-unsafe-member-access"?: _ ¶

Disallow member access on a value with type `any` https://typescript-eslint.io/rules/no-unsafe-member-access

"@typescript-eslint/no-unsafe-return"?: _ ¶

Disallow returning a value with type `any` from a function https://typescript-eslint.io/rules/no-unsafe-return

"@typescript-eslint/no-unsafe-unary-minus"?: _ ¶

Require unary negation to take a number https://typescript-eslint.io/rules/no-unsafe-unary-minus

"@typescript-eslint/no-unused-expressions"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowShortCircuit?:    bool
			allowTernary?:         bool
			allowTaggedTemplates?: bool
			enforceForJSX?:        bool
			...
		},
		...
	]
])
¶

Disallow unused expressions https://typescript-eslint.io/rules/no-unused-expressions

"@typescript-eslint/no-unused-vars"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Disallow unused variables https://typescript-eslint.io/rules/no-unused-vars

"@typescript-eslint/no-use-before-define"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Disallow the use of variables before they are defined https://typescript-eslint.io/rules/no-use-before-define

"@typescript-eslint/no-useless-constructor"?: _ ¶

Disallow unnecessary constructors https://typescript-eslint.io/rules/no-useless-constructor

"@typescript-eslint/no-useless-empty-export"?: _ ¶

Disallow empty exports that don't change anything in a module file https://typescript-eslint.io/rules/no-useless-empty-export

"@typescript-eslint/no-useless-template-literals"?: _ ¶

Disallow unnecessary template expressions https://typescript-eslint.io/rules/no-useless-template-literals

"@typescript-eslint/no-var-requires"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: [...string]
			...
		},
		...
	]
])
¶

Disallow `require` statements except in import statements https://typescript-eslint.io/rules/no-var-requires

"@typescript-eslint/non-nullable-type-assertion-style"?: _ ¶

Enforce non-null assertions over explicit type casts https://typescript-eslint.io/rules/non-nullable-type-assertion-style

"@typescript-eslint/object-curly-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent spacing inside braces https://typescript-eslint.io/rules/object-curly-spacing

"@typescript-eslint/only-throw-error"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowThrowingAny?:     bool
			allowThrowingUnknown?: bool
			...
		},
		...
	]
])
¶

Disallow throwing non-`Error` values as exceptions https://typescript-eslint.io/rules/only-throw-error

"@typescript-eslint/padding-line-between-statements"?: _ ¶

Require or disallow padding lines between statements https://typescript-eslint.io/rules/padding-line-between-statements

"@typescript-eslint/parameter-properties"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?:  [...]
			prefer?: "class-property" | "parameter-property"
			...
		},
		...
	]
])
¶

Require or disallow parameter properties in class constructors https://typescript-eslint.io/rules/parameter-properties

"@typescript-eslint/prefer-as-const"?: _ ¶

Enforce the use of `as const` over literal type https://typescript-eslint.io/rules/prefer-as-const

"@typescript-eslint/prefer-destructuring"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Require destructuring from arrays and/or objects https://typescript-eslint.io/rules/prefer-destructuring

"@typescript-eslint/prefer-enum-initializers"?: _ ¶

Require each enum member value to be explicitly initialized https://typescript-eslint.io/rules/prefer-enum-initializers

"@typescript-eslint/prefer-find"?: _ ¶

Enforce the use of Array.prototype.find() over Array.prototype.filter() followed by [0] when looking for a single result https://typescript-eslint.io/rules/prefer-find

"@typescript-eslint/prefer-for-of"?: _ ¶

Enforce the use of `for-of` loop over the standard `for` loop where possible https://typescript-eslint.io/rules/prefer-for-of

"@typescript-eslint/prefer-function-type"?: _ ¶

Enforce using function types instead of interfaces with call signatures https://typescript-eslint.io/rules/prefer-function-type

"@typescript-eslint/prefer-includes"?: _ ¶

Enforce `includes` method over `indexOf` method https://typescript-eslint.io/rules/prefer-includes

"@typescript-eslint/prefer-literal-enum-member"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowBitwiseExpressions?: bool
			...
		},
		...
	]
])
¶

Require all enum members to be literal values https://typescript-eslint.io/rules/prefer-literal-enum-member

"@typescript-eslint/prefer-namespace-keyword"?: _ ¶

Require using `namespace` keyword over `module` keyword to declare custom TypeScript modules https://typescript-eslint.io/rules/prefer-namespace-keyword

"@typescript-eslint/prefer-nullish-coalescing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: bool
			ignoreConditionalTests?:                                 bool
			ignoreMixedLogicalExpressions?:                          bool
			ignorePrimitives?: matchN(1, [
				{
					bigint?:  bool
					boolean?: bool
					number?:  bool
					string?:  bool
					...
				},
				true
			])
			ignoreTernaryTests?: bool
			...
		},
		...
	]
])
¶

Enforce using the nullish coalescing operator instead of logical assignments or chaining https://typescript-eslint.io/rules/prefer-nullish-coalescing

"@typescript-eslint/prefer-optional-chain"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkAny?:                                                           bool
			checkUnknown?:                                                       bool
			checkString?:                                                        bool
			checkNumber?:                                                        bool
			checkBoolean?:                                                       bool
			checkBigInt?:                                                        bool
			requireNullish?:                                                     bool
			allowPotentiallyUnsafeFixesThatModifyTheReturnTypeIKnowWhatImDoing?: bool
			...
		},
		...
	]
])
¶

Enforce using concise optional chain expressions instead of chained logical ands, negated logical ors, or empty objects https://typescript-eslint.io/rules/prefer-optional-chain

"@typescript-eslint/prefer-promise-reject-errors"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowEmptyReject?: bool
			...
		},
		...
	]
])
¶

Require using Error objects as Promise rejection reasons https://typescript-eslint.io/rules/prefer-promise-reject-errors

"@typescript-eslint/prefer-readonly"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			onlyInlineLambdas?: bool
			...
		},
		...
	]
])
¶

Require private members to be marked as `readonly` if they're never modified outside of the constructor https://typescript-eslint.io/rules/prefer-readonly

"@typescript-eslint/prefer-readonly-parameter-types"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allow?: [...matchN(
				1,
				[
					string,
					close({
						from!: "file"
						name!: matchN(1, [string, list.UniqueItems() & [_, ...] & [...string]])
						path?: string
					}), close({
						from!: "lib"
						name!: matchN(1, [string, list.UniqueItems() & [_, ...] & [...string]])
					}), close({
						from!:    "package"
						name!:    matchN(1, [string, list.UniqueItems() & [_, ...] & [...string]])
						package!: string
					})
				]
			)]
			checkParameterProperties?: bool
			ignoreInferredTypes?:      bool
			treatMethodsAsReadonly?:   bool
			...
		},
		...
	]
])
¶

Require function parameters to be typed as `readonly` to prevent accidental mutation of inputs https://typescript-eslint.io/rules/prefer-readonly-parameter-types

"@typescript-eslint/prefer-reduce-type-parameter"?: _ ¶

Enforce using type parameter when calling `Array#reduce` instead of casting https://typescript-eslint.io/rules/prefer-reduce-type-parameter

"@typescript-eslint/prefer-regexp-exec"?: _ ¶

Enforce `RegExp#exec` over `String#match` if no global flag is provided https://typescript-eslint.io/rules/prefer-regexp-exec

"@typescript-eslint/prefer-return-this-type"?: _ ¶

Enforce that `this` is used when only `this` type is returned https://typescript-eslint.io/rules/prefer-return-this-type

"@typescript-eslint/prefer-string-starts-ends-with"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowSingleElementEquality?: "always" | "never"
			...
		},
		...
	]
])
¶

Enforce using `String#startsWith` and `String#endsWith` over other equivalent methods of checking substrings https://typescript-eslint.io/rules/prefer-string-starts-ends-with

"@typescript-eslint/prefer-ts-expect-error"?: _ ¶

Enforce using `@ts-expect-error` over `@ts-ignore` https://typescript-eslint.io/rules/prefer-ts-expect-error

"@typescript-eslint/promise-function-async"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowAny?:                  bool
			allowedPromiseNames?:       [...string]
			checkArrowFunctions?:       bool
			checkFunctionDeclarations?: bool
			checkFunctionExpressions?:  bool
			checkMethodDeclarations?:   bool
			...
		},
		...
	]
])
¶

Require any function or method that returns a Promise to be marked async https://typescript-eslint.io/rules/promise-function-async

"@typescript-eslint/quotes"?:
click to see definition
matchN(
	1,
	[
		#ruleNumber,
		#ruleString,
		matchN(
			1,
			[
				[_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), "double" | "single" | "backtick"],
				[_, _, _, ...] & [
					matchN(1, [#ruleNumber, #ruleString]),
					"double" | "single" | "backtick",
					{
						avoidEscape?:           bool
						allowTemplateLiterals?: bool
						"avoid-escape"?:        bool
						...
					}
				]
			]
		)
	]
)
¶

DEPRECATED. Enforce the consistent use of either backticks, double, or single quotes https://typescript-eslint.io/rules/quotes

"@typescript-eslint/require-array-sort-compare"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreStringArrays?: bool
			...
		},
		...
	]
])
¶

Require `Array#sort` and `Array#toSorted` calls to always provide a `compareFunction` https://typescript-eslint.io/rules/require-array-sort-compare

"@typescript-eslint/require-await"?: _ ¶

Disallow async functions which do not return promises and have no `await` expression https://typescript-eslint.io/rules/require-await

"@typescript-eslint/restrict-plus-operands"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowAny?:                bool
			allowBoolean?:            bool
			allowNullish?:            bool
			allowNumberAndString?:    bool
			allowRegExp?:             bool
			skipCompoundAssignments?: bool
			...
		},
		...
	]
])
¶

Require both operands of addition to be the same type and be `bigint`, `number`, or `string` https://typescript-eslint.io/rules/restrict-plus-operands

"@typescript-eslint/restrict-template-expressions"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowAny?:     bool
			allowArray?:   bool
			allowBoolean?: bool
			allowNullish?: bool
			allowNumber?:  bool
			allowRegExp?:  bool
			allowNever?:   bool
			...
		},
		...
	]
])
¶

Enforce template literal expressions to be of `string` type https://typescript-eslint.io/rules/restrict-template-expressions

"@typescript-eslint/return-await"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), matchN(
			1,
			["never", "error-handling-correctness-only", "in-try-catch", "always"],
		),
		...,
	],
])
¶

Enforce consistent awaiting of returned promises https://typescript-eslint.io/rules/return-await

"@typescript-eslint/semi"?: _ ¶

Require or disallow semicolons instead of ASI https://typescript-eslint.io/rules/semi

"@typescript-eslint/sort-type-constituents"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			checkIntersections?: bool
			checkUnions?:        bool
			caseSensitive?:      bool
			groupOrder?: [
				..."conditional" |
					"function" |
					"import" |
					"intersection" |
					"keyword" |
					"nullish" |
					"literal" |
					"named" |
					"object" |
					"operator" |
					"tuple" |
					"union",
			]
			...
		},
		...
	]
])
¶

Enforce constituents of a type union/intersection to be sorted alphabetically https://typescript-eslint.io/rules/sort-type-constituents

"@typescript-eslint/space-before-blocks"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent spacing before blocks https://typescript-eslint.io/rules/space-before-blocks

"@typescript-eslint/space-before-function-paren"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [matchN(1, [#ruleNumber, #ruleString]), {...}, ...],
])
¶

Enforce consistent spacing before function parenthesis https://typescript-eslint.io/rules/space-before-function-paren

"@typescript-eslint/space-infix-ops"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			int32Hint?: bool
			...
		},
		...
	]
])
¶

Require spacing around infix operators https://typescript-eslint.io/rules/space-infix-ops

"@typescript-eslint/strict-boolean-expressions"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowString?:                                            bool
			allowNumber?:                                            bool
			allowNullableObject?:                                    bool
			allowNullableBoolean?:                                   bool
			allowNullableString?:                                    bool
			allowNullableNumber?:                                    bool
			allowNullableEnum?:                                      bool
			allowAny?:                                               bool
			allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: bool
			...
		},
		...
	]
])
¶

Disallow certain types in boolean expressions https://typescript-eslint.io/rules/strict-boolean-expressions

"@typescript-eslint/switch-exhaustiveness-check"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			allowDefaultCaseForExhaustiveSwitch?: bool
			requireDefaultForNonUnion?:           bool
			...
		},
		...
	]
])
¶

Require switch-case statements to be exhaustive https://typescript-eslint.io/rules/switch-exhaustiveness-check

"@typescript-eslint/triple-slash-reference"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			lib?:   "always" | "never"
			path?:  "always" | "never"
			types?: "always" | "never" | "prefer-import"
			...
		},
		...
	]
])
¶

Disallow certain triple slash directives in favor of ES6-style import declarations https://typescript-eslint.io/rules/triple-slash-reference

"@typescript-eslint/type-annotation-spacing"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			before?: bool
			after?:  bool
			overrides?: close({
				colon?:      _
				arrow?:      _
				variable?:   _
				parameter?:  _
				property?:   _
				returnType?: _
			})
			...
		},
		...
	]
])
¶

Require consistent spacing around type annotations https://typescript-eslint.io/rules/type-annotation-spacing

"@typescript-eslint/typedef"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			arrayDestructuring?:                bool
			arrowParameter?:                    bool
			memberVariableDeclaration?:         bool
			objectDestructuring?:               bool
			parameter?:                         bool
			propertyDeclaration?:               bool
			variableDeclaration?:               bool
			variableDeclarationIgnoreFunction?: bool
			...
		},
		...
	]
])
¶

Require type annotations in certain places https://typescript-eslint.io/rules/typedef

"@typescript-eslint/unbound-method"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreStatic?: bool
			...
		},
		...
	]
])
¶

Enforce unbound methods are called with their expected scope https://typescript-eslint.io/rules/unbound-method

"@typescript-eslint/unified-signatures"?:
click to see definition
matchN(1, [
	#ruleNumber,
	#ruleString,
	list.MaxItems(2) & [_, _, ...] & [
		matchN(1, [#ruleNumber, #ruleString]), {
			ignoreDifferentlyNamedParameters?: bool
			...
		},
		...
	]
])
¶

Disallow two overloads that could be unified into one with a union or an optional/rest parameter https://typescript-eslint.io/rules/unified-signatures

"@typescript-eslint/use-unknown-in-catch-callback-variable"?: _ ¶

Enforce typing arguments in `.catch()` callbacks as `unknown` https://typescript-eslint.io/rules/use-unknown-in-catch-callback-variable

#pluginNames:
click to see definition
list.UniqueItems() & [
	...matchN(
		>=1,
		[
			"eslint-plugin-jest" |
				"eslint-plugin-n" |
				"eslint-plugin-jsx-a11y" |
				"eslint-plugin-react" |
				"eslint-plugin-unused-imports" |
				"eslint-plugin-react-hooks" |
				"eslint-plugin-import" |
				"eslint-plugin-security" |
				"eslint-plugin-unicorn" |
				"eslint-plugin-regexp" |
				"eslint-plugin-ft-flow" |
				"eslint-plugin-prettier" |
				"eslint-plugin-cypress" |
				"eslint-plugin-eslint-plugin" |
				"eslint-plugin-mocha" |
				"eslint-plugin-qunit" |
				"eslint-plugin-jasmine" |
				"eslint-plugin-ember" |
				"eslint-plugin-you-dont-need-lodash-underscore" |
				"@tanstack/eslint-plugin-query" |
				"eslint-plugin-react-perf" |
				"eslint-plugin-no-only-tests" |
				"eslint-plugin-jsdoc" |
				"eslint-plugin-yml" |
				"eslint-plugin-vue" |
				"eslint-plugin-jest-dom" |
				"eslint-plugin-simple-import-sort" |
				"eslint-plugin-ava" |
				"eslint-plugin-es-x" |
				"eslint-plugin-testing-library" |
				"eslint-plugin-i18next" |
				"eslint-plugin-markdown" |
				"eslint-plugin-local-rules" |
				"eslint-plugin-html" |
				"eslint-plugin-sonarjs" |
				"eslint-plugin-lodash" |
				"@next/eslint-plugin-next" |
				"eslint-plugin-perfectionist" |
				"eslint-plugin-canonical" |
				"eslint-plugin-jest-formatting" |
				"eslint-plugin-babel" |
				"eslint-plugin-tailwindcss" |
				"eslint-plugin-flowtype" |
				"eslint-plugin-lit-a11y" |
				"@rushstack/eslint-plugin-security" |
				"eslint-plugin-sort-exports" |
				"eslint-plugin-json" |
				"eslint-plugin-react-native" |
				"eslint-plugin-deprecation" |
				"eslint-plugin-vuejs-accessibility" |
				"eslint-plugin-chai-friendly" |
				"eslint-plugin-check-file" |
				"eslint-plugin-promise" |
				"eslint-plugin-sort-class-members" |
				"eslint-plugin-astro" |
				"eslint-plugin-playwright" |
				"eslint-plugin-typescript-sort-keys" |
				"eslint-plugin-react-refresh" |
				"eslint-plugin-jsonc" |
				"eslint-plugin-ban" |
				"eslint-plugin-tsdoc" |
				"eslint-plugin-vitest" |
				"eslint-plugin-nuxt" |
				"eslint-plugin-i" |
				"eslint-plugin-css-modules" |
				"eslint-plugin-no-secrets",
			string,
		],
	),
]
¶
#ruleNumber: int & >=0 & <=2 ¶

ESLint rule

0 - turns the rule off 1 - turn the rule on as a warning (doesn't affect exit code) 2 - turn the rule on as an error (exit code is 1 when triggered)

#ruleString: "off" | "warn" | "error" ¶

ESLint rule

"off" - turns the rule off "warn" - turn the rule on as a warning (doesn't affect exit code) "error" - turn the rule on as an error (exit code is 1 when triggered)

#Schema: ¶

JSON schema for ESLint configuration files

ecmaFeatures?: ¶

By default, ESLint supports only ECMAScript 5 syntax. You can override that setting to enable support for ECMAScript 6 as well as JSX by using configuration settings.

arrowFunctions?: bool ¶
binaryLiterals?: bool ¶
blockBindings?: bool ¶
classes?: bool ¶
defaultParams?: bool ¶
destructuring?: bool ¶
experimentalObjectRestSpread?: bool ¶

Enables support for the experimental object rest/spread properties (IMPORTANT: This is an experimental feature that may change significantly in the future. It's recommended that you do not write rules relying on this functionality unless you are willing to incur maintenance cost when it changes.)

forOf?: bool ¶
generators?: bool ¶
globalReturn?: bool ¶

allow return statements in the global scope

impliedStrict?: bool ¶

enable global strict mode (if ecmaVersion is 5 or greater)

jsx?: bool ¶

enable JSX

modules?: bool ¶
objectLiteralComputedProperties?: bool ¶
objectLiteralDuplicateProperties?: bool ¶
objectLiteralShorthandMethods?: bool ¶
objectLiteralShorthandProperties?: bool ¶
octalLiterals?: bool ¶
regexUFlag?: bool ¶
regexYFlag?: bool ¶
restParams?: bool ¶
spread?: bool ¶
superInFunctions?: bool ¶
templateStrings?: bool ¶
unicodeCodePointEscapes?: bool ¶
env?: ¶

An environment defines global variables that are predefined.

amd?: bool ¶

defines require() and define() as global variables as per the amd spec

applescript?: bool ¶

AppleScript global variables

atomtest?: bool ¶

Atom test helper globals

browser?: bool ¶

browser global variables

commonjs?: bool ¶

CommonJS global variables and CommonJS scoping (use this for browser-only code that uses Browserify/WebPack)

"shared-node-browser"?: bool ¶

Globals common to both Node and Browser

embertest?: bool ¶

Ember test helper globals

es6?: bool ¶

enable all ECMAScript 6 features except for modules

greasemonkey?: bool ¶

GreaseMonkey globals

jasmine?: bool ¶

adds all of the Jasmine testing global variables for version 1.3 and 2.0

jest?: bool ¶

Jest global variables

jquery?: bool ¶

jQuery global variables

meteor?: bool ¶

Meteor global variables

mocha?: bool ¶

adds all of the Mocha test global variables

mongo?: bool ¶

MongoDB global variables

nashorn?: bool ¶

Java 8 Nashorn global variables

node?: bool ¶

Node.js global variables and Node.js scoping

phantomjs?: bool ¶

PhantomJS global variables

prototypejs?: bool ¶

Prototype.js global variables

protractor?: bool ¶

Protractor global variables

qunit?: bool ¶

QUnit global variables

serviceworker?: bool ¶

Service Worker global variables

shelljs?: bool ¶

ShellJS global variables

webextensions?: bool ¶

WebExtensions globals

worker?: bool ¶

web workers global variables

extends?: #stringOrStringArray ¶
globals?: _#defs."/properties/globals" ¶

Set each global variable name equal to true to allow the variable to be overwritten or false to disallow overwriting.

noInlineConfig?: bool ¶

Prevent comments from changing config or rules

reportUnusedDisableDirectives?: bool ¶

Report unused eslint-disable comments

parser?: _#defs."/properties/parser" ¶
parserOptions?: ¶

The JavaScript language options to be supported

ecmaFeatures?: ¶
arrowFunctions?: bool ¶
binaryLiterals?: bool ¶
blockBindings?: bool ¶
classes?: bool ¶
defaultParams?: bool ¶
destructuring?: bool ¶
experimentalObjectRestSpread?: bool ¶

Enables support for the experimental object rest/spread properties (IMPORTANT: This is an experimental feature that may change significantly in the future. It's recommended that you do not write rules relying on this functionality unless you are willing to incur maintenance cost when it changes.)

forOf?: bool ¶
generators?: bool ¶
globalReturn?: bool ¶

allow return statements in the global scope

impliedStrict?: bool ¶

enable global strict mode (if ecmaVersion is 5 or greater)

jsx?: bool ¶

enable JSX

modules?: bool ¶
objectLiteralComputedProperties?: bool ¶
objectLiteralDuplicateProperties?: bool ¶
objectLiteralShorthandMethods?: bool ¶
objectLiteralShorthandProperties?: bool ¶
octalLiterals?: bool ¶
regexUFlag?: bool ¶
regexYFlag?: bool ¶
restParams?: bool ¶
spread?: bool ¶
superInFunctions?: bool ¶
templateStrings?: bool ¶
unicodeCodePointEscapes?: bool ¶
ecmaVersion?:
click to see definition
3 |
	5 |
	6 |
	2015 |
	7 |
	2016 |
	8 |
	2017 |
	9 |
	2018 |
	10 |
	2019 |
	11 |
	2020 |
	12 |
	2021 |
	13 |
	2022 |
	14 |
	2023 |
	15 |
	2024 |
	"latest"
¶

Set to 3, 5 (default), 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 to specify the version of ECMAScript syntax you want to use. You can also set it to 2015 (same as 6), 2016 (same as 7), 2017 (same as 8), 2018 (same as 9), 2019 (same as 10), 2020 (same as 11), 2021 (same as 12), 2022 (same as 13), 2023 (same as 14), or 2024 (same as 15) to use the year-based naming. You can also set "latest" to use the most recently supported version.

sourceType?: "script" | "module" | "commonjs" ¶

set to "script" (default), "commonjs", or "module" if your code is in ECMAScript modules

plugins?: _#defs."/properties/plugins" ¶

ESLint supports the use of third-party plugins. Before using the plugin, you have to install it using npm.

root?: bool ¶

By default, ESLint will look for configuration files in all parent folders up to the root directory. This can be useful if you want all of your projects to follow a certain convention, but can sometimes lead to unexpected results. To limit ESLint to a specific project, set this to `true` in a configuration in the root of your project.

ignorePatterns?: #stringOrStringArray ¶
rules?: _#defs."/properties/rules" ¶

ESLint comes with a large number of rules. You can modify which rules your project uses either using configuration comments or configuration files.

settings?: _#defs."/properties/settings" ¶

ESLint supports adding shared settings into configuration file. You can add settings object to ESLint configuration file and it will be supplied to every rule that will be executed. This may be useful if you are adding custom rules and want them to have access to the same information and be easily configurable.

overrides?: _#defs."/properties/overrides" ¶

Allows to override configuration for files and folders, specified by glob patterns

#bestPractices: ¶
"accessor-pairs"?: #rule ¶
"array-callback-return"?: #rule ¶
"block-scoped-var"?: #rule ¶
"class-methods-use-this"?: #rule ¶
complexity?: #rule ¶
"consistent-return"?: #rule ¶
curly?: #rule ¶
"default-case"?: #rule ¶
"dot-location"?: #rule ¶
"dot-notation"?: #rule ¶
eqeqeq?: #rule ¶
"guard-for-in"?: #rule ¶
"no-alert"?: #rule ¶
"no-caller"?: #rule ¶
"no-case-declarations"?: #rule ¶
"no-div-regex"?: #rule ¶
"no-else-return"?: #rule ¶
"no-empty-function"?: #rule ¶
"no-empty-pattern"?: #rule ¶
"no-eq-null"?: #rule ¶
"no-eval"?: #rule ¶
"no-extend-native"?: #rule ¶
"no-extra-bind"?: #rule ¶
"no-extra-label"?: #rule ¶
"no-fallthrough"?: #rule ¶
"no-floating-decimal"?: #rule ¶
"no-global-assign"?: #rule ¶
"no-implicit-coercion"?: #rule ¶
"no-implicit-globals"?: #rule ¶
"no-implied-eval"?: #rule ¶
"no-invalid-this"?: #rule ¶
"no-iterator"?: #rule ¶
"no-labels"?: #rule ¶
"no-lone-blocks"?: #rule ¶
"no-loop-func"?: #rule ¶
"no-magic-numbers"?: #rule ¶
"no-multi-spaces"?: #rule ¶
"no-multi-str"?: #rule ¶
"no-native-reassign"?: #rule ¶
"no-new"?: #rule ¶
"no-new-func"?: #rule ¶
"no-new-wrappers"?: #rule ¶
"no-octal"?: #rule ¶
"no-octal-escape"?: #rule ¶
"no-param-reassign"?: #rule ¶
"no-proto"?: #rule ¶
"no-redeclare"?: #rule ¶
"no-restricted-properties"?: #rule ¶
"no-return-assign"?: #rule ¶
"no-return-await"?: #rule ¶
"no-script-url"?: #rule ¶
"no-self-assign"?: #rule ¶
"no-self-compare"?: #rule ¶
"no-sequences"?: #rule ¶
"no-throw-literal"?: #rule ¶
"no-unmodified-loop-condition"?: #rule ¶
"no-unused-expressions"?: #rule ¶
"no-unused-labels"?: #rule ¶
"no-useless-call"?: #rule ¶
"no-useless-concat"?: #rule ¶
"no-useless-escape"?: #rule ¶
"no-useless-return"?: #rule ¶
"no-void"?: #rule ¶
"no-warning-comments"?: #rule ¶
"no-with"?: #rule ¶
"prefer-promise-reject-errors"?: #rule ¶
radix?: #rule ¶
"require-await"?: #rule ¶
"vars-on-top"?: #rule ¶
"wrap-iife"?: #rule ¶
yoda?: #rule ¶
#ecmaScript6: ¶
"arrow-body-style"?: #rule ¶
"arrow-parens"?: #rule ¶
"arrow-spacing"?: #rule ¶
"constructor-super"?: #rule ¶
"generator-star-spacing"?: #rule ¶
"no-class-assign"?: #rule ¶
"no-confusing-arrow"?: #rule ¶
"no-const-assign"?: #rule ¶
"no-dupe-class-members"?: #rule ¶
"no-duplicate-imports"?: #rule ¶
"no-new-symbol"?: #rule ¶
"no-restricted-imports"?: #rule ¶
"no-this-before-super"?: #rule ¶
"no-useless-computed-key"?: #rule ¶
"no-useless-constructor"?: #rule ¶
"no-useless-rename"?: #rule ¶
"no-var"?: #rule ¶
"object-shorthand"?: #rule ¶
"prefer-arrow-callback"?: #rule ¶
"prefer-const"?: #rule ¶
"prefer-destructuring"?: #rule ¶
"prefer-numeric-literals"?: #rule ¶
"prefer-reflect"?: #rule ¶
"prefer-rest-params"?: #rule ¶
"prefer-spread"?: #rule ¶
"prefer-template"?: #rule ¶
"require-yield"?: #rule ¶
"rest-spread-spacing"?: #rule ¶
"sort-imports"?: #rule ¶
"symbol-description"?: #rule ¶
"template-curly-spacing"?: #rule ¶
"yield-star-spacing"?: #rule ¶
#legacy: ¶
"max-depth"?: #rule ¶
"max-len"?: #rule ¶
"max-params"?: #rule ¶
"max-statements"?: #rule ¶
"no-bitwise"?: #rule ¶
"no-plusplus"?: #rule ¶
#nodeAndCommonJs: ¶
"callback-return"?: #rule ¶
"global-require"?: #rule ¶
"handle-callback-err"?: #rule ¶
"no-buffer-constructor"?: #rule ¶
"no-mixed-requires"?: #rule ¶
"no-new-require"?: #rule ¶
"no-path-concat"?: #rule ¶
"no-process-env"?: #rule ¶
"no-process-exit"?: #rule ¶
"no-restricted-modules"?: #rule ¶
"no-sync"?: #rule ¶
#possibleErrors: ¶
"comma-dangle"?: #rule ¶
"for-direction"?: #rule ¶
"getter-return"?: #rule ¶
"no-await-in-loop"?: #rule ¶
"no-compare-neg-zero"?: #rule ¶
"no-cond-assign"?: #rule ¶
"no-console"?: #rule ¶
"no-constant-condition"?: #rule ¶
"no-control-regex"?: #rule ¶
"no-debugger"?: #rule ¶
"no-dupe-args"?: #rule ¶
"no-dupe-keys"?: #rule ¶
"no-duplicate-case"?: #rule ¶
"no-empty"?: #rule ¶
"no-empty-character-class"?: #rule ¶
"no-ex-assign"?: #rule ¶
"no-extra-boolean-cast"?: #rule ¶
"no-extra-parens"?: #rule ¶
"no-extra-semi"?: #rule ¶
"no-func-assign"?: #rule ¶
"no-inner-declarations"?: #rule ¶
"no-invalid-regexp"?: #rule ¶
"no-irregular-whitespace"?: #rule ¶
"no-negated-in-lhs"?: #rule ¶
"no-obj-calls"?: #rule ¶
"no-prototype-builtins"?: #rule ¶
"no-regex-spaces"?: #rule ¶
"no-sparse-arrays"?: #rule ¶
"no-template-curly-in-string"?: #rule ¶
"no-unexpected-multiline"?: #rule ¶
"no-unreachable"?: #rule ¶
"no-unsafe-finally"?: #rule ¶
"no-unsafe-negation"?: #rule ¶
"use-isnan"?: #rule ¶
"valid-jsdoc"?: #rule ¶
"valid-typeof"?: #rule ¶
#rule: matchN(1, [int & >=0 & <=2, "off" | "warn" | "error", [...]]) ¶
#strictMode: ¶
strict?: #rule ¶
#stringOrStringArray: matchN(1, [string, [...string]]) ¶
#stylisticIssues: ¶
"array-bracket-newline"?: #rule ¶
"array-bracket-spacing"?: #rule ¶
"array-element-newline"?: #rule ¶
"block-spacing"?: #rule ¶
"brace-style"?: #rule ¶
camelcase?: #rule ¶
"capitalized-comments"?: #rule ¶
"comma-dangle"?: #rule ¶
"comma-spacing"?: #rule ¶
"comma-style"?: #rule ¶
"computed-property-spacing"?: #rule ¶
"consistent-this"?: #rule ¶
"eol-last"?: #rule ¶
"func-call-spacing"?: #rule ¶
"func-name-matching"?: #rule ¶
"func-names"?: #rule ¶
"func-style"?: #rule ¶
"function-call-argument-newline"?: #rule ¶
"function-paren-newline"?: #rule ¶
"id-blacklist"?: #rule ¶
"id-length"?: #rule ¶
"id-match"?: #rule ¶
"implicit-arrow-linebreak"?: #rule ¶
indent?: #rule ¶
"indent-legacy"?: #rule ¶
"jsx-quotes"?: #rule ¶
"key-spacing"?: #rule ¶
"keyword-spacing"?: #rule ¶
"line-comment-position"?: #rule ¶
"lines-between-class-members"?: #rule ¶
"linebreak-style"?: #rule ¶
"lines-around-comment"?: #rule ¶
"lines-around-directive"?: #rule ¶
"max-depth"?: #rule ¶
"max-len"?: #rule ¶
"max-lines"?: #rule ¶
"max-nested-callbacks"?: #rule ¶
"max-params"?: #rule ¶
"max-statements"?: #rule ¶
"max-statements-per-line"?: #rule ¶
"multiline-comment-style"?: #rule ¶
"multiline-ternary"?: #rule ¶
"new-cap"?: #rule ¶
"newline-after-var"?: #rule ¶
"newline-before-return"?: #rule ¶
"newline-per-chained-call"?: #rule ¶
"new-parens"?: #rule ¶
"no-array-constructor"?: #rule ¶
"no-bitwise"?: #rule ¶
"no-continue"?: #rule ¶
"no-inline-comments"?: #rule ¶
"no-lonely-if"?: #rule ¶
"no-mixed-operators"?: #rule ¶
"no-mixed-spaces-and-tabs"?: #rule ¶
"no-multi-assign"?: #rule ¶
"no-multiple-empty-lines"?: #rule ¶
"no-negated-condition"?: #rule ¶
"no-nested-ternary"?: #rule ¶
"no-new-object"?: #rule ¶
"no-plusplus"?: #rule ¶
"no-restricted-syntax"?: #rule ¶
"no-spaced-func"?: #rule ¶
"no-tabs"?: #rule ¶
"no-ternary"?: #rule ¶
"no-trailing-spaces"?: #rule ¶
"no-underscore-dangle"?: #rule ¶
"no-unneeded-ternary"?: #rule ¶
"no-whitespace-before-property"?: #rule ¶
"nonblock-statement-body-position"?: #rule ¶
"object-curly-newline"?: #rule ¶
"object-curly-spacing"?: #rule ¶
"object-property-newline"?: #rule ¶
"object-shorthand"?: #rule ¶
"one-var"?: #rule ¶
"one-var-declaration-per-line"?: #rule ¶
"operator-assignment"?: #rule ¶
"operator-linebreak"?: #rule ¶
"padded-blocks"?: #rule ¶
"padding-line-between-statements"?: #rule ¶
"quote-props"?: #rule ¶
quotes?: #rule ¶
"require-jsdoc"?: #rule ¶
semi?: #rule ¶
"semi-spacing"?: #rule ¶
"semi-style"?: #rule ¶
"sort-keys"?: #rule ¶
"sort-vars"?: #rule ¶
"space-before-blocks"?: #rule ¶
"space-before-function-paren"?: #rule ¶
"spaced-comment"?: #rule ¶
"space-infix-ops"?: #rule ¶
"space-in-parens"?: #rule ¶
"space-unary-ops"?: #rule ¶
"switch-colon-spacing"?: #rule ¶
"template-tag-spacing"?: #rule ¶
"unicode-bom"?: #rule ¶
"wrap-regex"?: #rule ¶
#variables: ¶
"init-declarations"?: #rule ¶
"no-catch-shadow"?: #rule ¶
"no-delete-var"?: #rule ¶
"no-label-var"?: #rule ¶
"no-restricted-globals"?: #rule ¶
"no-shadow"?: #rule ¶
"no-shadow-restricted-names"?: #rule ¶
"no-undef"?: #rule ¶
"no-undefined"?: #rule ¶
"no-undef-init"?: #rule ¶
"no-unused-vars"?: #rule ¶
"no-use-before-define"?: #rule ¶

Source files

  • Plugins.cue
  • Schema.cue