Schema URL

Type: object

The configuration that is contained inside the file biome.json

Properties

$schema Schema | null

A field for the JSON schema specification

assist AssistConfiguration | null

Specific configuration for assists

css CssConfiguration | null

Specific configuration for the Css language

extends Extends | null

A list of paths to other JSON files, used to extends the current configuration.

files FilesConfiguration | null

The configuration of the filesystem

formatter FormatterConfiguration | null

The configuration of the formatter

graphql GraphqlConfiguration | null

Specific configuration for the GraphQL language

grit GritConfiguration | null

Specific configuration for the GraphQL language

html HtmlConfiguration | null

Specific configuration for the HTML language

javascript JsConfiguration | null

Specific configuration for the JavaScript language

json JsonConfiguration | null

Specific configuration for the Json language

linter LinterConfiguration | null

The configuration for the linter

overrides Overrides | null

A list of granular patterns that should be applied only to a sub set of files

plugins Plugins | null

List of plugins to load.

root Bool | null

Indicates whether this configuration file is at the root of a Biome project. By default, this is true.

vcs VcsConfiguration | null

The configuration of the VCS integration

Definitions

A11y object

A list of rules that belong to this group

noAccessKey RuleFixConfiguration | null

Enforce that the accessKey attribute is not used on any HTML element.

noAriaHiddenOnFocusable RuleFixConfiguration | null

Enforce that aria-hidden="true" is not set on focusable elements.

noAriaUnsupportedElements RuleFixConfiguration | null

Enforce that elements that do not support ARIA roles, states, and properties do not have those attributes.

noAutofocus RuleFixConfiguration | null

Enforce that autoFocus prop is not used on elements.

noDistractingElements RuleFixConfiguration | null

Enforces that no distracting elements are used.

noHeaderScope RuleFixConfiguration | null

The scope prop should be used only on <th> elements.

noInteractiveElementToNoninteractiveRole RuleFixConfiguration | null

Enforce that non-interactive ARIA roles are not assigned to interactive HTML elements.

noLabelWithoutControl NoLabelWithoutControlConfiguration | null

Enforce that a label element or component has a text label and an associated input.

noNoninteractiveElementToInteractiveRole RuleFixConfiguration | null

Enforce that interactive ARIA roles are not assigned to non-interactive HTML elements.

noNoninteractiveTabindex RuleFixConfiguration | null

Enforce that tabIndex is not assigned to non-interactive HTML elements.

noPositiveTabindex RuleFixConfiguration | null

Prevent the usage of positive integers on tabIndex property

noRedundantAlt RuleConfiguration | null

Enforce img alt prop does not contain the word "image", "picture", or "photo".

noRedundantRoles RuleFixConfiguration | null

Enforce explicit role property is not the same as implicit/default role property on an element.

noStaticElementInteractions RuleConfiguration | null

Enforce that static, visible elements (such as <div>) that have click handlers use the valid role attribute.

noSvgWithoutTitle RuleConfiguration | null

Enforces the usage of the title element for the svg element.

recommended boolean | null

It enables the recommended rules for this group

useAltText RuleConfiguration | null

Enforce that all elements that require alternative text have meaningful information to relay back to the end user.

useAnchorContent RuleFixConfiguration | null

Enforce that anchors have content and that the content is accessible to screen readers.

useAriaActivedescendantWithTabindex RuleFixConfiguration | null

Enforce that tabIndex is assigned to non-interactive HTML elements with aria-activedescendant.

useAriaPropsForRole RuleConfiguration | null

Enforce that elements with ARIA roles must have all required ARIA attributes for that role.

useAriaPropsSupportedByRole RuleConfiguration | null

Enforce that ARIA properties are valid for the roles that are supported by the element.

useButtonType RuleConfiguration | null

Enforces the usage of the attribute type for the element button

useFocusableInteractive RuleConfiguration | null

Elements with an interactive role and interaction handlers must be focusable.

useGenericFontNames RuleConfiguration | null

Disallow a missing generic family keyword within font families.

useHeadingContent RuleConfiguration | null

Enforce that heading elements (h1, h2, etc.) have content and that the content is accessible to screen readers. Accessible means that it is not hidden using the aria-hidden prop.

useHtmlLang RuleConfiguration | null

Enforce that html element has lang attribute.

useIframeTitle RuleConfiguration | null

Enforces the usage of the attribute title for the element iframe.

useKeyWithClickEvents RuleConfiguration | null

Enforce onClick is accompanied by at least one of the following: onKeyUp, onKeyDown, onKeyPress.

useKeyWithMouseEvents RuleConfiguration | null

Enforce onMouseOver / onMouseOut are accompanied by onFocus / onBlur.

useMediaCaption RuleConfiguration | null

Enforces that audio and video elements must have a track for captions.

useSemanticElements RuleConfiguration | null

It detects the use of role attributes in JSX elements and suggests using semantic elements instead.

useValidAnchor RuleConfiguration | null

Enforce that all anchors are valid, and they are navigable elements.

useValidAriaProps RuleFixConfiguration | null

Ensures that ARIA properties aria-* are all valid.

useValidAriaRole ValidAriaRoleConfiguration | null

Elements with ARIA roles must use a valid, non-abstract ARIA role.

useValidAriaValues RuleConfiguration | null

Enforce that ARIA state and property values are valid.

useValidAutocomplete UseValidAutocompleteConfiguration | null

Use valid values for the autocomplete attribute on input elements.

useValidLang RuleConfiguration | null

Ensure that the attribute passed to the lang attribute is a correct ISO language and/or country.

Accessibility string
Actions object
recommended boolean | null

It enables the assist actions recommended by Biome. true by default.

source Source | null
ArrowParentheses string
AssistConfiguration object
actions Actions | null

Whether Biome should fail in CLI if the assist were not applied to the code.

enabled Bool | null

Whether Biome should enable assist via LSP and CLI.

includes array | null

A list of glob patterns. Biome will include files/folders that will match these patterns.

AttributePosition string
Bool boolean
BracketSameLine boolean

Put the > of a multi-line HTML or JSX element at the end of the last line instead of being alone on the next line (does not apply to self closing elements).

BracketSpacing boolean
Complexity object

A list of rules that belong to this group

noAdjacentSpacesInRegex RuleFixConfiguration | null

Disallow unclear usage of consecutive space characters in regular expression literals

noArguments RuleConfiguration | null

Disallow the use of arguments.

noBannedTypes RuleFixConfiguration | null

Disallow primitive type aliases and misleading types.

noCommaOperator RuleConfiguration | null

Disallow comma operator.

noEmptyTypeParameters RuleConfiguration | null

Disallow empty type parameters in type aliases and interfaces.

noExcessiveCognitiveComplexity ComplexityConfiguration | null

Disallow functions that exceed a given Cognitive Complexity score.

noExcessiveNestedTestSuites RuleConfiguration | null

This rule enforces a maximum depth to nested describe() in test files.

noExtraBooleanCast RuleFixConfiguration | null

Disallow unnecessary boolean casts

noFlatMapIdentity RuleFixConfiguration | null

Disallow to use unnecessary callback on flatMap.

noForEach NoForEachConfiguration | null

Prefer for...of statement instead of Array.forEach.

noStaticOnlyClass RuleConfiguration | null

This rule reports when a class has no non-static members, such as for a class used exclusively as a static namespace.

noThisInStatic RuleFixConfiguration | null

Disallow this and super in static contexts.

noUselessCatch RuleFixConfiguration | null

Disallow unnecessary catch clauses.

noUselessConstructor RuleFixConfiguration | null

Disallow unnecessary constructors.

noUselessContinue RuleFixConfiguration | null

Avoid using unnecessary continue.

noUselessEmptyExport RuleFixConfiguration | null

Disallow empty exports that don't change anything in a module file.

noUselessEscapeInRegex RuleFixConfiguration | null

Disallow unnecessary escape sequence in regular expression literals.

noUselessFragments RuleFixConfiguration | null

Disallow unnecessary fragments

noUselessLabel RuleFixConfiguration | null

Disallow unnecessary labels.

noUselessLoneBlockStatements RuleFixConfiguration | null

Disallow unnecessary nested block statements.

noUselessRename RuleFixConfiguration | null

Disallow renaming import, export, and destructured assignments to the same name.

noUselessStringConcat RuleFixConfiguration | null

Disallow unnecessary concatenation of string or template literals.

noUselessStringRaw RuleConfiguration | null

Disallow unnecessary String.raw function in template string literals without any escape sequence.

noUselessSwitchCase RuleFixConfiguration | null

Disallow useless case in switch statements.

noUselessTernary RuleFixConfiguration | null

Disallow ternary operators when simpler alternatives exist.

noUselessThisAlias RuleFixConfiguration | null

Disallow useless this aliasing.

noUselessTypeConstraint RuleFixConfiguration | null

Disallow using any or unknown as type constraint.

noUselessUndefinedInitialization RuleFixConfiguration | null

Disallow initializing variables to undefined.

noVoid RuleConfiguration | null

Disallow the use of void operators, which is not a familiar operator.

recommended boolean | null

It enables the recommended rules for this group

useArrowFunction RuleFixConfiguration | null

Use arrow functions over function expressions.

useDateNow RuleFixConfiguration | null

Use Date.now() to get the number of milliseconds since the Unix Epoch.

useFlatMap RuleFixConfiguration | null

Promotes the use of .flatMap() when map().flat() are used together.

useLiteralKeys RuleFixConfiguration | null

Enforce the usage of a literal access to properties over computed property access.

useNumericLiterals RuleFixConfiguration | null

Disallow parseInt() and Number.parseInt() in favor of binary, octal, and hexadecimal literals

useOptionalChain RuleFixConfiguration | null

Enforce using concise optional chain instead of chained logical expressions.

useRegexLiterals RuleFixConfiguration | null

Enforce the use of the regular expression literals instead of the RegExp constructor if possible.

useSimpleNumberKeys RuleFixConfiguration | null

Disallow number literal object member names which are not base 10 or use underscore as separator.

useSimplifiedLogicExpression RuleFixConfiguration | null

Discard redundant terms from logical expressions.

useWhile RuleFixConfiguration | null

Enforce the use of while loops instead of for loops when the initializer and update expressions are not needed.

ComplexityConfiguration RulePlainConfiguration | RuleWithComplexityOptions
ComplexityOptions object

Options for the rule noExcessiveCognitiveComplexity.

maxAllowedComplexity integer

The maximum complexity score that we allow. Anything higher is considered excessive.

Default: 15
format=uint8min=1
ConsistentArrayType string | string
ConsistentArrayTypeConfiguration RulePlainConfiguration | RuleWithConsistentArrayTypeOptions
ConsistentArrayTypeOptions object
syntax
Default: "shorthand"
All of: ConsistentArrayType string | string
ConsistentMemberAccessibilityConfiguration RulePlainConfiguration | RuleWithConsistentMemberAccessibilityOptions
ConsistentMemberAccessibilityOptions object
accessibility
Default: "noPublic"
All of: Accessibility string
Convention object
formats

String cases to enforce

All of: Formats Format[]
match Regex | null

Regular expression to enforce

selector

Declarations concerned by this convention

All of: Selector object
Correctness object

A list of rules that belong to this group

noChildrenProp RuleConfiguration | null

Prevent passing of children as props.

noConstAssign RuleFixConfiguration | null

Prevents from having const variables being re-assigned.

noConstantCondition RuleConfiguration | null

Disallow constant expressions in conditions

noConstantMathMinMaxClamp RuleFixConfiguration | null

Disallow the use of Math.min and Math.max to clamp a value where the result itself is constant.

noConstructorReturn RuleConfiguration | null

Disallow returning a value from a constructor.

noEmptyCharacterClassInRegex RuleConfiguration | null

Disallow empty character classes in regular expression literals.

noEmptyPattern RuleConfiguration | null

Disallows empty destructuring patterns.

noGlobalObjectCalls RuleConfiguration | null

Disallow calling global object properties as functions

noInnerDeclarations RuleConfiguration | null

Disallow function and var declarations that are accessible outside their block.

noInvalidBuiltinInstantiation RuleFixConfiguration | null

Ensure that builtins are correctly instantiated.

noInvalidConstructorSuper RuleConfiguration | null

Prevents the incorrect use of super() inside classes. It also checks whether a call super() is missing from classes that extends other constructors.

noInvalidDirectionInLinearGradient RuleConfiguration | null

Disallow non-standard direction values for linear gradient functions.

noInvalidGridAreas RuleConfiguration | null

Disallows invalid named grid areas in CSS Grid Layouts.

noInvalidPositionAtImportRule RuleConfiguration | null

Disallow the use of @import at-rules in invalid positions.

noInvalidUseBeforeDeclaration RuleConfiguration | null

Disallow the use of variables and function parameters before their declaration

noMissingVarFunction RuleConfiguration | null

Disallow missing var function for css variables.

noNodejsModules RuleConfiguration | null

Forbid the use of Node.js builtin modules.

noNonoctalDecimalEscape RuleFixConfiguration | null

Disallow \8 and \9 escape sequences in string literals.

noPrecisionLoss RuleConfiguration | null

Disallow literal numbers that lose precision

noPrivateImports NoPrivateImportsConfiguration | null

Restrict imports of private exports.

noRenderReturnValue RuleConfiguration | null

Prevent the usage of the return value of React.render.

noSelfAssign RuleConfiguration | null

Disallow assignments where both sides are exactly the same.

noSetterReturn RuleConfiguration | null

Disallow returning a value from a setter

noStringCaseMismatch RuleFixConfiguration | null

Disallow comparison of expressions modifying the string case with non-compliant value.

noSwitchDeclarations RuleFixConfiguration | null

Disallow lexical declarations in switch clauses.

noUndeclaredDependencies NoUndeclaredDependenciesConfiguration | null

Disallow the use of dependencies that aren't specified in the package.json.

noUndeclaredVariables UndeclaredVariablesConfiguration | null

Prevents the usage of variables that haven't been declared inside the document.

noUnknownFunction RuleConfiguration | null

Disallow unknown CSS value functions.

noUnknownMediaFeatureName RuleConfiguration | null

Disallow unknown media feature names.

noUnknownProperty RuleConfiguration | null

Disallow unknown properties.

noUnknownPseudoClass RuleConfiguration | null

Disallow unknown pseudo-class selectors.

noUnknownPseudoElement RuleConfiguration | null

Disallow unknown pseudo-element selectors.

noUnknownTypeSelector RuleConfiguration | null

Disallow unknown type selectors.

noUnknownUnit RuleConfiguration | null

Disallow unknown CSS units.

noUnmatchableAnbSelector RuleConfiguration | null

Disallow unmatchable An+B selectors.

noUnreachable RuleConfiguration | null

Disallow unreachable code

noUnreachableSuper RuleConfiguration | null

Ensures the super() constructor is called exactly once on every code path in a class constructor before this is accessed if the class has a superclass

noUnsafeFinally RuleConfiguration | null

Disallow control flow statements in finally blocks.

noUnsafeOptionalChaining RuleConfiguration | null

Disallow the use of optional chaining in contexts where the undefined value is not allowed.

noUnusedFunctionParameters RuleFixConfiguration | null

Disallow unused function parameters.

noUnusedImports RuleFixConfiguration | null

Disallow unused imports.

noUnusedLabels RuleFixConfiguration | null

Disallow unused labels.

noUnusedPrivateClassMembers RuleFixConfiguration | null

Disallow unused private class members

noUnusedVariables NoUnusedVariablesConfiguration | null

Disallow unused variables.

noVoidElementsWithChildren RuleFixConfiguration | null

This rules prevents void elements (AKA self-closing elements) from having children.

noVoidTypeReturn RuleConfiguration | null

Disallow returning a value from a function with the return type 'void'

recommended boolean | null

It enables the recommended rules for this group

useExhaustiveDependencies UseExhaustiveDependenciesConfiguration | null

Enforce all dependencies are correctly specified in a React hook.

useHookAtTopLevel DeprecatedHooksConfiguration | null

Enforce that all React hooks are being called from the Top Level component functions.

useImportExtensions UseImportExtensionsConfiguration | null

Enforce file extensions for relative imports.

useIsNan RuleFixConfiguration | null

Require calls to isNaN() when checking for NaN.

useJsxKeyInIterable UseJsxKeyInIterableConfiguration | null

Disallow missing key props in iterators/collection literals.

useValidForDirection RuleConfiguration | null

Enforce "for" loop update clause moving the counter in the right direction.

useValidTypeof RuleFixConfiguration | null

This rule checks that the result of a typeof expression is compared to a valid value.

useYield RuleConfiguration | null

Require generator functions to contain yield.

CssAssistConfiguration object

Options that changes how the CSS assist behaves

enabled Bool | null

Control the assist for CSS files.

CssConfiguration object

Options applied to CSS files

assist CssAssistConfiguration | null

CSS assist options

Default: null
formatter CssFormatterConfiguration | null

CSS formatter options

Default: null
globals array | null

CSS globals

uniqueItems=true
linter CssLinterConfiguration | null

CSS linter options

Default: null
parser CssParserConfiguration | null

CSS parsing options

Default: null
CssFormatterConfiguration object

Options that changes how the CSS formatter behaves

enabled Bool | null

Control the formatter for CSS (and its super languages) files.

indentStyle IndentStyle | null

The indent style applied to CSS (and its super languages) files.

indentWidth IndentWidth | null

The size of the indentation applied to CSS (and its super languages) files. Default to 2.

lineEnding LineEnding | null

The type of line ending applied to CSS (and its super languages) files.

lineWidth LineWidth | null

What's the max width of a line applied to CSS (and its super languages) files. Defaults to 80.

quoteStyle QuoteStyle | null

The type of quotes used in CSS code. Defaults to double.

CssLinterConfiguration object

Options that changes how the CSS linter behaves

enabled Bool | null

Control the linter for CSS files.

CssParserConfiguration object

Options that changes how the CSS parser behaves

allowWrongLineComments Bool | null

Allow comments to appear on incorrect lines in .css files

Default: null
cssModules Bool | null

Enables parsing of CSS Modules specific features.

Default: null
CustomRestrictedElements Record<string, string>
CustomRestrictedImport string
CustomRestrictedImportOptions object
allowImportNames string[]

Names of the exported members that allowed to be not be used.

importNames string[]

Names of the exported members that should not be used.

message string

The message to display when this module is imported.

CustomRestrictedType string | CustomRestrictedTypeOptions
CustomRestrictedTypeOptions object
message string
Default: ""
use string | null
Default: null
DependencyAvailability boolean | string[]
DeprecatedHooksConfiguration RulePlainConfiguration | RuleWithDeprecatedHooksOptions
DeprecatedHooksOptions object

Options for the useHookAtTopLevel rule have been deprecated, since we now use the React hook naming convention to determine whether a function is a hook.

Expand string | string | string
Extends string[] | string
FilenameCase string | string | string | string | string

Supported cases for file names.

FilenameCases FilenameCase[]
FilenamingConventionConfiguration RulePlainConfiguration | RuleWithFilenamingConventionOptions
FilenamingConventionOptions object

Rule's options.

filenameCases

Allowed cases for file names.

All of: FilenameCases FilenameCase[]
match Regex | null

Regular expression to enforce

requireAscii boolean

If false, then non-ASCII characters are allowed.

strictCase boolean

If false, then consecutive uppercase are allowed in camel and pascal cases. This does not affect other [Case].

FilesConfiguration object

The configuration of the filesystem

experimentalScannerIgnores array | null

Set of file and folder names that should be unconditionally ignored by Biome's scanner.

Biome maintains an internal list of default ignore entries, which is based on user feedback and which may change in any release. This setting allows overriding this internal list completely.

This is considered an advanced feature that users should not need to tweak themselves, but they can as a last resort. This setting can only be configured in root configurations, and is ignored in nested configs.

Entries must be file or folder names. Specific paths and globs are not supported.

Examples where this may be useful:

```jsonc { "files": { "experimentalScannerIgnores": [ // You almost certainly don't want to scan your .git // folder, which is why it's already ignored by default: ".git",

// But the scanner does scan node_modules by default. If // you really don't want this, you can ignore it like // this: "node_modules",

// But it's probably better to ignore a specific dependency. // For instance, one that happens to be particularly slow to // scan: "RedisCommander.d.ts", ], } } ```

Please be aware that rules relying on the module graph or type inference information may be negatively affected if dependencies of your project aren't (fully) scanned.

ignoreUnknown Bool | null

Tells Biome to not emit diagnostics when handling files that doesn't know

includes array | null

A list of glob patterns. Biome will handle only those files/folders that will match these patterns.

maxSize MaxSize | null

The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reasons. Defaults to 1 MiB

FixKind string | string | string

Used to identify the kind of code action emitted by a rule

Format string

Supported cases.

Formats Format[]
FormatterConfiguration object

Generic options applied to all files

attributePosition AttributePosition | null

The attribute position style in HTML-ish languages. Defaults to auto.

bracketSameLine BracketSameLine | null

Put the > of a multi-line HTML or JSX element at the end of the last line instead of being alone on the next line (does not apply to self closing elements).

bracketSpacing BracketSpacing | null

Whether to insert spaces around brackets in object literals. Defaults to true.

enabled Bool | null
expand Expand | null

Whether to expand arrays and objects on multiple lines. When set to auto, object literals are formatted on multiple lines if the first property has a newline, and array literals are formatted on a single line if it fits in the line. When set to always, these literals are formatted on multiple lines, regardless of length of the list. When set to never, these literals are formatted on a single line if it fits in the line. When formatting package.json, Biome will use always unless configured otherwise. Defaults to "auto".

formatWithErrors Bool | null

Stores whether formatting should be allowed to proceed if a given file has syntax errors

includes array | null

A list of glob patterns. The formatter will include files/folders that will match these patterns.

indentStyle IndentStyle | null

The indent style.

indentWidth IndentWidth | null

The size of the indentation, 2 by default

lineEnding LineEnding | null

The type of line ending.

lineWidth LineWidth | null

What's the max width of a line. Defaults to 80.

useEditorconfig Bool | null

Use any .editorconfig files to configure the formatter. Configuration in biome.json will override .editorconfig configuration.

Default: true.

Glob string
GraphqlAssistConfiguration object

Options that changes how the GraphQL linter behaves

enabled Bool | null

Control the formatter for GraphQL files.

Default: null
GraphqlConfiguration object

Options applied to GraphQL files

Assist options

GraphQL formatter options

GraphqlFormatterConfiguration object

Options that changes how the GraphQL formatter behaves

bracketSpacing BracketSpacing | null

Whether to insert spaces around brackets in object literals. Defaults to true.

Default: null
enabled Bool | null

Control the formatter for GraphQL files.

Default: null
indentStyle IndentStyle | null

The indent style applied to GraphQL files.

Default: null
indentWidth IndentWidth | null

The size of the indentation applied to GraphQL files. Default to 2.

Default: null
lineEnding LineEnding | null

The type of line ending applied to GraphQL files.

Default: null
lineWidth LineWidth | null

What's the max width of a line applied to GraphQL files. Defaults to 80.

Default: null
quoteStyle QuoteStyle | null

The type of quotes used in GraphQL code. Defaults to double.

Default: null
GraphqlLinterConfiguration object

Options that change how the GraphQL linter behaves.

enabled Bool | null

Control the formatter for GraphQL files.

Default: null
GritAssistConfiguration object
enabled Bool | null

Control the assist functionality for Grit files.

GritConfiguration object

Options applied to GritQL files

assist GritAssistConfiguration | null

Assist options

formatter GritFormatterConfiguration | null

Formatting options

linter GritLinterConfiguration | null

Formatting options

GritFormatterConfiguration object
enabled Bool | null

Control the formatter for Grit files.

indentStyle IndentStyle | null

The indent style applied to Grit files.

indentWidth IndentWidth | null

The size of the indentation applied to Grit files. Default to 2.

lineEnding LineEnding | null

The type of line ending applied to Grit files.

lineWidth LineWidth | null

What's the max width of a line applied to Grit files. Defaults to 80.

GritLinterConfiguration object
enabled Bool | null

Control the linter for Grit files.

GroupMatcher ImportMatcher | SourceMatcher
GroupPlainConfiguration string | string | string | string | string
Hook object
closureIndex integer | null

The "position" of the closure function, starting from zero.

For example, for React's useEffect() hook, the closure index is 0.

Default: null
format=uint8min=0
dependenciesIndex integer | null

The "position" of the array of dependencies, starting from zero.

For example, for React's useEffect() hook, the dependencies index is 1.

Default: null
format=uint8min=0
name string

The name of the hook.

Default: ""
stableResult StableHookResult | null

Whether the result of the hook is stable.

Set to true to mark the identity of the hook's return value as stable, or use a number/an array of numbers to mark the "positions" in the return array as stable.

For example, for React's useRef() hook the value would be true, while for useState() it would be [1].

Default: null
HtmlConfiguration object

Options applied to HTML files

formatter HtmlFormatterConfiguration | null

HTML formatter options

parser HtmlParserConfiguration | null

HTML parsing options

HtmlFormatterConfiguration object

Options that changes how the HTML formatter behaves

attributePosition AttributePosition | null

The attribute position style in HTML elements. Defaults to auto.

bracketSameLine BracketSameLine | null

Whether to hug the closing bracket of multiline HTML tags to the end of the last line, rather than being alone on the following line. Defaults to false.

enabled Bool | null

Control the formatter for HTML (and its super languages) files.

indentScriptAndStyle IndentScriptAndStyle | null

Whether to indent the <script> and <style> tags for HTML (and its super languages). Defaults to false.

indentStyle IndentStyle | null

The indent style applied to HTML (and its super languages) files.

indentWidth IndentWidth | null

The size of the indentation applied to HTML (and its super languages) files. Default to 2.

lineEnding LineEnding | null

The type of line ending applied to HTML (and its super languages) files.

lineWidth LineWidth | null

What's the max width of a line applied to HTML (and its super languages) files. Defaults to 80.

selfCloseVoidElements SelfCloseVoidElements | null

Whether void elements should be self-closed. Defaults to never.

whitespaceSensitivity WhitespaceSensitivity | null

Whether to account for whitespace sensitivity when formatting HTML (and its super languages). Defaults to "css".

HtmlParserConfiguration null

Options that changes how the HTML parser behaves

ImportGroup null | GroupMatcher | GroupMatcher[]
ImportGroups ImportGroup[]
ImportMatcher object
source SourcesMatcher | null
type boolean | null
ImportSourceGlob

Glob to match against import sources.

ImportTypeConfiguration RulePlainConfiguration | RuleWithImportTypeOptions
ImportTypeOptions object

Rule's options.

style string | string | string required

Rule's options.

IndentScriptAndStyle boolean

Whether to indent the content of <script> and <style> tags for HTML-ish templating languages (Vue, Svelte, etc.).

When true, the content of <script> and <style> tags will be indented one level.

IndentStyle string | string
IndentWidth integer
JsAssistConfiguration object

Assist options specific to the JavaScript assist

enabled Bool | null

Control the assist for JavaScript (and its super languages) files.

JsConfiguration object

A set of options applied to the JavaScript files

assist JsAssistConfiguration | null

Assist options

formatter JsFormatterConfiguration | null

Formatting options

globals array | null

A list of global bindings that should be ignored by the analyzers

If defined here, they should not emit diagnostics.

uniqueItems=true
jsxRuntime JsxRuntime | null

Indicates the type of runtime or transformation used for interpreting JSX.

linter JsLinterConfiguration | null

Linter options

parser JsParserConfiguration | null

Parsing options

JsFormatterConfiguration object

Formatting options specific to the JavaScript files

arrowParentheses ArrowParentheses | null

Whether to add non-necessary parentheses to arrow functions. Defaults to "always".

attributePosition AttributePosition | null

The attribute position style in JSX elements. Defaults to auto.

bracketSameLine BracketSameLine | null

Whether to hug the closing bracket of multiline HTML/JSX tags to the end of the last line, rather than being alone on the following line. Defaults to false.

bracketSpacing BracketSpacing | null

Whether to insert spaces around brackets in object literals. Defaults to true.

enabled Bool | null

Control the formatter for JavaScript (and its super languages) files.

expand Expand | null

Whether to expand arrays and objects on multiple lines. When set to auto, object literals are formatted on multiple lines if the first property has a newline, and array literals are formatted on a single line if it fits in the line. When set to always, these literals are formatted on multiple lines, regardless of length of the list. When set to never, these literals are formatted on a single line if it fits in the line. When formatting package.json, Biome will use always unless configured otherwise. Defaults to "auto".

indentStyle IndentStyle | null

The indent style applied to JavaScript (and its super languages) files.

indentWidth IndentWidth | null

The size of the indentation applied to JavaScript (and its super languages) files. Default to 2.

jsxQuoteStyle QuoteStyle | null

The type of quotes used in JSX. Defaults to double.

lineEnding LineEnding | null

The type of line ending applied to JavaScript (and its super languages) files.

lineWidth LineWidth | null

What's the max width of a line applied to JavaScript (and its super languages) files. Defaults to 80.

quoteProperties QuoteProperties | null

When properties in objects are quoted. Defaults to asNeeded.

quoteStyle QuoteStyle | null

The type of quotes used in JavaScript code. Defaults to double.

semicolons Semicolons | null

Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI.

trailingCommas TrailingCommas | null

Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all".

JsLinterConfiguration object

Linter options specific to the JavaScript linter

enabled Bool | null

Control the linter for JavaScript (and its super languages) files.

JsParserConfiguration object

Options that changes how the JavaScript parser behaves

gritMetavariables Bool | null

Enables parsing of Grit metavariables. Defaults to false.

jsxEverywhere Bool | null

When enabled, files like .js/.mjs/.cjs may contain JSX syntax.

Defaults to true.

unsafeParameterDecoratorsEnabled Bool | null

It enables the experimental and unsafe parsing of parameter decorators

These decorators belong to an old proposal, and they are subject to change.

JsonAssistConfiguration object

Linter options specific to the JSON linter

enabled Bool | null

Control the assist for JSON (and its super languages) files.

JsonConfiguration object

Options applied to JSON files

assist JsonAssistConfiguration | null

Assist options

formatter JsonFormatterConfiguration | null

Formatting options

linter JsonLinterConfiguration | null

Linting options

parser JsonParserConfiguration | null

Parsing options

JsonFormatterConfiguration object
bracketSpacing BracketSpacing | null

Whether to insert spaces around brackets in object literals. Defaults to true.

enabled Bool | null

Control the formatter for JSON (and its super languages) files.

expand Expand | null

Whether to expand arrays and objects on multiple lines. When set to auto, object literals are formatted on multiple lines if the first property has a newline, and array literals are formatted on a single line if it fits in the line. When set to always, these literals are formatted on multiple lines, regardless of length of the list. When set to never, these literals are formatted on a single line if it fits in the line. When formatting package.json, Biome will use always unless configured otherwise. Defaults to "auto".

indentStyle IndentStyle | null

The indent style applied to JSON (and its super languages) files.

indentWidth IndentWidth | null

The size of the indentation applied to JSON (and its super languages) files. Default to 2.

lineEnding LineEnding | null

The type of line ending applied to JSON (and its super languages) files.

lineWidth LineWidth | null

What's the max width of a line applied to JSON (and its super languages) files. Defaults to 80.

trailingCommas TrailingCommas2 | null

Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "none".

JsonLinterConfiguration object

Linter options specific to the JSON linter

enabled Bool | null

Control the linter for JSON (and its super languages) files.

JsonParserConfiguration object

Options that changes how the JSON parser behaves

allowComments Bool | null

Allow parsing comments in .json files

allowTrailingCommas Bool | null

Allow parsing trailing commas in .json files

JsxRuntime string | string

Indicates the type of runtime or transformation used for interpreting JSX.

Kind string | string | string | string | string | string | string | string | string | string | string | string | string | string | string | string
LineEnding string | string | string
LineWidth integer

Validated value for the line_width formatter options

The allowed range of values is 1..=320

LinterConfiguration object
domains RuleDomains | null

An object where the keys are the names of the domains, and the values are all, recommended, or none.

enabled Bool | null

if false, it disables the feature and the linter won't be executed. true by default

includes array | null

A list of glob patterns. The analyzer will handle only those files/folders that will match these patterns.

rules Rules | null

List of rules

MaxSize integer
Modifiers RestrictedModifier[]
NamingConventionConfiguration RulePlainConfiguration | RuleWithNamingConventionOptions
NamingConventionOptions object

Rule's options.

conventions Convention[]

Custom conventions.

requireAscii boolean

If false, then non-ASCII characters are allowed.

strictCase boolean

If false, then consecutive uppercase are allowed in camel and pascal cases. This does not affect other [Case].

NegatablePredefinedSourceMatcher string
NoBitwiseOperatorsConfiguration RulePlainConfiguration | RuleWithNoBitwiseOperatorsOptions
NoBitwiseOperatorsOptions object

Rule's options

allow string[]

Allows a list of bitwise operators to be used as exceptions.

NoBlankTargetConfiguration RulePlainConfiguration | RuleWithNoBlankTargetOptions
NoBlankTargetOptions object
allowDomains string[]

List of domains where target="_blank" is allowed without rel="noopener".

allowNoReferrer boolean

Whether noreferrer is allowed in addition to noopener.

Default: true
NoConfusingLabelsConfiguration RulePlainConfiguration | RuleWithNoConfusingLabelsOptions
NoConfusingLabelsOptions object

Options for the rule noConfusingLabels

allowedLabels string[]

A list of (non-confusing) labels that should be allowed

NoConsoleConfiguration RulePlainConfiguration | RuleWithNoConsoleOptions
NoConsoleOptions object
allow string[] required

Allowed calls on the console object.

NoDoubleEqualsConfiguration RulePlainConfiguration | RuleWithNoDoubleEqualsOptions
NoDoubleEqualsOptions object

Rule's options

ignoreNull boolean

If true, an exception is made when comparing with null, as it's often relied on to check both for null or undefined.

If false, no such exception will be made.

NoForEachConfiguration RulePlainConfiguration | RuleWithNoForEachOptions
NoForEachOptions object
allowedIdentifiers string[]

A list of variable names allowed for forEach calls.

NoLabelWithoutControlConfiguration RulePlainConfiguration | RuleWithNoLabelWithoutControlOptions
NoLabelWithoutControlOptions object
inputComponents string[]

Array of component names that should be considered the same as an input element.

Default:
[]
labelAttributes string[]

Array of attributes that should be treated as the label accessible text content.

Default:
[]
labelComponents string[]

Array of component names that should be considered the same as a label element.

Default:
[]
NoParameterAssignConfiguration RulePlainConfiguration | RuleWithNoParameterAssignOptions
NoParameterAssignOptions object

Options for the rule NoParameterAssign

propertyAssignment

Whether to report an error when a dependency is listed in the dependencies array but isn't used. Defaults to allow.

Default: "allow"
All of: PropertyAssignmentMode string | string
NoPrivateImportsConfiguration RulePlainConfiguration | RuleWithNoPrivateImportsOptions
NoPrivateImportsOptions object

Options for the rule noPrivateImports.

defaultVisibility

The default visibility to assume for symbols without visibility tag.

Default: public.

Default: "public"
All of: Visibility string
NoRestrictedElementsConfiguration RulePlainConfiguration | RuleWithNoRestrictedElementsOptions
NoRestrictedElementsOptions object
elements

Elements to restrict. Each key is the element name, and the value is the message to show when the element is used.

All of: CustomRestrictedElements object
NoRestrictedTypesConfiguration RulePlainConfiguration | RuleWithNoRestrictedTypesOptions
NoRestrictedTypesOptions object
types Record<string, string | CustomRestrictedTypeOptions>
Default:
{}
NoSecretsConfiguration RulePlainConfiguration | RuleWithNoSecretsOptions
NoSecretsOptions object
entropyThreshold integer | null

Set entropy threshold (default is 41).

format=uint16min=0
NoUndeclaredDependenciesConfiguration RulePlainConfiguration | RuleWithNoUndeclaredDependenciesOptions
NoUndeclaredDependenciesOptions object

Rule's options

devDependencies

If set to false, then the rule will show an error when devDependencies are imported. Defaults to true.

Default: true
All of: DependencyAvailability boolean | string[]
optionalDependencies

If set to false, then the rule will show an error when optionalDependencies are imported. Defaults to true.

Default: true
All of: DependencyAvailability boolean | string[]
peerDependencies

If set to false, then the rule will show an error when peerDependencies are imported. Defaults to true.

Default: true
All of: DependencyAvailability boolean | string[]
NoUnusedVariablesConfiguration RulePlainConfiguration | RuleWithNoUnusedVariablesOptions
NoUnusedVariablesOptions object
ignoreRestSiblings boolean

Whether to ignore unused variables from an object destructuring with a spread.

Default: true
NormalizedGlob

Normalized Biome glob pattern that strips ./ from the pattern.

Nursery object

A list of rules that belong to this group

noAwaitInLoop RuleConfiguration | null

Disallow await inside loops.

noBitwiseOperators NoBitwiseOperatorsConfiguration | null

Disallow bitwise operators.

noConstantBinaryExpression RuleConfiguration | null

Disallow expressions where the operation doesn't affect the value

noDestructuredProps RuleConfiguration | null

Disallow destructuring props inside JSX components in Solid projects.

noFloatingPromises RuleFixConfiguration | null

Require Promise-like statements to be handled appropriately.

noGlobalDirnameFilename RuleFixConfiguration | null

Disallow the use of __dirname and __filename in the global scope.

noImportCycles RuleConfiguration | null

Prevent import cycles.

noImportantStyles RuleFixConfiguration | null

Disallow the use of the !important style.

noNestedComponentDefinitions RuleConfiguration | null

Disallows defining React components inside other components.

noNoninteractiveElementInteractions RuleConfiguration | null

Disallow use event handlers on non-interactive elements.

noProcessGlobal RuleFixConfiguration | null

Disallow the use of process global.

noReactPropAssign RuleConfiguration | null

Disallow assigning to React component props.

noRestrictedElements NoRestrictedElementsConfiguration | null

Disallow the use of configured elements.

noSecrets NoSecretsConfiguration | null

Disallow usage of sensitive data such as API keys and tokens.

noShadow RuleConfiguration | null

Disallow variable declarations from shadowing variables declared in the outer scope.

noTsIgnore RuleFixConfiguration | null

Prevents the use of the TypeScript directive @ts-ignore.

noUnknownAtRule RuleConfiguration | null

Disallow unknown at-rules.

noUnresolvedImports RuleConfiguration | null

Warn when importing non-existing exports.

noUnwantedPolyfillio RuleConfiguration | null

Prevent duplicate polyfills from Polyfill.io.

noUselessBackrefInRegex RuleConfiguration | null

Disallow useless backreferences in regular expression literals that always match an empty string.

noUselessEscapeInString RuleFixConfiguration | null

Disallow unnecessary escapes in string literals.

noUselessUndefined RuleFixConfiguration | null

Disallow the use of useless undefined.

recommended boolean | null

It enables the recommended rules for this group

useAdjacentGetterSetter RuleConfiguration | null

Enforce that getters and setters for the same property are adjacent in class and object definitions.

useConsistentObjectDefinition UseConsistentObjectDefinitionConfiguration | null

Require the consistent declaration of object literals. Defaults to explicit definitions.

useConsistentResponse RuleFixConfiguration | null

Use static Response methods instead of new Response() constructor when possible.

useExhaustiveSwitchCases RuleFixConfiguration | null

Require switch-case statements to be exhaustive.

useExplicitType RuleConfiguration | null

Enforce types in functions, methods, variables, and parameters.

useExportsLast RuleConfiguration | null

Require that all exports are declared after all non-export statements.

useForComponent RuleConfiguration | null

Enforce using Solid's <For /> component for mapping an array to JSX elements.

useGoogleFontPreconnect RuleFixConfiguration | null

Ensure the preconnect attribute is used when using Google Fonts.

useIndexOf RuleFixConfiguration | null

Prefer Array#{indexOf,lastIndexOf}() over Array#{findIndex,findLastIndex}() when looking for the index of an item.

useIterableCallbackReturn RuleConfiguration | null

Enforce consistent return values in iterable callbacks.

useJsonImportAttribute RuleFixConfiguration | null

Enforces the use of with { type: "json" } for JSON module imports.

useNamedOperation RuleFixConfiguration | null

Enforce specifying the name of GraphQL operations.

useNamingConvention RuleConfiguration | null

Validates that all enum values are capitalized.

useNumericSeparators RuleFixConfiguration | null

Enforce the use of numeric separators in numeric literals.

useObjectSpread RuleFixConfiguration | null

Prefer object spread over Object.assign() when constructing new objects.

useParseIntRadix RuleFixConfiguration | null

Enforce the consistent use of the radix argument when using parseInt().

useReadonlyClassProperties ReadonlyClassPropertiesConfiguration | null

Enforce marking members as readonly if they are never modified outside the constructor.

useSingleJsDocAsterisk RuleFixConfiguration | null

Enforce JSDoc comment lines to start with a single asterisk, except for the first one.

useSortedClasses UtilityClassSortingConfiguration | null

Enforce the sorting of CSS utility classes.

useSymbolDescription RuleConfiguration | null

Require a description parameter for the Symbol().

useUniqueElementIds RuleConfiguration | null

Prevent the usage of static string literal id attribute on elements.

ObjectPropertySyntax string | string
Options object
groups
Default:
[]
All of: ImportGroups ImportGroup[]
OverrideAssistConfiguration object
actions Actions | null

List of actions

enabled Bool | null

if false, it disables the feature and the assist won't be executed. true by default

OverrideFilesConfiguration object
maxSize MaxSize | null

File size limit in bytes

OverrideFormatterConfiguration object
attributePosition AttributePosition | null

The attribute position style.

bracketSameLine BracketSameLine | null

Put the > of a multi-line HTML or JSX element at the end of the last line instead of being alone on the next line (does not apply to self closing elements).

bracketSpacing BracketSpacing | null

Whether to insert spaces around brackets in object literals. Defaults to true.

enabled Bool | null
expand Expand | null

Whether to expand arrays and objects on multiple lines. When set to auto, object literals are formatted on multiple lines if the first property has a newline, and array literals are formatted on a single line if it fits in the line. When set to always, these literals are formatted on multiple lines, regardless of length of the list. When set to never, these literals are formatted on a single line if it fits in the line. When formatting package.json, Biome will use always unless configured otherwise. Defaults to "auto".

formatWithErrors Bool | null

Stores whether formatting should be allowed to proceed if a given file has syntax errors

indentSize IndentWidth | null

The size of the indentation, 2 by default (deprecated, use indent-width)

indentStyle IndentStyle | null

The indent style.

indentWidth IndentWidth | null

The size of the indentation, 2 by default

lineEnding LineEnding | null

The type of line ending.

lineWidth LineWidth | null

What's the max width of a line. Defaults to 80.

OverrideGlobs Glob[]
OverrideLinterConfiguration object
domains RuleDomains | null

List of rules

enabled Bool | null

if false, it disables the feature and the linter won't be executed. true by default

rules Rules | null

List of rules

OverridePattern object

Specific configuration for the Json language

css CssConfiguration | null

Specific configuration for the CSS language

Specific configuration for the filesystem

Specific configuration for the Json language

graphql GraphqlConfiguration | null

Specific configuration for the Graphql language

grit GritConfiguration | null

Specific configuration for the GritQL language

html HtmlConfiguration | null

Specific configuration for the GritQL language

includes OverrideGlobs | null

A list of glob patterns. Biome will include files/folders that will match these patterns.

javascript JsConfiguration | null

Specific configuration for the JavaScript language

json JsonConfiguration | null

Specific configuration for the Json language

Specific configuration for the Json language

plugins Plugins | null

Specific configuration for additional plugins

Overrides OverridePattern[]
Performance object

A list of rules that belong to this group

noAccumulatingSpread RuleConfiguration | null

Disallow the use of spread (...) syntax on accumulators.

noBarrelFile RuleConfiguration | null

Disallow the use of barrel file.

noDelete RuleFixConfiguration | null

Disallow the use of the delete operator.

noDynamicNamespaceImportAccess RuleConfiguration | null

Disallow accessing namespace imports dynamically.

noImgElement RuleConfiguration | null

Prevent usage of <img> element in a Next.js project.

noNamespaceImport RuleConfiguration | null

Disallow the use of namespace imports.

noReExportAll RuleConfiguration | null

Avoid re-export all.

recommended boolean | null

It enables the recommended rules for this group

useTopLevelRegex RuleConfiguration | null

Require regex literals to be declared at the top level.

PluginConfiguration string
Plugins PluginConfiguration[]
PropertyAssignmentMode string | string

Specifies whether property assignments on function parameters are allowed or denied.

QuoteProperties string
QuoteStyle string
ReadonlyClassPropertiesConfiguration RulePlainConfiguration | RuleWithReadonlyClassPropertiesOptions
ReadonlyClassPropertiesOptions object

Rule's options

checkAllProperties boolean

When true, the keywords public, protected, and private are analyzed by the rule.

Regex string
RestrictedGlobalsConfiguration RulePlainConfiguration | RuleWithRestrictedGlobalsOptions
RestrictedGlobalsOptions object

Options for the rule noRestrictedGlobals.

deniedGlobals Record<string, string>

A list of names that should trigger the rule

RestrictedImportsConfiguration RulePlainConfiguration | RuleWithRestrictedImportsOptions
RestrictedImportsOptions object

Options for the rule noRestrictedImports.

paths Record<string, string>

A list of import paths that should trigger the rule.

RestrictedModifier string
RuleAssistConfiguration_for_Null RuleAssistPlainConfiguration | RuleAssistWithOptions_for_Null
RuleAssistConfiguration_for_Options RuleAssistPlainConfiguration | RuleAssistWithOptions_for_Options
RuleAssistPlainConfiguration string
RuleAssistWithOptions_for_Null object
level required

The severity of the emitted diagnostics by the rule

options null

Rule's options

RuleAssistWithOptions_for_Options object
level required

The severity of the emitted diagnostics by the rule

options

Rule's options

All of: Options object
RuleConfiguration RulePlainConfiguration | RuleWithNoOptions
RuleDomain string | string | string | string | string | string

Rule domains

RuleDomainValue string | string | string
RuleDomains Record<string, string | string | string>
RuleFixConfiguration RulePlainConfiguration | RuleWithFixNoOptions
RulePlainConfiguration string | string | string | string | string
RuleWithComplexityOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: ComplexityOptions object
RuleWithConsistentArrayTypeOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

RuleWithConsistentMemberAccessibilityOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithDeprecatedHooksOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: DeprecatedHooksOptions object
RuleWithFilenamingConventionOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithFixNoOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

RuleWithImportTypeOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

All of: ImportTypeOptions object
RuleWithNamingConventionOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

All of: NamingConventionOptions object
RuleWithNoBitwiseOperatorsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: NoBitwiseOperatorsOptions object
RuleWithNoBlankTargetOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

All of: NoBlankTargetOptions object
RuleWithNoConfusingLabelsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: NoConfusingLabelsOptions object
RuleWithNoConsoleOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

All of: NoConsoleOptions object
RuleWithNoDoubleEqualsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

All of: NoDoubleEqualsOptions object
RuleWithNoForEachOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: NoForEachOptions object
RuleWithNoLabelWithoutControlOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithNoOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
RuleWithNoParameterAssignOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: NoParameterAssignOptions object
RuleWithNoPrivateImportsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: NoPrivateImportsOptions object
RuleWithNoRestrictedElementsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithNoRestrictedTypesOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

All of: NoRestrictedTypesOptions object
RuleWithNoSecretsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: NoSecretsOptions object
RuleWithNoUndeclaredDependenciesOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithNoUnusedVariablesOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

All of: NoUnusedVariablesOptions object
RuleWithReadonlyClassPropertiesOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

RuleWithRestrictedGlobalsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: RestrictedGlobalsOptions object
RuleWithRestrictedImportsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

All of: RestrictedImportsOptions object
RuleWithUndeclaredVariablesOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithUseComponentExportOnlyModulesOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithUseConsistentObjectDefinitionOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

RuleWithUseExhaustiveDependenciesOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

RuleWithUseImportExtensionsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

RuleWithUseJsxKeyInIterableOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithUseSelfClosingElementsOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

RuleWithUseValidAutocompleteOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
options

Rule's options

RuleWithUtilityClassSortingOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

RuleWithValidAriaRoleOptions object
level required

The severity of the emitted diagnostics by the rule

All of: RulePlainConfiguration string | string | string | string | string
fix FixKind | null

The kind of the code actions emitted by the rule

options

Rule's options

All of: ValidAriaRoleOptions object
Rules object
complexity SeverityOrGroup_for_Complexity | null
correctness SeverityOrGroup_for_Correctness | null
performance SeverityOrGroup_for_Performance | null
recommended boolean | null

It enables the lint rules recommended by Biome. true by default.

suspicious SeverityOrGroup_for_Suspicious | null
Schema string
Scope string
Security object

A list of rules that belong to this group

noBlankTarget NoBlankTargetConfiguration | null

Disallow target="_blank" attribute without rel="noopener".

noDangerouslySetInnerHtml RuleConfiguration | null

Prevent the usage of dangerous JSX props

noDangerouslySetInnerHtmlWithChildren RuleConfiguration | null

Report when a DOM element or a component uses both children and dangerouslySetInnerHTML prop.

noGlobalEval RuleConfiguration | null

Disallow the use of global eval().

recommended boolean | null

It enables the recommended rules for this group

Selector object
kind

Declaration kind

All of: Kind string | string | string | string | string | string | string | string | string | string | string | string | string | string | string | string
modifiers

Modifiers used on the declaration

All of: Modifiers RestrictedModifier[]
scope

Scope of the declaration

All of: Scope string
SelfCloseVoidElements string | string

Controls whether void-elements should be self closed

Semicolons string
SeverityOrGroup_for_A11y GroupPlainConfiguration | A11y
SeverityOrGroup_for_Complexity GroupPlainConfiguration | Complexity
SeverityOrGroup_for_Correctness GroupPlainConfiguration | Correctness
SeverityOrGroup_for_Nursery GroupPlainConfiguration | Nursery
SeverityOrGroup_for_Performance GroupPlainConfiguration | Performance
SeverityOrGroup_for_Security GroupPlainConfiguration | Security
SeverityOrGroup_for_Style GroupPlainConfiguration | Style
SeverityOrGroup_for_Suspicious GroupPlainConfiguration | Suspicious
Source object

A list of rules that belong to this group

organizeImports RuleAssistConfiguration_for_Options | null

Provides a code action to sort the imports and exports in the file using a built-in or custom order.

recommended boolean | null

It enables the recommended rules for this group

useSortedAttributes RuleAssistConfiguration_for_Null | null

Enforce attribute sorting in JSX elements.

useSortedKeys RuleAssistConfiguration_for_Null | null

Sorts the keys of a JSON object in natural order

useSortedProperties RuleAssistConfiguration_for_Null | null

Enforce ordering of CSS properties and nested rules.

SourceMatcher NegatablePredefinedSourceMatcher | ImportSourceGlob
SourcesMatcher SourceMatcher | SourceMatcher[]
StableHookResult boolean | integer[]
Style object

A list of rules that belong to this group

noCommonJs RuleConfiguration | null

Disallow use of CommonJs module system in favor of ESM style imports.

noDefaultExport RuleConfiguration | null

Disallow default exports.

noDescendingSpecificity RuleConfiguration | null

Disallow a lower specificity selector from coming after a higher specificity selector.

noDoneCallback RuleConfiguration | null

Disallow using a callback in asynchronous tests and hooks.

noEnum RuleConfiguration | null

Disallow TypeScript enum.

noExportedImports RuleConfiguration | null

Disallow exporting an imported variable.

noHeadElement RuleConfiguration | null

Prevent usage of <head> element in a Next.js project.

noImplicitBoolean RuleFixConfiguration | null

Disallow implicit true values on JSX boolean attributes

noInferrableTypes RuleFixConfiguration | null

Disallow type annotations for variables, parameters, and class properties initialized with a literal expression.

noNamespace RuleConfiguration | null

Disallow the use of TypeScript's namespaces.

noNegationElse RuleFixConfiguration | null

Disallow negation in the condition of an if statement if it has an else clause.

noNestedTernary RuleConfiguration | null

Disallow nested ternary expressions.

noNonNullAssertion RuleFixConfiguration | null

Disallow non-null assertions using the ! postfix operator.

noParameterAssign NoParameterAssignConfiguration | null

Disallow reassigning function parameters.

noParameterProperties RuleConfiguration | null

Disallow the use of parameter properties in class constructors.

noProcessEnv RuleConfiguration | null

Disallow the use of process.env.

noRestrictedGlobals RestrictedGlobalsConfiguration | null

This rule allows you to specify global variable names that you don’t want to use in your application.

noRestrictedImports RestrictedImportsConfiguration | null

Disallow specified modules when loaded by import or require.

noRestrictedTypes NoRestrictedTypesConfiguration | null

Disallow user defined types.

noShoutyConstants RuleFixConfiguration | null

Disallow the use of constants which its value is the upper-case version of its name.

noSubstr RuleFixConfiguration | null

Enforce the use of String.slice() over String.substr() and String.substring().

noUnusedTemplateLiteral RuleFixConfiguration | null

Disallow template literals if interpolation and special-character handling are not needed

noUselessElse RuleFixConfiguration | null

Disallow else block when the if block breaks early.

noValueAtRule RuleConfiguration | null

Disallow use of @value rule in css modules.

noYodaExpression RuleFixConfiguration | null

Disallow the use of yoda expressions.

recommended boolean | null

It enables the recommended rules for this group

useArrayLiterals RuleFixConfiguration | null

Disallow Array constructors.

useAsConstAssertion RuleFixConfiguration | null

Enforce the use of as const over literal type and type annotation.

useAtIndex RuleFixConfiguration | null

Use at() instead of integer index access.

useBlockStatements RuleFixConfiguration | null

Requires following curly brace conventions.

useCollapsedElseIf RuleFixConfiguration | null

Enforce using else if instead of nested if in else clauses.

useCollapsedIf RuleFixConfiguration | null

Enforce using single if instead of nested if clauses.

useComponentExportOnlyModules UseComponentExportOnlyModulesConfiguration | null

Enforce declaring components only within modules that export React Components exclusively.

useConsistentArrayType ConsistentArrayTypeConfiguration | null

Require consistently using either T[] or Array<T>

useConsistentBuiltinInstantiation RuleFixConfiguration | null

Enforce the use of new for all builtins, except String, Number and Boolean.

useConsistentCurlyBraces RuleFixConfiguration | null

This rule enforces consistent use of curly braces inside JSX attributes and JSX children.

useConsistentMemberAccessibility ConsistentMemberAccessibilityConfiguration | null

Require consistent accessibility modifiers on class properties and methods.

useConst RuleFixConfiguration | null

Require const declarations for variables that are only assigned once.

useDefaultParameterLast RuleFixConfiguration | null

Enforce default function parameters and optional function parameters to be last.

useDefaultSwitchClause RuleConfiguration | null

Require the default clause in switch statements.

useDeprecatedReason RuleConfiguration | null

Require specifying the reason argument when using @deprecated directive

useEnumInitializers RuleFixConfiguration | null

Require that each enum member value be explicitly initialized.

useExplicitLengthCheck RuleFixConfiguration | null

Enforce explicitly comparing the length, size, byteLength or byteOffset property of a value.

useExponentiationOperator RuleFixConfiguration | null

Disallow the use of Math.pow in favor of the ** operator.

useExportType RuleFixConfiguration | null

Promotes the use of export type for types.

useFilenamingConvention FilenamingConventionConfiguration | null

Enforce naming conventions for JavaScript and TypeScript filenames.

useForOf RuleConfiguration | null

This rule recommends a for-of loop when in a for loop, the index used to extract an item from the iterated array.

useFragmentSyntax RuleFixConfiguration | null

This rule enforces the use of <>...</> over <Fragment>...</Fragment>.

useImportType ImportTypeConfiguration | null

Promotes the use of import type for types.

useLiteralEnumMembers RuleConfiguration | null

Require all enum members to be literal values.

useNamingConvention NamingConventionConfiguration | null

Enforce naming conventions for everything across a codebase.

useNodeAssertStrict RuleFixConfiguration | null

Promotes the usage of node:assert/strict over node:assert.

useNodejsImportProtocol RuleFixConfiguration | null

Enforces using the node: protocol for Node.js builtin modules.

useNumberNamespace RuleFixConfiguration | null

Use the Number properties instead of global ones.

useSelfClosingElements UseSelfClosingElementsConfiguration | null

Prevent extra closing tags for components without children.

useShorthandAssign RuleFixConfiguration | null

Require assignment operator shorthand where possible.

useShorthandFunctionType RuleFixConfiguration | null

Enforce using function types instead of object type with call signatures.

useSingleVarDeclarator RuleFixConfiguration | null

Disallow multiple variable declarations in the same variable statement

useTemplate RuleFixConfiguration | null

Prefer template literals over string concatenation.

useThrowNewError RuleFixConfiguration | null

Require new when throwing an error.

useThrowOnlyError RuleConfiguration | null

Disallow throwing non-Error values.

useTrimStartEnd RuleFixConfiguration | null

Enforce the use of String.trimStart() and String.trimEnd() over String.trimLeft() and String.trimRight().

Style2 string | string | string

Rule's options.

Suspicious object

A list of rules that belong to this group

noApproximativeNumericConstant RuleFixConfiguration | null

Use standard constants instead of approximated literals.

noArrayIndexKey RuleConfiguration | null

Discourage the usage of Array index in keys.

noAssignInExpressions RuleConfiguration | null

Disallow assignments in expressions.

noAsyncPromiseExecutor RuleConfiguration | null

Disallows using an async function as a Promise executor.

noCatchAssign RuleConfiguration | null

Disallow reassigning exceptions in catch clauses.

noClassAssign RuleConfiguration | null

Disallow reassigning class members.

noCommentText RuleFixConfiguration | null

Prevent comments from being inserted as text nodes

noCompareNegZero RuleFixConfiguration | null

Disallow comparing against -0

noConfusingLabels NoConfusingLabelsConfiguration | null

Disallow labeled statements that are not loops.

noConfusingVoidType RuleFixConfiguration | null

Disallow void type outside of generic or return types.

noConsole NoConsoleConfiguration | null

Disallow the use of console.

noConstEnum RuleFixConfiguration | null

Disallow TypeScript const enum

noControlCharactersInRegex RuleConfiguration | null

Prevents from having control characters and some escape sequences that match control characters in regular expression literals.

noDebugger RuleFixConfiguration | null

Disallow the use of debugger

noDocumentCookie RuleConfiguration | null

Disallow direct assignments to document.cookie.

noDocumentImportInPage RuleConfiguration | null

Prevents importing next/document outside of pages/_document.jsx in Next.js projects.

noDoubleEquals NoDoubleEqualsConfiguration | null

Require the use of === and !==.

noDuplicateAtImportRules RuleConfiguration | null

Disallow duplicate @import rules.

noDuplicateCase RuleConfiguration | null

Disallow duplicate case labels.

noDuplicateClassMembers RuleConfiguration | null

Disallow duplicate class members.

noDuplicateCustomProperties RuleConfiguration | null

Disallow duplicate custom properties within declaration blocks.

noDuplicateElseIf RuleConfiguration | null

Disallow duplicate conditions in if-else-if chains

noDuplicateFields RuleConfiguration | null

No duplicated fields in GraphQL operations.

noDuplicateFontNames RuleConfiguration | null

Disallow duplicate names within font families.

noDuplicateJsxProps RuleConfiguration | null

Prevents JSX properties to be assigned multiple times.

noDuplicateObjectKeys RuleConfiguration | null

Disallow two keys with the same name inside objects.

noDuplicateParameters RuleConfiguration | null

Disallow duplicate function parameter name.

noDuplicateProperties RuleConfiguration | null

Disallow duplicate properties within declaration blocks.

noDuplicateSelectorsKeyframeBlock RuleConfiguration | null

Disallow duplicate selectors within keyframe blocks.

noDuplicateTestHooks RuleConfiguration | null

A describe block should not contain duplicate hooks.

noEmptyBlock RuleConfiguration | null

Disallow CSS empty blocks.

noEmptyBlockStatements RuleConfiguration | null

Disallow empty block statements and static blocks.

noEmptyInterface RuleFixConfiguration | null

Disallow the declaration of empty interfaces.

noEvolvingTypes RuleConfiguration | null

Disallow variables from evolving into any type through reassignments.

noExplicitAny RuleConfiguration | null

Disallow the any type usage.

noExportsInTest RuleConfiguration | null

Disallow using export or module.exports in files containing tests

noExtraNonNullAssertion RuleFixConfiguration | null

Prevents the wrong usage of the non-null assertion operator (!) in TypeScript files.

noFallthroughSwitchClause RuleConfiguration | null

Disallow fallthrough of switch clauses.

noFocusedTests RuleFixConfiguration | null

Disallow focused tests.

noFunctionAssign RuleConfiguration | null

Disallow reassigning function declarations.

noGlobalAssign RuleConfiguration | null

Disallow assignments to native objects and read-only global variables.

noGlobalIsFinite RuleFixConfiguration | null

Use Number.isFinite instead of global isFinite.

noGlobalIsNan RuleFixConfiguration | null

Use Number.isNaN instead of global isNaN.

noHeadImportInDocument RuleConfiguration | null

Prevent using the next/head module in pages/_document.js on Next.js projects.

noImplicitAnyLet RuleConfiguration | null

Disallow use of implicit any type on variable declarations.

noImportAssign RuleConfiguration | null

Disallow assigning to imported bindings

noImportantInKeyframe RuleConfiguration | null

Disallow invalid !important within keyframe declarations

noIrregularWhitespace RuleConfiguration | null

Disallows the use of irregular whitespace characters.

noLabelVar RuleConfiguration | null

Disallow labels that share a name with a variable

noMisleadingCharacterClass RuleFixConfiguration | null

Disallow characters made with multiple code points in character class syntax.

noMisleadingInstantiator RuleConfiguration | null

Enforce proper usage of new and constructor.

noMisplacedAssertion RuleConfiguration | null

Checks that the assertion function, for example expect, is placed inside an it() function call.

noMisrefactoredShorthandAssign RuleFixConfiguration | null

Disallow shorthand assign when variable appears on both sides.

noOctalEscape RuleFixConfiguration | null

Disallow octal escape sequences in string literals

noPrototypeBuiltins RuleFixConfiguration | null

Disallow direct use of Object.prototype builtins.

noReactSpecificProps RuleFixConfiguration | null

Prevents React-specific JSX properties from being used.

noRedeclare RuleConfiguration | null

Disallow variable, function, class, and type redeclarations in the same scope.

noRedundantUseStrict RuleFixConfiguration | null

Prevents from having redundant "use strict".

noSelfCompare RuleConfiguration | null

Disallow comparisons where both sides are exactly the same.

noShadowRestrictedNames RuleConfiguration | null

Disallow identifiers from shadowing restricted names.

noShorthandPropertyOverrides RuleConfiguration | null

Disallow shorthand properties that override related longhand properties.

noSkippedTests RuleFixConfiguration | null

Disallow disabled tests.

noSparseArray RuleFixConfiguration | null

Prevents the use of sparse arrays (arrays with holes).

noSuspiciousSemicolonInJsx RuleConfiguration | null

It detects possible "wrong" semicolons inside JSX elements.

noTemplateCurlyInString RuleConfiguration | null

Disallow template literal placeholder syntax in regular strings.

noThenProperty RuleConfiguration | null

Disallow then property.

noUnsafeDeclarationMerging RuleConfiguration | null

Disallow unsafe declaration merging between interfaces and classes.

noUnsafeNegation RuleFixConfiguration | null

Disallow using unsafe negation.

noVar RuleFixConfiguration | null

Disallow the use of var

noWith RuleConfiguration | null

Disallow with statements in non-strict contexts.

recommended boolean | null

It enables the recommended rules for this group

useAdjacentOverloadSignatures RuleConfiguration | null

Disallow the use of overload signatures that are not next to each other.

useAwait RuleConfiguration | null

Ensure async functions utilize await.

useDefaultSwitchClauseLast RuleConfiguration | null

Enforce default clauses in switch statements to be last

useErrorMessage RuleConfiguration | null

Enforce passing a message value when creating a built-in error.

useGetterReturn RuleConfiguration | null

Enforce get methods to always return a value.

useGoogleFontDisplay RuleConfiguration | null

Enforces the use of a recommended display strategy with Google Fonts.

useGuardForIn RuleConfiguration | null

Require for-in loops to include an if statement.

useIsArray RuleFixConfiguration | null

Use Array.isArray() instead of instanceof Array.

useNamespaceKeyword RuleFixConfiguration | null

Require using the namespace keyword over the module keyword to declare TypeScript namespaces.

useNumberToFixedDigitsArgument RuleFixConfiguration | null

Enforce using the digits argument with Number#toFixed().

useStrictMode RuleFixConfiguration | null

Enforce the use of the directive "use strict" in script files.

TrailingCommas string | string | string

Print trailing commas wherever possible in multi-line comma-separated syntactic structures.

TrailingCommas2 string | string
UndeclaredVariablesConfiguration RulePlainConfiguration | RuleWithUndeclaredVariablesOptions
UndeclaredVariablesOptions object
checkTypes boolean

Check undeclared types.

Default: false
UseComponentExportOnlyModulesConfiguration RulePlainConfiguration | RuleWithUseComponentExportOnlyModulesOptions
UseComponentExportOnlyModulesOptions object
allowConstantExport boolean

Allows the export of constants. This option is for environments that support it, such as Vite

Default: false
allowExportNames string[]

A list of names that can be additionally exported from the module This option is for exports that do not hinder React Fast Refresh, such as meta in Remix

UseConsistentObjectDefinitionConfiguration RulePlainConfiguration | RuleWithUseConsistentObjectDefinitionOptions
UseConsistentObjectDefinitionOptions object
syntax

The preferred syntax to enforce.

Default: "shorthand"
All of: ObjectPropertySyntax string | string
UseExhaustiveDependenciesConfiguration RulePlainConfiguration | RuleWithUseExhaustiveDependenciesOptions
UseExhaustiveDependenciesOptions object

Options for the rule useExhaustiveDependencies

hooks Hook[]

List of hooks of which the dependencies should be validated.

Default:
[]
reportMissingDependenciesArray boolean

Whether to report an error when a hook has no dependencies array.

Default: false
reportUnnecessaryDependencies boolean

Whether to report an error when a dependency is listed in the dependencies array but isn't used. Defaults to true.

Default: true
UseImportExtensionsConfiguration RulePlainConfiguration | RuleWithUseImportExtensionsOptions
UseImportExtensionsOptions object
forceJsExtensions boolean

If true, the suggested extension is always .js regardless of what extension the source file has in your project.

Default: false
UseJsxKeyInIterableConfiguration RulePlainConfiguration | RuleWithUseJsxKeyInIterableOptions
UseJsxKeyInIterableOptions object
checkShorthandFragments boolean

Set to true to check shorthand fragments (<></>)

Default: false
UseSelfClosingElementsConfiguration RulePlainConfiguration | RuleWithUseSelfClosingElementsOptions
UseSelfClosingElementsOptions object

Options for the useSelfClosingElements rule.

ignoreHtmlElements boolean
Default: false
UseValidAutocompleteConfiguration RulePlainConfiguration | RuleWithUseValidAutocompleteOptions
UseValidAutocompleteOptions object
inputComponents string[]

input like custom components that should be checked.

Default:
[]
UtilityClassSortingConfiguration RulePlainConfiguration | RuleWithUtilityClassSortingOptions
UtilityClassSortingOptions object
attributes array | null

Additional attributes that will be sorted.

functions array | null

Names of the functions or tagged templates that will be sorted.

ValidAriaRoleConfiguration RulePlainConfiguration | RuleWithValidAriaRoleOptions
ValidAriaRoleOptions object
allowInvalidRoles string[]
Default:
[]
ignoreNonDom boolean
Default: false
VcsClientKind string
VcsConfiguration object

Set of properties to integrate Biome with a VCS software.

clientKind VcsClientKind | null

The kind of client.

defaultBranch string | null

The main branch of the project

enabled Bool | null

Whether Biome should integrate itself with the VCS client

root string | null

The folder where Biome should check for VCS files. By default, Biome will use the same folder where biome.json was found.

If Biome can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, Biome won't use the VCS integration, and a diagnostic will be emitted

useIgnoreFile Bool | null

Whether Biome should use the VCS ignore file. When [true], Biome will ignore the files specified in the ignore file.

Visibility string
WhitespaceSensitivity string | string | string

Whitespace sensitivity for HTML formatting.

The following two cases won't produce the same output:

| | html | output | | -------------- | :------------: | :----------: | | with spaces | 1<b> 2 </b>3 | 1 2 3 | | without spaces | 1<b>2</b>3 | 123 |

This happens because whitespace is significant in inline elements.

As a consequence of this, the formatter must format blocks that look like this (assume a small line width, <20): html <span>really long content</span> as this, where the content hugs the tags: html <span >really long content</span >

Note that this is only necessary for inline elements. Block elements do not have this restriction.