Dependencies are specified with a simple hash of package name to version range. The version range is a string which has one or more space-separated descriptors. Dependencies can also be identified with a tarball or git URL.
Specifies dependencies that are required for the development and testing of the project. These dependencies are not needed in the production environment.
Specifies requirements for development environment components such as operating systems, runtimes, or package managers. Used to ensure consistent development environments across the team.
URL to a website with details about how to fund the package.
matchN(>=1, [string, "AGPL-3.0-only" | "Apache-2.0" | "BSD-2-Clause" | "BSD-3-Clause" | "BSL-1.0" | "CC0-1.0" | "CDDL-1.0" | "CDDL-1.1" | "EPL-1.0" | "EPL-2.0" | "GPL-2.0-only" | "GPL-3.0-only" | "ISC" | "LGPL-2.0-only" | "LGPL-2.1-only" | "LGPL-2.1-or-later" | "LGPL-3.0-only" | "LGPL-3.0-or-later" | "MIT" | "MPL-2.0" | "MS-PL" | "UNLICENSED"])
Specifies dependencies that are optional for your project. These dependencies are attempted to be installed during the npm install process, but if they fail to install, the installation process will not fail.
Used to specify conditional exports, note that Conditional exports are unsupported in older environments, so it's recommended to use the fallback array option if support for those environments is a concern.
The module path that is resolved when this specifier is imported. Set to `null` to disallow importing this module.
Used to allow fallbacks in case this environment doesn't support the preceding entries.
Used to specify conditional exports, note that Conditional exports are unsupported in older environments, so it's recommended to use the fallback array option if support for those environments is a concern.
The module path that is resolved when this specifier is imported. Set to `null` to disallow importing this module.
Used to allow fallbacks in case this environment doesn't support the preceding entries.
Specifies dependencies that are required by the package but are expected to be provided by the consumer of the package.
When a user installs your package, warnings are emitted if packages specified in "peerDependencies" are not already installed. The "peerDependenciesMeta" field serves to provide more information on how your peer dependencies are utilized. Most commonly, it allows peer dependencies to be marked as optional. Metadata for this field is specified with a simple hash of the package name to a metadata object.
Run AFTER the package is installed.
Run AFTER the package is published.
Run by the 'npm restart' command. Note: 'npm restart' will run the stop and start scripts if no restart script is provided.
Run by the 'npm start' command.
Run by the 'npm stop' command.
Run by the 'npm test' command.
Run BEFORE the package is uninstalled.
Run BEFORE bump the package version.
This helps people discover your package, as it's listed in 'npm search'.
DEPRECATED: Instead, use SPDX expressions, like this: { "license": "ISC" } or { "license": "(MIT OR Apache-2.0)" } see: 'https://docs.npmjs.com/files/package.json#license'.
A list of people who contributed to this package.
A list of people who maintains this package.
matchN(1, [#packageExportsEntryPath, close({
{
[=~"^\\./.+" & !~"^(\\.)$"]: #packageExportsEntryOrFallback
}
"."?: #packageExportsEntryOrFallback
}), #packageExportsEntryObject, #packageExportsFallback])The "exports" field is used to restrict external access to non-exported module files, also enables a module to import itself using "name".
{
[string]: close({
{
[=~"^[^*]+$" & !~"^(\\*)$"]: [...string]
}
{
[=~"^[^*]*\\*[^*]*$" & !~"^(\\*)$"]: [...=~"^[^*]*(?:\\*[^*]*)?$"]
}
"*"?: [...=~"^[^*]*(?:\\*[^*]*)?$"]
})
}The "typesVersions" field is used since TypeScript 3.1 to support features that were only made available in newer TypeScript versions.
string | {
type?: string
url?: string
directory?: string
...
}Specify the place where your code lives. This is helpful for people who want to contribute.
The 'scripts' member is an object hash of script commands that are run at various times in the lifecycle of your package. The key is the lifecycle event, and the value is the command to run at that point.
Run BEFORE the package is published (Also run on local npm install without any arguments).
Run BEFORE the package is prepared and packed, ONLY on npm publish.
Publishes a package to the registry so that it can be installed by name. See https://docs.npmjs.com/cli/v8/commands/npm-publish
Run BEFORE the package is installed.
Run AFTER the package is uninstalled.
Run AFTER bump the package version.
Array of package names that will be bundled when publishing the package.
DEPRECATED: This field is honored, but "bundleDependencies" is the correct field name.
Resolutions is used to support selective version resolutions using yarn, which lets you define custom package versions or ranges inside your dependencies. For npm, use overrides instead. See: https://yarnpkg.com/configuration/manifest#resolutions
Overrides is used to support selective version overrides using npm, which lets you define custom package versions or ranges inside your dependencies. For yarn, use resolutions instead. See: https://docs.npmjs.com/cli/v9/configuring-npm/package-json#overrides
Defines which package manager is expected to be used when working on the current project. This field is currently experimental and needs to be opted-in; see https://nodejs.org/api/corepack.html
Define the runtime and package manager for developing the current project.
Specifies which JavaScript runtimes (like Node.js, Deno, Bun) are supported for development. Values should use WinterCG Runtime Keys (see https://runtime-keys.proposal.wintercg.org/)
Specifies which package managers are supported for development
DEPRECATED: This option used to trigger an npm warning, but it will no longer warn. It is purely there for informational purposes. It is now recommended that you install any binaries as local devDependencies wherever possible.
matchN(>=1, [[...string], {
packages?: [...string]
nohoist?: [...string]
...
}])Allows packages within a directory to depend on one another using direct linking of local files. Additionally, dependencies within a workspace are hoisted to the workspace root when possible to reduce duplication. Note: It's also a good idea to set "private" to true when using this feature.
This helps people discover your package, as it's listed in 'npm search'.
DEPRECATED: Instead, use SPDX expressions, like this: { "license": "ISC" } or { "license": "(MIT OR Apache-2.0)" } see: 'https://docs.npmjs.com/files/package.json#license'.
A list of people who contributed to this package.
A list of people who maintains this package.
matchN(1, [#packageExportsEntryPath, close({
{
[=~"^\\./.+" & !~"^(\\.)$"]: #packageExportsEntryOrFallback
}
"."?: #packageExportsEntryOrFallback
}), #packageExportsEntryObject, #packageExportsFallback])The "exports" field is used to restrict external access to non-exported module files, also enables a module to import itself using "name".
{
[string]: close({
{
[=~"^[^*]+$" & !~"^(\\*)$"]: [...string]
}
{
[=~"^[^*]*\\*[^*]*$" & !~"^(\\*)$"]: [...=~"^[^*]*(?:\\*[^*]*)?$"]
}
"*"?: [...=~"^[^*]*(?:\\*[^*]*)?$"]
})
}The "typesVersions" field is used since TypeScript 3.1 to support features that were only made available in newer TypeScript versions.
string | {
type?: string
url?: string
directory?: string
...
}Specify the place where your code lives. This is helpful for people who want to contribute.
The 'scripts' member is an object hash of script commands that are run at various times in the lifecycle of your package. The key is the lifecycle event, and the value is the command to run at that point.
Run BEFORE the package is published (Also run on local npm install without any arguments).
Run BEFORE the package is prepared and packed, ONLY on npm publish.
Publishes a package to the registry so that it can be installed by name. See https://docs.npmjs.com/cli/v8/commands/npm-publish
Run BEFORE the package is installed.
Run AFTER the package is uninstalled.
Run AFTER bump the package version.
Array of package names that will be bundled when publishing the package.
DEPRECATED: This field is honored, but "bundleDependencies" is the correct field name.
Resolutions is used to support selective version resolutions using yarn, which lets you define custom package versions or ranges inside your dependencies. For npm, use overrides instead. See: https://yarnpkg.com/configuration/manifest#resolutions
Overrides is used to support selective version overrides using npm, which lets you define custom package versions or ranges inside your dependencies. For yarn, use resolutions instead. See: https://docs.npmjs.com/cli/v9/configuring-npm/package-json#overrides
Defines which package manager is expected to be used when working on the current project. This field is currently experimental and needs to be opted-in; see https://nodejs.org/api/corepack.html
Define the runtime and package manager for developing the current project.
Specifies which JavaScript runtimes (like Node.js, Deno, Bun) are supported for development. Values should use WinterCG Runtime Keys (see https://runtime-keys.proposal.wintercg.org/)
Specifies which package managers are supported for development
DEPRECATED: This option used to trigger an npm warning, but it will no longer warn. It is purely there for informational purposes. It is now recommended that you install any binaries as local devDependencies wherever possible.
matchN(>=1, [[...string], {
packages?: [...string]
nohoist?: [...string]
...
}])Allows packages within a directory to depend on one another using direct linking of local files. Additionally, dependencies within a workspace are hoisted to the workspace root when possible to reduce duplication. Note: It's also a good idea to set "private" to true when using this feature.
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.
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.)
allow return statements in the global scope
enable global strict mode (if ecmaVersion is 5 or greater)
An environment defines global variables that are predefined.
AppleScript global variables
Ember test helper globals
GreaseMonkey globals
PhantomJS global variables
Prototype.js global variables
Protractor global variables
Service Worker global variables
WebExtensions globals
Prevent comments from changing config or rules
Report unused eslint-disable comments
The JavaScript language options to be supported
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.)
allow return statements in the global scope
enable global strict mode (if ecmaVersion is 5 or greater)
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.
set to "script" (default), "commonjs", or "module" if your code is in ECMAScript modules
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.
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.
Allows to override configuration for files and folders, specified by glob patterns
Include parentheses around a sole arrow function parameter.
Put > of opening tags on the last line instead of on a new line.
Print spaces between brackets.
Check whether the file's first docblock comment contains '@noprettier' or '@noformat' to determine if it should be formatted.
Print (to stderr) where a cursor at the given position would move to after formatting.
Control how Prettier formats quoted code embedded in the file.
Which end of line characters to apply.
Where to print operators when binary expressions wrap lines.
Use curious ternaries, with the question mark after the condition.
How to handle whitespaces in HTML.
Insert @format pragma into file's first docblock comment.
Use single quotes in JSX.
How to wrap object literals.
matchN(>=1, ["flow", "babel", "babel-flow", "babel-ts", "typescript", "acorn", "espree", "meriyah", "css", "less", "scss", "json", "json5", "jsonc", "json-stringify", "graphql", "markdown", "mdx", "vue", "yaml", "glimmer", "html", "angular", "lwc", "mjml", string])
Which parser to use.
The line length where Prettier will try wrap.
How to wrap prose.
Change when properties in objects are quoted.
Format code starting at a given character offset. The range will extend backwards to the start of the first line containing the selected statement.
Require either '@prettier' or '@format' to be present in the file's first docblock comment in order for it to be formatted.
Enforce single attribute per line in HTML, Vue and JSX.
Use single quotes instead of double quotes.
Print trailing commas wherever possible when multi-line.
Indent script and style tags in Vue files.
[...close({
files!: matchN(1, [string, [...string]])
excludeFiles?: matchN(1, [string, [...string]])
options?: #optionsDefinition
})]Provide a list of patterns to override prettier configuration.
Specify a custom syntax to use on your code.
[...{
files?: [...string]
customSyntax?: string
rules?: #allRules
...
}]Provide rule and behavior overrides for files that match particular glob patterns.
Processors are functions that hook into stylelint's pipeline, modifying code on its way into stylelint and modifying results on their way out
Ignore stylelint-disable (e.g. /* stylelint-disable block-no-empty */) comments.
The default severity level for all rules that do not have a severity specified in their secondary options
matchN(30, [#atRule & {
...
}, #block & {
...
}, #color & {
...
}, #comment & {
...
}, #customMedia & {
...
}, #customProperty & {
...
}, #declaration & {
...
}, #declarationBlock & {
...
}, #font & {
...
}, #function & {
...
}, #generalSheet & {
...
}, #keyframeDeclaration & {
...
}, #length & {
...
}, #lightness & {
...
}, #mediaFeature & {
...
}, #mediaQuery & {
...
}, #mediaQueryList & {
...
}, #number & {
...
}, #property & {
...
}, #rootRule & {
...
}, #rule & {
...
}, #selector & {
...
}, #selectorList & {
...
}, #shorthandProperty & {
...
}, #string & {
...
}, #stylelintDisableComment & {
...
}, #time & {
...
}, #unit & {
...
}, #value & {
...
}, #valueList & {
...
}])matchN(1, [null, "always" | "always-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-multi-line", #coreRule & (string | {
...
})])]])matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & (string | {
...
})])]])matchN(1, [null | string, list.UniqueItems() & [_, ...] & [...matchN(>=1, [#simpleArrayStringRule & (string | [...] | {
...
}), #coreRule & (string | [...] | {
...
})])]])null | bool | number | string | [...] | {
"at-rule-blacklist"?: #arrayStringRule
"at-rule-empty-line-before"?: matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."all-nested" | "after-same-name" | "inside-block" | "blockless-after-same-name-blockless" | "blockless-after-blockless" | "first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment" | "first-nested" | "inside-block" | "blockless-after-same-name-blockless" | "blockless-after-blockless"]
ignoreAtRules?: #simpleStringOrArrayStringRule
...
}])]])
"at-rule-name-case"?: #lowerUpperRule
"at-rule-name-newline-after"?: #alwaysMultiLineRule
"at-rule-name-space-after"?: matchN(1, [null, "always" | "always-single-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-single-line", #coreRule & (string | {
...
})])]])
"at-rule-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreAtRules?: #simpleArrayStringRule
...
}])]])
"at-rule-no-vendor-prefix"?: #booleanRule
"at-rule-semicolon-newline-after"?: matchN(1, [null, "always", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always", #coreRule & (string | {
...
})])]])
"at-rule-semicolon-space-before"?: _
"at-rule-whitelist"?: #arrayStringRule
...
}null | bool | number | string | [...] | {
"block-closing-brace-empty-line-before"?: matchN(1, [null, "always-multi-line" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always-multi-line" | "never", #coreRule & (string | {
...
})])]])
"block-closing-brace-newline-after"?: #newlineSpaceWithIgnoreRule
"block-closing-brace-newline-before"?: #newlineRule
"block-closing-brace-space-after"?: #newlineSpaceRule
"block-closing-brace-space-before"?: #newlineSpaceRule
"block-no-empty"?: #booleanRule
"block-no-single-line"?: #booleanRule
"block-opening-brace-newline-after"?: #newlineRule
"block-opening-brace-newline-before"?: matchN(1, [null, "always" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", #coreRule & (string | {
...
})])]])
"block-opening-brace-space-after"?: #newlineSpaceRule
"block-opening-brace-space-before"?: #newlineSpaceWithIgnoreRule
...
}matchN(1, [null, bool, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [bool, #coreRule & (bool | {
...
})])]])null | bool | number | string | [...] | {
"color-hex-case"?: #lowerUpperRule
"color-hex-length"?: matchN(1, [null, "short" | "long", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["short" | "long", #coreRule & (string | {
...
})])]])
"color-named"?: matchN(1, [null, "always-where-possible" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always-where-possible" | "never", #coreRule & {
...
} & {
ignore?: #simpleArrayStringRule
...
}])]])
"color-no-hex"?: #booleanRule
"color-no-invalid-hex"?: #booleanRule
...
}null | bool | number | string | [...] | {
"comment-empty-line-before"?: matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."between-comments" | "after-comment" | "stylelint-command" | "stylelint-commands"]
...
}])]])
"comment-no-empty"?: #booleanRule
"comment-whitespace-inside"?: #alwaysNeverRule
"comment-word-blacklist"?: #arrayStringRule
...
}null | bool | number | string | [...] | {
"custom-media-pattern"?: #stringRule
"no-unknown-custom-media"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
...
}null | bool | number | string | [...] | {
"custom-property-empty-line-before"?: matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."after-comment" | "after-custom-property" | "first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment" | "inside-single-line-block"]
...
}])]])
"custom-property-no-outside-root"?: #booleanRule
"custom-property-pattern"?: #stringRule
"no-unknown-custom-properties"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
...
}null | bool | number | string | [...] | {
"declaration-bang-space-after"?: #alwaysNeverRule
"declaration-bang-space-before"?: #alwaysNeverRule
"declaration-colon-newline-after"?: #alwaysMultiLineRule
"declaration-colon-space-after"?: matchN(1, [null, "always" | "never" | "always-single-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-single-line", #coreRule & (string | {
...
})])]])
"declaration-colon-space-before"?: #alwaysNeverRule
"declaration-empty-line-before"?: matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."after-comment" | "after-declaration" | "first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment" | "after-declaration" | "first-nested" | "inside-single-line-block"]
...
}])]])
"declaration-no-important"?: #booleanRule
"declaration-property-unit-blacklist"?: #objectRule
"declaration-property-unit-whitelist"?: #objectRule
"declaration-property-value-blacklist"?: #objectRule
"declaration-property-value-no-unknown"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule & {
...
} & {
ignoreProperties?: {
[string]: matchN(>=1, [matchN(1, [string, [...string]]), matchN(1, [matchN(1, [{
...
}, =~"^\\/.+\\/i?$"]), [...matchN(>=1, [{
...
}, =~"^\\/.+\\/i?$"])]])])
}
propertiesSyntax?: {
[string]: matchN(1, [string, [...string]])
}
typesSyntax?: {
[string]: matchN(1, [string, [...string]])
}
...
}, ...]])
"declaration-property-value-whitelist"?: #objectRule
...
}null | bool | number | string | [...] | {
"declaration-block-no-duplicate-properties"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."consecutive-duplicates" | "consecutive-duplicates-with-different-values" | "consecutive-duplicates-with-different-syntaxes" | "consecutive-duplicates-with-same-prefixless-values"]
ignoreProperties?: #simpleArrayStringRule
...
}])]])
"declaration-block-no-ignored-properties"?: #booleanRule
"declaration-block-no-redundant-longhand-properties"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreShorthands?: #simpleArrayStringRule
...
}])]])
"declaration-block-no-shorthand-property-overrides"?: #booleanRule
"declaration-block-properties-order"?: matchN(1, [null, "alphabetical", list.UniqueItems() & [_, ...] & [...matchN(>=1, ["alphabetical", string, #simpleArrayStringRule & (string | [...] | {
...
}), #coreRule & {
...
} & {
order?: _
if order != _|_ // explicit error (_|_ literal) in source
{
properties!: _
}
properties?: _
if properties != _|_ // explicit error (_|_ literal) in source
{
order!: _
}
{}
unspecified?: "top" | "bottom" | "bottomAlphabetical" | "ignore"
order?: "strict" | "flexible"
properties?: #simpleArrayStringRule
...
}])]])
"declaration-block-semicolon-newline-after"?: #newlineRule
"declaration-block-semicolon-newline-before"?: #newlineRule
"declaration-block-semicolon-space-after"?: #spaceRule
"declaration-block-semicolon-space-before"?: #spaceRule
"declaration-block-single-line-max-declarations"?: #integerRule
"declaration-block-trailing-semicolon"?: #alwaysNeverRule
...
}null | bool | number | string | [...] | {
"font-family-name-quotes"?: matchN(1, [null, "always-where-required" | "always-where-recommended" | "always-unless-keyword", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always-where-required" | "always-where-recommended" | "always-unless-keyword", #coreRule & (string | {
...
})])]])
"font-weight-notation"?: matchN(1, [null, "numeric" | "named-where-possible", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["numeric" | "named-where-possible", #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."relative"]
...
}])]])
...
}null | bool | number | string | [...] | {
"function-blacklist"?: #arrayStringRule
"function-calc-no-unspaced-operator"?: #booleanRule
"function-comma-newline-after"?: #newlineRule
"function-comma-newline-before"?: #newlineRule
"function-comma-space-after"?: #spaceRule
"function-comma-space-before"?: #spaceRule
"function-linear-gradient-no-nonstandard-direction"?: #booleanRule
"function-max-empty-lines"?: #integerRule
"function-name-case"?: matchN(1, [null, "lower" | "upper", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["lower" | "upper", #coreRule & {
...
} & {
ignoreFunctions?: #simpleArrayStringRule
...
}])]])
"function-parentheses-newline-inside"?: #newlineRule
"function-parentheses-space-inside"?: #spaceRule
"function-url-data-uris"?: #alwaysNeverRule
"function-url-no-scheme-relative"?: #booleanRule
"function-url-quotes"?: #alwaysNeverRule
"function-url-scheme-whitelist"?: #arrayStringRule
"function-whitelist"?: #arrayStringRule
"function-whitespace-after"?: #alwaysNeverRule
...
}null | bool | number | string | [...] | {
indentation?: matchN(1, [null | int, "tab", list.UniqueItems() & [_, ...] & [...int], list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [int, "tab", #coreRule & {
...
} & {
indentInsideParens?: "twice" | "once-at-root-twice-in-block"
except?: list.UniqueItems() & [_, ...] & [..."block" | "param" | "value"]
ignore?: list.UniqueItems() & [_, ...] & [..."inside-parens" | "param" | "value"]
...
}]) & (int | string | {
...
})]]) & (null | int | string | [...])
linebreaks?: _
"max-empty-lines"?: #integerRule
"max-line-length"?: matchN(1, [null | int, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [int, #coreRule & {
...
} & {
ignore?: matchN(>=1, ["non-comments" | "comments", list.UniqueItems() & [_, ...] & [..."non-comments" | "comments"]])
...
}]) & (int | {
...
})]]) & (null | int | [...])
"max-nesting-depth"?: matchN(1, [null | int, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [int, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."at-rules-without-declaration-blocks" | "blockless-at-rules" | "pseudo-classes"]
ignoreAtRules?: #simpleArrayStringRule
...
}]) & (int | {
...
})]]) & (null | int | [...])
"no-browser-hacks"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
browsers?: #simpleStringOrArrayStringRule
...
}])]])
"no-descending-specificity"?: #booleanRule
"no-duplicate-selectors"?: #booleanRule
"no-empty-first-line"?: _
"no-empty-source"?: #booleanRule
"no-eol-whitespace"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."empty-lines"]
...
}])]])
"no-extra-semicolons"?: #booleanRule
"no-indistinguishable-colors"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
threshold?: int & >=0 & <=100
ignore?: #simpleArrayStringRule
whitelist?: list.UniqueItems() & [_, ...] & [...#simpleArrayStringRule]
...
}])]])
"no-invalid-double-slash-comments"?: #booleanRule
"no-missing-end-of-source-newline"?: #booleanRule
"no-unknown-animations"?: #booleanRule
"unicode-bom"?: #alwaysNeverRule
"no-unsupported-browser-features"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
browsers?: string
ignore?: #simpleStringOrArrayStringRule
...
}])]])
...
}matchN(1, [null | int, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...#coreRule & (number | {
...
}) & (int | {
...
})]]) & (null | int | [...])null | bool | number | string | [...] | {
"lightness-notation"?: matchN(1, [matchN(1, ["percentage" | "number", null]), list.MaxItems(2) & [_, ...] & [matchN(1, ["percentage" | "number", null]), #coreRule, ...]])
...
}matchN(1, [null, "lower" | "upper", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["lower" | "upper", #coreRule & (string | {
...
})])]])null | bool | number | string | [...] | {
"media-feature-colon-space-after"?: #alwaysNeverRule
"media-feature-colon-space-before"?: #alwaysNeverRule
"media-feature-name-case"?: #lowerUpperRule
"media-feature-name-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreMediaFeatureNames?: #simpleArrayStringRule
...
}])]])
"media-feature-name-value-no-unknown"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
"media-feature-name-no-vendor-prefix"?: #booleanRule
"media-feature-name-unit-allowed-list"?: matchN(1, [matchN(1, [{
[string]: matchN(1, [string, [...string]])
}, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [{
[string]: matchN(1, [string, [...string]])
}, null]), #coreRule, ...]])
"media-feature-no-missing-punctuation"?: #booleanRule
"media-feature-parentheses-space-inside"?: #alwaysNeverRule
"media-feature-range-notation"?: matchN(1, [matchN(1, ["prefix" | "context", null]), list.MaxItems(2) & [_, ...] & [matchN(1, ["prefix" | "context", null]), #coreRule, ...]])
"media-feature-range-operator-space-after"?: #alwaysNeverRule
"media-feature-range-operator-space-before"?: #alwaysNeverRule
...
}null | bool | number | string | [...] | {
"media-query-no-invalid"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
...
}null | bool | number | string | [...] | {
"media-query-list-comma-newline-after"?: #newlineRule
"media-query-list-comma-newline-before"?: #newlineRule
"media-query-list-comma-space-after"?: #spaceRule
"media-query-list-comma-space-before"?: #spaceRule
...
}matchN(1, [null, "always" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-multi-line" | "never-multi-line", #coreRule & (string | {
...
})])]])matchN(1, [null, "always" | "never" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", #coreRule & (string | {
...
})])]])matchN(1, [null, "always" | "never" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", #coreRule & {
...
} & {
ignoreAtRules?: #simpleStringOrArrayStringRule
...
}])]])matchN(1, [null, {
[string]: #simpleStringOrArrayStringRule
}, list.MaxItems(2) & [_, _, ...] & [{
[string]: #simpleStringOrArrayStringRule
}, #coreRule, ...]])null | bool | number | string | [...] | {
"property-blacklist"?: #arrayStringRule
"property-case"?: #lowerUpperRule
"property-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreProperties?: #simpleArrayStringRule
checkPrefixed?: bool
...
}])]])
"property-no-vendor-prefix"?: #booleanRule
"property-whitelist"?: #arrayStringRule
...
}null | bool | number | string | [...] | {
"rule-nested-empty-line-before"?: matchN(1, [null, "always" | "never" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-multi-line" | "never-multi-line", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment"]
...
}])]])
"rule-non-nested-empty-line-before"?: matchN(1, [null, "always" | "never" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-multi-line" | "never-multi-line", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."after-single-line-comment"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment"]
...
}])]])
...
}null | bool | number | string | [...] | {
"selector-anb-no-unmatchable"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
"selector-attribute-brackets-space-inside"?: #alwaysNeverRule
"selector-attribute-operator-blacklist"?: #arrayStringRule
"selector-attribute-operator-space-after"?: #alwaysNeverRule
"selector-attribute-operator-space-before"?: #alwaysNeverRule
"selector-attribute-operator-whitelist"?: #arrayStringRule
"selector-attribute-quotes"?: #alwaysNeverRule
"selector-class-pattern"?: matchN(1, [null | string, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [string, #coreRule & {
...
} & {
resolveNestedSelectors?: bool
...
}])]])
"selector-combinator-space-after"?: #alwaysNeverRule
"selector-combinator-space-before"?: #alwaysNeverRule
"selector-descendant-combinator-no-non-space"?: #booleanRule
"selector-id-pattern"?: #stringRule
"selector-max-compound-selectors"?: #integerRule
"selector-max-specificity"?: #stringRule
"selector-nested-pattern"?: #stringRule
"selector-no-attribute"?: #booleanRule
"selector-no-combinator"?: #booleanRule
"selector-no-id"?: #booleanRule
"selector-no-qualifying-type"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."attribute" | "class" | "id"]
...
}])]])
"selector-no-type"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."compounded" | "descendant"]
ignoreTypes?: #simpleArrayStringRule
...
}])]])
"selector-no-universal"?: #booleanRule
"selector-no-vendor-prefix"?: #booleanRule
"selector-pseudo-class-case"?: #lowerUpperRule
"selector-pseudo-class-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignorePseudoClasses?: #simpleArrayStringRule
...
}])]])
"selector-pseudo-class-parentheses-space-inside"?: #alwaysNeverRule
"selector-pseudo-class-whitelist"?: #arrayStringRule
"selector-pseudo-element-case"?: #lowerUpperRule
"selector-pseudo-element-colon-notation"?: #singleDoubleRule
"selector-pseudo-element-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignorePseudoElements?: #simpleArrayStringRule
...
}])]])
"selector-root-no-composition"?: #booleanRule
"selector-type-case"?: #lowerUpperRule
"selector-type-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreTypes?: #simpleArrayStringRule
...
}])]])
"selector-max-empty-lines"?: #integerRule
...
}null | bool | number | string | [...] | {
"selector-list-comma-newline-after"?: #newlineRule
"selector-list-comma-newline-before"?: #newlineRule
"selector-list-comma-space-after"?: #spaceRule
"selector-list-comma-space-before"?: #spaceRule
...
}matchN(1, [null, "single" | "double", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["single" | "double", #coreRule & (string | {
...
})])]])matchN(1, [null, "always" | "never" | "always-single-line" | "never-single-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-single-line" | "never-single-line", #coreRule & (string | {
...
})])]])matchN(1, [null | string, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [string, #coreRule & (string | {
...
})])]])null | bool | number | string | [...] | {
"stylelint-disable-reason"?: matchN(1, [null, "always-before" | "always-after", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always-before" | "always-after", #coreRule & (string | {
...
})])]])
...
}null | bool | number | string | [...] | {
"unit-blacklist"?: #unitRule
"unit-case"?: #lowerUpperRule
"unit-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreUnits?: #simpleArrayStringRule
...
}])]])
"unit-whitelist"?: #unitRule
...
}matchN(1, [null, "em" | "ex" | "px" | "%" | "rem" | "vw" | "vh" | "vm" | "vmin" | "vmax" | "ch" | "in" | "cm" | "mm" | "q" | "pt" | "pc" | "deg" | "grad" | "rad" | "turn" | "ms" | "s" | "Hz" | "kHz" | "dpi" | "dpcm" | "dppx" | "fr", list.UniqueItems() & [_, ...] & [...matchN(>=1, ["em" | "ex" | "px" | "%" | "rem" | "vw" | "vh" | "vm" | "vmin" | "vmax" | "ch" | "in" | "cm" | "mm" | "q" | "pt" | "pc" | "deg" | "grad" | "rad" | "turn" | "ms" | "s" | "Hz" | "kHz" | "dpi" | "dpcm" | "dppx" | "fr", list.UniqueItems() & [_, ...] & [..."em" | "ex" | "px" | "%" | "rem" | "vw" | "vh" | "vm" | "vmin" | "vmax" | "ch" | "in" | "cm" | "mm" | "q" | "pt" | "pc" | "deg" | "grad" | "rad" | "turn" | "ms" | "s" | "Hz" | "kHz" | "dpi" | "dpcm" | "dppx" | "fr"], #coreRule & {
...
} & {
ignoreProperties?: {
{
[=~"(em|ex|ch|vw|vh|cm|mm|in|pt|pc|px|rem|vmin|vmax|%)"]: #simpleArrayStringRule
}
...
}
...
}])]])null | bool | number | string | [...] | {
"value-keyword-case"?: matchN(1, [null, "lower" | "upper", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["lower" | "upper", #coreRule & {
...
} & {
ignoreKeywords?: #simpleArrayStringRule
...
}])]])
"value-no-vendor-prefix"?: #booleanRule
...
}null | bool | number | string | [...] | {
"value-list-comma-newline-after"?: #newlineRule
"value-list-comma-newline-before"?: #newlineRule
"value-list-comma-space-after"?: #spaceRule
"value-list-comma-space-before"?: #spaceRule
"value-list-max-empty-lines"?: #integerRule
...
}Max number of test files running at the same time (default: CPU cores)
Use worker threads to run tests (enabled by default). If `false`, tests will run in child processes
If `false`, does not fail a test if it doesn't run assertions
environment variables
Specifies environment variables to be made available to the tests. The environment variables defined here override the ones from `process.env`
matchN(>=1, [#."array-of-strings", {
{
[=~"^(c|m)?js$"]: true
}
{
[!~"^(c|m)?js$" & !~"^()$"]: "commonjs" | "module"
}
}])Extensions of test files. Setting this overrides the default `["cjs", "mjs", "js"]` value, so make sure to include those extensions in the list. Experimentally you can configure how files are loaded
Timeouts in AVA behave differently than in other test frameworks. AVA resets a timer after each test, forcing tests to quit if no new test results were received within the specified timeout. This can be used to handle stalled tests. See our timeout documentation for more options
If `false`, disable parallel builds (default: `true`)
configuration
Configures @ava/typescript for projects that precompile TypeScript. Alternatively, you can use `ts-node` to do live testing without transpiling, in which case you shouldn't use the `typescript` property
paths
AVA searches your entire project for `*.js`, `*.cjs`, `*.mjs` and `*.ts` files (or other extensions you've configured). It will ignore such files found in the `rewritePaths` targets (e.g. `build/`). If you use more specific paths, for instance `build/main/`, you may need to change AVA's `files` configuration to ignore other directories. Paths are relative to your project directory
List of modules or file paths containing a shareable configuration. If multiple shareable configurations are set, they will be imported in the order defined with each configuration option taking precedence over the options defined in a previous shareable configuration
The git repository URL
The Git tag format used by semantic-release to identify releases. The tag name is generated with Lodash template and will be compiled with the version variable.
minimum size of code block in tokens to check for duplication
maximum allowed duplicate lines expressed as a percentage; exit with error and exit code 1 when threshold exceeded
custom mapping from formats to file extensions (default: https://github.com/kucherenko/jscpd/blob/master/packages/tokenizer/src/formats.ts); see https://github.com/kucherenko/jscpd/blob/master/supported_formats.md
ignore code blocks matching these regular expressions
mode of detection quality; see https://github.com/kucherenko/jscpd/blob/master/packages/jscpd/README.md#mode
list of formats for which to detect duplication (default: all); see https://github.com/kucherenko/jscpd/blob/master/supported_formats.md
a list of reporters to use to output information about duplication; see https://github.com/kucherenko/jscpd/blob/master/packages/jscpd/README.md#reporters
do not follow symlinks
skip duplicates within folders; just detect cross-folder duplicates
ignore case of symbols in code (experimental)
ignore all files from .gitignore file
SVG width of icon to display in front of badge subject text; set this if icon is not square
"abap" | "actionscript" | "ada" | "apacheconf" | "apl" | "applescript" | "arduino" | "arff" | "asciidoc" | "asm6502" | "aspnet" | "autohotkey" | "autoit" | "bash" | "basic" | "batch" | "bison" | "brainfuck" | "bro" | "c" | "c-header" | "clike" | "clojure" | "coffeescript" | "comments" | "cpp" | "cpp-header" | "crystal" | "csharp" | "csp" | "css-extras" | "css" | "d" | "dart" | "diff" | "django" | "docker" | "eiffel" | "elixir" | "elm" | "erb" | "erlang" | "flow" | "fortran" | "fsharp" | "gedcom" | "gherkin" | "git" | "glsl" | "go" | "graphql" | "groovy" | "haml" | "handlebars" | "haskell" | "haxe" | "hpkp" | "hsts" | "http" | "ichigojam" | "icon" | "inform7" | "ini" | "io" | "j" | "java" | "javascript" | "jolie" | "json" | "jsx" | "julia" | "keymap" | "kotlin" | "latex" | "less" | "liquid" | "lisp" | "livescript" | "lolcode" | "lua" | "makefile" | "markdown" | "markup" | "matlab" | "mel" | "mizar" | "monkey" | "n4js" | "nasm" | "nginx" | "nim" | "nix" | "nsis" | "objectivec" | "ocaml" | "opencl" | "oz" | "parigp" | "pascal" | "perl" | "php" | "plsql" | "powershell" | "processing" | "prolog" | "properties" | "protobuf" | "pug" | "puppet" | "pure" | "python" | "q" | "qore" | "r" | "reason" | "renpy" | "rest" | "rip" | "roboconf" | "ruby" | "rust" | "sas" | "sass" | "scala" | "scheme" | "scss" | "smalltalk" | "smarty" | "soy" | "sql" | "stylus" | "swift" | "tap" | "tcl" | "textile" | "tsx" | "tt2" | "twig" | "typescript" | "vbnet" | "velocity" | "verilog" | "vhdl" | "vim" | "visual-basic" | "wasm" | "url" | "wiki" | "xeora" | "xojo" | "xquery" | "yaml"
Defines pnpm specific configuration.
Used to override any dependency in the dependency graph.
close({
[=~"^.+$"]: close({
dependencies?: #dependency
optionalDependencies?: #optionalDependency
peerDependencies?: #peerDependency
peerDependenciesMeta?: #peerDependencyMeta
})
})Used to extend the existing package definitions with additional information.
pnpm will not print warnings about missing peer dependencies from this list.
Unmet peer dependency warnings will not be printed for peer dependencies of the specified range.
A list of dependencies to run builds for.
A list of package names that are allowed to be executed during installation.
Specifies a JSON file that lists the only packages permitted to run installation scripts during the pnpm install process.
A list of package names that should not be built during installation.
A list of deprecated versions that the warnings are suppressed.
A list of dependencies that are patched.
When true, installation won't fail if some of the patches from the "patchedDependencies" field were not applied.
When true, installation won't fail if some of the patches from the "patchedDependencies" field were not applied.
A list of packages that should be ignored when running "pnpm outdated" or "pnpm update --latest".
Configurational dependencies are installed before all the other types of dependencies (before 'dependencies', 'devDependencies', 'optionalDependencies').
A list of CVE IDs that will be ignored by "pnpm audit".
A list of GHSA Codes that will be ignored by "pnpm audit".
A list of scripts that must exist in each project.
A list of optional dependencies that the install should be skipped.
Specifies which exact Node.js version should be used for the project's runtime.
Defines the StackBlitz configuration for the project.
StackBlitz automatically installs npm dependencies when opening a project.
A terminal command to be executed when opening the project, after installing npm dependencies.
The compileTrigger option controls how file changes in the editor are written to the WebContainers in-memory filesystem.
Dependencies are specified with a simple hash of package name to version range. The version range is a string which has one or more space-separated descriptors. Dependencies can also be identified with a tarball or git URL.
Specifies dependencies that are required for the development and testing of the project. These dependencies are not needed in the production environment.
Specifies requirements for development environment components such as operating systems, runtimes, or package managers. Used to ensure consistent development environments across the team.
URL to a website with details about how to fund the package.
matchN(>=1, [string, "AGPL-3.0-only" | "Apache-2.0" | "BSD-2-Clause" | "BSD-3-Clause" | "BSL-1.0" | "CC0-1.0" | "CDDL-1.0" | "CDDL-1.1" | "EPL-1.0" | "EPL-2.0" | "GPL-2.0-only" | "GPL-3.0-only" | "ISC" | "LGPL-2.0-only" | "LGPL-2.1-only" | "LGPL-2.1-or-later" | "LGPL-3.0-only" | "LGPL-3.0-or-later" | "MIT" | "MPL-2.0" | "MS-PL" | "UNLICENSED"])
Specifies dependencies that are optional for your project. These dependencies are attempted to be installed during the npm install process, but if they fail to install, the installation process will not fail.
Used to specify conditional exports, note that Conditional exports are unsupported in older environments, so it's recommended to use the fallback array option if support for those environments is a concern.
The module path that is resolved when this specifier is imported. Set to `null` to disallow importing this module.
Used to allow fallbacks in case this environment doesn't support the preceding entries.
Used to specify conditional exports, note that Conditional exports are unsupported in older environments, so it's recommended to use the fallback array option if support for those environments is a concern.
The module path that is resolved when this specifier is imported. Set to `null` to disallow importing this module.
Used to allow fallbacks in case this environment doesn't support the preceding entries.
Specifies dependencies that are required by the package but are expected to be provided by the consumer of the package.
When a user installs your package, warnings are emitted if packages specified in "peerDependencies" are not already installed. The "peerDependenciesMeta" field serves to provide more information on how your peer dependencies are utilized. Most commonly, it allows peer dependencies to be marked as optional. Metadata for this field is specified with a simple hash of the package name to a metadata object.
Run AFTER the package is installed.
Run AFTER the package is published.
Run by the 'npm restart' command. Note: 'npm restart' will run the stop and start scripts if no restart script is provided.
Run by the 'npm start' command.
Run by the 'npm stop' command.
Run by the 'npm test' command.
Run BEFORE the package is uninstalled.
Run BEFORE bump the package version.
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.
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.)
allow return statements in the global scope
enable global strict mode (if ecmaVersion is 5 or greater)
An environment defines global variables that are predefined.
AppleScript global variables
Ember test helper globals
GreaseMonkey globals
PhantomJS global variables
Prototype.js global variables
Protractor global variables
Service Worker global variables
WebExtensions globals
Prevent comments from changing config or rules
Report unused eslint-disable comments
The JavaScript language options to be supported
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.)
allow return statements in the global scope
enable global strict mode (if ecmaVersion is 5 or greater)
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.
set to "script" (default), "commonjs", or "module" if your code is in ECMAScript modules
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.
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.
Allows to override configuration for files and folders, specified by glob patterns
Include parentheses around a sole arrow function parameter.
Put > of opening tags on the last line instead of on a new line.
Print spaces between brackets.
Check whether the file's first docblock comment contains '@noprettier' or '@noformat' to determine if it should be formatted.
Print (to stderr) where a cursor at the given position would move to after formatting.
Control how Prettier formats quoted code embedded in the file.
Which end of line characters to apply.
Where to print operators when binary expressions wrap lines.
Use curious ternaries, with the question mark after the condition.
How to handle whitespaces in HTML.
Insert @format pragma into file's first docblock comment.
Use single quotes in JSX.
How to wrap object literals.
matchN(>=1, ["flow", "babel", "babel-flow", "babel-ts", "typescript", "acorn", "espree", "meriyah", "css", "less", "scss", "json", "json5", "jsonc", "json-stringify", "graphql", "markdown", "mdx", "vue", "yaml", "glimmer", "html", "angular", "lwc", "mjml", string])
Which parser to use.
The line length where Prettier will try wrap.
How to wrap prose.
Change when properties in objects are quoted.
Format code starting at a given character offset. The range will extend backwards to the start of the first line containing the selected statement.
Require either '@prettier' or '@format' to be present in the file's first docblock comment in order for it to be formatted.
Enforce single attribute per line in HTML, Vue and JSX.
Use single quotes instead of double quotes.
Print trailing commas wherever possible when multi-line.
Indent script and style tags in Vue files.
[...close({
files!: matchN(1, [string, [...string]])
excludeFiles?: matchN(1, [string, [...string]])
options?: #optionsDefinition
})]Provide a list of patterns to override prettier configuration.
Specify a custom syntax to use on your code.
[...{
files?: [...string]
customSyntax?: string
rules?: #allRules
...
}]Provide rule and behavior overrides for files that match particular glob patterns.
Processors are functions that hook into stylelint's pipeline, modifying code on its way into stylelint and modifying results on their way out
Ignore stylelint-disable (e.g. /* stylelint-disable block-no-empty */) comments.
The default severity level for all rules that do not have a severity specified in their secondary options
matchN(30, [#atRule & {
...
}, #block & {
...
}, #color & {
...
}, #comment & {
...
}, #customMedia & {
...
}, #customProperty & {
...
}, #declaration & {
...
}, #declarationBlock & {
...
}, #font & {
...
}, #function & {
...
}, #generalSheet & {
...
}, #keyframeDeclaration & {
...
}, #length & {
...
}, #lightness & {
...
}, #mediaFeature & {
...
}, #mediaQuery & {
...
}, #mediaQueryList & {
...
}, #number & {
...
}, #property & {
...
}, #rootRule & {
...
}, #rule & {
...
}, #selector & {
...
}, #selectorList & {
...
}, #shorthandProperty & {
...
}, #string & {
...
}, #stylelintDisableComment & {
...
}, #time & {
...
}, #unit & {
...
}, #value & {
...
}, #valueList & {
...
}])matchN(1, [null, "always" | "always-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-multi-line", #coreRule & (string | {
...
})])]])matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & (string | {
...
})])]])matchN(1, [null | string, list.UniqueItems() & [_, ...] & [...matchN(>=1, [#simpleArrayStringRule & (string | [...] | {
...
}), #coreRule & (string | [...] | {
...
})])]])null | bool | number | string | [...] | {
"at-rule-blacklist"?: #arrayStringRule
"at-rule-empty-line-before"?: matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."all-nested" | "after-same-name" | "inside-block" | "blockless-after-same-name-blockless" | "blockless-after-blockless" | "first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment" | "first-nested" | "inside-block" | "blockless-after-same-name-blockless" | "blockless-after-blockless"]
ignoreAtRules?: #simpleStringOrArrayStringRule
...
}])]])
"at-rule-name-case"?: #lowerUpperRule
"at-rule-name-newline-after"?: #alwaysMultiLineRule
"at-rule-name-space-after"?: matchN(1, [null, "always" | "always-single-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-single-line", #coreRule & (string | {
...
})])]])
"at-rule-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreAtRules?: #simpleArrayStringRule
...
}])]])
"at-rule-no-vendor-prefix"?: #booleanRule
"at-rule-semicolon-newline-after"?: matchN(1, [null, "always", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always", #coreRule & (string | {
...
})])]])
"at-rule-semicolon-space-before"?: _
"at-rule-whitelist"?: #arrayStringRule
...
}null | bool | number | string | [...] | {
"block-closing-brace-empty-line-before"?: matchN(1, [null, "always-multi-line" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always-multi-line" | "never", #coreRule & (string | {
...
})])]])
"block-closing-brace-newline-after"?: #newlineSpaceWithIgnoreRule
"block-closing-brace-newline-before"?: #newlineRule
"block-closing-brace-space-after"?: #newlineSpaceRule
"block-closing-brace-space-before"?: #newlineSpaceRule
"block-no-empty"?: #booleanRule
"block-no-single-line"?: #booleanRule
"block-opening-brace-newline-after"?: #newlineRule
"block-opening-brace-newline-before"?: matchN(1, [null, "always" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", #coreRule & (string | {
...
})])]])
"block-opening-brace-space-after"?: #newlineSpaceRule
"block-opening-brace-space-before"?: #newlineSpaceWithIgnoreRule
...
}matchN(1, [null, bool, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [bool, #coreRule & (bool | {
...
})])]])null | bool | number | string | [...] | {
"color-hex-case"?: #lowerUpperRule
"color-hex-length"?: matchN(1, [null, "short" | "long", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["short" | "long", #coreRule & (string | {
...
})])]])
"color-named"?: matchN(1, [null, "always-where-possible" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always-where-possible" | "never", #coreRule & {
...
} & {
ignore?: #simpleArrayStringRule
...
}])]])
"color-no-hex"?: #booleanRule
"color-no-invalid-hex"?: #booleanRule
...
}null | bool | number | string | [...] | {
"comment-empty-line-before"?: matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."between-comments" | "after-comment" | "stylelint-command" | "stylelint-commands"]
...
}])]])
"comment-no-empty"?: #booleanRule
"comment-whitespace-inside"?: #alwaysNeverRule
"comment-word-blacklist"?: #arrayStringRule
...
}null | bool | number | string | [...] | {
"custom-media-pattern"?: #stringRule
"no-unknown-custom-media"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
...
}null | bool | number | string | [...] | {
"custom-property-empty-line-before"?: matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."after-comment" | "after-custom-property" | "first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment" | "inside-single-line-block"]
...
}])]])
"custom-property-no-outside-root"?: #booleanRule
"custom-property-pattern"?: #stringRule
"no-unknown-custom-properties"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
...
}null | bool | number | string | [...] | {
"declaration-bang-space-after"?: #alwaysNeverRule
"declaration-bang-space-before"?: #alwaysNeverRule
"declaration-colon-newline-after"?: #alwaysMultiLineRule
"declaration-colon-space-after"?: matchN(1, [null, "always" | "never" | "always-single-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-single-line", #coreRule & (string | {
...
})])]])
"declaration-colon-space-before"?: #alwaysNeverRule
"declaration-empty-line-before"?: matchN(1, [null, "always" | "never", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."after-comment" | "after-declaration" | "first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment" | "after-declaration" | "first-nested" | "inside-single-line-block"]
...
}])]])
"declaration-no-important"?: #booleanRule
"declaration-property-unit-blacklist"?: #objectRule
"declaration-property-unit-whitelist"?: #objectRule
"declaration-property-value-blacklist"?: #objectRule
"declaration-property-value-no-unknown"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule & {
...
} & {
ignoreProperties?: {
[string]: matchN(>=1, [matchN(1, [string, [...string]]), matchN(1, [matchN(1, [{
...
}, =~"^\\/.+\\/i?$"]), [...matchN(>=1, [{
...
}, =~"^\\/.+\\/i?$"])]])])
}
propertiesSyntax?: {
[string]: matchN(1, [string, [...string]])
}
typesSyntax?: {
[string]: matchN(1, [string, [...string]])
}
...
}, ...]])
"declaration-property-value-whitelist"?: #objectRule
...
}null | bool | number | string | [...] | {
"declaration-block-no-duplicate-properties"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."consecutive-duplicates" | "consecutive-duplicates-with-different-values" | "consecutive-duplicates-with-different-syntaxes" | "consecutive-duplicates-with-same-prefixless-values"]
ignoreProperties?: #simpleArrayStringRule
...
}])]])
"declaration-block-no-ignored-properties"?: #booleanRule
"declaration-block-no-redundant-longhand-properties"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreShorthands?: #simpleArrayStringRule
...
}])]])
"declaration-block-no-shorthand-property-overrides"?: #booleanRule
"declaration-block-properties-order"?: matchN(1, [null, "alphabetical", list.UniqueItems() & [_, ...] & [...matchN(>=1, ["alphabetical", string, #simpleArrayStringRule & (string | [...] | {
...
}), #coreRule & {
...
} & {
order?: _
if order != _|_ // explicit error (_|_ literal) in source
{
properties!: _
}
properties?: _
if properties != _|_ // explicit error (_|_ literal) in source
{
order!: _
}
{}
unspecified?: "top" | "bottom" | "bottomAlphabetical" | "ignore"
order?: "strict" | "flexible"
properties?: #simpleArrayStringRule
...
}])]])
"declaration-block-semicolon-newline-after"?: #newlineRule
"declaration-block-semicolon-newline-before"?: #newlineRule
"declaration-block-semicolon-space-after"?: #spaceRule
"declaration-block-semicolon-space-before"?: #spaceRule
"declaration-block-single-line-max-declarations"?: #integerRule
"declaration-block-trailing-semicolon"?: #alwaysNeverRule
...
}null | bool | number | string | [...] | {
"font-family-name-quotes"?: matchN(1, [null, "always-where-required" | "always-where-recommended" | "always-unless-keyword", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always-where-required" | "always-where-recommended" | "always-unless-keyword", #coreRule & (string | {
...
})])]])
"font-weight-notation"?: matchN(1, [null, "numeric" | "named-where-possible", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["numeric" | "named-where-possible", #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."relative"]
...
}])]])
...
}null | bool | number | string | [...] | {
"function-blacklist"?: #arrayStringRule
"function-calc-no-unspaced-operator"?: #booleanRule
"function-comma-newline-after"?: #newlineRule
"function-comma-newline-before"?: #newlineRule
"function-comma-space-after"?: #spaceRule
"function-comma-space-before"?: #spaceRule
"function-linear-gradient-no-nonstandard-direction"?: #booleanRule
"function-max-empty-lines"?: #integerRule
"function-name-case"?: matchN(1, [null, "lower" | "upper", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["lower" | "upper", #coreRule & {
...
} & {
ignoreFunctions?: #simpleArrayStringRule
...
}])]])
"function-parentheses-newline-inside"?: #newlineRule
"function-parentheses-space-inside"?: #spaceRule
"function-url-data-uris"?: #alwaysNeverRule
"function-url-no-scheme-relative"?: #booleanRule
"function-url-quotes"?: #alwaysNeverRule
"function-url-scheme-whitelist"?: #arrayStringRule
"function-whitelist"?: #arrayStringRule
"function-whitespace-after"?: #alwaysNeverRule
...
}null | bool | number | string | [...] | {
indentation?: matchN(1, [null | int, "tab", list.UniqueItems() & [_, ...] & [...int], list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [int, "tab", #coreRule & {
...
} & {
indentInsideParens?: "twice" | "once-at-root-twice-in-block"
except?: list.UniqueItems() & [_, ...] & [..."block" | "param" | "value"]
ignore?: list.UniqueItems() & [_, ...] & [..."inside-parens" | "param" | "value"]
...
}]) & (int | string | {
...
})]]) & (null | int | string | [...])
linebreaks?: _
"max-empty-lines"?: #integerRule
"max-line-length"?: matchN(1, [null | int, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [int, #coreRule & {
...
} & {
ignore?: matchN(>=1, ["non-comments" | "comments", list.UniqueItems() & [_, ...] & [..."non-comments" | "comments"]])
...
}]) & (int | {
...
})]]) & (null | int | [...])
"max-nesting-depth"?: matchN(1, [null | int, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [int, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."at-rules-without-declaration-blocks" | "blockless-at-rules" | "pseudo-classes"]
ignoreAtRules?: #simpleArrayStringRule
...
}]) & (int | {
...
})]]) & (null | int | [...])
"no-browser-hacks"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
browsers?: #simpleStringOrArrayStringRule
...
}])]])
"no-descending-specificity"?: #booleanRule
"no-duplicate-selectors"?: #booleanRule
"no-empty-first-line"?: _
"no-empty-source"?: #booleanRule
"no-eol-whitespace"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."empty-lines"]
...
}])]])
"no-extra-semicolons"?: #booleanRule
"no-indistinguishable-colors"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
threshold?: int & >=0 & <=100
ignore?: #simpleArrayStringRule
whitelist?: list.UniqueItems() & [_, ...] & [...#simpleArrayStringRule]
...
}])]])
"no-invalid-double-slash-comments"?: #booleanRule
"no-missing-end-of-source-newline"?: #booleanRule
"no-unknown-animations"?: #booleanRule
"unicode-bom"?: #alwaysNeverRule
"no-unsupported-browser-features"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
browsers?: string
ignore?: #simpleStringOrArrayStringRule
...
}])]])
...
}matchN(1, [null | int, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...#coreRule & (number | {
...
}) & (int | {
...
})]]) & (null | int | [...])null | bool | number | string | [...] | {
"lightness-notation"?: matchN(1, [matchN(1, ["percentage" | "number", null]), list.MaxItems(2) & [_, ...] & [matchN(1, ["percentage" | "number", null]), #coreRule, ...]])
...
}matchN(1, [null, "lower" | "upper", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["lower" | "upper", #coreRule & (string | {
...
})])]])null | bool | number | string | [...] | {
"media-feature-colon-space-after"?: #alwaysNeverRule
"media-feature-colon-space-before"?: #alwaysNeverRule
"media-feature-name-case"?: #lowerUpperRule
"media-feature-name-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreMediaFeatureNames?: #simpleArrayStringRule
...
}])]])
"media-feature-name-value-no-unknown"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
"media-feature-name-no-vendor-prefix"?: #booleanRule
"media-feature-name-unit-allowed-list"?: matchN(1, [matchN(1, [{
[string]: matchN(1, [string, [...string]])
}, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [{
[string]: matchN(1, [string, [...string]])
}, null]), #coreRule, ...]])
"media-feature-no-missing-punctuation"?: #booleanRule
"media-feature-parentheses-space-inside"?: #alwaysNeverRule
"media-feature-range-notation"?: matchN(1, [matchN(1, ["prefix" | "context", null]), list.MaxItems(2) & [_, ...] & [matchN(1, ["prefix" | "context", null]), #coreRule, ...]])
"media-feature-range-operator-space-after"?: #alwaysNeverRule
"media-feature-range-operator-space-before"?: #alwaysNeverRule
...
}null | bool | number | string | [...] | {
"media-query-no-invalid"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
...
}null | bool | number | string | [...] | {
"media-query-list-comma-newline-after"?: #newlineRule
"media-query-list-comma-newline-before"?: #newlineRule
"media-query-list-comma-space-after"?: #spaceRule
"media-query-list-comma-space-before"?: #spaceRule
...
}matchN(1, [null, "always" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-multi-line" | "never-multi-line", #coreRule & (string | {
...
})])]])matchN(1, [null, "always" | "never" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", #coreRule & (string | {
...
})])]])matchN(1, [null, "always" | "never" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "always-single-line" | "never-single-line" | "always-multi-line" | "never-multi-line", #coreRule & {
...
} & {
ignoreAtRules?: #simpleStringOrArrayStringRule
...
}])]])matchN(1, [null, {
[string]: #simpleStringOrArrayStringRule
}, list.MaxItems(2) & [_, _, ...] & [{
[string]: #simpleStringOrArrayStringRule
}, #coreRule, ...]])null | bool | number | string | [...] | {
"property-blacklist"?: #arrayStringRule
"property-case"?: #lowerUpperRule
"property-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreProperties?: #simpleArrayStringRule
checkPrefixed?: bool
...
}])]])
"property-no-vendor-prefix"?: #booleanRule
"property-whitelist"?: #arrayStringRule
...
}null | bool | number | string | [...] | {
"rule-nested-empty-line-before"?: matchN(1, [null, "always" | "never" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-multi-line" | "never-multi-line", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."first-nested"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment"]
...
}])]])
"rule-non-nested-empty-line-before"?: matchN(1, [null, "always" | "never" | "always-multi-line" | "never-multi-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-multi-line" | "never-multi-line", #coreRule & {
...
} & {
except?: list.UniqueItems() & [_, ...] & [..."after-single-line-comment"]
ignore?: list.UniqueItems() & [_, ...] & [..."after-comment"]
...
}])]])
...
}null | bool | number | string | [...] | {
"selector-anb-no-unmatchable"?: matchN(1, [matchN(1, [true, null]), list.MaxItems(2) & [_, ...] & [matchN(1, [true, null]), #coreRule, ...]])
"selector-attribute-brackets-space-inside"?: #alwaysNeverRule
"selector-attribute-operator-blacklist"?: #arrayStringRule
"selector-attribute-operator-space-after"?: #alwaysNeverRule
"selector-attribute-operator-space-before"?: #alwaysNeverRule
"selector-attribute-operator-whitelist"?: #arrayStringRule
"selector-attribute-quotes"?: #alwaysNeverRule
"selector-class-pattern"?: matchN(1, [null | string, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [string, #coreRule & {
...
} & {
resolveNestedSelectors?: bool
...
}])]])
"selector-combinator-space-after"?: #alwaysNeverRule
"selector-combinator-space-before"?: #alwaysNeverRule
"selector-descendant-combinator-no-non-space"?: #booleanRule
"selector-id-pattern"?: #stringRule
"selector-max-compound-selectors"?: #integerRule
"selector-max-specificity"?: #stringRule
"selector-nested-pattern"?: #stringRule
"selector-no-attribute"?: #booleanRule
"selector-no-combinator"?: #booleanRule
"selector-no-id"?: #booleanRule
"selector-no-qualifying-type"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."attribute" | "class" | "id"]
...
}])]])
"selector-no-type"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignore?: list.UniqueItems() & [_, ...] & [..."compounded" | "descendant"]
ignoreTypes?: #simpleArrayStringRule
...
}])]])
"selector-no-universal"?: #booleanRule
"selector-no-vendor-prefix"?: #booleanRule
"selector-pseudo-class-case"?: #lowerUpperRule
"selector-pseudo-class-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignorePseudoClasses?: #simpleArrayStringRule
...
}])]])
"selector-pseudo-class-parentheses-space-inside"?: #alwaysNeverRule
"selector-pseudo-class-whitelist"?: #arrayStringRule
"selector-pseudo-element-case"?: #lowerUpperRule
"selector-pseudo-element-colon-notation"?: #singleDoubleRule
"selector-pseudo-element-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignorePseudoElements?: #simpleArrayStringRule
...
}])]])
"selector-root-no-composition"?: #booleanRule
"selector-type-case"?: #lowerUpperRule
"selector-type-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreTypes?: #simpleArrayStringRule
...
}])]])
"selector-max-empty-lines"?: #integerRule
...
}null | bool | number | string | [...] | {
"selector-list-comma-newline-after"?: #newlineRule
"selector-list-comma-newline-before"?: #newlineRule
"selector-list-comma-space-after"?: #spaceRule
"selector-list-comma-space-before"?: #spaceRule
...
}matchN(1, [null, "single" | "double", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["single" | "double", #coreRule & (string | {
...
})])]])matchN(1, [null, "always" | "never" | "always-single-line" | "never-single-line", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always" | "never" | "always-single-line" | "never-single-line", #coreRule & (string | {
...
})])]])matchN(1, [null | string, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [string, #coreRule & (string | {
...
})])]])null | bool | number | string | [...] | {
"stylelint-disable-reason"?: matchN(1, [null, "always-before" | "always-after", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["always-before" | "always-after", #coreRule & (string | {
...
})])]])
...
}null | bool | number | string | [...] | {
"unit-blacklist"?: #unitRule
"unit-case"?: #lowerUpperRule
"unit-no-unknown"?: matchN(1, [null, true, list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, [true, #coreRule & {
...
} & {
ignoreUnits?: #simpleArrayStringRule
...
}])]])
"unit-whitelist"?: #unitRule
...
}matchN(1, [null, "em" | "ex" | "px" | "%" | "rem" | "vw" | "vh" | "vm" | "vmin" | "vmax" | "ch" | "in" | "cm" | "mm" | "q" | "pt" | "pc" | "deg" | "grad" | "rad" | "turn" | "ms" | "s" | "Hz" | "kHz" | "dpi" | "dpcm" | "dppx" | "fr", list.UniqueItems() & [_, ...] & [...matchN(>=1, ["em" | "ex" | "px" | "%" | "rem" | "vw" | "vh" | "vm" | "vmin" | "vmax" | "ch" | "in" | "cm" | "mm" | "q" | "pt" | "pc" | "deg" | "grad" | "rad" | "turn" | "ms" | "s" | "Hz" | "kHz" | "dpi" | "dpcm" | "dppx" | "fr", list.UniqueItems() & [_, ...] & [..."em" | "ex" | "px" | "%" | "rem" | "vw" | "vh" | "vm" | "vmin" | "vmax" | "ch" | "in" | "cm" | "mm" | "q" | "pt" | "pc" | "deg" | "grad" | "rad" | "turn" | "ms" | "s" | "Hz" | "kHz" | "dpi" | "dpcm" | "dppx" | "fr"], #coreRule & {
...
} & {
ignoreProperties?: {
{
[=~"(em|ex|ch|vw|vh|cm|mm|in|pt|pc|px|rem|vmin|vmax|%)"]: #simpleArrayStringRule
}
...
}
...
}])]])null | bool | number | string | [...] | {
"value-keyword-case"?: matchN(1, [null, "lower" | "upper", list.MaxItems(2) & list.UniqueItems() & [_, _, ...] & [...matchN(>=1, ["lower" | "upper", #coreRule & {
...
} & {
ignoreKeywords?: #simpleArrayStringRule
...
}])]])
"value-no-vendor-prefix"?: #booleanRule
...
}null | bool | number | string | [...] | {
"value-list-comma-newline-after"?: #newlineRule
"value-list-comma-newline-before"?: #newlineRule
"value-list-comma-space-after"?: #spaceRule
"value-list-comma-space-before"?: #spaceRule
"value-list-max-empty-lines"?: #integerRule
...
}Max number of test files running at the same time (default: CPU cores)
Use worker threads to run tests (enabled by default). If `false`, tests will run in child processes
If `false`, does not fail a test if it doesn't run assertions
environment variables
Specifies environment variables to be made available to the tests. The environment variables defined here override the ones from `process.env`
matchN(>=1, [#."array-of-strings", {
{
[=~"^(c|m)?js$"]: true
}
{
[!~"^(c|m)?js$" & !~"^()$"]: "commonjs" | "module"
}
}])Extensions of test files. Setting this overrides the default `["cjs", "mjs", "js"]` value, so make sure to include those extensions in the list. Experimentally you can configure how files are loaded
Timeouts in AVA behave differently than in other test frameworks. AVA resets a timer after each test, forcing tests to quit if no new test results were received within the specified timeout. This can be used to handle stalled tests. See our timeout documentation for more options
If `false`, disable parallel builds (default: `true`)
configuration
Configures @ava/typescript for projects that precompile TypeScript. Alternatively, you can use `ts-node` to do live testing without transpiling, in which case you shouldn't use the `typescript` property
paths
AVA searches your entire project for `*.js`, `*.cjs`, `*.mjs` and `*.ts` files (or other extensions you've configured). It will ignore such files found in the `rewritePaths` targets (e.g. `build/`). If you use more specific paths, for instance `build/main/`, you may need to change AVA's `files` configuration to ignore other directories. Paths are relative to your project directory
List of modules or file paths containing a shareable configuration. If multiple shareable configurations are set, they will be imported in the order defined with each configuration option taking precedence over the options defined in a previous shareable configuration
The git repository URL
The Git tag format used by semantic-release to identify releases. The tag name is generated with Lodash template and will be compiled with the version variable.
minimum size of code block in tokens to check for duplication
maximum allowed duplicate lines expressed as a percentage; exit with error and exit code 1 when threshold exceeded
custom mapping from formats to file extensions (default: https://github.com/kucherenko/jscpd/blob/master/packages/tokenizer/src/formats.ts); see https://github.com/kucherenko/jscpd/blob/master/supported_formats.md
ignore code blocks matching these regular expressions
mode of detection quality; see https://github.com/kucherenko/jscpd/blob/master/packages/jscpd/README.md#mode
list of formats for which to detect duplication (default: all); see https://github.com/kucherenko/jscpd/blob/master/supported_formats.md
a list of reporters to use to output information about duplication; see https://github.com/kucherenko/jscpd/blob/master/packages/jscpd/README.md#reporters
do not follow symlinks
skip duplicates within folders; just detect cross-folder duplicates
ignore case of symbols in code (experimental)
ignore all files from .gitignore file
SVG width of icon to display in front of badge subject text; set this if icon is not square
"abap" | "actionscript" | "ada" | "apacheconf" | "apl" | "applescript" | "arduino" | "arff" | "asciidoc" | "asm6502" | "aspnet" | "autohotkey" | "autoit" | "bash" | "basic" | "batch" | "bison" | "brainfuck" | "bro" | "c" | "c-header" | "clike" | "clojure" | "coffeescript" | "comments" | "cpp" | "cpp-header" | "crystal" | "csharp" | "csp" | "css-extras" | "css" | "d" | "dart" | "diff" | "django" | "docker" | "eiffel" | "elixir" | "elm" | "erb" | "erlang" | "flow" | "fortran" | "fsharp" | "gedcom" | "gherkin" | "git" | "glsl" | "go" | "graphql" | "groovy" | "haml" | "handlebars" | "haskell" | "haxe" | "hpkp" | "hsts" | "http" | "ichigojam" | "icon" | "inform7" | "ini" | "io" | "j" | "java" | "javascript" | "jolie" | "json" | "jsx" | "julia" | "keymap" | "kotlin" | "latex" | "less" | "liquid" | "lisp" | "livescript" | "lolcode" | "lua" | "makefile" | "markdown" | "markup" | "matlab" | "mel" | "mizar" | "monkey" | "n4js" | "nasm" | "nginx" | "nim" | "nix" | "nsis" | "objectivec" | "ocaml" | "opencl" | "oz" | "parigp" | "pascal" | "perl" | "php" | "plsql" | "powershell" | "processing" | "prolog" | "properties" | "protobuf" | "pug" | "puppet" | "pure" | "python" | "q" | "qore" | "r" | "reason" | "renpy" | "rest" | "rip" | "roboconf" | "ruby" | "rust" | "sas" | "sass" | "scala" | "scheme" | "scss" | "smalltalk" | "smarty" | "soy" | "sql" | "stylus" | "swift" | "tap" | "tcl" | "textile" | "tsx" | "tt2" | "twig" | "typescript" | "vbnet" | "velocity" | "verilog" | "vhdl" | "vim" | "visual-basic" | "wasm" | "url" | "wiki" | "xeora" | "xojo" | "xquery" | "yaml"
Defines pnpm specific configuration.
Used to override any dependency in the dependency graph.
close({
[=~"^.+$"]: close({
dependencies?: #dependency
optionalDependencies?: #optionalDependency
peerDependencies?: #peerDependency
peerDependenciesMeta?: #peerDependencyMeta
})
})Used to extend the existing package definitions with additional information.
pnpm will not print warnings about missing peer dependencies from this list.
Unmet peer dependency warnings will not be printed for peer dependencies of the specified range.
A list of dependencies to run builds for.
A list of package names that are allowed to be executed during installation.
Specifies a JSON file that lists the only packages permitted to run installation scripts during the pnpm install process.
A list of package names that should not be built during installation.
A list of deprecated versions that the warnings are suppressed.
A list of dependencies that are patched.
When true, installation won't fail if some of the patches from the "patchedDependencies" field were not applied.
When true, installation won't fail if some of the patches from the "patchedDependencies" field were not applied.
A list of packages that should be ignored when running "pnpm outdated" or "pnpm update --latest".
Configurational dependencies are installed before all the other types of dependencies (before 'dependencies', 'devDependencies', 'optionalDependencies').
A list of CVE IDs that will be ignored by "pnpm audit".
A list of GHSA Codes that will be ignored by "pnpm audit".
A list of scripts that must exist in each project.
A list of optional dependencies that the install should be skipped.
Specifies which exact Node.js version should be used for the project's runtime.
Defines the StackBlitz configuration for the project.
StackBlitz automatically installs npm dependencies when opening a project.
A terminal command to be executed when opening the project, after installing npm dependencies.
The compileTrigger option controls how file changes in the editor are written to the WebContainers in-memory filesystem.
JSON schema for NPM package.json files