/* tslint:disable */ /* eslint-disable */ interface SupportsFeatureParams { features: FeatureName; inlineConfig?: Configuration; /** * Features that shouldn't be enabled */ notRequestedFeatures?: FeatureName; path: BiomePath; projectKey: ProjectKey; skipIgnoreCheck?: boolean; } type FeatureName = FeatureKind[]; interface Configuration { /** * A field for the JSON schema specification: https://json-schema.org/ */ $schema?: Schema; /** * Specific configuration for assists */ assist?: AssistConfiguration; /** * Specific configuration for the Css language */ css?: CssConfiguration; /** * A list of paths to other JSON files, used to extend the current configuration. */ extends?: Extends; /** * The configuration of the filesystem */ files?: FilesConfiguration; /** * The configuration of the formatter */ formatter?: FormatterConfiguration; /** * Specific configuration for the GraphQL language */ graphql?: GraphqlConfiguration; /** * Specific configuration for the GraphQL language */ grit?: GritConfiguration; /** * Specific configuration for the HTML language */ html?: HtmlConfiguration; /** * Specific configuration for the JavaScript language */ javascript?: JsConfiguration; /** * Specific configuration for the Json language */ json?: JsonConfiguration; /** * The configuration for the linter */ linter?: LinterConfiguration; /** * A list of granular patterns that should be applied only to a sub set of files */ overrides?: Overrides; /** * List of plugins to load. */ plugins?: Plugins; /** * Indicates whether this configuration file is at the root of a Biome project. By default, this is `true`. */ root?: Bool; /** * The configuration of the VCS integration */ vcs?: VcsConfiguration; } type BiomePath = string; type ProjectKey = number; type FeatureKind = | "format" | "lint" | "search" | "assist" | "debug" | "htmlFullSupport"; type Schema = string; interface AssistConfiguration { /** * Whether Biome should fail in CLI if the assist were not applied to the code. */ actions?: Actions; /** * Whether Biome should enable assist via LSP and CLI. */ enabled?: Bool; /** * A list of glob patterns. Biome will include files/folders that will match these patterns. */ includes?: NormalizedGlob[]; } interface CssConfiguration { /** * CSS assist options */ assist?: CssAssistConfiguration; /** * CSS formatter options */ formatter?: CssFormatterConfiguration; /** * CSS globals */ globals?: string[]; /** * CSS linter options */ linter?: CssLinterConfiguration; /** * CSS parsing options */ parser?: CssParserConfiguration; } type Extends = string[] | string; interface FilesConfiguration { /** * **Deprecated:** Please use _force-ignore syntax_ in `files.includes` instead: Set of file and folder names that should be unconditionally ignored by Biome's scanner. */ experimentalScannerIgnores?: string[]; /** * Tells Biome to not emit diagnostics when handling files that it doesn't know */ ignoreUnknown?: Bool; /** * A list of glob patterns. Biome will handle only those files/folders that will match these patterns. */ includes?: NormalizedGlob[]; /** * The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reasons. Defaults to 1 MiB */ maxSize?: MaxSize; } interface FormatterConfiguration { /** * The attribute position style in HTML-ish languages. Defaults to auto. */ attributePosition?: AttributePosition; /** * 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). */ bracketSameLine?: BracketSameLine; /** * Whether to insert spaces around brackets in object literals. Defaults to true. */ bracketSpacing?: BracketSpacing; /** * Whether to insert spaces inside delimiters (after the opening delimiter and before the closing delimiter), such as parentheses, brackets, angle brackets, and template literal interpolations. Spaces are not added before the opening delimiter, and empty delimiters are not affected. Only applies when the content fits on a single line. The specific delimiters affected depend on the language. Defaults to false. */ delimiterSpacing?: DelimiterSpacing; enabled?: Bool; /** * 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". */ expand?: Expand; /** * Whether formatting should be allowed to proceed if a given file has syntax errors */ formatWithErrors?: Bool; /** * A list of glob patterns. The formatter will include files/folders that will match these patterns. */ includes?: NormalizedGlob[]; /** * The indent style. */ indentStyle?: IndentStyle; /** * The size of the indentation, 2 by default */ indentWidth?: IndentWidth; /** * The type of line ending. */ lineEnding?: LineEnding; /** * What's the max width of a line. Defaults to 80. */ lineWidth?: LineWidth; /** * Whether to add a trailing newline at the end of the file. Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools: - https://thoughtbot.com/blog/no-newline-at-end-of-file - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804 - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files Disable the option at your own risk. Defaults to true. */ trailingNewline?: TrailingNewline; /** * Use any `.editorconfig` files to configure the formatter. Configuration in `biome.json` will override `.editorconfig` configuration. Default: `false`. */ useEditorconfig?: Bool; } interface GraphqlConfiguration { /** * Assist options */ assist?: GraphqlAssistConfiguration; /** * GraphQL formatter options */ formatter?: GraphqlFormatterConfiguration; linter?: GraphqlLinterConfiguration; } interface GritConfiguration { /** * Assist options */ assist?: GritAssistConfiguration; /** * Formatting options */ formatter?: GritFormatterConfiguration; /** * Formatting options */ linter?: GritLinterConfiguration; } interface HtmlConfiguration { assist?: HtmlAssistConfiguration; /** * Enables full support for HTML, Vue, Svelte and Astro files. */ experimentalFullSupportEnabled?: Bool; /** * HTML formatter options */ formatter?: HtmlFormatterConfiguration; /** * HTML linter options */ linter?: HtmlLinterConfiguration; /** * HTML parsing options */ parser?: HtmlParserConfiguration; } interface JsConfiguration { /** * Assist options */ assist?: JsAssistConfiguration; /** * Enables support for embedding snippets. */ experimentalEmbeddedSnippetsEnabled?: Bool; /** * Formatting options */ formatter?: JsFormatterConfiguration; /** * A list of global bindings that should be ignored by the analyzers If defined here, they should not emit diagnostics. */ globals?: string[]; /** * Indicates the type of runtime or transformation used for interpreting JSX. */ jsxRuntime?: JsxRuntime; /** * Linter options */ linter?: JsLinterConfiguration; /** * Parsing options */ parser?: JsParserConfiguration; /** * Module/dependency resolver options */ resolver?: JsResolverConfiguration; } interface JsonConfiguration { /** * Assist options */ assist?: JsonAssistConfiguration; /** * Formatting options */ formatter?: JsonFormatterConfiguration; /** * Linting options */ linter?: JsonLinterConfiguration; /** * Parsing options */ parser?: JsonParserConfiguration; } interface LinterConfiguration { /** * An object where the keys are the names of the domains, and the values are `all`, `recommended`, or `none`. */ domains?: RuleDomains; /** * if `false`, it disables the feature and the linter won't be executed. `true` by default */ enabled?: Bool; /** * A list of glob patterns. The analyzer will handle only those files/folders that will match these patterns. */ includes?: NormalizedGlob[]; /** * List of rules */ rules?: Rules; } type Overrides = OverridePattern[]; type Plugins = PluginConfiguration[]; type Bool = boolean; interface VcsConfiguration { /** * The kind of client. */ clientKind?: VcsClientKind; /** * The main branch of the project */ defaultBranch?: string; /** * Whether Biome should integrate itself with the VCS client */ enabled?: Bool; /** * 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 */ root?: string; /** * Whether Biome should use VCS ignore files. When [true], Biome will ignore files specified in `.gitignore`, `.ignore`, and Git's local exclude file. */ useIgnoreFile?: Bool; } interface Actions { /** * The actions preset to use. */ preset?: PresetConfig; /** * It enables the assist actions recommended by Biome. `true` by default. */ recommended?: boolean; source?: Source; } type NormalizedGlob = string; interface CssAssistConfiguration { /** * Control the assist for CSS files. */ enabled?: Bool; } interface CssFormatterConfiguration { /** * Whether to insert spaces inside delimiters (after the opening delimiter and before the closing delimiter). Only applies when the content fits on a single line, and empty delimiters are not affected. For CSS, affects parentheses (e.g., `rgb( 0, 0, 0 )`) and square brackets (e.g., `[ data-attr ]`). Defaults to false. */ delimiterSpacing?: DelimiterSpacing; /** * Control the formatter for CSS (and its super languages) files. */ enabled?: Bool; /** * The indent style applied to CSS (and its super languages) files. */ indentStyle?: IndentStyle; /** * The size of the indentation applied to CSS (and its super languages) files. Default to 2. */ indentWidth?: IndentWidth; /** * The type of line ending applied to CSS (and its super languages) files. `auto` uses CRLF on Windows and LF on other platforms. */ lineEnding?: LineEnding; /** * What's the max width of a line applied to CSS (and its super languages) files. Defaults to 80. */ lineWidth?: LineWidth; /** * The type of quotes used in CSS code. Defaults to double. */ quoteStyle?: QuoteStyle; /** * Whether to add a trailing newline at the end of the file. Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools: - https://thoughtbot.com/blog/no-newline-at-end-of-file - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804 - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files Disable the option at your own risk. Defaults to true. */ trailingNewline?: TrailingNewline; } interface CssLinterConfiguration { /** * Control the linter for CSS files. */ enabled?: Bool; } interface CssParserConfiguration { /** * Allow comments to appear on incorrect lines in `.css` files */ allowWrongLineComments?: Bool; /** * Enables parsing of CSS Modules specific features. Enable this feature only when your files don't end in `.module.css`. */ cssModules?: Bool; /** * Enables parsing of Tailwind CSS 4.0 directives and functions. */ tailwindDirectives?: Bool; } type MaxSize = number; type AttributePosition = "auto" | "multiline"; type BracketSameLine = boolean; type BracketSpacing = boolean; type DelimiterSpacing = boolean; type Expand = "auto" | "always" | "never"; type IndentStyle = "tab" | "space"; type IndentWidth = number; type LineEnding = "lf" | "crlf" | "cr" | "auto"; type LineWidth = number; type TrailingNewline = boolean; interface GraphqlAssistConfiguration { /** * Control the formatter for GraphQL files. */ enabled?: Bool; } interface GraphqlFormatterConfiguration { /** * Whether to insert spaces around brackets in object literals. Defaults to true. */ bracketSpacing?: BracketSpacing; /** * Control the formatter for GraphQL files. */ enabled?: Bool; /** * The indent style applied to GraphQL files. */ indentStyle?: IndentStyle; /** * The size of the indentation applied to GraphQL files. Default to 2. */ indentWidth?: IndentWidth; /** * The type of line ending applied to GraphQL files. `auto` uses CRLF on Windows and LF on other platforms. */ lineEnding?: LineEnding; /** * What's the max width of a line applied to GraphQL files. Defaults to 80. */ lineWidth?: LineWidth; /** * The type of quotes used in GraphQL code. Defaults to double. */ quoteStyle?: QuoteStyle; /** * Whether to add a trailing newline at the end of the file. Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools: - https://thoughtbot.com/blog/no-newline-at-end-of-file - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804 - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files Disable the option at your own risk. Defaults to true. */ trailingNewline?: TrailingNewline; } interface GraphqlLinterConfiguration { /** * Control the formatter for GraphQL files. */ enabled?: Bool; } interface GritAssistConfiguration { /** * Control the assist functionality for Grit files. */ enabled?: Bool; } interface GritFormatterConfiguration { /** * Control the formatter for Grit files. */ enabled?: Bool; /** * The indent style applied to Grit files. */ indentStyle?: IndentStyle; /** * The size of the indentation applied to Grit files. Default to 2. */ indentWidth?: IndentWidth; /** * The type of line ending applied to Grit files. */ lineEnding?: LineEnding; /** * What's the max width of a line applied to Grit files. Defaults to 80. */ lineWidth?: LineWidth; /** * Whether to add a trailing newline at the end of the file. Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools: - https://thoughtbot.com/blog/no-newline-at-end-of-file - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804 - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files Disable the option at your own risk. Defaults to true. */ trailingNewline?: TrailingNewline; } interface GritLinterConfiguration { /** * Control the linter for Grit files. */ enabled?: Bool; } interface HtmlAssistConfiguration { /** * Control the assist for HTML (and its super languages) files. */ enabled?: Bool; } interface HtmlFormatterConfiguration { /** * The attribute position style in HTML elements. Defaults to auto. */ attributePosition?: AttributePosition; /** * 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. */ bracketSameLine?: BracketSameLine; /** * Control the formatter for HTML (and its super languages) files. */ enabled?: Bool; /** * Whether to indent the `