@biomejs/wasm-web 2.5.5 → 2.5.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/biome_wasm.d.ts CHANGED
@@ -18,11 +18,11 @@ interface Configuration {
18
18
  */
19
19
  $schema?: Schema;
20
20
  /**
21
- * Specific configuration for assists
21
+ * The assist configuration.
22
22
  */
23
23
  assist?: AssistConfiguration;
24
24
  /**
25
- * Specific configuration for the Css language
25
+ * Configuration specific to CSS.
26
26
  */
27
27
  css?: CssConfiguration;
28
28
  /**
@@ -30,39 +30,39 @@ interface Configuration {
30
30
  */
31
31
  extends?: Extends;
32
32
  /**
33
- * The configuration of the filesystem
33
+ * The file handling configuration.
34
34
  */
35
35
  files?: FilesConfiguration;
36
36
  /**
37
- * The configuration of the formatter
37
+ * The formatter configuration.
38
38
  */
39
39
  formatter?: FormatterConfiguration;
40
40
  /**
41
- * Specific configuration for the GraphQL language
41
+ * Configuration specific to GraphQL.
42
42
  */
43
43
  graphql?: GraphqlConfiguration;
44
44
  /**
45
- * Specific configuration for the GraphQL language
45
+ * Configuration specific to GritQL.
46
46
  */
47
47
  grit?: GritConfiguration;
48
48
  /**
49
- * Specific configuration for the HTML language
49
+ * Configuration specific to HTML.
50
50
  */
51
51
  html?: HtmlConfiguration;
52
52
  /**
53
- * Specific configuration for the JavaScript language
53
+ * Configuration specific to JavaScript.
54
54
  */
55
55
  javascript?: JsConfiguration;
56
56
  /**
57
- * Specific configuration for the Json language
57
+ * Configuration specific to JSON.
58
58
  */
59
59
  json?: JsonConfiguration;
60
60
  /**
61
- * The configuration for the linter
61
+ * The linter configuration.
62
62
  */
63
63
  linter?: LinterConfiguration;
64
64
  /**
65
- * A list of granular patterns that should be applied only to a sub set of files
65
+ * A list of granular patterns applied only to a subset of files.
66
66
  */
67
67
  overrides?: Overrides;
68
68
  /**
@@ -75,7 +75,7 @@ interface Configuration {
75
75
  */
76
76
  root?: Bool;
77
77
  /**
78
- * The configuration of the VCS integration
78
+ * The version control integration configuration.
79
79
  */
80
80
  vcs?: VcsConfiguration;
81
81
  }
@@ -106,23 +106,23 @@ interface AssistConfiguration {
106
106
  }
107
107
  interface CssConfiguration {
108
108
  /**
109
- * CSS assist options
109
+ * CSS assist options.
110
110
  */
111
111
  assist?: CssAssistConfiguration;
112
112
  /**
113
- * CSS formatter options
113
+ * CSS formatter options.
114
114
  */
115
115
  formatter?: CssFormatterConfiguration;
116
116
  /**
117
- * CSS globals
117
+ * CSS globals.
118
118
  */
119
119
  globals?: string[];
120
120
  /**
121
- * CSS linter options
121
+ * CSS linter options.
122
122
  */
123
123
  linter?: CssLinterConfiguration;
124
124
  /**
125
- * CSS parsing options
125
+ * CSS parsing options.
126
126
  */
127
127
  parser?: CssParserConfiguration;
128
128
  }
@@ -137,54 +137,58 @@ interface FilesConfiguration {
137
137
  */
138
138
  experimentalScannerIgnores?: string[];
139
139
  /**
140
- * Tells Biome to not emit diagnostics when handling files that it doesn't know
140
+ * Prevents Biome from emitting diagnostics for unrecognized file types.
141
141
  */
142
142
  ignoreUnknown?: Bool;
143
143
  /**
144
- * A list of glob patterns. Biome will handle only those files/folders that will
145
- match these patterns.
144
+ * A list of glob patterns. Biome handles only files and directories that match these
145
+ patterns.
146
146
  */
147
147
  includes?: NormalizedGlob[];
148
148
  /**
149
- * The maximum allowed size for source code files in bytes. Files above
150
- this limit will be ignored for performance reasons. Defaults to 1 MiB
149
+ * The maximum source file size in bytes. Biome ignores larger files. Defaults to `1 MiB`.
151
150
  */
152
151
  maxSize?: MaxSize;
153
152
  }
154
153
  interface FormatterConfiguration {
155
154
  /**
156
- * The attribute position style in HTML-ish languages. Defaults to auto.
155
+ * The attribute position style in HTML-like languages. Defaults to `auto`.
157
156
  */
158
157
  attributePosition?: AttributePosition;
159
158
  /**
160
- * 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).
159
+ * Places the `>` of a multiline HTML or JSX element at the end of the last line instead of on
160
+ the next line. Self-closing elements are unaffected. Defaults to `false`.
161
161
  */
162
162
  bracketSameLine?: BracketSameLine;
163
163
  /**
164
- * Whether to insert spaces around brackets in object literals. Defaults to true.
164
+ * Whether to insert spaces inside braces in object literals. Defaults to `true`.
165
165
  */
166
166
  bracketSpacing?: BracketSpacing;
167
167
  /**
168
- * Whether to insert spaces inside delimiters (after the opening delimiter and before the
169
- closing delimiter), such as parentheses, brackets, angle brackets, and template literal
170
- interpolations. Spaces are not added before the opening delimiter, and empty delimiters
171
- are not affected. Only applies when the content fits on a single line. The specific
172
- delimiters affected depend on the language. Defaults to false.
168
+ * Controls spaces immediately inside supported delimiters when their content fits on one line.
169
+ It doesn't add spaces before opening delimiters or inside empty delimiters.
170
+
171
+ The affected delimiters vary by language. Defaults to `false`.
173
172
  */
174
173
  delimiterSpacing?: DelimiterSpacing;
175
174
  enabled?: Bool;
176
175
  /**
177
- * Whether to expand arrays and objects on multiple lines.
178
- When set to `auto`, object literals are formatted on multiple lines if the first property has a newline,
179
- and array literals are formatted on a single line if it fits in the line.
180
- When set to `always`, these literals are formatted on multiple lines, regardless of length of the list.
181
- When set to `never`, these literals are formatted on a single line if it fits in the line.
182
- When formatting `package.json`, Biome will use `always` unless configured otherwise. Defaults to "auto".
176
+ * Controls whether arrays and objects are formatted on one line or multiple lines.
177
+
178
+ `auto` formats objects on multiple lines if the first property has a newline, and arrays on
179
+ one line if they fit.
180
+
181
+ `always` formats arrays and objects on multiple lines.
182
+
183
+ `never` formats arrays and objects on one line if they fit.
184
+
185
+ Defaults to `auto`.
186
+
187
+ When formatting `package.json`, Biome uses `always` unless configured otherwise.
183
188
  */
184
189
  expand?: Expand;
185
190
  /**
186
- * Whether formatting should be allowed to proceed if a given file
187
- has syntax errors
191
+ * Allows formatting files that contain syntax errors when set to `true`. Defaults to `false`.
188
192
  */
189
193
  formatWithErrors?: Bool;
190
194
  /**
@@ -193,83 +197,79 @@ interface FormatterConfiguration {
193
197
  */
194
198
  includes?: NormalizedGlob[];
195
199
  /**
196
- * The indent style.
200
+ * Uses tabs or spaces for indentation. Defaults to `tab`.
197
201
  */
198
202
  indentStyle?: IndentStyle;
199
203
  /**
200
- * The size of the indentation, 2 by default
204
+ * The indentation width. Defaults to `2`.
201
205
  */
202
206
  indentWidth?: IndentWidth;
203
207
  /**
204
- * The type of line ending.
208
+ * Selects the line ending. `auto` uses the platform convention. Defaults to `lf`.
205
209
  */
206
210
  lineEnding?: LineEnding;
207
211
  /**
208
- * What's the max width of a line. Defaults to 80.
212
+ * The maximum line width. Defaults to `80`.
209
213
  */
210
214
  lineWidth?: LineWidth;
211
215
  /**
212
- * Whether to add a trailing newline at the end of the file.
213
-
214
- Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools:
215
- - https://thoughtbot.com/blog/no-newline-at-end-of-file
216
- - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804
217
- - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files
218
-
219
- Disable the option at your own risk.
220
-
221
- Defaults to true.
216
+ * Whether to add a trailing newline at the end of the file. Defaults to `true`; disabling
217
+ this option can cause compatibility problems with other tools.
222
218
  */
223
219
  trailingNewline?: TrailingNewline;
224
220
  /**
225
- * Use any `.editorconfig` files to configure the formatter. Configuration
226
- in `biome.json` will override `.editorconfig` configuration.
227
-
228
- Default: `false`.
221
+ * Uses `.editorconfig` files to configure the formatter. Settings in `biome.json` or
222
+ `biome.jsonc` override `.editorconfig` settings. Defaults to `false`.
229
223
  */
230
224
  useEditorconfig?: Bool;
231
225
  }
232
226
  interface GraphqlConfiguration {
233
227
  /**
234
- * Assist options
228
+ * GraphQL assist options.
235
229
  */
236
230
  assist?: GraphqlAssistConfiguration;
237
231
  /**
238
- * GraphQL formatter options
232
+ * GraphQL formatter options.
239
233
  */
240
234
  formatter?: GraphqlFormatterConfiguration;
235
+ /**
236
+ * GraphQL linter options.
237
+ */
241
238
  linter?: GraphqlLinterConfiguration;
242
239
  }
243
240
  interface GritConfiguration {
244
241
  /**
245
- * Assist options
242
+ * GritQL assist options.
246
243
  */
247
244
  assist?: GritAssistConfiguration;
248
245
  /**
249
- * Formatting options
246
+ * GritQL formatter options.
250
247
  */
251
248
  formatter?: GritFormatterConfiguration;
252
249
  /**
253
- * Formatting options
250
+ * GritQL linter options.
254
251
  */
255
252
  linter?: GritLinterConfiguration;
256
253
  }
257
254
  interface HtmlConfiguration {
255
+ /**
256
+ * HTML assist options.
257
+ */
258
258
  assist?: HtmlAssistConfiguration;
259
259
  /**
260
- * Enables full support for HTML, Vue, Svelte and Astro files.
260
+ * Enables full support for HTML, Vue, Svelte, and Astro files.
261
261
  */
262
262
  experimentalFullSupportEnabled?: Bool;
263
263
  /**
264
- * HTML formatter options
264
+ * HTML formatter options.
265
265
  */
266
266
  formatter?: HtmlFormatterConfiguration;
267
267
  /**
268
- * HTML linter options
268
+ * HTML linter options.
269
269
  */
270
270
  linter?: HtmlLinterConfiguration;
271
271
  /**
272
- * HTML parsing options
272
+ * HTML parsing options.
273
273
  */
274
274
  parser?: HtmlParserConfiguration;
275
275
  }
@@ -351,29 +351,30 @@ type Plugins = PluginConfiguration[];
351
351
  type Bool = boolean;
352
352
  interface VcsConfiguration {
353
353
  /**
354
- * The kind of client.
354
+ * The version control client.
355
355
  */
356
356
  clientKind?: VcsClientKind;
357
357
  /**
358
- * The main branch of the project
358
+ * The project's default branch.
359
359
  */
360
360
  defaultBranch?: string;
361
361
  /**
362
- * Whether Biome should integrate itself with the VCS client
362
+ * Whether Biome should integrate with the version control client.
363
363
  */
364
364
  enabled?: Bool;
365
365
  /**
366
- * The folder where Biome should check for VCS files. By default, Biome will use the same
367
- folder where `biome.json` was found.
366
+ * Sets the directory where Biome checks for version control files.
367
+
368
+ Defaults to the directory containing `biome.json` or `biome.jsonc`. If no configuration is
369
+ found, Biome uses the current working directory.
368
370
 
369
- If Biome can't find the configuration, it will attempt to use the current working directory.
370
- If no current working directory can't be found, Biome won't use the VCS integration, and a diagnostic
371
- will be emitted
371
+ If neither directory is available, Biome disables version control integration and emits a
372
+ diagnostic.
372
373
  */
373
374
  root?: string;
374
375
  /**
375
- * Whether Biome should use VCS ignore files. When [true], Biome will ignore files
376
- specified in `.gitignore`, `.ignore`, and Git's local exclude file.
376
+ * When `true`, Biome ignores files listed in `.gitignore`, `.ignore`, and Git's local
377
+ exclude file.
377
378
  */
378
379
  useIgnoreFile?: Bool;
379
380
  }
@@ -391,69 +392,66 @@ interface Actions {
391
392
  type NormalizedGlob = string;
392
393
  interface CssAssistConfiguration {
393
394
  /**
394
- * Control the assist for CSS files.
395
+ * Controls assist actions for CSS files.
395
396
  */
396
397
  enabled?: Bool;
397
398
  }
398
399
  interface CssFormatterConfiguration {
399
400
  /**
400
- * Whether to insert spaces inside delimiters (after the opening delimiter and before the
401
- closing delimiter). Only applies when the content fits on a single line, and empty
402
- delimiters are not affected. For CSS, affects parentheses (e.g., `rgb( 0, 0, 0 )`) and
403
- square brackets (e.g., `[ data-attr ]`). Defaults to false.
401
+ * Controls spaces inside CSS parentheses and square brackets when their content fits on one
402
+ line. When enabled, `rgb(0, 0, 0)` becomes `rgb( 0, 0, 0 )` and `[data-attr]` becomes
403
+ `[ data-attr ]`. Empty delimiters are unchanged.
404
+
405
+ If unset, inherits the global delimiter spacing setting.
404
406
  */
405
407
  delimiterSpacing?: DelimiterSpacing;
406
408
  /**
407
- * Control the formatter for CSS (and its super languages) files.
409
+ * Controls the formatter for CSS and languages that extend it.
408
410
  */
409
411
  enabled?: Bool;
410
412
  /**
411
- * The indent style applied to CSS (and its super languages) files.
413
+ * The indent style applied to CSS and languages that extend it. If unset, inherits the global
414
+ indentation style.
412
415
  */
413
416
  indentStyle?: IndentStyle;
414
417
  /**
415
- * The size of the indentation applied to CSS (and its super languages) files. Default to 2.
418
+ * The indentation width applied to CSS and languages that extend it. If unset, inherits the
419
+ global indentation width.
416
420
  */
417
421
  indentWidth?: IndentWidth;
418
422
  /**
419
- * The type of line ending applied to CSS (and its super languages) files. `auto` uses CRLF on Windows and LF on other platforms.
423
+ * The line ending applied to CSS and languages that extend it. If unset, inherits the global
424
+ line ending.
420
425
  */
421
426
  lineEnding?: LineEnding;
422
427
  /**
423
- * What's the max width of a line applied to CSS (and its super languages) files. Defaults to 80.
428
+ * The maximum line width for CSS and languages that extend it. If unset, inherits the global
429
+ line width.
424
430
  */
425
431
  lineWidth?: LineWidth;
426
432
  /**
427
- * The type of quotes used in CSS code. Defaults to double.
433
+ * The type of quotes used in CSS code. Defaults to `double`.
428
434
  */
429
435
  quoteStyle?: QuoteStyle;
430
436
  /**
431
- * Whether to add a trailing newline at the end of the file.
432
-
433
- Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools:
434
- - https://thoughtbot.com/blog/no-newline-at-end-of-file
435
- - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804
436
- - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files
437
-
438
- Disable the option at your own risk.
439
-
440
- Defaults to true.
437
+ * Whether to add a trailing newline at the end of the file. If unset, inherits the global
438
+ trailing newline setting.
441
439
  */
442
440
  trailingNewline?: TrailingNewline;
443
441
  }
444
442
  interface CssLinterConfiguration {
445
443
  /**
446
- * Control the linter for CSS files.
444
+ * Controls the linter for CSS files.
447
445
  */
448
446
  enabled?: Bool;
449
447
  }
450
448
  interface CssParserConfiguration {
451
449
  /**
452
- * Allow comments to appear on incorrect lines in `.css` files
450
+ * Allows comments to appear on incorrect lines in `.css` files.
453
451
  */
454
452
  allowWrongLineComments?: Bool;
455
453
  /**
456
- * Enables parsing of CSS Modules specific features. Enable this feature only
454
+ * Enables parsing of CSS Modules-specific features. Enable this feature only
457
455
  when your files don't end in `.module.css`.
458
456
  */
459
457
  cssModules?: Bool;
@@ -475,180 +473,169 @@ type LineWidth = number;
475
473
  type TrailingNewline = boolean;
476
474
  interface GraphqlAssistConfiguration {
477
475
  /**
478
- * Control the formatter for GraphQL files.
476
+ * Controls assist actions for GraphQL files.
479
477
  */
480
478
  enabled?: Bool;
481
479
  }
482
480
  interface GraphqlFormatterConfiguration {
483
481
  /**
484
- * Whether to insert spaces around brackets in object literals. Defaults to true.
482
+ * Whether to insert spaces inside braces in object literals. If unset, inherits the global
483
+ bracket spacing setting.
485
484
  */
486
485
  bracketSpacing?: BracketSpacing;
487
486
  /**
488
- * Control the formatter for GraphQL files.
487
+ * Controls the formatter for GraphQL files.
489
488
  */
490
489
  enabled?: Bool;
491
490
  /**
492
- * The indent style applied to GraphQL files.
491
+ * The indent style applied to GraphQL files. If unset, inherits the global indentation style.
493
492
  */
494
493
  indentStyle?: IndentStyle;
495
494
  /**
496
- * The size of the indentation applied to GraphQL files. Default to 2.
495
+ * The indentation width applied to GraphQL files. If unset, inherits the global indentation
496
+ width.
497
497
  */
498
498
  indentWidth?: IndentWidth;
499
499
  /**
500
- * The type of line ending applied to GraphQL files. `auto` uses CRLF on Windows and LF on other platforms.
500
+ * The line ending applied to GraphQL files. If unset, inherits the global line ending.
501
501
  */
502
502
  lineEnding?: LineEnding;
503
503
  /**
504
- * What's the max width of a line applied to GraphQL files. Defaults to 80.
504
+ * The maximum line width for GraphQL files. If unset, inherits the global line width.
505
505
  */
506
506
  lineWidth?: LineWidth;
507
507
  /**
508
- * The type of quotes used in GraphQL code. Defaults to double.
508
+ * The type of quotes used in GraphQL code. Defaults to `double`.
509
509
  */
510
510
  quoteStyle?: QuoteStyle;
511
511
  /**
512
- * Whether to add a trailing newline at the end of the file.
513
-
514
- Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools:
515
- - https://thoughtbot.com/blog/no-newline-at-end-of-file
516
- - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804
517
- - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files
518
-
519
- Disable the option at your own risk.
520
-
521
- Defaults to true.
512
+ * Whether to add a trailing newline at the end of the file. If unset, inherits the global
513
+ trailing newline setting.
522
514
  */
523
515
  trailingNewline?: TrailingNewline;
524
516
  }
525
517
  interface GraphqlLinterConfiguration {
526
518
  /**
527
- * Control the formatter for GraphQL files.
519
+ * Controls the linter for GraphQL files.
528
520
  */
529
521
  enabled?: Bool;
530
522
  }
531
523
  interface GritAssistConfiguration {
532
524
  /**
533
- * Control the assist functionality for Grit files.
525
+ * Controls assist actions for GritQL files.
534
526
  */
535
527
  enabled?: Bool;
536
528
  }
537
529
  interface GritFormatterConfiguration {
538
530
  /**
539
- * Control the formatter for Grit files.
531
+ * Controls the formatter for GritQL files.
540
532
  */
541
533
  enabled?: Bool;
542
534
  /**
543
- * The indent style applied to Grit files.
535
+ * The indent style applied to GritQL files. If unset, inherits the global indentation style.
544
536
  */
545
537
  indentStyle?: IndentStyle;
546
538
  /**
547
- * The size of the indentation applied to Grit files. Default to 2.
539
+ * The indentation width applied to GritQL files. If unset, inherits the global indentation
540
+ width.
548
541
  */
549
542
  indentWidth?: IndentWidth;
550
543
  /**
551
- * The type of line ending applied to Grit files.
544
+ * The line ending applied to GritQL files. If unset, inherits the global line ending.
552
545
  */
553
546
  lineEnding?: LineEnding;
554
547
  /**
555
- * What's the max width of a line applied to Grit files. Defaults to 80.
548
+ * The maximum line width for GritQL files. If unset, inherits the global line width.
556
549
  */
557
550
  lineWidth?: LineWidth;
558
551
  /**
559
- * Whether to add a trailing newline at the end of the file.
560
-
561
- Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools:
562
- - https://thoughtbot.com/blog/no-newline-at-end-of-file
563
- - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804
564
- - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files
565
-
566
- Disable the option at your own risk.
567
-
568
- Defaults to true.
552
+ * Whether to add a trailing newline at the end of the file. If unset, inherits the global
553
+ trailing newline setting.
569
554
  */
570
555
  trailingNewline?: TrailingNewline;
571
556
  }
572
557
  interface GritLinterConfiguration {
573
558
  /**
574
- * Control the linter for Grit files.
559
+ * Controls the linter for GritQL files.
575
560
  */
576
561
  enabled?: Bool;
577
562
  }
578
563
  interface HtmlAssistConfiguration {
579
564
  /**
580
- * Control the assist for HTML (and its super languages) files.
565
+ * Controls assist actions for HTML and languages that extend it.
581
566
  */
582
567
  enabled?: Bool;
583
568
  }
584
569
  interface HtmlFormatterConfiguration {
585
570
  /**
586
- * The attribute position style in HTML elements. Defaults to auto.
571
+ * The attribute position style in HTML elements. If unset, inherits the global attribute
572
+ position setting.
587
573
  */
588
574
  attributePosition?: AttributePosition;
589
575
  /**
590
- * 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.
576
+ * Whether to place the closing bracket of a multiline HTML tag at the end of the last line
577
+ instead of on its own line. If unset, inherits the global `bracketSameLine` setting.
591
578
  */
592
579
  bracketSameLine?: BracketSameLine;
593
580
  /**
594
- * Control the formatter for HTML (and its super languages) files.
581
+ * Controls the formatter for HTML and languages that extend it.
595
582
  */
596
583
  enabled?: Bool;
597
584
  /**
598
- * Whether to indent the `<script>` and `<style>` tags for HTML (and its super languages). Defaults to false.
585
+ * Whether to indent `<script>` and `<style>` tags in HTML and languages that extend it.
586
+ Defaults to `false`.
599
587
  */
600
588
  indentScriptAndStyle?: IndentScriptAndStyle;
601
589
  /**
602
- * The indent style applied to HTML (and its super languages) files.
590
+ * The indent style applied to HTML and languages that extend it. If unset, inherits the global
591
+ indentation style.
603
592
  */
604
593
  indentStyle?: IndentStyle;
605
594
  /**
606
- * The size of the indentation applied to HTML (and its super languages) files. Default to 2.
595
+ * The indentation width applied to HTML and languages that extend it. If unset, inherits the
596
+ global indentation width.
607
597
  */
608
598
  indentWidth?: IndentWidth;
609
599
  /**
610
- * The type of line ending applied to HTML (and its super languages) files. `auto` uses CRLF on Windows and LF on other platforms.
600
+ * The line ending applied to HTML and languages that extend it. If unset, inherits the global
601
+ line ending.
611
602
  */
612
603
  lineEnding?: LineEnding;
613
604
  /**
614
- * What's the max width of a line applied to HTML (and its super languages) files. Defaults to 80.
605
+ * The maximum line width for HTML and languages that extend it. If unset, inherits the global
606
+ line width.
615
607
  */
616
608
  lineWidth?: LineWidth;
617
609
  /**
618
- * Whether void elements should be self-closed. Defaults to never.
610
+ * Controls whether void elements are self-closed. Defaults to `never`.
619
611
  */
620
612
  selfCloseVoidElements?: SelfCloseVoidElements;
621
613
  /**
622
- * Whether to add a trailing newline at the end of the file.
623
-
624
- Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools:
625
- - https://thoughtbot.com/blog/no-newline-at-end-of-file
626
- - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804
627
- - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files
628
-
629
- Disable the option at your own risk.
630
-
631
- Defaults to true.
614
+ * Whether to add a trailing newline at the end of the file. Unlike other language-specific
615
+ trailing newline settings, this option defaults to `true` instead of inheriting the global
616
+ setting.
632
617
  */
633
618
  trailingNewline?: TrailingNewline;
634
619
  /**
635
- * Whether to account for whitespace sensitivity when formatting HTML (and its super languages). Defaults to "css".
620
+ * Whether to account for whitespace sensitivity when formatting HTML and languages that
621
+ extend it. Defaults to `css`.
636
622
  */
637
623
  whitespaceSensitivity?: WhitespaceSensitivity;
638
624
  }
639
625
  interface HtmlLinterConfiguration {
640
626
  /**
641
- * Control the linter for HTML (and its super languages) files.
627
+ * Controls the linter for HTML and languages that extend it.
642
628
  */
643
629
  enabled?: Bool;
644
630
  }
645
631
  interface HtmlParserConfiguration {
646
632
  /**
647
- * Enables the parsing of double text expressions such as `{{ expression }}` inside `.html` files
633
+ * Enables parsing double text expressions such as `{{ expression }}` inside `.html` files.
648
634
  */
649
635
  interpolation?: Bool;
650
636
  /**
651
- * Enables parsing of Vue syntax (v-if, v-bind, etc.) in `.html` files. If this option is enabled, it also enables `interpolation` implicitly.
637
+ * Enables parsing Vue syntax (`v-if`, `v-bind`, etc.) in `.html` files. Enabling this option
638
+ also enables `interpolation` implicitly.
652
639
 
653
640
  Biome will already automatically enable Vue parsing in `.vue` files, so you probably don't need
654
641
  to enable this option. This only affects `.html` files, and does not change how `.vue`, `.svelte`,
@@ -658,110 +645,111 @@ interface HtmlParserConfiguration {
658
645
  }
659
646
  interface JsAssistConfiguration {
660
647
  /**
661
- * Control the assist for JavaScript (and its super languages) files.
648
+ * Controls assist actions for JavaScript and languages that extend it.
662
649
  */
663
650
  enabled?: Bool;
664
651
  }
665
652
  interface JsFormatterConfiguration {
666
653
  /**
667
- * Whether to add non-necessary parentheses to arrow functions. Defaults to "always".
654
+ * Whether to add parentheses around arrow function parameters. Defaults to `always`.
668
655
  */
669
656
  arrowParentheses?: ArrowParentheses;
670
657
  /**
671
- * The attribute position style in JSX elements. Defaults to auto.
658
+ * The attribute position style in JSX elements. If unset, inherits the global attribute
659
+ position setting.
672
660
  */
673
661
  attributePosition?: AttributePosition;
674
662
  /**
675
- * 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.
663
+ * Whether to hug the closing bracket of multiline HTML/JSX tags to the end of the last line,
664
+ rather than being alone on the following line. If unset, inherits the global bracket
665
+ placement setting.
676
666
  */
677
667
  bracketSameLine?: BracketSameLine;
678
668
  /**
679
- * Whether to insert spaces around brackets in object literals. Defaults to true.
669
+ * Whether to insert spaces inside braces in object literals. If unset, inherits the global
670
+ bracket spacing setting.
680
671
  */
681
672
  bracketSpacing?: BracketSpacing;
682
673
  /**
683
- * Whether to insert spaces inside delimiters (after the opening delimiter and before the
684
- closing delimiter). Only applies when the content fits on a single line. Spaces are not
685
- added before the opening delimiter (e.g., `function f()` stays `function f()`, not
686
- `function f ()`), and empty delimiters are not affected (e.g., `fn()` stays `fn()`).
687
- For JavaScript and TypeScript, affects parentheses (e.g., `foo( a, b )`), square brackets
688
- (e.g., `[ a, b ]`), template literal interpolations (e.g., `${ expr }`), TypeScript angle
689
- brackets (e.g., `foo< T >()`), JSX expression braces (e.g., `{ value }`), and the logical
690
- NOT operator (e.g., `! x`, but in chains only after the last one: `!! x`). Defaults to
691
- false.
674
+ * Controls spaces immediately inside supported JavaScript and TypeScript delimiters when their
675
+ content fits on one line. It doesn't add spaces before opening delimiters or inside empty
676
+ delimiters.
677
+
678
+ It affects parentheses, square brackets, template interpolations, TypeScript angle brackets,
679
+ JSX expression braces, and logical NOT. In operator chains, only the final operator receives
680
+ a following space.
681
+
682
+ If unset, inherits the global delimiter spacing setting.
692
683
  */
693
684
  delimiterSpacing?: DelimiterSpacing;
694
685
  /**
695
- * Control the formatter for JavaScript (and its super languages) files.
686
+ * Controls the formatter for JavaScript and languages that extend it.
696
687
  */
697
688
  enabled?: Bool;
698
689
  /**
699
- * Whether to expand arrays and objects on multiple lines.
700
- When set to `auto`, object literals are formatted on multiple lines if the first property has a newline,
701
- and array literals are formatted on a single line if it fits in the line.
702
- When set to `always`, these literals are formatted on multiple lines, regardless of length of the list.
703
- When set to `never`, these literals are formatted on a single line if it fits in the line.
704
- When formatting `package.json`, Biome will use `always` unless configured otherwise. Defaults to "auto".
690
+ * Uses the same `auto`, `always`, and `never` behavior as the global expansion setting.
691
+
692
+ If unset, inherits the global expansion setting.
705
693
  */
706
694
  expand?: Expand;
707
695
  /**
708
- * The indent style applied to JavaScript (and its super languages) files.
696
+ * The indent style applied to JavaScript and languages that extend it. If unset, inherits the
697
+ global indentation style.
709
698
  */
710
699
  indentStyle?: IndentStyle;
711
700
  /**
712
- * The size of the indentation applied to JavaScript (and its super languages) files. Default to 2.
701
+ * The indentation width applied to JavaScript and languages that extend it. If unset,
702
+ inherits the global indentation width.
713
703
  */
714
704
  indentWidth?: IndentWidth;
715
705
  /**
716
- * The type of quotes used in JSX. Defaults to double.
706
+ * The type of quotes used in JSX. Defaults to `double`.
717
707
  */
718
708
  jsxQuoteStyle?: QuoteStyle;
719
709
  /**
720
- * The type of line ending applied to JavaScript (and its super languages) files. `auto` uses CRLF on Windows and LF on other platforms.
710
+ * The line ending applied to JavaScript and languages that extend it. If unset, inherits the
711
+ global line ending.
721
712
  */
722
713
  lineEnding?: LineEnding;
723
714
  /**
724
- * What's the max width of a line applied to JavaScript (and its super languages) files. Defaults to 80.
715
+ * The maximum line width applied to JavaScript and languages that extend it. If unset,
716
+ inherits the global line width.
725
717
  */
726
718
  lineWidth?: LineWidth;
727
719
  /**
728
- * When breaking binary expressions into multiple lines, whether to break them before or after the binary operator. Defaults to "after".
720
+ * When breaking binary expressions into multiple lines, whether to break them before or after
721
+ the binary operator. Defaults to `after`.
729
722
  */
730
723
  operatorLinebreak?: OperatorLinebreak;
731
724
  /**
732
- * When properties in objects are quoted. Defaults to asNeeded.
725
+ * Controls when object properties are quoted. Defaults to `asNeeded` in configuration
726
+ (`as-needed` on the CLI).
733
727
  */
734
728
  quoteProperties?: QuoteProperties;
735
729
  /**
736
- * The type of quotes used in JavaScript code. Defaults to double.
730
+ * The type of quotes used in JavaScript code. Defaults to `double`.
737
731
  */
738
732
  quoteStyle?: QuoteStyle;
739
733
  /**
740
- * Whether the formatter prints semicolons for all statements or only in for statements where it is necessary because of ASI.
734
+ * Prints semicolons after every statement or only where needed to avoid automatic semicolon
735
+ insertion hazards. Defaults to `always`.
741
736
  */
742
737
  semicolons?: Semicolons;
743
738
  /**
744
- * Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "all".
739
+ * Prints trailing commas wherever possible in multiline comma-separated structures. Defaults
740
+ to `all`.
745
741
  */
746
742
  trailingCommas?: JsTrailingCommas;
747
743
  /**
748
- * Whether to add a trailing newline at the end of the file.
749
-
750
- Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools:
751
- - https://thoughtbot.com/blog/no-newline-at-end-of-file
752
- - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804
753
- - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files
754
-
755
- Disable the option at your own risk.
756
-
757
- Defaults to true.
744
+ * Whether to add a trailing newline at the end of the file. If unset, inherits the global
745
+ trailing newline setting.
758
746
  */
759
747
  trailingNewline?: TrailingNewline;
760
748
  }
761
749
  type JsxRuntime = "transparent" | "reactClassic";
762
750
  interface JsLinterConfiguration {
763
751
  /**
764
- * Control the linter for JavaScript (and its super languages) files.
752
+ * Controls the linter for JavaScript and languages that extend it.
765
753
  */
766
754
  enabled?: Bool;
767
755
  }
@@ -772,9 +760,8 @@ interface JsParserConfiguration {
772
760
  */
773
761
  gritMetavariables?: Bool;
774
762
  /**
775
- * When enabled, files like `.js`/`.mjs`/`.cjs` may contain JSX syntax.
776
-
777
- Defaults to `true`.
763
+ * When enabled, files such as `.js`, `.mjs`, and `.cjs` may contain JSX syntax. Defaults to
764
+ `true`.
778
765
  */
779
766
  jsxEverywhere?: Bool;
780
767
  /**
@@ -808,88 +795,85 @@ interface JsResolverConfiguration {
808
795
  - Biome only reads top-level `catalog` / `catalogs` mappings and scalar
809
796
  string entries.
810
797
 
811
- Default: `false`.
798
+ Defaults to `false`.
812
799
  */
813
800
  experimentalPnpmCatalogs?: Bool;
814
801
  }
815
802
  interface JsonAssistConfiguration {
816
803
  /**
817
- * Control the assist for JSON (and its super languages) files.
804
+ * Controls assist actions for JSON and languages that extend it.
818
805
  */
819
806
  enabled?: Bool;
820
807
  }
821
808
  interface JsonFormatterConfiguration {
822
809
  /**
823
- * Whether to insert spaces around brackets in object literals. Defaults to true.
810
+ * Whether to insert spaces inside braces in object literals. If unset, inherits the global
811
+ bracket spacing setting.
824
812
  */
825
813
  bracketSpacing?: BracketSpacing;
826
814
  /**
827
- * Whether to insert spaces inside delimiters (after the opening delimiter and before the
828
- closing delimiter). Only applies when the content fits on a single line, and empty
829
- brackets are not affected. For JSON, affects square brackets (e.g., `[ 1, 2, 3 ]`).
830
- Defaults to false.
815
+ * Controls spaces inside JSON square brackets when their content fits on one line. When
816
+ enabled, `[1, 2, 3]` becomes `[ 1, 2, 3 ]`. Empty brackets are unchanged.
817
+
818
+ If unset, inherits the global delimiter spacing setting.
831
819
  */
832
820
  delimiterSpacing?: DelimiterSpacing;
833
821
  /**
834
- * Control the formatter for JSON (and its super languages) files.
822
+ * Controls the formatter for JSON and languages that extend it.
835
823
  */
836
824
  enabled?: Bool;
837
825
  /**
838
- * Whether to expand arrays and objects on multiple lines.
839
- When set to `auto`, object literals are formatted on multiple lines if the first property has a newline,
840
- and array literals are formatted on a single line if it fits in the line.
841
- When set to `always`, these literals are formatted on multiple lines, regardless of length of the list.
842
- When set to `never`, these literals are formatted on a single line if it fits in the line.
843
- When formatting `package.json`, Biome will use `always` unless configured otherwise. Defaults to "auto".
826
+ * Uses the same `auto`, `always`, and `never` behavior as the global expansion setting.
827
+
828
+ If unset, inherits the global expansion setting.
829
+
830
+ When formatting `package.json`, Biome uses `always` unless configured otherwise.
844
831
  */
845
832
  expand?: Expand;
846
833
  /**
847
- * The indent style applied to JSON (and its super languages) files.
834
+ * The indent style applied to JSON and languages that extend it. If unset, inherits the global
835
+ indentation style.
848
836
  */
849
837
  indentStyle?: IndentStyle;
850
838
  /**
851
- * The size of the indentation applied to JSON (and its super languages) files. Default to 2.
839
+ * The indentation width applied to JSON and languages that extend it. If unset, inherits the
840
+ global indentation width.
852
841
  */
853
842
  indentWidth?: IndentWidth;
854
843
  /**
855
- * The type of line ending applied to JSON (and its super languages) files. `auto` uses CRLF on Windows and LF on other platforms.
844
+ * The line ending applied to JSON and languages that extend it. If unset, inherits the global
845
+ line ending.
856
846
  */
857
847
  lineEnding?: LineEnding;
858
848
  /**
859
- * What's the max width of a line applied to JSON (and its super languages) files. Defaults to 80.
849
+ * The maximum line width applied to JSON and languages that extend it. If unset, inherits the
850
+ global line width.
860
851
  */
861
852
  lineWidth?: LineWidth;
862
853
  /**
863
- * Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "none".
854
+ * Prints trailing commas wherever possible in multiline comma-separated structures. Defaults
855
+ to `none`.
864
856
  */
865
857
  trailingCommas?: JsonTrailingCommas;
866
858
  /**
867
- * Whether to add a trailing newline at the end of the file.
868
-
869
- Setting this option to `false` is **highly discouraged** because it could cause many problems with other tools:
870
- - https://thoughtbot.com/blog/no-newline-at-end-of-file
871
- - https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804
872
- - https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files
873
-
874
- Disable the option at your own risk.
875
-
876
- Defaults to true.
859
+ * Whether to add a trailing newline at the end of the file. If unset, inherits the global
860
+ trailing newline setting.
877
861
  */
878
862
  trailingNewline?: TrailingNewline;
879
863
  }
880
864
  interface JsonLinterConfiguration {
881
865
  /**
882
- * Control the linter for JSON (and its super languages) files.
866
+ * Controls the linter for JSON and languages that extend it.
883
867
  */
884
868
  enabled?: Bool;
885
869
  }
886
870
  interface JsonParserConfiguration {
887
871
  /**
888
- * Allow parsing comments in `.json` files
872
+ * Allows parsing comments in `.json` files.
889
873
  */
890
874
  allowComments?: Bool;
891
875
  /**
892
- * Allow parsing trailing commas in `.json` files
876
+ * Allows parsing trailing commas in `.json` files.
893
877
  */
894
878
  allowTrailingCommas?: Bool;
895
879
  }
@@ -1090,21 +1074,26 @@ interface OverrideFormatterConfiguration {
1090
1074
  */
1091
1075
  bracketSpacing?: BracketSpacing;
1092
1076
  /**
1093
- * Whether to insert spaces inside delimiters (after the opening delimiter and before the
1094
- closing delimiter), such as parentheses, brackets, angle brackets, and template literal
1095
- interpolations. Spaces are not added before the opening delimiter, and empty delimiters
1096
- are not affected. Only applies when the content fits on a single line. The specific
1097
- delimiters affected depend on the language. Defaults to false.
1077
+ * Controls spaces immediately inside supported delimiters when their content fits on one line.
1078
+ It doesn't add spaces before opening delimiters or inside empty delimiters.
1079
+
1080
+ The affected delimiters vary by language. If unset, uses the configured formatter setting.
1098
1081
  */
1099
1082
  delimiterSpacing?: DelimiterSpacing;
1100
1083
  enabled?: Bool;
1101
1084
  /**
1102
- * Whether to expand arrays and objects on multiple lines.
1103
- When set to `auto`, object literals are formatted on multiple lines if the first property has a newline,
1104
- and array literals are formatted on a single line if it fits in the line.
1105
- When set to `always`, these literals are formatted on multiple lines, regardless of length of the list.
1106
- When set to `never`, these literals are formatted on a single line if it fits in the line.
1107
- When formatting `package.json`, Biome will use `always` unless configured otherwise. Defaults to "auto".
1085
+ * Controls whether arrays and objects are formatted on one line or multiple lines.
1086
+
1087
+ `auto` formats objects on multiple lines if the first property has a newline, and arrays on
1088
+ one line if they fit.
1089
+
1090
+ `always` formats arrays and objects on multiple lines.
1091
+
1092
+ `never` formats arrays and objects on one line if they fit.
1093
+
1094
+ If unset, uses the configured formatter setting.
1095
+
1096
+ When formatting `package.json`, Biome uses `always` unless configured otherwise.
1108
1097
  */
1109
1098
  expand?: Expand;
1110
1099
  /**
@@ -2223,6 +2212,11 @@ interface Nursery {
2223
2212
  See https://biomejs.dev/linter/rules/no-excessive-selector-classes
2224
2213
  */
2225
2214
  noExcessiveSelectorClasses?: NoExcessiveSelectorClassesConfiguration;
2215
+ /**
2216
+ * Disallow extending the prototype of built-in objects.
2217
+ See https://biomejs.dev/linter/rules/no-extend-native
2218
+ */
2219
+ noExtendNative?: NoExtendNativeConfiguration;
2226
2220
  /**
2227
2221
  * Require Promise-like statements to be handled appropriately.
2228
2222
  See https://biomejs.dev/linter/rules/no-floating-promises
@@ -2243,6 +2237,11 @@ interface Nursery {
2243
2237
  See https://biomejs.dev/linter/rules/no-inline-styles
2244
2238
  */
2245
2239
  noInlineStyles?: NoInlineStylesConfiguration;
2240
+ /**
2241
+ * Disallow specific object properties.
2242
+ See https://biomejs.dev/linter/rules/no-js-restricted-properties
2243
+ */
2244
+ noJsRestrictedProperties?: NoJsRestrictedPropertiesConfiguration;
2246
2245
  /**
2247
2246
  * Flags text nodes with a trailing $ before a JSX expression.
2248
2247
  See https://biomejs.dev/linter/rules/no-jsx-leaked-dollar
@@ -2273,6 +2272,11 @@ interface Nursery {
2273
2272
  See https://biomejs.dev/linter/rules/no-negation-in-equality-check
2274
2273
  */
2275
2274
  noNegationInEqualityCheck?: NoNegationInEqualityCheckConfiguration;
2275
+ /**
2276
+ * Disallow disabling zoom with user-scalable=no in the \<meta name="viewport"> element.
2277
+ See https://biomejs.dev/linter/rules/no-non-scalable-viewport
2278
+ */
2279
+ noNonScalableViewport?: NoNonScalableViewportConfiguration;
2276
2280
  /**
2277
2281
  * Disallow usage of element handles (page.$() and page.$$()).
2278
2282
  See https://biomejs.dev/linter/rules/no-playwright-element-handle
@@ -2353,6 +2357,11 @@ interface Nursery {
2353
2357
  See https://biomejs.dev/linter/rules/no-svelte-unnecessary-state-wrap
2354
2358
  */
2355
2359
  noSvelteUnnecessaryStateWrap?: NoSvelteUnnecessaryStateWrapConfiguration;
2360
+ /**
2361
+ * Disallow arbitrary values in Tailwind CSS utility classes.
2362
+ See https://biomejs.dev/linter/rules/no-tailwind-arbitrary-value
2363
+ */
2364
+ noTailwindArbitraryValue?: NoTailwindArbitraryValueConfiguration;
2356
2365
  /**
2357
2366
  * Require the JSON top-level value to be an array or object.
2358
2367
  See https://biomejs.dev/linter/rules/no-top-level-literals
@@ -4460,6 +4469,9 @@ type NoExcessiveNestedCallbacksConfiguration =
4460
4469
  type NoExcessiveSelectorClassesConfiguration =
4461
4470
  | RulePlainConfiguration
4462
4471
  | RuleWithNoExcessiveSelectorClassesOptions;
4472
+ type NoExtendNativeConfiguration =
4473
+ | RulePlainConfiguration
4474
+ | RuleWithNoExtendNativeOptions;
4463
4475
  type NoFloatingPromisesConfiguration =
4464
4476
  | RulePlainConfiguration
4465
4477
  | RuleWithNoFloatingPromisesOptions;
@@ -4472,6 +4484,9 @@ type NoImpliedEvalConfiguration =
4472
4484
  type NoInlineStylesConfiguration =
4473
4485
  | RulePlainConfiguration
4474
4486
  | RuleWithNoInlineStylesOptions;
4487
+ type NoJsRestrictedPropertiesConfiguration =
4488
+ | RulePlainConfiguration
4489
+ | RuleWithNoJsRestrictedPropertiesOptions;
4475
4490
  type NoJsxLeakedDollarConfiguration =
4476
4491
  | RulePlainConfiguration
4477
4492
  | RuleWithNoJsxLeakedDollarOptions;
@@ -4490,6 +4505,9 @@ type NoMisusedPromisesConfiguration =
4490
4505
  type NoNegationInEqualityCheckConfiguration =
4491
4506
  | RulePlainConfiguration
4492
4507
  | RuleWithNoNegationInEqualityCheckOptions;
4508
+ type NoNonScalableViewportConfiguration =
4509
+ | RulePlainConfiguration
4510
+ | RuleWithNoNonScalableViewportOptions;
4493
4511
  type NoPlaywrightElementHandleConfiguration =
4494
4512
  | RulePlainConfiguration
4495
4513
  | RuleWithNoPlaywrightElementHandleOptions;
@@ -4538,6 +4556,9 @@ type NoRestrictedDependenciesConfiguration =
4538
4556
  type NoSvelteUnnecessaryStateWrapConfiguration =
4539
4557
  | RulePlainConfiguration
4540
4558
  | RuleWithNoSvelteUnnecessaryStateWrapOptions;
4559
+ type NoTailwindArbitraryValueConfiguration =
4560
+ | RulePlainConfiguration
4561
+ | RuleWithNoTailwindArbitraryValueOptions;
4541
4562
  type NoTopLevelLiteralsConfiguration =
4542
4563
  | RulePlainConfiguration
4543
4564
  | RuleWithNoTopLevelLiteralsOptions;
@@ -6278,6 +6299,10 @@ interface RuleWithNoExcessiveSelectorClassesOptions {
6278
6299
  level: RulePlainConfiguration;
6279
6300
  options?: NoExcessiveSelectorClassesOptions;
6280
6301
  }
6302
+ interface RuleWithNoExtendNativeOptions {
6303
+ level: RulePlainConfiguration;
6304
+ options?: NoExtendNativeOptions;
6305
+ }
6281
6306
  interface RuleWithNoFloatingPromisesOptions {
6282
6307
  fix?: FixKind;
6283
6308
  level: RulePlainConfiguration;
@@ -6296,6 +6321,10 @@ interface RuleWithNoInlineStylesOptions {
6296
6321
  level: RulePlainConfiguration;
6297
6322
  options?: NoInlineStylesOptions;
6298
6323
  }
6324
+ interface RuleWithNoJsRestrictedPropertiesOptions {
6325
+ level: RulePlainConfiguration;
6326
+ options?: NoJsRestrictedPropertiesOptions;
6327
+ }
6299
6328
  interface RuleWithNoJsxLeakedDollarOptions {
6300
6329
  fix?: FixKind;
6301
6330
  level: RulePlainConfiguration;
@@ -6323,6 +6352,10 @@ interface RuleWithNoNegationInEqualityCheckOptions {
6323
6352
  level: RulePlainConfiguration;
6324
6353
  options?: NoNegationInEqualityCheckOptions;
6325
6354
  }
6355
+ interface RuleWithNoNonScalableViewportOptions {
6356
+ level: RulePlainConfiguration;
6357
+ options?: NoNonScalableViewportOptions;
6358
+ }
6326
6359
  interface RuleWithNoPlaywrightElementHandleOptions {
6327
6360
  fix?: FixKind;
6328
6361
  level: RulePlainConfiguration;
@@ -6392,6 +6425,10 @@ interface RuleWithNoSvelteUnnecessaryStateWrapOptions {
6392
6425
  level: RulePlainConfiguration;
6393
6426
  options?: NoSvelteUnnecessaryStateWrapOptions;
6394
6427
  }
6428
+ interface RuleWithNoTailwindArbitraryValueOptions {
6429
+ level: RulePlainConfiguration;
6430
+ options?: NoTailwindArbitraryValueOptions;
6431
+ }
6395
6432
  interface RuleWithNoTopLevelLiteralsOptions {
6396
6433
  level: RulePlainConfiguration;
6397
6434
  options?: NoTopLevelLiteralsOptions;
@@ -8055,16 +8092,39 @@ interface NoExcessiveSelectorClassesOptions {
8055
8092
  */
8056
8093
  maxClasses?: number;
8057
8094
  }
8095
+ interface NoExtendNativeOptions {
8096
+ /**
8097
+ * Built-in names to ignore. Extending the prototype of an ignored
8098
+ name will not trigger this rule.
8099
+ */
8100
+ ignore?: string[];
8101
+ }
8058
8102
  type NoFloatingPromisesOptions = {};
8059
8103
  type NoIdenticalTestTitleOptions = {};
8060
8104
  type NoImpliedEvalOptions = {};
8061
8105
  type NoInlineStylesOptions = {};
8106
+ interface NoJsRestrictedPropertiesOptions {
8107
+ /**
8108
+ * Restriction entries for object/property access.
8109
+
8110
+ Each entry can describe one of these cases:
8111
+
8112
+ - exact object/property match:
8113
+ `{ "object": "require", "property": "ensure" }`
8114
+ - property-wide restriction with allowed objects:
8115
+ `{ "property": "__defineGetter__", "allowObjects": ["Object"] }`
8116
+ - object-wide restriction with allowed properties:
8117
+ `{ "object": "arguments", "allowProperties": ["length"] }`
8118
+ */
8119
+ entries?: RestrictedPropertyEntry[];
8120
+ }
8062
8121
  type NoJsxLeakedDollarOptions = {};
8063
8122
  type NoJsxNamespaceOptions = {};
8064
8123
  type NoLoopFuncOptions = {};
8065
8124
  type NoMisleadingReturnTypeOptions = {};
8066
8125
  type NoMisusedPromisesOptions = {};
8067
8126
  type NoNegationInEqualityCheckOptions = {};
8127
+ type NoNonScalableViewportOptions = {};
8068
8128
  type NoPlaywrightElementHandleOptions = {};
8069
8129
  type NoPlaywrightEvalOptions = {};
8070
8130
  type NoPlaywrightForceOptionOptions = {};
@@ -8095,6 +8155,16 @@ interface NoSvelteUnnecessaryStateWrapOptions {
8095
8155
  */
8096
8156
  allowReassign?: boolean;
8097
8157
  }
8158
+ interface NoTailwindArbitraryValueOptions {
8159
+ /**
8160
+ * Additional attributes that will be checked.
8161
+ */
8162
+ attributes?: string[];
8163
+ /**
8164
+ * Names of the functions or tagged templates that will be checked.
8165
+ */
8166
+ functions?: string[];
8167
+ }
8098
8168
  type NoTopLevelLiteralsOptions = {};
8099
8169
  type NoUndeclaredClassesOptions = {};
8100
8170
  type NoUnnecessaryTemplateExpressionOptions = {};
@@ -8224,6 +8294,10 @@ interface UseNullishCoalescingOptions {
8224
8294
  * Ignore `||` expressions in conditional test positions (default: `true`).
8225
8295
  */
8226
8296
  ignoreConditionalTests?: boolean;
8297
+ /**
8298
+ * Whether to ignore `if` statements that only assign to a nullish variable and could be rewritten as `??=` (default: `false`).
8299
+ */
8300
+ ignoreIfStatements?: boolean;
8227
8301
  /**
8228
8302
  * Whether to ignore `||` and `||=` binary operations that are part of a mixed logical expression with `&&` (default: `false`).
8229
8303
  */
@@ -8945,6 +9019,38 @@ interface Hook {
8945
9019
  */
8946
9020
  stableResult?: StableHookResult;
8947
9021
  }
9022
+ interface RestrictedPropertyEntry {
9023
+ /**
9024
+ * Objects that are allowed when `property` is restricted globally.
9025
+
9026
+ Example:
9027
+ `{ "property": "__defineGetter__", "allowObjects": ["Object"] }`
9028
+ */
9029
+ allowObjects?: string[];
9030
+ /**
9031
+ * Properties that are allowed when `object` is restricted globally.
9032
+
9033
+ Example:
9034
+ `{ "object": "arguments", "allowProperties": ["length"] }`
9035
+ */
9036
+ allowProperties?: string[];
9037
+ /**
9038
+ * Optional custom note appended to the diagnostic.
9039
+ */
9040
+ message?: string;
9041
+ /**
9042
+ * Object name to restrict.
9043
+
9044
+ Example: `"require"` or `"Object"`.
9045
+ */
9046
+ object?: string;
9047
+ /**
9048
+ * Property name to restrict.
9049
+
9050
+ Example: `"ensure"` or `"__defineGetter__"`.
9051
+ */
9052
+ property?: string;
9053
+ }
8948
9054
  type AvailabilityTarget = AvailabilityNamed | number;
8949
9055
  type TestFunctionKind = "it" | "test";
8950
9056
  type IgnorePrimitives =
@@ -9371,11 +9477,13 @@ type Category =
9371
9477
  | "lint/nursery/noEmptyObjectKeys"
9372
9478
  | "lint/nursery/noExcessiveNestedCallbacks"
9373
9479
  | "lint/nursery/noExcessiveSelectorClasses"
9480
+ | "lint/nursery/noExtendNative"
9374
9481
  | "lint/nursery/noFloatingPromises"
9375
9482
  | "lint/nursery/noIdenticalTestTitle"
9376
9483
  | "lint/nursery/noImplicitCoercion"
9377
9484
  | "lint/nursery/noImpliedEval"
9378
9485
  | "lint/nursery/noInlineStyles"
9486
+ | "lint/nursery/noJsRestrictedProperties"
9379
9487
  | "lint/nursery/noJsxLeakedDollar"
9380
9488
  | "lint/nursery/noJsxNamespace"
9381
9489
  | "lint/nursery/noLoopFunc"
@@ -9383,6 +9491,7 @@ type Category =
9383
9491
  | "lint/nursery/noMissingGenericFamilyKeyword"
9384
9492
  | "lint/nursery/noMisusedPromises"
9385
9493
  | "lint/nursery/noNegationInEqualityCheck"
9494
+ | "lint/nursery/noNonScalableViewport"
9386
9495
  | "lint/nursery/noPlaywrightElementHandle"
9387
9496
  | "lint/nursery/noPlaywrightEval"
9388
9497
  | "lint/nursery/noPlaywrightForceOption"
@@ -9399,6 +9508,7 @@ type Category =
9399
9508
  | "lint/nursery/noReactStringRefs"
9400
9509
  | "lint/nursery/noRestrictedDependencies"
9401
9510
  | "lint/nursery/noSvelteUnnecessaryStateWrap"
9511
+ | "lint/nursery/noTailwindArbitraryValue"
9402
9512
  | "lint/nursery/noTopLevelLiterals"
9403
9513
  | "lint/nursery/noUndeclaredClasses"
9404
9514
  | "lint/nursery/noUnnecessaryTemplateExpression"
@@ -9715,6 +9825,7 @@ type Category =
9715
9825
  | "assist/source/useSortedProperties"
9716
9826
  | "assist/source/useSortedSelectionSet"
9717
9827
  | "assist/source/useSortedTypeFields"
9828
+ | "syntax/correctness/noInvalidPropertySyntax"
9718
9829
  | "syntax/correctness/noTypeOnlyImportAttributes"
9719
9830
  | "syntax/correctness/noSuperWithoutExtends"
9720
9831
  | "syntax/correctness/noInitializerWithDefinite"
@@ -10002,25 +10113,14 @@ type JsEmbeddingKind =
10002
10113
  }
10003
10114
  | {
10004
10115
  Svelte: {
10116
+ embedding_kind: SvelteEmbeddingKind;
10005
10117
  /**
10006
- * Whether this is a `{@const name = value}` block.
10007
- */
10008
- is_const_block: boolean;
10009
- /**
10010
- * Whether this is the declaration of a function, usually declared in `#snippet`
10011
- */
10012
- is_function_signature: boolean;
10013
- /**
10014
- * Where the bindings are defined
10015
- */
10016
- is_source: boolean;
10017
- /**
10018
- * `kind` models whether the Svelte file is a component document or a
10118
+ * `file_kind` models whether the Svelte file is a component document or a
10019
10119
  source module. That distinction controls whether downstream code
10020
10120
  extracts `<script>` content or treats the file as a standalone JS/TS
10021
- module, while `is_source` still tracks where bindings come from.
10121
+ module.
10022
10122
  */
10023
- kind: SvelteFileKind;
10123
+ file_kind: SvelteFileKind;
10024
10124
  };
10025
10125
  };
10026
10126
  type Language = "javaScript" | { typeScript: { definition_file: boolean } };
@@ -10039,6 +10139,12 @@ type HtmlVariant =
10039
10139
  | "Svelte"
10040
10140
  | "Angular";
10041
10141
  type GritVariant = "Standard";
10142
+ type SvelteEmbeddingKind =
10143
+ | "Source"
10144
+ | "Expression"
10145
+ | "SnippetSignature"
10146
+ | "LegacyConst"
10147
+ | "Declaration";
10042
10148
  type SvelteFileKind = "Component" | "SourceModule";
10043
10149
  type EmbeddingHtmlKind =
10044
10150
  | "None"
Binary file
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "Biome Developers and Contributors"
6
6
  ],
7
7
  "description": "WebAssembly bindings to the Biome workspace API",
8
- "version": "2.5.5",
8
+ "version": "2.5.7",
9
9
  "license": "MIT OR Apache-2.0",
10
10
  "repository": {
11
11
  "type": "git",