solid-js 2.0.0-beta.6 → 2.0.0-beta.8

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.
@@ -0,0 +1,4294 @@
1
+ /**
2
+ THIS FILE IS GENERATED BY `./jsx-update.mjs`.
3
+ PLEASE UPDATE `jsx-h.d.ts` INSTEAD AND RUN `pnpm jsx-sync-types`.
4
+ */
5
+
6
+ import * as csstype from "csstype";
7
+ import type { PropKey, WidenPropValue } from "./jsx-properties.cjs";
8
+
9
+ /**
10
+ * Originally based on JSX types for Surplus and Inferno and adapted for `dom-expressions`.
11
+ *
12
+ * - https://github.com/adamhaile/surplus/blob/master/index.d.ts
13
+ * - https://github.com/infernojs/inferno/blob/master/packages/inferno/src/core/types.ts
14
+ *
15
+ * MathML typings coming mostly from Preact
16
+ *
17
+ * - https://github.com/preactjs/preact/blob/07dc9f324e58569ce66634aa03fe8949b4190358/src/jsx.d.ts#L2575
18
+ *
19
+ * Checked against other frameworks via the following table:
20
+ *
21
+ * - https://potahtml.github.io/namespace-jsx-project/index.html
22
+ *
23
+ * # Typings on elements
24
+ *
25
+ * ## Attributes
26
+ *
27
+ * - Typings include attributes and not properties (unless the property Is special-cased, such
28
+ * textContent, event handlers, etc).
29
+ * - Attributes are lowercase to avoid confusion with properties.
30
+ * - Attributes are used "as is" and won't be transformed in any way (such to `lowercase` or from
31
+ * `dashed-case` to `camelCase`).
32
+ *
33
+ * ## Event Handlers
34
+ *
35
+ * - Event handlers use `camelCase` such `onClick` and will be delegated when possible, bubbling
36
+ * through the component tree, not the dom tree.
37
+ * - Native event handlers use the namespace `on:` such `on:click`, and wont be delegated. bubbling
38
+ * the dom tree.
39
+ * - A global case-insensitive event handler can be added by extending `EventHandlersElement<T>`
40
+ * - A native `on:` event handler can be added by extending `CustomEvents<T>` interface
41
+ *
42
+ * ## Boolean Attributes (property setter that accepts `true | false`):
43
+ *
44
+ * - `(bool)true` adds the attribute `<video autoplay={true}/>` or in JSX as `<video autoplay/>`
45
+ * - `(bool)false` removes the attribute from the DOM `<video autoplay={false}/>`
46
+ * - `=""` may be accepted for the sake of parity with html `<video autoplay=""/>`
47
+ * - `"true" | "false"` are NOT allowed, these are strings that evaluate to `(bool)true`
48
+ *
49
+ * ## Enumerated Attributes (attribute accepts 1 string value out of many)
50
+ *
51
+ * - Accepts any of the enumerated values, such: `"perhaps" | "maybe"`
52
+ * - When one of the possible values is empty(in html that's for the attribute to be present), then it
53
+ * will also accept `(bool)true` to make it consistent with boolean attributes.
54
+ *
55
+ * Such `popover` attribute provides `"" | "manual" | "auto" | "hint"`.
56
+ *
57
+ * By NOT allowing `(bool)true` we will have to write `<div popover="" />`. Therefore, To make it
58
+ * consistent with Boolean Attributes we accept `true | "" | "manual" | "auto" | "hint"`, such as:
59
+ * `<div popover={true} />` or in JSX `<div popover />` is allowed and equivalent to `<div
60
+ * popover="" />`
61
+ *
62
+ * ## Pseudo-Boolean Attributes (enumerated attributes that happen to accept the strings `"true" | "false"`)
63
+ *
64
+ * - Such `<div draggable="true"/>` or `<div draggable="false"/>`. The value of the attribute is a
65
+ * string not a boolean.
66
+ * - `<div draggable={true}/>` is not valid because `(bool)true` is NOT transformed to the string
67
+ * `"true"`. Likewise `<div draggable={false}/>` removes the attribute from the element.
68
+ * - MDN documentation https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/draggable
69
+ *
70
+ * ## All Of The Above In a nutshell
71
+ *
72
+ * - `(bool)true` adds an empty attribute
73
+ * - `(bool)false` removes the attribute
74
+ * - Attributes are lowercase
75
+ * - Event handlers are camelCase
76
+ * - Anything else is a `string` and used "as is"
77
+ * - Additionally, an attribute may be removed by `undefined`
78
+ *
79
+ * ## Using Properties
80
+ *
81
+ * - The namespace `prop:` could be used to directly set properties in native elements and
82
+ * custom-elements. `<custom-element prop:myProp={true}/>` equivalent to `el.myProp = true`
83
+ *
84
+ * ## Interfaces
85
+ *
86
+ * Events
87
+ *
88
+ * 1. An event handler goes in `EventHandlersElement` when:
89
+ *
90
+ * - `event` is global, that's to be defined in `HTMLElement` AND `SVGElement` AND `MathMLElement`
91
+ * - `event` is defined in `Element` (as `HTMLElement/MathMLElement/SVGElement` -> `Element`)
92
+ * 2. `<body>`, `<svg>`, `<framesete>` are special as these include `window` events
93
+ * 3. Any other event is special for its own tag.
94
+ *
95
+ * Browser Hierarchy
96
+ *
97
+ * - $Element (ex HTMLDivElement <div>) -> ... -> HTMLElement -> Element -> Node
98
+ * - $Element (all math elements are MathMLElement) MathMLElement -> Element -> Node
99
+ * - $Element`(ex SVGMaskElement <mask>) -> ... -> SVGElement -> Element -> Node
100
+ *
101
+ * Attributes
102
+ *
103
+ * <div> -> ... -> HTMLAttributes -> ElementAttributes
104
+ * <svg> -> ... -> SVGAttributes -> ElementAttributes
105
+ * <math> -> ... -> MathMLAttributes -> ElementAttributes
106
+ *
107
+ * ElementAttributes = `Element` + `Node` attributes (aka global attributes)
108
+ *
109
+ * HTMLAttributes = `HTMLElement` attributes (aka HTML global attributes)
110
+ * SVGAttributes = `SVGElement` attributes (aka SVG global attributes)
111
+ * MathMLAttributes = `MathMLElement` attributes (aka MATH global attributes)
112
+ *
113
+ * CustomAttributes = Framework attributes
114
+ */
115
+
116
+ type DOMElement = Element;
117
+
118
+ /**
119
+ * Fallback declarations for event types that are not yet defined in older TypeScript
120
+ * `lib.dom.d.ts` versions. When the user's TS lib defines these, declaration merging
121
+ * yields the full specialized type; otherwise these serve as a bare `Event` fallback.
122
+ */
123
+ declare global {
124
+ interface CommandEvent extends Event {}
125
+ interface PageRevealEvent extends Event {}
126
+ interface PageSwapEvent extends Event {}
127
+ interface SnapEvent extends Event {}
128
+ interface TimeEvent extends Event {}
129
+ }
130
+
131
+ export namespace JSX {
132
+ // START - difference between `jsx.d.ts` and `jsx-h.d.ts`
133
+ type FunctionMaybe<T = unknown> = { (): T } | T;
134
+ interface FunctionElement {
135
+ (): Element;
136
+ }
137
+
138
+ type Element = Node | ArrayElement | (string & {}) | number | boolean | null | undefined;
139
+ // END - difference between `jsx.d.ts` and `jsx-h.d.ts`
140
+
141
+ interface ArrayElement extends Array<Element> {}
142
+
143
+ interface ElementClass {
144
+ // empty, libs can define requirements downstream
145
+ }
146
+ interface ElementAttributesProperty {
147
+ // empty, libs can define requirements downstream
148
+ }
149
+ interface ElementChildrenAttribute {
150
+ children: {};
151
+ }
152
+
153
+ // Event handlers
154
+
155
+ interface EventHandler<T, E extends Event> {
156
+ (
157
+ e: E & {
158
+ currentTarget: T;
159
+ target: DOMElement;
160
+ }
161
+ ): void;
162
+ }
163
+
164
+ interface BoundEventHandler<
165
+ T,
166
+ E extends Event,
167
+ EHandler extends EventHandler<T, any> = EventHandler<T, E>
168
+ > {
169
+ 0: (data: any, ...e: Parameters<EHandler>) => void;
170
+ 1: any;
171
+ }
172
+ type EventHandlerUnion<
173
+ T,
174
+ E extends Event,
175
+ EHandler extends EventHandler<T, any> = EventHandler<T, E>
176
+ > = EHandler | BoundEventHandler<T, E, EHandler>;
177
+
178
+ interface EventHandlerWithOptions<T, E extends Event, EHandler = EventHandler<T, E>>
179
+ extends AddEventListenerOptions, EventListenerOptions {
180
+ handleEvent: EHandler;
181
+ }
182
+
183
+ type EventHandlerWithOptionsUnion<
184
+ T,
185
+ E extends Event,
186
+ EHandler extends EventHandler<T, any> = EventHandler<T, E>
187
+ > = EHandler | EventHandlerWithOptions<T, E, EHandler>;
188
+
189
+ interface InputEventHandler<T, E extends InputEvent> {
190
+ (
191
+ e: E & {
192
+ currentTarget: T;
193
+ target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement
194
+ ? T
195
+ : DOMElement;
196
+ }
197
+ ): void;
198
+ }
199
+ type InputEventHandlerUnion<T, E extends InputEvent> = EventHandlerUnion<
200
+ T,
201
+ E,
202
+ InputEventHandler<T, E>
203
+ >;
204
+
205
+ interface ChangeEventHandler<T, E extends Event> {
206
+ (
207
+ e: E & {
208
+ currentTarget: T;
209
+ target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement
210
+ ? T
211
+ : DOMElement;
212
+ }
213
+ ): void;
214
+ }
215
+ type ChangeEventHandlerUnion<T, E extends Event> = EventHandlerUnion<
216
+ T,
217
+ E,
218
+ ChangeEventHandler<T, E>
219
+ >;
220
+
221
+ interface FocusEventHandler<T, E extends FocusEvent> {
222
+ (
223
+ e: E & {
224
+ currentTarget: T;
225
+ target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement
226
+ ? T
227
+ : DOMElement;
228
+ }
229
+ ): void;
230
+ }
231
+ type FocusEventHandlerUnion<T, E extends FocusEvent> = EventHandlerUnion<
232
+ T,
233
+ E,
234
+ FocusEventHandler<T, E>
235
+ >;
236
+ // end event handlers
237
+
238
+ type ClassList =
239
+ | Record<string, boolean>
240
+ | Array<string | number | boolean | null | undefined | Record<string, boolean>>;
241
+
242
+ const SERIALIZABLE: unique symbol;
243
+ interface SerializableAttributeValue {
244
+ toString(): string;
245
+ [SERIALIZABLE]: never;
246
+ }
247
+
248
+ type RefCallback<T> = (el: T) => void;
249
+ type Ref<T> = T | RefCallback<T> | (RefCallback<T> | Ref<T>)[];
250
+
251
+ interface IntrinsicAttributes {
252
+ ref?: Ref<unknown> | undefined;
253
+ }
254
+ interface CustomAttributes<T> {
255
+ ref?: Ref<T> | undefined;
256
+ children?: Element | undefined;
257
+ $ServerOnly?: boolean | undefined;
258
+ }
259
+ interface ExplicitProperties {}
260
+ interface CustomEvents {}
261
+ type PropAttributes = {
262
+ [Key in keyof ExplicitProperties as `prop:${Key}`]?: ExplicitProperties[Key];
263
+ };
264
+ type OnAttributes<T> = {
265
+ [Key in keyof CustomEvents as `on:${Key}`]?: EventHandlerWithOptionsUnion<T, CustomEvents[Key]>;
266
+ };
267
+
268
+ /**
269
+ * Writable, element-specific DOM properties exposed as `prop:*` attributes, auto-derived
270
+ * from the element interface `T`. See `./jsx-properties.d.ts` for the filtering rules.
271
+ * Existing element interfaces can locally disable an auto-derived key with
272
+ * `"prop:foo"?: never;` to redirect users to a plain attribute form.
273
+ */
274
+ type Properties<T> = {
275
+ [K in keyof T as PropKey<T, K>]?: WidenPropValue<T[K]>;
276
+ };
277
+
278
+ // CSS
279
+
280
+ interface CSSProperties extends csstype.PropertiesHyphen {
281
+ // Override
282
+ [key: `-${string}`]: string | number | undefined;
283
+ }
284
+
285
+ // TODO: Should we allow this?
286
+ // type ClassKeys = `class:${string}`;
287
+ // type CSSKeys = Exclude<keyof csstype.PropertiesHyphen, `-${string}`>;
288
+
289
+ // type CSSAttributes = {
290
+ // [key in CSSKeys as `style:${key}`]: csstype.PropertiesHyphen[key];
291
+ // };
292
+
293
+ // BOOLEAN
294
+
295
+ /**
296
+ * Boolean and Pseudo-Boolean Attributes Helpers.
297
+ *
298
+ * Please use the helpers to describe boolean and pseudo boolean attributes to make this file and
299
+ * also the typings easier to understand and explain.
300
+ */
301
+
302
+ type BooleanAttribute = true | false | "";
303
+
304
+ type BooleanProperty = true | false;
305
+
306
+ type EnumeratedPseudoBoolean = "false" | "true";
307
+
308
+ type EnumeratedAcceptsEmpty = "" | true;
309
+
310
+ type RemoveAttribute = undefined | false;
311
+
312
+ type RemoveProperty = undefined;
313
+
314
+ // ARIA
315
+
316
+ // All the WAI-ARIA 1.1 attributes from https://www.w3.org/TR/wai-aria-1.1/
317
+ interface AriaAttributes {
318
+ /**
319
+ * Identifies the currently active element when DOM focus is on a composite widget, textbox,
320
+ * group, or application.
321
+ */
322
+ "aria-activedescendant"?: string | RemoveAttribute;
323
+ /**
324
+ * Indicates whether assistive technologies will present all, or only parts of, the changed
325
+ * region based on the change notifications defined by the aria-relevant attribute.
326
+ */
327
+ "aria-atomic"?: EnumeratedPseudoBoolean | RemoveAttribute;
328
+ /**
329
+ * Similar to the global aria-label. Defines a string value that labels the current element,
330
+ * which is intended to be converted into Braille.
331
+ *
332
+ * @see aria-label.
333
+ */
334
+ "aria-braillelabel"?: string | RemoveAttribute;
335
+ /**
336
+ * Defines a human-readable, author-localized abbreviated description for the role of an element
337
+ * intended to be converted into Braille. Braille is not a one-to-one transliteration of letters
338
+ * and numbers, but rather it includes various abbreviations, contractions, and characters that
339
+ * represent words (known as logograms).
340
+ *
341
+ * Instead of converting long role descriptions to Braille, the aria-brailleroledescription
342
+ * attribute allows for providing an abbreviated version of the aria-roledescription value,
343
+ * which is a human-readable, author-localized description for the role of an element, for
344
+ * improved user experience with braille interfaces.
345
+ *
346
+ * @see aria-roledescription.
347
+ */
348
+ "aria-brailleroledescription"?: string | RemoveAttribute;
349
+ /**
350
+ * Indicates whether inputting text could trigger display of one or more predictions of the
351
+ * user's intended value for an input and specifies how predictions would be presented if they
352
+ * are made.
353
+ */
354
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | RemoveAttribute;
355
+ /**
356
+ * Indicates an element is being modified and that assistive technologies MAY want to wait until
357
+ * the modifications are complete before exposing them to the user.
358
+ */
359
+ "aria-busy"?: EnumeratedPseudoBoolean | RemoveAttribute;
360
+ /**
361
+ * Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.
362
+ *
363
+ * @see aria-pressed @see aria-selected.
364
+ */
365
+ "aria-checked"?: EnumeratedPseudoBoolean | "mixed" | RemoveAttribute;
366
+ /**
367
+ * Defines the total number of columns in a table, grid, or treegrid.
368
+ *
369
+ * @see aria-colindex.
370
+ */
371
+ "aria-colcount"?: number | string | RemoveAttribute;
372
+ /**
373
+ * Defines an element's column index or position with respect to the total number of columns
374
+ * within a table, grid, or treegrid.
375
+ *
376
+ * @see aria-colcount @see aria-colspan.
377
+ */
378
+ "aria-colindex"?: number | string | RemoveAttribute;
379
+ /** Defines a human-readable text alternative of the numeric aria-colindex. */
380
+ "aria-colindextext"?: number | string | RemoveAttribute;
381
+ /**
382
+ * Defines the number of columns spanned by a cell or gridcell within a table, grid, or
383
+ * treegrid.
384
+ *
385
+ * @see aria-colindex @see aria-rowspan.
386
+ */
387
+ "aria-colspan"?: number | string | RemoveAttribute;
388
+ /**
389
+ * Identifies the element (or elements) whose contents or presence are controlled by the current
390
+ * element.
391
+ *
392
+ * @see aria-owns.
393
+ */
394
+ "aria-controls"?: string | RemoveAttribute;
395
+ /**
396
+ * Indicates the element that represents the current item within a container or set of related
397
+ * elements.
398
+ */
399
+ "aria-current"?:
400
+ | EnumeratedPseudoBoolean
401
+ | "page"
402
+ | "step"
403
+ | "location"
404
+ | "date"
405
+ | "time"
406
+ | RemoveAttribute;
407
+ /**
408
+ * Identifies the element (or elements) that describes the object.
409
+ *
410
+ * @see aria-labelledby
411
+ */
412
+ "aria-describedby"?: string | RemoveAttribute;
413
+ /**
414
+ * Defines a string value that describes or annotates the current element.
415
+ *
416
+ * @see aria-describedby
417
+ */
418
+ "aria-description"?: string | RemoveAttribute;
419
+ /**
420
+ * Identifies the element that provides a detailed, extended description for the object.
421
+ *
422
+ * @see aria-describedby.
423
+ */
424
+ "aria-details"?: string | RemoveAttribute;
425
+ /**
426
+ * Indicates that the element is perceivable but disabled, so it is not editable or otherwise
427
+ * operable.
428
+ *
429
+ * @see aria-hidden @see aria-readonly.
430
+ */
431
+ "aria-disabled"?: EnumeratedPseudoBoolean | RemoveAttribute;
432
+ /**
433
+ * Indicates what functions can be performed when a dragged object is released on the drop
434
+ * target.
435
+ *
436
+ * @deprecated In ARIA 1.1
437
+ */
438
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | RemoveAttribute;
439
+ /**
440
+ * Identifies the element that provides an error message for the object.
441
+ *
442
+ * @see aria-invalid @see aria-describedby.
443
+ */
444
+ "aria-errormessage"?: string | RemoveAttribute;
445
+ /**
446
+ * Indicates whether the element, or another grouping element it controls, is currently expanded
447
+ * or collapsed.
448
+ */
449
+ "aria-expanded"?: EnumeratedPseudoBoolean | RemoveAttribute;
450
+ /**
451
+ * Identifies the next element (or elements) in an alternate reading order of content which, at
452
+ * the user's discretion, allows assistive technology to override the general default of reading
453
+ * in document source order.
454
+ */
455
+ "aria-flowto"?: string | RemoveAttribute;
456
+ /**
457
+ * Indicates an element's "grabbed" state in a drag-and-drop operation.
458
+ *
459
+ * @deprecated In ARIA 1.1
460
+ */
461
+ "aria-grabbed"?: EnumeratedPseudoBoolean | RemoveAttribute;
462
+ /**
463
+ * Indicates the availability and type of interactive popup element, such as menu or dialog,
464
+ * that can be triggered by an element.
465
+ */
466
+ "aria-haspopup"?:
467
+ | EnumeratedPseudoBoolean
468
+ | "menu"
469
+ | "listbox"
470
+ | "tree"
471
+ | "grid"
472
+ | "dialog"
473
+ | RemoveAttribute;
474
+ /**
475
+ * Indicates whether the element is exposed to an accessibility API.
476
+ *
477
+ * @see aria-disabled.
478
+ */
479
+ "aria-hidden"?: EnumeratedPseudoBoolean | RemoveAttribute;
480
+ /**
481
+ * Indicates the entered value does not conform to the format expected by the application.
482
+ *
483
+ * @see aria-errormessage.
484
+ */
485
+ "aria-invalid"?: EnumeratedPseudoBoolean | "grammar" | "spelling" | RemoveAttribute;
486
+ /**
487
+ * Indicates keyboard shortcuts that an author has implemented to activate or give focus to an
488
+ * element.
489
+ */
490
+ "aria-keyshortcuts"?: string | RemoveAttribute;
491
+ /**
492
+ * Defines a string value that labels the current element.
493
+ *
494
+ * @see aria-labelledby.
495
+ */
496
+ "aria-label"?: string | RemoveAttribute;
497
+ /**
498
+ * Identifies the element (or elements) that labels the current element.
499
+ *
500
+ * @see aria-describedby.
501
+ */
502
+ "aria-labelledby"?: string | RemoveAttribute;
503
+ /** Defines the hierarchical level of an element within a structure. */
504
+ "aria-level"?: number | string | RemoveAttribute;
505
+ /**
506
+ * Indicates that an element will be updated, and describes the types of updates the user
507
+ * agents, assistive technologies, and user can expect from the live region.
508
+ */
509
+ "aria-live"?: "off" | "assertive" | "polite" | RemoveAttribute;
510
+ /** Indicates whether an element is modal when displayed. */
511
+ "aria-modal"?: EnumeratedPseudoBoolean | RemoveAttribute;
512
+ /** Indicates whether a text box accepts multiple lines of input or only a single line. */
513
+ "aria-multiline"?: EnumeratedPseudoBoolean | RemoveAttribute;
514
+ /**
515
+ * Indicates that the user may select more than one item from the current selectable
516
+ * descendants.
517
+ */
518
+ "aria-multiselectable"?: EnumeratedPseudoBoolean | RemoveAttribute;
519
+ /** Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous. */
520
+ "aria-orientation"?: "horizontal" | "vertical" | RemoveAttribute;
521
+ /**
522
+ * Identifies an element (or elements) in order to define a visual, functional, or contextual
523
+ * parent/child relationship between DOM elements where the DOM hierarchy cannot be used to
524
+ * represent the relationship.
525
+ *
526
+ * @see aria-controls.
527
+ */
528
+ "aria-owns"?: string | RemoveAttribute;
529
+ /**
530
+ * Defines a short hint (a word or short phrase) intended to aid the user with data entry when
531
+ * the control has no value. A hint could be a sample value or a brief description of the
532
+ * expected format.
533
+ */
534
+ "aria-placeholder"?: string | RemoveAttribute;
535
+ /**
536
+ * Defines an element's number or position in the current set of listitems or treeitems. Not
537
+ * required if all elements in the set are present in the DOM.
538
+ *
539
+ * @see aria-setsize.
540
+ */
541
+ "aria-posinset"?: number | string | RemoveAttribute;
542
+ /**
543
+ * Indicates the current "pressed" state of toggle buttons.
544
+ *
545
+ * @see aria-checked @see aria-selected.
546
+ */
547
+ "aria-pressed"?: EnumeratedPseudoBoolean | "mixed" | RemoveAttribute;
548
+ /**
549
+ * Indicates that the element is not editable, but is otherwise operable.
550
+ *
551
+ * @see aria-disabled.
552
+ */
553
+ "aria-readonly"?: EnumeratedPseudoBoolean | RemoveAttribute;
554
+ /**
555
+ * Indicates what notifications the user agent will trigger when the accessibility tree within a
556
+ * live region is modified.
557
+ *
558
+ * @see aria-atomic.
559
+ */
560
+ "aria-relevant"?:
561
+ | "additions"
562
+ | "additions removals"
563
+ | "additions text"
564
+ | "all"
565
+ | "removals"
566
+ | "removals additions"
567
+ | "removals text"
568
+ | "text"
569
+ | "text additions"
570
+ | "text removals"
571
+ | RemoveAttribute;
572
+ /** Indicates that user input is required on the element before a form may be submitted. */
573
+ "aria-required"?: EnumeratedPseudoBoolean | RemoveAttribute;
574
+ /** Defines a human-readable, author-localized description for the role of an element. */
575
+ "aria-roledescription"?: string | RemoveAttribute;
576
+ /**
577
+ * Defines the total number of rows in a table, grid, or treegrid.
578
+ *
579
+ * @see aria-rowindex.
580
+ */
581
+ "aria-rowcount"?: number | string | RemoveAttribute;
582
+ /**
583
+ * Defines an element's row index or position with respect to the total number of rows within a
584
+ * table, grid, or treegrid.
585
+ *
586
+ * @see aria-rowcount @see aria-rowspan.
587
+ */
588
+ "aria-rowindex"?: number | string | RemoveAttribute;
589
+ /** Defines a human-readable text alternative of aria-rowindex. */
590
+ "aria-rowindextext"?: number | string | RemoveAttribute;
591
+
592
+ /**
593
+ * Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.
594
+ *
595
+ * @see aria-rowindex @see aria-colspan.
596
+ */
597
+ "aria-rowspan"?: number | string | RemoveAttribute;
598
+ /**
599
+ * Indicates the current "selected" state of various widgets.
600
+ *
601
+ * @see aria-checked @see aria-pressed.
602
+ */
603
+ "aria-selected"?: EnumeratedPseudoBoolean | RemoveAttribute;
604
+ /**
605
+ * Defines the number of items in the current set of listitems or treeitems. Not required if all
606
+ * elements in the set are present in the DOM.
607
+ *
608
+ * @see aria-posinset.
609
+ */
610
+ "aria-setsize"?: number | string | RemoveAttribute;
611
+ /** Indicates if items in a table or grid are sorted in ascending or descending order. */
612
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | RemoveAttribute;
613
+ /** Defines the maximum allowed value for a range widget. */
614
+ "aria-valuemax"?: number | string | RemoveAttribute;
615
+ /** Defines the minimum allowed value for a range widget. */
616
+ "aria-valuemin"?: number | string | RemoveAttribute;
617
+ /**
618
+ * Defines the current value for a range widget.
619
+ *
620
+ * @see aria-valuetext.
621
+ */
622
+ "aria-valuenow"?: number | string | RemoveAttribute;
623
+ /** Defines the human readable text alternative of aria-valuenow for a range widget. */
624
+ "aria-valuetext"?: string | RemoveAttribute;
625
+ role?:
626
+ | "alert"
627
+ | "alertdialog"
628
+ | "application"
629
+ | "article"
630
+ | "banner"
631
+ | "button"
632
+ | "cell"
633
+ | "checkbox"
634
+ | "columnheader"
635
+ | "combobox"
636
+ | "complementary"
637
+ | "contentinfo"
638
+ | "definition"
639
+ | "dialog"
640
+ | "directory"
641
+ | "document"
642
+ | "feed"
643
+ | "figure"
644
+ | "form"
645
+ | "grid"
646
+ | "gridcell"
647
+ | "group"
648
+ | "heading"
649
+ | "img"
650
+ | "link"
651
+ | "list"
652
+ | "listbox"
653
+ | "listitem"
654
+ | "log"
655
+ | "main"
656
+ | "marquee"
657
+ | "math"
658
+ | "menu"
659
+ | "menubar"
660
+ | "menuitem"
661
+ | "menuitemcheckbox"
662
+ | "menuitemradio"
663
+ | "meter"
664
+ | "navigation"
665
+ | "none"
666
+ | "note"
667
+ | "option"
668
+ | "presentation"
669
+ | "progressbar"
670
+ | "radio"
671
+ | "radiogroup"
672
+ | "region"
673
+ | "row"
674
+ | "rowgroup"
675
+ | "rowheader"
676
+ | "scrollbar"
677
+ | "search"
678
+ | "searchbox"
679
+ | "separator"
680
+ | "slider"
681
+ | "spinbutton"
682
+ | "status"
683
+ | "switch"
684
+ | "tab"
685
+ | "table"
686
+ | "tablist"
687
+ | "tabpanel"
688
+ | "term"
689
+ | "textbox"
690
+ | "timer"
691
+ | "toolbar"
692
+ | "tooltip"
693
+ | "tree"
694
+ | "treegrid"
695
+ | "treeitem"
696
+ | RemoveAttribute;
697
+ }
698
+
699
+ // EVENTS
700
+
701
+ /**
702
+ * `Window` events, defined for `<body>`, `<svg>`, `<frameset>` tags.
703
+ *
704
+ * Excluding `EventHandlersElement` events already defined as globals that all tags share, such as
705
+ * `onblur`.
706
+ */
707
+ interface EventHandlersWindow<T> {
708
+ onAfterPrint?: EventHandlerUnion<T, Event> | undefined;
709
+ onBeforePrint?: EventHandlerUnion<T, Event> | undefined;
710
+ onBeforeUnload?: EventHandlerUnion<T, BeforeUnloadEvent> | undefined;
711
+ onDeviceMotion?: EventHandlerUnion<T, DeviceMotionEvent> | undefined;
712
+ onDeviceOrientation?: EventHandlerUnion<T, DeviceOrientationEvent> | undefined;
713
+ onDeviceOrientationAbsolute?: EventHandlerUnion<T, DeviceOrientationEvent> | undefined;
714
+ onGamepadConnected?: EventHandlerUnion<T, GamepadEvent> | undefined;
715
+ onGamepadDisconnected?: EventHandlerUnion<T, GamepadEvent> | undefined;
716
+ onHashchange?: EventHandlerUnion<T, HashChangeEvent> | undefined;
717
+ onLanguageChange?: EventHandlerUnion<T, Event> | undefined;
718
+ onMessage?: EventHandlerUnion<T, MessageEvent> | undefined;
719
+ onMessageError?: EventHandlerUnion<T, MessageEvent> | undefined;
720
+ onOffline?: EventHandlerUnion<T, Event> | undefined;
721
+ onOnline?: EventHandlerUnion<T, Event> | undefined;
722
+ /** @deprecated Use `screen.orientation` (`ScreenOrientation.change`) instead. */
723
+ onOrientationChange?: EventHandlerUnion<T, Event> | undefined;
724
+ onPageHide?: EventHandlerUnion<T, PageTransitionEvent> | undefined;
725
+ onPageReveal?: EventHandlerUnion<T, PageRevealEvent> | undefined;
726
+ onPageShow?: EventHandlerUnion<T, PageTransitionEvent> | undefined;
727
+ onPageSwap?: EventHandlerUnion<T, PageSwapEvent> | undefined;
728
+ onPopstate?: EventHandlerUnion<T, PopStateEvent> | undefined;
729
+ onRejectionHandled?: EventHandlerUnion<T, PromiseRejectionEvent> | undefined;
730
+ onStorage?: EventHandlerUnion<T, StorageEvent> | undefined;
731
+ onUnhandledRejection?: EventHandlerUnion<T, PromiseRejectionEvent> | undefined;
732
+ onUnload?: EventHandlerUnion<T, Event> | undefined;
733
+
734
+ "on:afterprint"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
735
+ "on:beforeprint"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
736
+ "on:beforeunload"?: EventHandlerWithOptionsUnion<T, BeforeUnloadEvent> | undefined;
737
+ "on:devicemotion"?: EventHandlerWithOptionsUnion<T, DeviceMotionEvent> | undefined;
738
+ "on:deviceorientation"?: EventHandlerWithOptionsUnion<T, DeviceOrientationEvent> | undefined;
739
+ "on:deviceorientationabsolute"?:
740
+ | EventHandlerWithOptionsUnion<T, DeviceOrientationEvent>
741
+ | undefined;
742
+ "on:gamepadconnected"?: EventHandlerWithOptionsUnion<T, GamepadEvent> | undefined;
743
+ "on:gamepaddisconnected"?: EventHandlerWithOptionsUnion<T, GamepadEvent> | undefined;
744
+ "on:hashchange"?: EventHandlerWithOptionsUnion<T, HashChangeEvent> | undefined;
745
+ "on:languagechange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
746
+ "on:message"?: EventHandlerWithOptionsUnion<T, MessageEvent> | undefined;
747
+ "on:messageerror"?: EventHandlerWithOptionsUnion<T, MessageEvent> | undefined;
748
+ "on:offline"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
749
+ "on:online"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
750
+ /** @deprecated Use `screen.orientation` (`ScreenOrientation.change`) instead. */
751
+ "on:orientationchange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
752
+ "on:pagehide"?: EventHandlerWithOptionsUnion<T, PageTransitionEvent> | undefined;
753
+ "on:pagereveal"?: EventHandlerWithOptionsUnion<T, PageRevealEvent> | undefined;
754
+ "on:pageshow"?: EventHandlerWithOptionsUnion<T, PageTransitionEvent> | undefined;
755
+ "on:pageswap"?: EventHandlerWithOptionsUnion<T, PageSwapEvent> | undefined;
756
+ "on:popstate"?: EventHandlerWithOptionsUnion<T, PopStateEvent> | undefined;
757
+ "on:rejectionhandled"?: EventHandlerWithOptionsUnion<T, PromiseRejectionEvent> | undefined;
758
+ "on:storage"?: EventHandlerWithOptionsUnion<T, StorageEvent> | undefined;
759
+ "on:unhandledrejection"?: EventHandlerWithOptionsUnion<T, PromiseRejectionEvent> | undefined;
760
+ "on:unload"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
761
+ }
762
+
763
+ /**
764
+ * Global `EventHandlersElement`, defined for all tags.
765
+ *
766
+ * That's events defined and shared BY ALL of the `HTMLElement/SVGElement/MathMLElement`
767
+ * interfaces.
768
+ *
769
+ * Includes events defined for the `Element` interface.
770
+ */
771
+ interface EventHandlersElement<T> {
772
+ onAbort?: EventHandlerUnion<T, UIEvent> | undefined;
773
+ onAnimationCancel?: EventHandlerUnion<T, AnimationEvent> | undefined;
774
+ onAnimationEnd?: EventHandlerUnion<T, AnimationEvent> | undefined;
775
+ onAnimationIteration?: EventHandlerUnion<T, AnimationEvent> | undefined;
776
+ onAnimationStart?: EventHandlerUnion<T, AnimationEvent> | undefined;
777
+ onAuxClick?: EventHandlerUnion<T, PointerEvent> | undefined;
778
+ onBeforeCopy?: EventHandlerUnion<T, ClipboardEvent> | undefined;
779
+ onBeforeCut?: EventHandlerUnion<T, ClipboardEvent> | undefined;
780
+ onBeforeInput?: InputEventHandlerUnion<T, InputEvent> | undefined;
781
+ onBeforeMatch?: EventHandlerUnion<T, Event> | undefined;
782
+ onBeforePaste?: EventHandlerUnion<T, ClipboardEvent> | undefined;
783
+ onBeforeToggle?: EventHandlerUnion<T, ToggleEvent> | undefined;
784
+ onBeforeXRSelect?: EventHandlerUnion<T, Event> | undefined;
785
+ onBlur?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
786
+ onCancel?: EventHandlerUnion<T, Event> | undefined;
787
+ onCanPlay?: EventHandlerUnion<T, Event> | undefined;
788
+ onCanPlayThrough?: EventHandlerUnion<T, Event> | undefined;
789
+ onChange?: ChangeEventHandlerUnion<T, Event> | undefined;
790
+ onClick?: EventHandlerUnion<T, MouseEvent> | undefined;
791
+ onClose?: EventHandlerUnion<T, Event> | undefined;
792
+ onCommand?: EventHandlerUnion<T, CommandEvent> | undefined;
793
+ onCompositionEnd?: EventHandlerUnion<T, CompositionEvent> | undefined;
794
+ onCompositionStart?: EventHandlerUnion<T, CompositionEvent> | undefined;
795
+ onCompositionUpdate?: EventHandlerUnion<T, CompositionEvent> | undefined;
796
+ onContentVisibilityAutoStateChange?:
797
+ | EventHandlerUnion<T, ContentVisibilityAutoStateChangeEvent>
798
+ | undefined;
799
+ onContextLost?: EventHandlerUnion<T, Event> | undefined;
800
+ onContextMenu?: EventHandlerUnion<T, PointerEvent> | undefined;
801
+ onContextRestored?: EventHandlerUnion<T, Event> | undefined;
802
+ onCopy?: EventHandlerUnion<T, ClipboardEvent> | undefined;
803
+ onCueChange?: EventHandlerUnion<T, Event> | undefined;
804
+ onCut?: EventHandlerUnion<T, ClipboardEvent> | undefined;
805
+ onDblClick?: EventHandlerUnion<T, MouseEvent> | undefined;
806
+ onDrag?: EventHandlerUnion<T, DragEvent> | undefined;
807
+ onDragEnd?: EventHandlerUnion<T, DragEvent> | undefined;
808
+ onDragEnter?: EventHandlerUnion<T, DragEvent> | undefined;
809
+ onDragExit?: EventHandlerUnion<T, DragEvent> | undefined;
810
+ onDragLeave?: EventHandlerUnion<T, DragEvent> | undefined;
811
+ onDragOver?: EventHandlerUnion<T, DragEvent> | undefined;
812
+ onDragStart?: EventHandlerUnion<T, DragEvent> | undefined;
813
+ onDrop?: EventHandlerUnion<T, DragEvent> | undefined;
814
+ onDurationChange?: EventHandlerUnion<T, Event> | undefined;
815
+ onEmptied?: EventHandlerUnion<T, Event> | undefined;
816
+ onEnded?: EventHandlerUnion<T, Event> | undefined;
817
+ onError?: EventHandlerUnion<T, ErrorEvent> | undefined;
818
+ onFocus?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
819
+ onFocusIn?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
820
+ onFocusOut?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
821
+ onFormData?: EventHandlerUnion<T, FormDataEvent> | undefined;
822
+ onFullscreenChange?: EventHandlerUnion<T, Event> | undefined;
823
+ onFullscreenError?: EventHandlerUnion<T, Event> | undefined;
824
+ onGotPointerCapture?: EventHandlerUnion<T, PointerEvent> | undefined;
825
+ onInput?: InputEventHandlerUnion<T, InputEvent> | undefined;
826
+ onInvalid?: EventHandlerUnion<T, Event> | undefined;
827
+ onKeyDown?: EventHandlerUnion<T, KeyboardEvent> | undefined;
828
+ onKeyPress?: EventHandlerUnion<T, KeyboardEvent> | undefined;
829
+ onKeyUp?: EventHandlerUnion<T, KeyboardEvent> | undefined;
830
+ onLoad?: EventHandlerUnion<T, Event> | undefined;
831
+ onLoadedData?: EventHandlerUnion<T, Event> | undefined;
832
+ onLoadedMetadata?: EventHandlerUnion<T, Event> | undefined;
833
+ onLoadStart?: EventHandlerUnion<T, Event> | undefined;
834
+ onLostPointerCapture?: EventHandlerUnion<T, PointerEvent> | undefined;
835
+ onMouseDown?: EventHandlerUnion<T, MouseEvent> | undefined;
836
+ onMouseEnter?: EventHandlerUnion<T, MouseEvent> | undefined;
837
+ onMouseLeave?: EventHandlerUnion<T, MouseEvent> | undefined;
838
+ onMouseMove?: EventHandlerUnion<T, MouseEvent> | undefined;
839
+ onMouseOut?: EventHandlerUnion<T, MouseEvent> | undefined;
840
+ onMouseOver?: EventHandlerUnion<T, MouseEvent> | undefined;
841
+ onMouseUp?: EventHandlerUnion<T, MouseEvent> | undefined;
842
+ onPaste?: EventHandlerUnion<T, ClipboardEvent> | undefined;
843
+ onPause?: EventHandlerUnion<T, Event> | undefined;
844
+ onPlay?: EventHandlerUnion<T, Event> | undefined;
845
+ onPlaying?: EventHandlerUnion<T, Event> | undefined;
846
+ onPointerCancel?: EventHandlerUnion<T, PointerEvent> | undefined;
847
+ onPointerDown?: EventHandlerUnion<T, PointerEvent> | undefined;
848
+ onPointerEnter?: EventHandlerUnion<T, PointerEvent> | undefined;
849
+ onPointerLeave?: EventHandlerUnion<T, PointerEvent> | undefined;
850
+ onPointerMove?: EventHandlerUnion<T, PointerEvent> | undefined;
851
+ onPointerOut?: EventHandlerUnion<T, PointerEvent> | undefined;
852
+ onPointerOver?: EventHandlerUnion<T, PointerEvent> | undefined;
853
+ onPointerRawUpdate?: EventHandlerUnion<T, PointerEvent> | undefined;
854
+ onPointerUp?: EventHandlerUnion<T, PointerEvent> | undefined;
855
+ onProgress?: EventHandlerUnion<T, ProgressEvent> | undefined;
856
+ onRateChange?: EventHandlerUnion<T, Event> | undefined;
857
+ onReset?: EventHandlerUnion<T, Event> | undefined;
858
+ onResize?: EventHandlerUnion<T, UIEvent> | undefined;
859
+ onScroll?: EventHandlerUnion<T, Event> | undefined;
860
+ onScrollEnd?: EventHandlerUnion<T, Event> | undefined;
861
+ onScrollSnapChange?: EventHandlerUnion<T, SnapEvent> | undefined;
862
+ onScrollSnapChanging?: EventHandlerUnion<T, SnapEvent> | undefined;
863
+ onSecurityPolicyViolation?: EventHandlerUnion<T, SecurityPolicyViolationEvent> | undefined;
864
+ onSeeked?: EventHandlerUnion<T, Event> | undefined;
865
+ onSeeking?: EventHandlerUnion<T, Event> | undefined;
866
+ onSelect?: EventHandlerUnion<T, Event> | undefined;
867
+ onSelectionChange?: EventHandlerUnion<T, Event> | undefined;
868
+ onSelectStart?: EventHandlerUnion<T, Event> | undefined;
869
+ onSlotChange?: EventHandlerUnion<T, Event> | undefined;
870
+ onStalled?: EventHandlerUnion<T, Event> | undefined;
871
+ onSubmit?: EventHandlerUnion<T, SubmitEvent> | undefined;
872
+ onSuspend?: EventHandlerUnion<T, Event> | undefined;
873
+ onTimeUpdate?: EventHandlerUnion<T, Event> | undefined;
874
+ onToggle?: EventHandlerUnion<T, ToggleEvent> | undefined;
875
+ onTouchCancel?: EventHandlerUnion<T, TouchEvent> | undefined;
876
+ onTouchEnd?: EventHandlerUnion<T, TouchEvent> | undefined;
877
+ onTouchMove?: EventHandlerUnion<T, TouchEvent> | undefined;
878
+ onTouchStart?: EventHandlerUnion<T, TouchEvent> | undefined;
879
+ onTransitionCancel?: EventHandlerUnion<T, TransitionEvent> | undefined;
880
+ onTransitionEnd?: EventHandlerUnion<T, TransitionEvent> | undefined;
881
+ onTransitionRun?: EventHandlerUnion<T, TransitionEvent> | undefined;
882
+ onTransitionStart?: EventHandlerUnion<T, TransitionEvent> | undefined;
883
+ onVolumeChange?: EventHandlerUnion<T, Event> | undefined;
884
+ onWaiting?: EventHandlerUnion<T, Event> | undefined;
885
+ onWheel?: EventHandlerUnion<T, WheelEvent> | undefined;
886
+
887
+ "on:abort"?: EventHandlerWithOptionsUnion<T, UIEvent> | undefined;
888
+ "on:animationcancel"?: EventHandlerWithOptionsUnion<T, AnimationEvent> | undefined;
889
+ "on:animationend"?: EventHandlerWithOptionsUnion<T, AnimationEvent> | undefined;
890
+ "on:animationiteration"?: EventHandlerWithOptionsUnion<T, AnimationEvent> | undefined;
891
+ "on:animationstart"?: EventHandlerWithOptionsUnion<T, AnimationEvent> | undefined;
892
+ "on:auxclick"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
893
+ "on:beforecopy"?: EventHandlerWithOptionsUnion<T, ClipboardEvent> | undefined;
894
+ "on:beforecut"?: EventHandlerWithOptionsUnion<T, ClipboardEvent> | undefined;
895
+ "on:beforeinput"?:
896
+ | EventHandlerWithOptionsUnion<T, InputEvent, InputEventHandler<T, InputEvent>>
897
+ | undefined;
898
+ "on:beforematch"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
899
+ "on:beforepaste"?: EventHandlerWithOptionsUnion<T, ClipboardEvent> | undefined;
900
+ "on:beforetoggle"?: EventHandlerWithOptionsUnion<T, ToggleEvent> | undefined;
901
+ "on:beforexrselect"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
902
+ "on:blur"?:
903
+ | EventHandlerWithOptionsUnion<T, FocusEvent, FocusEventHandler<T, FocusEvent>>
904
+ | undefined;
905
+ "on:cancel"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
906
+ "on:canplay"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
907
+ "on:canplaythrough"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
908
+ "on:change"?: EventHandlerWithOptionsUnion<T, Event, ChangeEventHandler<T, Event>> | undefined;
909
+ "on:click"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
910
+ "on:close"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
911
+ "on:command"?: EventHandlerWithOptionsUnion<T, CommandEvent> | undefined;
912
+ "on:compositionend"?: EventHandlerWithOptionsUnion<T, CompositionEvent> | undefined;
913
+ "on:compositionstart"?: EventHandlerWithOptionsUnion<T, CompositionEvent> | undefined;
914
+ "on:compositionupdate"?: EventHandlerWithOptionsUnion<T, CompositionEvent> | undefined;
915
+ "on:contentvisibilityautostatechange"?:
916
+ | EventHandlerWithOptionsUnion<T, ContentVisibilityAutoStateChangeEvent>
917
+ | undefined;
918
+ "on:contextlost"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
919
+ "on:contextmenu"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
920
+ "on:contextrestored"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
921
+ "on:copy"?: EventHandlerWithOptionsUnion<T, ClipboardEvent> | undefined;
922
+ "on:cuechange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
923
+ "on:cut"?: EventHandlerWithOptionsUnion<T, ClipboardEvent> | undefined;
924
+ "on:dblclick"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
925
+ "on:drag"?: EventHandlerWithOptionsUnion<T, DragEvent> | undefined;
926
+ "on:dragend"?: EventHandlerWithOptionsUnion<T, DragEvent> | undefined;
927
+ "on:dragenter"?: EventHandlerWithOptionsUnion<T, DragEvent> | undefined;
928
+ "on:dragexit"?: EventHandlerWithOptionsUnion<T, DragEvent> | undefined;
929
+ "on:dragleave"?: EventHandlerWithOptionsUnion<T, DragEvent> | undefined;
930
+ "on:dragover"?: EventHandlerWithOptionsUnion<T, DragEvent> | undefined;
931
+ "on:dragstart"?: EventHandlerWithOptionsUnion<T, DragEvent> | undefined;
932
+ "on:drop"?: EventHandlerWithOptionsUnion<T, DragEvent> | undefined;
933
+ "on:durationchange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
934
+ "on:emptied"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
935
+ "on:ended"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
936
+ "on:error"?: EventHandlerWithOptionsUnion<T, ErrorEvent> | undefined;
937
+ "on:focus"?:
938
+ | EventHandlerWithOptionsUnion<T, FocusEvent, FocusEventHandler<T, FocusEvent>>
939
+ | undefined;
940
+ "on:focusin"?:
941
+ | EventHandlerWithOptionsUnion<T, FocusEvent, FocusEventHandler<T, FocusEvent>>
942
+ | undefined;
943
+ "on:focusout"?:
944
+ | EventHandlerWithOptionsUnion<T, FocusEvent, FocusEventHandler<T, FocusEvent>>
945
+ | undefined;
946
+ "on:formdata"?: EventHandlerWithOptionsUnion<T, FormDataEvent> | undefined;
947
+ "on:fullscreenchange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
948
+ "on:fullscreenerror"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
949
+ "on:gotpointercapture"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
950
+ "on:input"?:
951
+ | EventHandlerWithOptionsUnion<T, InputEvent, InputEventHandler<T, InputEvent>>
952
+ | undefined;
953
+ "on:invalid"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
954
+ "on:keydown"?: EventHandlerWithOptionsUnion<T, KeyboardEvent> | undefined;
955
+ "on:keypress"?: EventHandlerWithOptionsUnion<T, KeyboardEvent> | undefined;
956
+ "on:keyup"?: EventHandlerWithOptionsUnion<T, KeyboardEvent> | undefined;
957
+ "on:load"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
958
+ "on:loadeddata"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
959
+ "on:loadedmetadata"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
960
+ "on:loadstart"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
961
+ "on:lostpointercapture"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
962
+ "on:mousedown"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
963
+ "on:mouseenter"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
964
+ "on:mouseleave"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
965
+ "on:mousemove"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
966
+ "on:mouseout"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
967
+ "on:mouseover"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
968
+ "on:mouseup"?: EventHandlerWithOptionsUnion<T, MouseEvent> | undefined;
969
+ "on:paste"?: EventHandlerWithOptionsUnion<T, ClipboardEvent> | undefined;
970
+ "on:pause"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
971
+ "on:play"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
972
+ "on:playing"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
973
+ "on:pointercancel"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
974
+ "on:pointerdown"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
975
+ "on:pointerenter"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
976
+ "on:pointerleave"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
977
+ "on:pointermove"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
978
+ "on:pointerout"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
979
+ "on:pointerover"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
980
+ "on:pointerrawupdate"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
981
+ "on:pointerup"?: EventHandlerWithOptionsUnion<T, PointerEvent> | undefined;
982
+ "on:progress"?: EventHandlerWithOptionsUnion<T, ProgressEvent> | undefined;
983
+ "on:ratechange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
984
+ "on:reset"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
985
+ "on:resize"?: EventHandlerWithOptionsUnion<T, UIEvent> | undefined;
986
+ "on:scroll"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
987
+ "on:scrollend"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
988
+ "on:scrollsnapchange"?: EventHandlerWithOptionsUnion<T, SnapEvent> | undefined;
989
+ "on:scrollsnapchanging"?: EventHandlerWithOptionsUnion<T, SnapEvent> | undefined;
990
+ "on:securitypolicyviolation"?:
991
+ | EventHandlerWithOptionsUnion<T, SecurityPolicyViolationEvent>
992
+ | undefined;
993
+ "on:seeked"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
994
+ "on:seeking"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
995
+ "on:select"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
996
+ "on:selectionchange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
997
+ "on:selectstart"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
998
+ "on:slotchange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
999
+ "on:stalled"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
1000
+ "on:submit"?: EventHandlerWithOptionsUnion<T, SubmitEvent> | undefined;
1001
+ "on:suspend"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
1002
+ "on:timeupdate"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
1003
+ "on:toggle"?: EventHandlerWithOptionsUnion<T, ToggleEvent> | undefined;
1004
+ "on:touchcancel"?: EventHandlerWithOptionsUnion<T, TouchEvent> | undefined;
1005
+ "on:touchend"?: EventHandlerWithOptionsUnion<T, TouchEvent> | undefined;
1006
+ "on:touchmove"?: EventHandlerWithOptionsUnion<T, TouchEvent> | undefined;
1007
+ "on:touchstart"?: EventHandlerWithOptionsUnion<T, TouchEvent> | undefined;
1008
+ "on:transitioncancel"?: EventHandlerWithOptionsUnion<T, TransitionEvent> | undefined;
1009
+ "on:transitionend"?: EventHandlerWithOptionsUnion<T, TransitionEvent> | undefined;
1010
+ "on:transitionrun"?: EventHandlerWithOptionsUnion<T, TransitionEvent> | undefined;
1011
+ "on:transitionstart"?: EventHandlerWithOptionsUnion<T, TransitionEvent> | undefined;
1012
+ "on:volumechange"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
1013
+ "on:waiting"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
1014
+ "on:wheel"?: EventHandlerWithOptionsUnion<T, WheelEvent> | undefined;
1015
+ }
1016
+
1017
+ // EventName = "click" | "mousedown" ...
1018
+
1019
+ type EventName =
1020
+ | (keyof EventHandlersWindow<any> extends infer K
1021
+ ? K extends `on:${infer T}`
1022
+ ? T
1023
+ : K extends `on${infer T}`
1024
+ ? Lowercase<T>
1025
+ : never
1026
+ : never)
1027
+ | (keyof EventHandlersElement<any> extends infer K
1028
+ ? K extends `on:${infer T}`
1029
+ ? T
1030
+ : K extends `on${infer T}`
1031
+ ? Lowercase<T>
1032
+ : never
1033
+ : never)
1034
+ | (string & {});
1035
+
1036
+ type ExtractEventType<T> = {
1037
+ [K in keyof T as K extends `on:${infer Name}`
1038
+ ? Name
1039
+ : never]: T[K] extends EventHandlerWithOptionsUnion<Element, infer E> ? E : never;
1040
+ };
1041
+
1042
+ // EventType["click"] = MouseEvent
1043
+
1044
+ type EventType = ExtractEventType<EventHandlersElement<Element>> &
1045
+ ExtractEventType<EventHandlersWindow<Element>>;
1046
+
1047
+ // GLOBAL ATTRIBUTES
1048
+
1049
+ /**
1050
+ * Global `Element` + `Node` interface keys, shared by all tags regardless of their namespace:
1051
+ *
1052
+ * 1. That's `keys` that are defined BY ALL `HTMLElement/SVGElement/MathMLElement` interfaces.
1053
+ * 2. Includes `keys` defined by `Element` and `Node` interfaces.
1054
+ */
1055
+ interface ElementAttributes<T>
1056
+ extends
1057
+ CustomAttributes<T>,
1058
+ PropAttributes,
1059
+ OnAttributes<T>,
1060
+ EventHandlersElement<T>,
1061
+ AriaAttributes {
1062
+ // [key: ClassKeys]: boolean;
1063
+
1064
+ // properties
1065
+ innerHTML?: string;
1066
+ textContent?: string | number;
1067
+
1068
+ // attributes
1069
+ autofocus?: BooleanAttribute | RemoveAttribute;
1070
+ class?: string | ClassList | RemoveAttribute;
1071
+ elementtiming?: string | RemoveAttribute;
1072
+ id?: string | RemoveAttribute;
1073
+ nonce?: string | RemoveAttribute;
1074
+ part?: string | RemoveAttribute;
1075
+ slot?: string | RemoveAttribute;
1076
+ style?: CSSProperties | string | RemoveAttribute;
1077
+ tabindex?: number | string | RemoveAttribute;
1078
+ }
1079
+ /** Global `SVGElement` interface keys only. */
1080
+ interface SVGAttributes<T> extends ElementAttributes<T> {
1081
+ id?: string | RemoveAttribute;
1082
+ lang?: string | RemoveAttribute;
1083
+ tabindex?: number | string | RemoveAttribute;
1084
+ xmlns?: string | RemoveAttribute;
1085
+ }
1086
+ /** Global `MathMLElement` interface keys only. */
1087
+ interface MathMLAttributes<T> extends ElementAttributes<T> {
1088
+ dir?: HTMLDir | RemoveAttribute;
1089
+ displaystyle?: BooleanAttribute | RemoveAttribute;
1090
+ scriptlevel?: string | RemoveAttribute;
1091
+ xmlns?: string | RemoveAttribute;
1092
+
1093
+ /** @deprecated */
1094
+ href?: string | RemoveAttribute;
1095
+ /** @deprecated */
1096
+ mathbackground?: string | RemoveAttribute;
1097
+ /** @deprecated */
1098
+ mathcolor?: string | RemoveAttribute;
1099
+ /** @deprecated */
1100
+ mathsize?: string | RemoveAttribute;
1101
+ }
1102
+ /** Global `HTMLElement` interface keys only. */
1103
+ interface HTMLAttributes<T> extends ElementAttributes<T> {
1104
+ // properties
1105
+ innerText?: string | number;
1106
+
1107
+ // attributes
1108
+ accesskey?: string | RemoveAttribute;
1109
+ autocapitalize?: HTMLAutocapitalize | RemoveAttribute;
1110
+ autocorrect?: "on" | "off" | RemoveAttribute;
1111
+ contenteditable?:
1112
+ | EnumeratedPseudoBoolean
1113
+ | EnumeratedAcceptsEmpty
1114
+ | "plaintext-only"
1115
+ | "inherit"
1116
+ | RemoveAttribute;
1117
+ dir?: HTMLDir | RemoveAttribute;
1118
+ draggable?: EnumeratedPseudoBoolean | RemoveAttribute;
1119
+ enterkeyhint?:
1120
+ | "enter"
1121
+ | "done"
1122
+ | "go"
1123
+ | "next"
1124
+ | "previous"
1125
+ | "search"
1126
+ | "send"
1127
+ | RemoveAttribute;
1128
+ exportparts?: string | RemoveAttribute;
1129
+ hidden?: EnumeratedAcceptsEmpty | "hidden" | "until-found" | RemoveAttribute;
1130
+ inert?: BooleanAttribute | RemoveAttribute;
1131
+ inputmode?:
1132
+ | "decimal"
1133
+ | "email"
1134
+ | "none"
1135
+ | "numeric"
1136
+ | "search"
1137
+ | "tel"
1138
+ | "text"
1139
+ | "url"
1140
+ | RemoveAttribute;
1141
+ is?: string | RemoveAttribute;
1142
+ lang?: string | RemoveAttribute;
1143
+ popover?: EnumeratedAcceptsEmpty | "manual" | "auto" | "hint" | RemoveAttribute;
1144
+ spellcheck?: EnumeratedPseudoBoolean | EnumeratedAcceptsEmpty | RemoveAttribute;
1145
+ title?: string | RemoveAttribute;
1146
+ translate?: "yes" | "no" | RemoveAttribute;
1147
+
1148
+ /** @experimental */
1149
+ virtualkeyboardpolicy?: EnumeratedAcceptsEmpty | "auto" | "manual" | RemoveAttribute;
1150
+ /** @experimental */
1151
+ writingsuggestions?: EnumeratedPseudoBoolean | RemoveAttribute;
1152
+
1153
+ // Microdata
1154
+ itemid?: string | RemoveAttribute;
1155
+ itemprop?: string | RemoveAttribute;
1156
+ itemref?: string | RemoveAttribute;
1157
+ itemscope?: BooleanAttribute | RemoveAttribute;
1158
+ itemtype?: string | RemoveAttribute;
1159
+
1160
+ // RDFa Attributes
1161
+ about?: string | RemoveAttribute;
1162
+ datatype?: string | RemoveAttribute;
1163
+ inlist?: any | RemoveAttribute;
1164
+ prefix?: string | RemoveAttribute;
1165
+ property?: string | RemoveAttribute;
1166
+ resource?: string | RemoveAttribute;
1167
+ typeof?: string | RemoveAttribute;
1168
+ vocab?: string | RemoveAttribute;
1169
+
1170
+ /** @deprecated */
1171
+ contextmenu?: string | RemoveAttribute;
1172
+ }
1173
+
1174
+ // HTML
1175
+
1176
+ type HTMLAutocapitalize = "off" | "none" | "on" | "sentences" | "words" | "characters";
1177
+ type HTMLAutocomplete =
1178
+ | "additional-name"
1179
+ | "address-level1"
1180
+ | "address-level2"
1181
+ | "address-level3"
1182
+ | "address-level4"
1183
+ | "address-line1"
1184
+ | "address-line2"
1185
+ | "address-line3"
1186
+ | "bday"
1187
+ | "bday-day"
1188
+ | "bday-month"
1189
+ | "bday-year"
1190
+ | "billing"
1191
+ | "cc-additional-name"
1192
+ | "cc-csc"
1193
+ | "cc-exp"
1194
+ | "cc-exp-month"
1195
+ | "cc-exp-year"
1196
+ | "cc-family-name"
1197
+ | "cc-given-name"
1198
+ | "cc-name"
1199
+ | "cc-number"
1200
+ | "cc-type"
1201
+ | "country"
1202
+ | "country-name"
1203
+ | "current-password"
1204
+ | "email"
1205
+ | "family-name"
1206
+ | "fax"
1207
+ | "given-name"
1208
+ | "home"
1209
+ | "honorific-prefix"
1210
+ | "honorific-suffix"
1211
+ | "impp"
1212
+ | "language"
1213
+ | "mobile"
1214
+ | "name"
1215
+ | "new-password"
1216
+ | "nickname"
1217
+ | "off"
1218
+ | "on"
1219
+ | "organization"
1220
+ | "organization-title"
1221
+ | "pager"
1222
+ | "photo"
1223
+ | "postal-code"
1224
+ | "sex"
1225
+ | "shipping"
1226
+ | "street-address"
1227
+ | "tel"
1228
+ | "tel-area-code"
1229
+ | "tel-country-code"
1230
+ | "tel-extension"
1231
+ | "tel-local"
1232
+ | "tel-local-prefix"
1233
+ | "tel-local-suffix"
1234
+ | "tel-national"
1235
+ | "transaction-amount"
1236
+ | "transaction-currency"
1237
+ | "url"
1238
+ | "username"
1239
+ | "work"
1240
+ | (string & {});
1241
+ type HTMLDir = "ltr" | "rtl" | "auto";
1242
+ type HTMLFormEncType = "application/x-www-form-urlencoded" | "multipart/form-data" | "text/plain";
1243
+ type HTMLFormMethod = "post" | "get" | "dialog";
1244
+ type HTMLCrossorigin = "anonymous" | "use-credentials" | EnumeratedAcceptsEmpty;
1245
+ type HTMLReferrerPolicy =
1246
+ | "no-referrer"
1247
+ | "no-referrer-when-downgrade"
1248
+ | "origin"
1249
+ | "origin-when-cross-origin"
1250
+ | "same-origin"
1251
+ | "strict-origin"
1252
+ | "strict-origin-when-cross-origin"
1253
+ | "unsafe-url";
1254
+ type HTMLIframeSandbox =
1255
+ | "allow-downloads-without-user-activation"
1256
+ | "allow-downloads"
1257
+ | "allow-forms"
1258
+ | "allow-modals"
1259
+ | "allow-orientation-lock"
1260
+ | "allow-pointer-lock"
1261
+ | "allow-popups"
1262
+ | "allow-popups-to-escape-sandbox"
1263
+ | "allow-presentation"
1264
+ | "allow-same-origin"
1265
+ | "allow-scripts"
1266
+ | "allow-storage-access-by-user-activation"
1267
+ | "allow-top-navigation"
1268
+ | "allow-top-navigation-by-user-activation"
1269
+ | "allow-top-navigation-to-custom-protocols";
1270
+ type HTMLLinkAs =
1271
+ | "audio"
1272
+ | "document"
1273
+ | "embed"
1274
+ | "fetch"
1275
+ | "font"
1276
+ | "image"
1277
+ | "object"
1278
+ | "script"
1279
+ | "style"
1280
+ | "track"
1281
+ | "video"
1282
+ | "worker";
1283
+
1284
+ interface AnchorHTMLAttributes<T> extends HTMLAttributes<T> {
1285
+ download?: string | EnumeratedAcceptsEmpty | RemoveAttribute;
1286
+ href?: string | RemoveAttribute;
1287
+ hreflang?: string | RemoveAttribute;
1288
+ ping?: string | RemoveAttribute;
1289
+ referrerpolicy?: HTMLReferrerPolicy | RemoveAttribute;
1290
+ rel?: string | RemoveAttribute;
1291
+ target?: "_self" | "_blank" | "_parent" | "_top" | (string & {}) | RemoveAttribute;
1292
+ type?: string | RemoveAttribute;
1293
+
1294
+ /** @experimental */
1295
+ attributionsrc?: string | RemoveAttribute;
1296
+
1297
+ /** @deprecated */
1298
+ charset?: string | RemoveAttribute;
1299
+ /** @deprecated */
1300
+ coords?: string | RemoveAttribute;
1301
+ /** @deprecated */
1302
+ name?: string | RemoveAttribute;
1303
+ /** @deprecated */
1304
+ rev?: string | RemoveAttribute;
1305
+ /** @deprecated */
1306
+ shape?: "rect" | "circle" | "poly" | "default" | RemoveAttribute;
1307
+ }
1308
+ interface AudioHTMLAttributes<T> extends MediaHTMLAttributes<T> {}
1309
+ interface AreaHTMLAttributes<T> extends HTMLAttributes<T> {
1310
+ alt?: string | RemoveAttribute;
1311
+ coords?: string | RemoveAttribute;
1312
+ download?: string | EnumeratedAcceptsEmpty | RemoveAttribute;
1313
+ href?: string | RemoveAttribute;
1314
+ ping?: string | RemoveAttribute;
1315
+ referrerpolicy?: HTMLReferrerPolicy | RemoveAttribute;
1316
+ rel?: string | RemoveAttribute;
1317
+ shape?: "rect" | "circle" | "poly" | "default" | RemoveAttribute;
1318
+ target?: "_self" | "_blank" | "_parent" | "_top" | (string & {}) | RemoveAttribute;
1319
+
1320
+ /** @experimental */
1321
+ attributionsrc?: string | RemoveAttribute;
1322
+
1323
+ /** @deprecated */
1324
+ nohref?: BooleanAttribute | RemoveAttribute;
1325
+ }
1326
+ interface BaseHTMLAttributes<T> extends HTMLAttributes<T> {
1327
+ href?: string | RemoveAttribute;
1328
+ target?: "_self" | "_blank" | "_parent" | "_top" | (string & {}) | RemoveAttribute;
1329
+ }
1330
+ interface BdoHTMLAttributes<T> extends HTMLAttributes<T> {
1331
+ dir?: "ltr" | "rtl" | RemoveAttribute;
1332
+ }
1333
+ interface BlockquoteHTMLAttributes<T> extends HTMLAttributes<T> {
1334
+ cite?: string | RemoveAttribute;
1335
+ }
1336
+ interface BodyHTMLAttributes<T> extends HTMLAttributes<T>, EventHandlersWindow<T> {}
1337
+ interface ButtonHTMLAttributes<T> extends HTMLAttributes<T> {
1338
+ disabled?: BooleanAttribute | RemoveAttribute;
1339
+ form?: string | RemoveAttribute;
1340
+ formaction?: string | SerializableAttributeValue | RemoveAttribute;
1341
+ formenctype?: HTMLFormEncType | RemoveAttribute;
1342
+ formmethod?: HTMLFormMethod | RemoveAttribute;
1343
+ formnovalidate?: BooleanAttribute | RemoveAttribute;
1344
+ formtarget?: "_self" | "_blank" | "_parent" | "_top" | (string & {}) | RemoveAttribute;
1345
+ name?: string | RemoveAttribute;
1346
+ popovertarget?: string | RemoveAttribute;
1347
+ popovertargetaction?: "hide" | "show" | "toggle" | RemoveAttribute;
1348
+ type?: "submit" | "reset" | "button" | "menu" | RemoveAttribute;
1349
+ value?: string | RemoveAttribute;
1350
+
1351
+ /** @experimental */
1352
+ command?:
1353
+ | "show-modal"
1354
+ | "close"
1355
+ | "show-popover"
1356
+ | "hide-popover"
1357
+ | "toggle-popover"
1358
+ | (string & {})
1359
+ | RemoveAttribute;
1360
+ /** @experimental */
1361
+ commandfor?: string | RemoveAttribute;
1362
+ }
1363
+ interface CanvasHTMLAttributes<T> extends HTMLAttributes<T> {
1364
+ height?: number | string | RemoveAttribute;
1365
+ width?: number | string | RemoveAttribute;
1366
+
1367
+ /**
1368
+ * @deprecated
1369
+ * @non-standard
1370
+ */
1371
+ "moz-opaque"?: BooleanAttribute | RemoveAttribute;
1372
+ }
1373
+ interface CaptionHTMLAttributes<T> extends HTMLAttributes<T> {
1374
+ /** @deprecated */
1375
+ align?: "left" | "center" | "right" | RemoveAttribute;
1376
+ }
1377
+ interface ColHTMLAttributes<T> extends HTMLAttributes<T> {
1378
+ span?: number | string | RemoveAttribute;
1379
+
1380
+ /** @deprecated */
1381
+ align?: "left" | "center" | "right" | "justify" | "char" | RemoveAttribute;
1382
+ /** @deprecated */
1383
+ bgcolor?: string | RemoveAttribute;
1384
+ /** @deprecated */
1385
+ char?: string | RemoveAttribute;
1386
+ /** @deprecated */
1387
+ charoff?: string | RemoveAttribute;
1388
+ /** @deprecated */
1389
+ valign?: "baseline" | "bottom" | "middle" | "top" | RemoveAttribute;
1390
+ /** @deprecated */
1391
+ width?: number | string | RemoveAttribute;
1392
+ }
1393
+ interface ColgroupHTMLAttributes<T> extends HTMLAttributes<T> {
1394
+ span?: number | string | RemoveAttribute;
1395
+
1396
+ /** @deprecated */
1397
+ align?: "left" | "center" | "right" | "justify" | "char" | RemoveAttribute;
1398
+ /** @deprecated */
1399
+ bgcolor?: string | RemoveAttribute;
1400
+ /** @deprecated */
1401
+ char?: string | RemoveAttribute;
1402
+ /** @deprecated */
1403
+ charoff?: string | RemoveAttribute;
1404
+ /** @deprecated */
1405
+ valign?: "baseline" | "bottom" | "middle" | "top" | RemoveAttribute;
1406
+ /** @deprecated */
1407
+ width?: number | string | RemoveAttribute;
1408
+ }
1409
+ interface DataHTMLAttributes<T> extends HTMLAttributes<T> {
1410
+ value?: string | string[] | number | RemoveAttribute;
1411
+ }
1412
+ interface DetailsHtmlAttributes<T> extends HTMLAttributes<T> {
1413
+ name?: string | RemoveAttribute;
1414
+ open?: BooleanAttribute | RemoveAttribute;
1415
+ }
1416
+ interface DialogHtmlAttributes<T> extends HTMLAttributes<T> {
1417
+ open?: BooleanAttribute | RemoveAttribute;
1418
+ /**
1419
+ * Do not add the `tabindex` property to the `<dialog>` element as it is not interactive and
1420
+ * does not receive focus. The dialog's contents, including the close button contained in the
1421
+ * dialog, can receive focus and be interactive.
1422
+ *
1423
+ * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/dialog#usage_notes
1424
+ */
1425
+ tabindex?: never;
1426
+ "prop:tabIndex"?: never;
1427
+
1428
+ /** @experimental */
1429
+ closedby?: "any" | "closerequest" | "none" | RemoveAttribute;
1430
+ }
1431
+ interface EmbedHTMLAttributes<T> extends HTMLAttributes<T> {
1432
+ height?: number | string | RemoveAttribute;
1433
+ src?: string | RemoveAttribute;
1434
+ type?: string | RemoveAttribute;
1435
+ width?: number | string | RemoveAttribute;
1436
+
1437
+ /** @deprecated */
1438
+ align?: "left" | "right" | "justify" | "center" | RemoveAttribute;
1439
+ /** @deprecated */
1440
+ name?: string | RemoveAttribute;
1441
+ }
1442
+ interface FieldsetHTMLAttributes<T> extends HTMLAttributes<T> {
1443
+ disabled?: BooleanAttribute | RemoveAttribute;
1444
+ form?: string | RemoveAttribute;
1445
+ name?: string | RemoveAttribute;
1446
+ }
1447
+ interface FormHTMLAttributes<T> extends HTMLAttributes<T> {
1448
+ "accept-charset"?: string | RemoveAttribute;
1449
+ action?: string | SerializableAttributeValue | RemoveAttribute;
1450
+ autocomplete?: "on" | "off" | RemoveAttribute;
1451
+ encoding?: HTMLFormEncType | RemoveAttribute;
1452
+ enctype?: HTMLFormEncType | RemoveAttribute;
1453
+ method?: HTMLFormMethod | RemoveAttribute;
1454
+ name?: string | RemoveAttribute;
1455
+ novalidate?: BooleanAttribute | RemoveAttribute;
1456
+ rel?: string | RemoveAttribute;
1457
+ target?: "_self" | "_blank" | "_parent" | "_top" | (string & {}) | RemoveAttribute;
1458
+
1459
+ /** @deprecated */
1460
+ accept?: string | RemoveAttribute;
1461
+ }
1462
+ interface IframeHTMLAttributes<T> extends HTMLAttributes<T> {
1463
+ allow?: string | RemoveAttribute;
1464
+ allowfullscreen?: BooleanAttribute | RemoveAttribute;
1465
+ height?: number | string | RemoveAttribute;
1466
+ loading?: "eager" | "lazy" | RemoveAttribute;
1467
+ name?: string | RemoveAttribute;
1468
+ referrerpolicy?: HTMLReferrerPolicy | RemoveAttribute;
1469
+ sandbox?: HTMLIframeSandbox | string | RemoveAttribute;
1470
+ src?: string | RemoveAttribute;
1471
+ srcdoc?: string | RemoveAttribute;
1472
+ width?: number | string | RemoveAttribute;
1473
+
1474
+ /** @experimental */
1475
+ adauctionheaders?: BooleanAttribute | RemoveAttribute;
1476
+ /**
1477
+ * @non-standard
1478
+ * @experimental
1479
+ */
1480
+ browsingtopics?: BooleanAttribute | RemoveAttribute;
1481
+ /** @experimental */
1482
+ credentialless?: BooleanAttribute | RemoveAttribute;
1483
+ /** @experimental */
1484
+ csp?: string | RemoveAttribute;
1485
+ /** @experimental */
1486
+ privatetoken?: string | RemoveAttribute;
1487
+ /** @experimental */
1488
+ sharedstoragewritable?: BooleanAttribute | RemoveAttribute;
1489
+
1490
+ /** @deprecated */
1491
+ align?: string | RemoveAttribute;
1492
+ /**
1493
+ * @deprecated
1494
+ * @non-standard
1495
+ */
1496
+ allowpaymentrequest?: BooleanAttribute | RemoveAttribute;
1497
+ /** @deprecated */
1498
+ allowtransparency?: BooleanAttribute | RemoveAttribute;
1499
+ /** @deprecated */
1500
+ frameborder?: number | string | RemoveAttribute;
1501
+ /** @deprecated */
1502
+ longdesc?: string | RemoveAttribute;
1503
+ /** @deprecated */
1504
+ marginheight?: number | string | RemoveAttribute;
1505
+ /** @deprecated */
1506
+ marginwidth?: number | string | RemoveAttribute;
1507
+ /** @deprecated */
1508
+ scrolling?: "yes" | "no" | "auto" | RemoveAttribute;
1509
+ /** @deprecated */
1510
+ seamless?: BooleanAttribute | RemoveAttribute;
1511
+ }
1512
+ interface ImgHTMLAttributes<T> extends HTMLAttributes<T> {
1513
+ alt?: string | RemoveAttribute;
1514
+ browsingtopics?: string | RemoveAttribute;
1515
+ crossorigin?: HTMLCrossorigin | RemoveAttribute;
1516
+ decoding?: "sync" | "async" | "auto" | RemoveAttribute;
1517
+ fetchpriority?: "high" | "low" | "auto" | RemoveAttribute;
1518
+ height?: number | string | RemoveAttribute;
1519
+ ismap?: BooleanAttribute | RemoveAttribute;
1520
+ loading?: "eager" | "lazy" | RemoveAttribute;
1521
+ referrerpolicy?: HTMLReferrerPolicy | RemoveAttribute;
1522
+ sizes?: string | RemoveAttribute;
1523
+ src?: string | RemoveAttribute;
1524
+ srcset?: string | RemoveAttribute;
1525
+ usemap?: string | RemoveAttribute;
1526
+ width?: number | string | RemoveAttribute;
1527
+
1528
+ /** @experimental */
1529
+ attributionsrc?: string | RemoveAttribute;
1530
+ /** @experimental */
1531
+ sharedstoragewritable?: BooleanAttribute | RemoveAttribute;
1532
+
1533
+ /** @deprecated */
1534
+ align?: "top" | "middle" | "bottom" | "left" | "right" | RemoveAttribute;
1535
+ /** @deprecated */
1536
+ border?: string | RemoveAttribute;
1537
+ /** @deprecated */
1538
+ hspace?: number | string | RemoveAttribute;
1539
+ /** @deprecated */
1540
+ intrinsicsize?: string | RemoveAttribute;
1541
+ /** @deprecated */
1542
+ longdesc?: string | RemoveAttribute;
1543
+ /** @deprecated */
1544
+ lowsrc?: string | RemoveAttribute;
1545
+ /** @deprecated */
1546
+ name?: string | RemoveAttribute;
1547
+ /** @deprecated */
1548
+ vspace?: number | string | RemoveAttribute;
1549
+ }
1550
+ interface InputHTMLAttributes<T> extends HTMLAttributes<T> {
1551
+ accept?: string | RemoveAttribute;
1552
+ alpha?: BooleanAttribute | RemoveAttribute;
1553
+ alt?: string | RemoveAttribute;
1554
+ autocomplete?: HTMLAutocomplete | RemoveAttribute;
1555
+ capture?: "user" | "environment" | RemoveAttribute;
1556
+
1557
+ colorspace?: string | RemoveAttribute;
1558
+ dirname?: string | RemoveAttribute;
1559
+ disabled?: BooleanAttribute | RemoveAttribute;
1560
+ form?: string | RemoveAttribute;
1561
+ formaction?: string | SerializableAttributeValue | RemoveAttribute;
1562
+ formenctype?: HTMLFormEncType | RemoveAttribute;
1563
+ formmethod?: HTMLFormMethod | RemoveAttribute;
1564
+ formnovalidate?: BooleanAttribute | RemoveAttribute;
1565
+ formtarget?: string | RemoveAttribute;
1566
+ height?: number | string | RemoveAttribute;
1567
+ list?: string | RemoveAttribute;
1568
+ max?: number | string | RemoveAttribute;
1569
+ maxlength?: number | string | RemoveAttribute;
1570
+ min?: number | string | RemoveAttribute;
1571
+ minlength?: number | string | RemoveAttribute;
1572
+ multiple?: BooleanAttribute | RemoveAttribute;
1573
+ name?: string | RemoveAttribute;
1574
+ pattern?: string | RemoveAttribute;
1575
+ placeholder?: string | RemoveAttribute;
1576
+ popovertarget?: string | RemoveAttribute;
1577
+ popovertargetaction?: "hide" | "show" | "toggle" | RemoveAttribute;
1578
+ readonly?: BooleanAttribute | RemoveAttribute;
1579
+ required?: BooleanAttribute | RemoveAttribute;
1580
+ // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/search#results
1581
+ results?: number | RemoveAttribute;
1582
+ size?: number | string | RemoveAttribute;
1583
+ src?: string | RemoveAttribute;
1584
+ step?: number | string | RemoveAttribute;
1585
+ type?:
1586
+ | "button"
1587
+ | "checkbox"
1588
+ | "color"
1589
+ | "date"
1590
+ | "datetime-local"
1591
+ | "email"
1592
+ | "file"
1593
+ | "hidden"
1594
+ | "image"
1595
+ | "month"
1596
+ | "number"
1597
+ | "password"
1598
+ | "radio"
1599
+ | "range"
1600
+ | "reset"
1601
+ | "search"
1602
+ | "submit"
1603
+ | "tel"
1604
+ | "text"
1605
+ | "time"
1606
+ | "url"
1607
+ | "week"
1608
+ | (string & {})
1609
+ | RemoveAttribute;
1610
+ width?: number | string | RemoveAttribute;
1611
+ webkitdirectory?: BooleanAttribute | RemoveAttribute;
1612
+
1613
+ /** @non-standard */
1614
+ incremental?: BooleanAttribute | RemoveAttribute;
1615
+
1616
+ /** @deprecated */
1617
+ align?: string | RemoveAttribute;
1618
+ /** @deprecated */
1619
+ usemap?: string | RemoveAttribute;
1620
+
1621
+ // special cases locked to properties
1622
+
1623
+ checked?: BooleanProperty | RemoveProperty;
1624
+ /** @error use `<input checked={..}/>` instead */
1625
+ "prop:checked"?: never;
1626
+
1627
+ defaultChecked?: BooleanProperty | RemoveProperty;
1628
+ /** @error use `<input defaultChecked={..}/>` instead */
1629
+ "prop:defaultChecked"?: never;
1630
+
1631
+ value?: string | string[] | number | RemoveProperty;
1632
+ /** @error use `<input value={..}/>` instead */
1633
+ "prop:value"?: never;
1634
+
1635
+ defaultValue?: string | string[] | number | RemoveProperty;
1636
+ /** @error use `<input defaultValue={..}/>` instead */
1637
+ "prop:defaultValue"?: never;
1638
+ }
1639
+ interface ModHTMLAttributes<T> extends HTMLAttributes<T> {
1640
+ cite?: string | RemoveAttribute;
1641
+ datetime?: string | RemoveAttribute;
1642
+ }
1643
+ interface KeygenHTMLAttributes<T> extends HTMLAttributes<T> {
1644
+ /** @deprecated */
1645
+ challenge?: string | RemoveAttribute;
1646
+ /** @deprecated */
1647
+ disabled?: BooleanAttribute | RemoveAttribute;
1648
+ /** @deprecated */
1649
+ form?: string | RemoveAttribute;
1650
+ /** @deprecated */
1651
+ keyparams?: string | RemoveAttribute;
1652
+ /** @deprecated */
1653
+ keytype?: string | RemoveAttribute;
1654
+ /** @deprecated */
1655
+ name?: string | RemoveAttribute;
1656
+ }
1657
+ interface LabelHTMLAttributes<T> extends HTMLAttributes<T> {
1658
+ for?: string | RemoveAttribute;
1659
+ }
1660
+ interface LiHTMLAttributes<T> extends HTMLAttributes<T> {
1661
+ value?: number | string | RemoveAttribute;
1662
+
1663
+ /** @deprecated */
1664
+ type?: "1" | "a" | "A" | "i" | "I" | RemoveAttribute;
1665
+ }
1666
+ interface LinkHTMLAttributes<T> extends HTMLAttributes<T> {
1667
+ as?: HTMLLinkAs | RemoveAttribute;
1668
+ blocking?: "render" | RemoveAttribute;
1669
+ color?: string | RemoveAttribute;
1670
+ crossorigin?: HTMLCrossorigin | RemoveAttribute;
1671
+ disabled?: BooleanAttribute | RemoveAttribute;
1672
+ fetchpriority?: "high" | "low" | "auto" | RemoveAttribute;
1673
+ href?: string | RemoveAttribute;
1674
+ hreflang?: string | RemoveAttribute;
1675
+ imagesizes?: string | RemoveAttribute;
1676
+ imagesrcset?: string | RemoveAttribute;
1677
+ integrity?: string | RemoveAttribute;
1678
+ media?: string | RemoveAttribute;
1679
+ referrerpolicy?: HTMLReferrerPolicy | RemoveAttribute;
1680
+ rel?: string | RemoveAttribute;
1681
+ sizes?: string | RemoveAttribute;
1682
+ type?: string | RemoveAttribute;
1683
+
1684
+ /** @deprecated */
1685
+ charset?: string | RemoveAttribute;
1686
+ /** @deprecated */
1687
+ rev?: string | RemoveAttribute;
1688
+ /** @deprecated */
1689
+ target?: string | RemoveAttribute;
1690
+ }
1691
+ interface MapHTMLAttributes<T> extends HTMLAttributes<T> {
1692
+ name?: string | RemoveAttribute;
1693
+ }
1694
+ interface MediaHTMLAttributes<T> extends HTMLAttributes<T> {
1695
+ autoplay?: BooleanAttribute | RemoveAttribute;
1696
+ controls?: BooleanAttribute | RemoveAttribute;
1697
+ controlslist?:
1698
+ | "nodownload"
1699
+ | "nofullscreen"
1700
+ | "noplaybackrate"
1701
+ | "noremoteplayback"
1702
+ | (string & {})
1703
+ | RemoveAttribute;
1704
+ crossorigin?: HTMLCrossorigin | RemoveAttribute;
1705
+ disableremoteplayback?: BooleanAttribute | RemoveAttribute;
1706
+ loop?: BooleanAttribute | RemoveAttribute;
1707
+
1708
+ preload?: "none" | "metadata" | "auto" | EnumeratedAcceptsEmpty | RemoveAttribute;
1709
+ src?: string | RemoveAttribute;
1710
+
1711
+ onEncrypted?: EventHandlerUnion<T, MediaEncryptedEvent> | undefined;
1712
+ "on:encrypted"?: EventHandlerWithOptionsUnion<T, MediaEncryptedEvent> | undefined;
1713
+
1714
+ onWaitingForKey?: EventHandlerUnion<T, Event> | undefined;
1715
+ "on:waitingforkey"?: EventHandlerWithOptionsUnion<T, Event> | undefined;
1716
+
1717
+ /** @deprecated */
1718
+ mediagroup?: string | RemoveAttribute;
1719
+
1720
+ // special cases locked to properties
1721
+
1722
+ muted?: BooleanProperty | RemoveProperty;
1723
+ /** @error use `<video/audio muted={..}/>` instead */
1724
+ "prop:muted"?: never;
1725
+
1726
+ defaultMuted?: BooleanProperty | RemoveProperty;
1727
+ /** @error use `<video/audio defaultMuted={..}/>` instead */
1728
+ "prop:defaultMuted"?: never;
1729
+ }
1730
+ interface MenuHTMLAttributes<T> extends HTMLAttributes<T> {
1731
+ /** @deprecated */
1732
+ compact?: BooleanAttribute | RemoveAttribute;
1733
+ /** @deprecated */
1734
+ label?: string | RemoveAttribute;
1735
+ /** @deprecated */
1736
+ type?: "context" | "toolbar" | RemoveAttribute;
1737
+ }
1738
+ interface MetaHTMLAttributes<T> extends HTMLAttributes<T> {
1739
+ "http-equiv"?:
1740
+ | "content-security-policy"
1741
+ | "content-type"
1742
+ | "default-style"
1743
+ | "x-ua-compatible"
1744
+ | "refresh"
1745
+ | RemoveAttribute;
1746
+ charset?: string | RemoveAttribute;
1747
+ content?: string | RemoveAttribute;
1748
+ media?: string | RemoveAttribute;
1749
+ name?: string | RemoveAttribute;
1750
+
1751
+ /** @deprecated */
1752
+ scheme?: string | RemoveAttribute;
1753
+ }
1754
+ interface MeterHTMLAttributes<T> extends HTMLAttributes<T> {
1755
+ form?: string | RemoveAttribute;
1756
+ high?: number | string | RemoveAttribute;
1757
+ low?: number | string | RemoveAttribute;
1758
+ max?: number | string | RemoveAttribute;
1759
+ min?: number | string | RemoveAttribute;
1760
+ optimum?: number | string | RemoveAttribute;
1761
+ value?: string | string[] | number | RemoveAttribute;
1762
+ }
1763
+ interface QuoteHTMLAttributes<T> extends HTMLAttributes<T> {
1764
+ cite?: string | RemoveAttribute;
1765
+ }
1766
+ interface ObjectHTMLAttributes<T> extends HTMLAttributes<T> {
1767
+ data?: string | RemoveAttribute;
1768
+ form?: string | RemoveAttribute;
1769
+ height?: number | string | RemoveAttribute;
1770
+ name?: string | RemoveAttribute;
1771
+ type?: string | RemoveAttribute;
1772
+ width?: number | string | RemoveAttribute;
1773
+ wmode?: string | RemoveAttribute;
1774
+
1775
+ /** @deprecated */
1776
+ align?: string | RemoveAttribute;
1777
+ /** @deprecated */
1778
+ archive?: string | RemoveAttribute;
1779
+ /** @deprecated */
1780
+ border?: string | RemoveAttribute;
1781
+ /** @deprecated */
1782
+ classid?: string | RemoveAttribute;
1783
+ /** @deprecated */
1784
+ code?: string | RemoveAttribute;
1785
+ /** @deprecated */
1786
+ codebase?: string | RemoveAttribute;
1787
+ /** @deprecated */
1788
+ codetype?: string | RemoveAttribute;
1789
+ /** @deprecated */
1790
+ declare?: BooleanAttribute | RemoveAttribute;
1791
+ /** @deprecated */
1792
+ hspace?: number | string | RemoveAttribute;
1793
+ /** @deprecated */
1794
+ standby?: string | RemoveAttribute;
1795
+ /** @deprecated */
1796
+ usemap?: string | RemoveAttribute;
1797
+ /** @deprecated */
1798
+ vspace?: number | string | RemoveAttribute;
1799
+ /** @deprecated */
1800
+ typemustmatch?: BooleanAttribute | RemoveAttribute;
1801
+ }
1802
+ interface OlHTMLAttributes<T> extends HTMLAttributes<T> {
1803
+ reversed?: BooleanAttribute | RemoveAttribute;
1804
+ start?: number | string | RemoveAttribute;
1805
+ type?: "1" | "a" | "A" | "i" | "I" | RemoveAttribute;
1806
+
1807
+ /**
1808
+ * @deprecated
1809
+ * @non-standard
1810
+ */
1811
+ compact?: BooleanAttribute | RemoveAttribute;
1812
+ }
1813
+ interface OptgroupHTMLAttributes<T> extends HTMLAttributes<T> {
1814
+ disabled?: BooleanAttribute | RemoveAttribute;
1815
+ label?: string | RemoveAttribute;
1816
+ }
1817
+ interface OptionHTMLAttributes<T> extends HTMLAttributes<T> {
1818
+ disabled?: BooleanAttribute | RemoveAttribute;
1819
+ label?: string | RemoveAttribute;
1820
+
1821
+ // special cases locked to properties
1822
+
1823
+ selected?: BooleanProperty | RemoveProperty;
1824
+ /** @error use `<option selected={..}/>` instead */
1825
+ "prop:selected"?: never;
1826
+
1827
+ defaultSelected?: BooleanProperty | RemoveProperty;
1828
+ /** @error use `<option defaultSelected={..}/>` instead */
1829
+ "prop:defaultSelected"?: never;
1830
+
1831
+ value?: string | string[] | number | RemoveProperty;
1832
+ /** @error use `<option value={..}/>` instead */
1833
+ "prop:value"?: never;
1834
+
1835
+ // for sanity
1836
+
1837
+ /** @error This doesn't exists for `<option/>` */
1838
+ "prop:defaultValue"?: never;
1839
+ /** @error This doesn't exists for `<option/>` */
1840
+ defaultValue?: never;
1841
+ }
1842
+ interface OutputHTMLAttributes<T> extends HTMLAttributes<T> {
1843
+ for?: string | RemoveAttribute;
1844
+ form?: string | RemoveAttribute;
1845
+ name?: string | RemoveAttribute;
1846
+ }
1847
+ interface ParamHTMLAttributes<T> extends HTMLAttributes<T> {
1848
+ /** @deprecated */
1849
+ name?: string | RemoveAttribute;
1850
+ /** @deprecated */
1851
+ type?: string | RemoveAttribute;
1852
+ /** @deprecated */
1853
+ value?: string | number | RemoveAttribute;
1854
+ /** @deprecated */
1855
+ valuetype?: "data" | "ref" | "object" | RemoveAttribute;
1856
+ }
1857
+ interface ProgressHTMLAttributes<T> extends HTMLAttributes<T> {
1858
+ max?: number | string | RemoveAttribute;
1859
+ value?: string | string[] | number | RemoveAttribute;
1860
+ }
1861
+ interface ScriptHTMLAttributes<T> extends HTMLAttributes<T> {
1862
+ async?: BooleanAttribute | RemoveAttribute;
1863
+ blocking?: "render" | RemoveAttribute;
1864
+ crossorigin?: HTMLCrossorigin | RemoveAttribute;
1865
+ defer?: BooleanAttribute | RemoveAttribute;
1866
+ fetchpriority?: "high" | "low" | "auto" | RemoveAttribute;
1867
+ for?: string | RemoveAttribute;
1868
+ integrity?: string | RemoveAttribute;
1869
+ nomodule?: BooleanAttribute | RemoveAttribute;
1870
+ referrerpolicy?: HTMLReferrerPolicy | RemoveAttribute;
1871
+ src?: string | RemoveAttribute;
1872
+ type?: "importmap" | "module" | "speculationrules" | (string & {}) | RemoveAttribute;
1873
+
1874
+ /** @experimental */
1875
+ attributionsrc?: string | RemoveAttribute;
1876
+
1877
+ /** @deprecated */
1878
+ charset?: string | RemoveAttribute;
1879
+ /** @deprecated */
1880
+ event?: string | RemoveAttribute;
1881
+ /** @deprecated */
1882
+ language?: string | RemoveAttribute;
1883
+ }
1884
+ interface SelectHTMLAttributes<T> extends HTMLAttributes<T> {
1885
+ autocomplete?: HTMLAutocomplete | RemoveAttribute;
1886
+ disabled?: BooleanAttribute | RemoveAttribute;
1887
+ form?: string | RemoveAttribute;
1888
+ multiple?: BooleanAttribute | RemoveAttribute;
1889
+ name?: string | RemoveAttribute;
1890
+ required?: BooleanAttribute | RemoveAttribute;
1891
+ size?: number | string | RemoveAttribute;
1892
+
1893
+ // special cases locked to properties
1894
+
1895
+ value?: string | string[] | number | RemoveProperty;
1896
+ /** @error use `<select value={..}/>` instead */
1897
+ "prop:value"?: never;
1898
+
1899
+ // for sanity
1900
+
1901
+ /** @error use `<option defaultSelected={..}/>` instead */
1902
+ defaultSelected?: never;
1903
+ /** @error use `<option defaultSelected={..}/>` instead */
1904
+ "prop:defaultSelected"?: never;
1905
+
1906
+ /** @error use `<option defaultSelected={..}/>` instead */
1907
+ selected?: never;
1908
+ /** @error use `<option defaultSelected={..}/>` instead */
1909
+ "prop:selected"?: never;
1910
+ }
1911
+ interface HTMLSlotElementAttributes<T> extends HTMLAttributes<T> {
1912
+ name?: string | RemoveAttribute;
1913
+ }
1914
+ interface SourceHTMLAttributes<T> extends HTMLAttributes<T> {
1915
+ height?: number | string | RemoveAttribute;
1916
+ media?: string | RemoveAttribute;
1917
+ sizes?: string | RemoveAttribute;
1918
+ src?: string | RemoveAttribute;
1919
+ srcset?: string | RemoveAttribute;
1920
+ type?: string | RemoveAttribute;
1921
+ width?: number | string | RemoveAttribute;
1922
+ }
1923
+ interface StyleHTMLAttributes<T> extends HTMLAttributes<T> {
1924
+ blocking?: "render" | RemoveAttribute;
1925
+ media?: string | RemoveAttribute;
1926
+
1927
+ /** @deprecated */
1928
+ scoped?: BooleanAttribute | RemoveAttribute;
1929
+ /** @deprecated */
1930
+ type?: string | RemoveAttribute;
1931
+ }
1932
+ interface TdHTMLAttributes<T> extends HTMLAttributes<T> {
1933
+ colspan?: number | string | RemoveAttribute;
1934
+ headers?: string | RemoveAttribute;
1935
+ rowspan?: number | string | RemoveAttribute;
1936
+
1937
+ /** @deprecated */
1938
+ abbr?: string | RemoveAttribute;
1939
+ /** @deprecated */
1940
+ align?: "left" | "center" | "right" | "justify" | "char" | RemoveAttribute;
1941
+ /** @deprecated */
1942
+ axis?: string | RemoveAttribute;
1943
+ /** @deprecated */
1944
+ bgcolor?: string | RemoveAttribute;
1945
+ /** @deprecated */
1946
+ char?: string | RemoveAttribute;
1947
+ /** @deprecated */
1948
+ charoff?: string | RemoveAttribute;
1949
+ /** @deprecated */
1950
+ height?: number | string | RemoveAttribute;
1951
+ /** @deprecated */
1952
+ nowrap?: BooleanAttribute | RemoveAttribute;
1953
+ /** @deprecated */
1954
+ scope?: "col" | "row" | "rowgroup" | "colgroup" | RemoveAttribute;
1955
+ /** @deprecated */
1956
+ valign?: "baseline" | "bottom" | "middle" | "top" | RemoveAttribute;
1957
+ /** @deprecated */
1958
+ width?: number | string | RemoveAttribute;
1959
+ }
1960
+ interface TemplateHTMLAttributes<T> extends HTMLAttributes<T> {
1961
+ shadowrootclonable?: BooleanAttribute | RemoveAttribute;
1962
+ shadowrootdelegatesfocus?: BooleanAttribute | RemoveAttribute;
1963
+ shadowrootmode?: "open" | "closed" | RemoveAttribute;
1964
+ shadowrootcustomelementregistry?: BooleanAttribute | RemoveAttribute;
1965
+
1966
+ /** @experimental */
1967
+ shadowrootserializable?: BooleanAttribute | RemoveAttribute;
1968
+ }
1969
+ interface TextareaHTMLAttributes<T> extends HTMLAttributes<T> {
1970
+ autocomplete?: HTMLAutocomplete | RemoveAttribute;
1971
+ cols?: number | string | RemoveAttribute;
1972
+ dirname?: string | RemoveAttribute;
1973
+ disabled?: BooleanAttribute | RemoveAttribute;
1974
+
1975
+ form?: string | RemoveAttribute;
1976
+ maxlength?: number | string | RemoveAttribute;
1977
+ minlength?: number | string | RemoveAttribute;
1978
+ name?: string | RemoveAttribute;
1979
+ placeholder?: string | RemoveAttribute;
1980
+ readonly?: BooleanAttribute | RemoveAttribute;
1981
+ required?: BooleanAttribute | RemoveAttribute;
1982
+ rows?: number | string | RemoveAttribute;
1983
+ wrap?: "hard" | "soft" | "off" | RemoveAttribute;
1984
+
1985
+ // special cases locked to properties
1986
+
1987
+ value?: string | string[] | number | RemoveProperty;
1988
+ /** @error use `<textarea value={..}/>` instead */
1989
+ "prop:value"?: never;
1990
+
1991
+ defaultValue?: string | string[] | number | RemoveProperty;
1992
+ /** @error use `<textarea defaultValue={..}/>` instead */
1993
+ "prop:defaultValue"?: never;
1994
+ }
1995
+ interface ThHTMLAttributes<T> extends HTMLAttributes<T> {
1996
+ abbr?: string | RemoveAttribute;
1997
+ colspan?: number | string | RemoveAttribute;
1998
+ headers?: string | RemoveAttribute;
1999
+ rowspan?: number | string | RemoveAttribute;
2000
+ scope?: "col" | "row" | "rowgroup" | "colgroup" | RemoveAttribute;
2001
+
2002
+ /** @deprecated */
2003
+ align?: "left" | "center" | "right" | "justify" | "char" | RemoveAttribute;
2004
+ /** @deprecated */
2005
+ axis?: string | RemoveAttribute;
2006
+ /** @deprecated */
2007
+ bgcolor?: string | RemoveAttribute;
2008
+ /** @deprecated */
2009
+ char?: string | RemoveAttribute;
2010
+ /** @deprecated */
2011
+ charoff?: string | RemoveAttribute;
2012
+ /** @deprecated */
2013
+ height?: string | RemoveAttribute;
2014
+ /** @deprecated */
2015
+ nowrap?: BooleanAttribute | RemoveAttribute;
2016
+ /** @deprecated */
2017
+ valign?: "baseline" | "bottom" | "middle" | "top" | RemoveAttribute;
2018
+ /** @deprecated */
2019
+ width?: number | string | RemoveAttribute;
2020
+ }
2021
+ interface TimeHTMLAttributes<T> extends HTMLAttributes<T> {
2022
+ datetime?: string | RemoveAttribute;
2023
+ }
2024
+ interface TrackHTMLAttributes<T> extends HTMLAttributes<T> {
2025
+ default?: BooleanAttribute | RemoveAttribute;
2026
+ kind?:
2027
+ | "alternative"
2028
+ | "descriptions"
2029
+ | "main"
2030
+ | "main-desc"
2031
+ | "translation"
2032
+ | "commentary"
2033
+ | "subtitles"
2034
+ | "captions"
2035
+ | "chapters"
2036
+ | "metadata"
2037
+ | RemoveAttribute;
2038
+ label?: string | RemoveAttribute;
2039
+ src?: string | RemoveAttribute;
2040
+ srclang?: string | RemoveAttribute;
2041
+
2042
+ /** @deprecated */
2043
+ mediagroup?: string | RemoveAttribute;
2044
+ }
2045
+ interface VideoHTMLAttributes<T> extends MediaHTMLAttributes<T> {
2046
+ disablepictureinpicture?: BooleanAttribute | RemoveAttribute;
2047
+ height?: number | string | RemoveAttribute;
2048
+ playsinline?: BooleanAttribute | RemoveAttribute;
2049
+ poster?: string | RemoveAttribute;
2050
+ width?: number | string | RemoveAttribute;
2051
+
2052
+ onEnterPictureInPicture?: EventHandlerUnion<T, PictureInPictureEvent> | undefined;
2053
+ "on:enterpictureinpicture"?: EventHandlerWithOptionsUnion<T, PictureInPictureEvent> | undefined;
2054
+
2055
+ onLeavePictureInPicture?: EventHandlerUnion<T, PictureInPictureEvent> | undefined;
2056
+ "on:leavepictureinpicture"?: EventHandlerWithOptionsUnion<T, PictureInPictureEvent> | undefined;
2057
+ }
2058
+
2059
+ interface WebViewHTMLAttributes<T> extends HTMLAttributes<T> {
2060
+ allowpopups?: BooleanAttribute | RemoveAttribute;
2061
+ disableblinkfeatures?: string | RemoveAttribute;
2062
+ disablewebsecurity?: BooleanAttribute | RemoveAttribute;
2063
+ enableblinkfeatures?: string | RemoveAttribute;
2064
+ httpreferrer?: string | RemoveAttribute;
2065
+ nodeintegration?: BooleanAttribute | RemoveAttribute;
2066
+ nodeintegrationinsubframes?: BooleanAttribute | RemoveAttribute;
2067
+ partition?: string | RemoveAttribute;
2068
+ plugins?: BooleanAttribute | RemoveAttribute;
2069
+ preload?: string | RemoveAttribute;
2070
+ src?: string | RemoveAttribute;
2071
+ useragent?: string | RemoveAttribute;
2072
+ webpreferences?: string | RemoveAttribute;
2073
+
2074
+ // does this exists?
2075
+ allowfullscreen?: BooleanAttribute | RemoveAttribute;
2076
+ autosize?: BooleanAttribute | RemoveAttribute;
2077
+
2078
+ /** @deprecated */
2079
+ blinkfeatures?: string | RemoveAttribute;
2080
+ /** @deprecated */
2081
+ disableguestresize?: BooleanAttribute | RemoveAttribute;
2082
+ /** @deprecated */
2083
+ guestinstance?: string | RemoveAttribute;
2084
+ }
2085
+
2086
+ // SVG
2087
+
2088
+ type SVGPreserveAspectRatio =
2089
+ | "none"
2090
+ | "xMinYMin"
2091
+ | "xMidYMin"
2092
+ | "xMaxYMin"
2093
+ | "xMinYMid"
2094
+ | "xMidYMid"
2095
+ | "xMaxYMid"
2096
+ | "xMinYMax"
2097
+ | "xMidYMax"
2098
+ | "xMaxYMax"
2099
+ | "xMinYMin meet"
2100
+ | "xMidYMin meet"
2101
+ | "xMaxYMin meet"
2102
+ | "xMinYMid meet"
2103
+ | "xMidYMid meet"
2104
+ | "xMaxYMid meet"
2105
+ | "xMinYMax meet"
2106
+ | "xMidYMax meet"
2107
+ | "xMaxYMax meet"
2108
+ | "xMinYMin slice"
2109
+ | "xMidYMin slice"
2110
+ | "xMaxYMin slice"
2111
+ | "xMinYMid slice"
2112
+ | "xMidYMid slice"
2113
+ | "xMaxYMid slice"
2114
+ | "xMinYMax slice"
2115
+ | "xMidYMax slice"
2116
+ | "xMaxYMax slice";
2117
+ type ImagePreserveAspectRatio =
2118
+ | SVGPreserveAspectRatio
2119
+ | "defer none"
2120
+ | "defer xMinYMin"
2121
+ | "defer xMidYMin"
2122
+ | "defer xMaxYMin"
2123
+ | "defer xMinYMid"
2124
+ | "defer xMidYMid"
2125
+ | "defer xMaxYMid"
2126
+ | "defer xMinYMax"
2127
+ | "defer xMidYMax"
2128
+ | "defer xMaxYMax"
2129
+ | "defer xMinYMin meet"
2130
+ | "defer xMidYMin meet"
2131
+ | "defer xMaxYMin meet"
2132
+ | "defer xMinYMid meet"
2133
+ | "defer xMidYMid meet"
2134
+ | "defer xMaxYMid meet"
2135
+ | "defer xMinYMax meet"
2136
+ | "defer xMidYMax meet"
2137
+ | "defer xMaxYMax meet"
2138
+ | "defer xMinYMin slice"
2139
+ | "defer xMidYMin slice"
2140
+ | "defer xMaxYMin slice"
2141
+ | "defer xMinYMid slice"
2142
+ | "defer xMidYMid slice"
2143
+ | "defer xMaxYMid slice"
2144
+ | "defer xMinYMax slice"
2145
+ | "defer xMidYMax slice"
2146
+ | "defer xMaxYMax slice";
2147
+ type SVGUnits = "userSpaceOnUse" | "objectBoundingBox";
2148
+
2149
+ interface StylableSVGAttributes {
2150
+ class?: string | ClassList | RemoveAttribute;
2151
+ style?: CSSProperties | string | RemoveAttribute;
2152
+ }
2153
+ interface TransformableSVGAttributes {
2154
+ transform?: string | RemoveAttribute;
2155
+ }
2156
+ interface ConditionalProcessingSVGAttributes {
2157
+ requiredExtensions?: string | RemoveAttribute;
2158
+ requiredFeatures?: string | RemoveAttribute;
2159
+ systemLanguage?: string | RemoveAttribute;
2160
+ }
2161
+ interface ExternalResourceSVGAttributes {
2162
+ externalResourcesRequired?: EnumeratedPseudoBoolean | RemoveAttribute;
2163
+ }
2164
+ interface AnimationTimingSVGAttributes {
2165
+ begin?: string | RemoveAttribute;
2166
+ dur?: string | RemoveAttribute;
2167
+ end?: string | RemoveAttribute;
2168
+ fill?: "freeze" | "remove" | RemoveAttribute;
2169
+ max?: string | RemoveAttribute;
2170
+ min?: string | RemoveAttribute;
2171
+ repeatCount?: number | "indefinite" | RemoveAttribute;
2172
+ repeatDur?: string | RemoveAttribute;
2173
+ restart?: "always" | "whenNotActive" | "never" | RemoveAttribute;
2174
+ }
2175
+ interface AnimationValueSVGAttributes {
2176
+ by?: number | string | RemoveAttribute;
2177
+ calcMode?: "discrete" | "linear" | "paced" | "spline" | RemoveAttribute;
2178
+ from?: number | string | RemoveAttribute;
2179
+ keySplines?: string | RemoveAttribute;
2180
+ keyTimes?: string | RemoveAttribute;
2181
+ to?: number | string | RemoveAttribute;
2182
+ values?: string | RemoveAttribute;
2183
+ }
2184
+ interface AnimationAdditionSVGAttributes {
2185
+ accumulate?: "none" | "sum" | RemoveAttribute;
2186
+ additive?: "replace" | "sum" | RemoveAttribute;
2187
+ attributeName?: string | RemoveAttribute;
2188
+ }
2189
+ interface AnimationAttributeTargetSVGAttributes {
2190
+ attributeName?: string | RemoveAttribute;
2191
+ attributeType?: "CSS" | "XML" | "auto" | RemoveAttribute;
2192
+ }
2193
+ interface PresentationSVGAttributes {
2194
+ "alignment-baseline"?:
2195
+ | "auto"
2196
+ | "baseline"
2197
+ | "before-edge"
2198
+ | "text-before-edge"
2199
+ | "middle"
2200
+ | "central"
2201
+ | "after-edge"
2202
+ | "text-after-edge"
2203
+ | "ideographic"
2204
+ | "alphabetic"
2205
+ | "hanging"
2206
+ | "mathematical"
2207
+ | "inherit"
2208
+ | RemoveAttribute;
2209
+ "baseline-shift"?: number | string | RemoveAttribute;
2210
+ "clip-path"?: string | RemoveAttribute;
2211
+ "clip-rule"?: "nonzero" | "evenodd" | "inherit" | RemoveAttribute;
2212
+ "color-interpolation"?: "auto" | "sRGB" | "linearRGB" | "inherit" | RemoveAttribute;
2213
+ "color-interpolation-filters"?: "auto" | "sRGB" | "linearRGB" | "inherit" | RemoveAttribute;
2214
+ "color-profile"?: string | RemoveAttribute;
2215
+ "color-rendering"?: "auto" | "optimizeSpeed" | "optimizeQuality" | "inherit" | RemoveAttribute;
2216
+ "dominant-baseline"?:
2217
+ | "auto"
2218
+ | "text-bottom"
2219
+ | "alphabetic"
2220
+ | "ideographic"
2221
+ | "middle"
2222
+ | "central"
2223
+ | "mathematical"
2224
+ | "hanging"
2225
+ | "text-top"
2226
+ | "inherit"
2227
+ | RemoveAttribute;
2228
+ "enable-background"?: string | RemoveAttribute;
2229
+ "fill-opacity"?: number | string | "inherit" | RemoveAttribute;
2230
+ "fill-rule"?: "nonzero" | "evenodd" | "inherit" | RemoveAttribute;
2231
+ "flood-color"?: string | RemoveAttribute;
2232
+ "flood-opacity"?: number | string | "inherit" | RemoveAttribute;
2233
+ "font-family"?: string | RemoveAttribute;
2234
+ "font-size"?: string | RemoveAttribute;
2235
+ "font-size-adjust"?: number | string | RemoveAttribute;
2236
+ "font-stretch"?: string | RemoveAttribute;
2237
+ "font-style"?: "normal" | "italic" | "oblique" | "inherit" | RemoveAttribute;
2238
+ "font-variant"?: string | RemoveAttribute;
2239
+ "font-weight"?: number | string | RemoveAttribute;
2240
+ "glyph-orientation-horizontal"?: string | RemoveAttribute;
2241
+ "glyph-orientation-vertical"?: string | RemoveAttribute;
2242
+ "image-rendering"?: "auto" | "optimizeQuality" | "optimizeSpeed" | "inherit" | RemoveAttribute;
2243
+ "letter-spacing"?: number | string | RemoveAttribute;
2244
+ "lighting-color"?: string | RemoveAttribute;
2245
+ "marker-end"?: string | RemoveAttribute;
2246
+ "marker-mid"?: string | RemoveAttribute;
2247
+ "marker-start"?: string | RemoveAttribute;
2248
+ "pointer-events"?:
2249
+ | "bounding-box"
2250
+ | "visiblePainted"
2251
+ | "visibleFill"
2252
+ | "visibleStroke"
2253
+ | "visible"
2254
+ | "painted"
2255
+ | "color"
2256
+ | "fill"
2257
+ | "stroke"
2258
+ | "all"
2259
+ | "none"
2260
+ | "inherit"
2261
+ | RemoveAttribute;
2262
+ "shape-rendering"?:
2263
+ | "auto"
2264
+ | "optimizeSpeed"
2265
+ | "crispEdges"
2266
+ | "geometricPrecision"
2267
+ | "inherit"
2268
+ | RemoveAttribute;
2269
+ "stop-color"?: string | RemoveAttribute;
2270
+ "stop-opacity"?: number | string | "inherit" | RemoveAttribute;
2271
+ "stroke-dasharray"?: string | RemoveAttribute;
2272
+ "stroke-dashoffset"?: number | string | RemoveAttribute;
2273
+ "stroke-linecap"?: "butt" | "round" | "square" | "inherit" | RemoveAttribute;
2274
+ "stroke-linejoin"?:
2275
+ | "arcs"
2276
+ | "bevel"
2277
+ | "miter"
2278
+ | "miter-clip"
2279
+ | "round"
2280
+ | "inherit"
2281
+ | RemoveAttribute;
2282
+ "stroke-miterlimit"?: number | string | "inherit" | RemoveAttribute;
2283
+ "stroke-opacity"?: number | string | "inherit" | RemoveAttribute;
2284
+ "stroke-width"?: number | string | RemoveAttribute;
2285
+ "text-anchor"?: "start" | "middle" | "end" | "inherit" | RemoveAttribute;
2286
+ "text-decoration"?:
2287
+ | "none"
2288
+ | "underline"
2289
+ | "overline"
2290
+ | "line-through"
2291
+ | "blink"
2292
+ | "inherit"
2293
+ | RemoveAttribute;
2294
+ "text-rendering"?:
2295
+ | "auto"
2296
+ | "optimizeSpeed"
2297
+ | "optimizeLegibility"
2298
+ | "geometricPrecision"
2299
+ | "inherit"
2300
+ | RemoveAttribute;
2301
+ "unicode-bidi"?: string | RemoveAttribute;
2302
+ "word-spacing"?: number | string | RemoveAttribute;
2303
+ "writing-mode"?: "lr-tb" | "rl-tb" | "tb-rl" | "lr" | "rl" | "tb" | "inherit" | RemoveAttribute;
2304
+ clip?: string | RemoveAttribute;
2305
+ color?: string | RemoveAttribute;
2306
+ cursor?: string | RemoveAttribute;
2307
+ direction?: "ltr" | "rtl" | "inherit" | RemoveAttribute;
2308
+ display?: string | RemoveAttribute;
2309
+ fill?: string | RemoveAttribute;
2310
+ filter?: string | RemoveAttribute;
2311
+ kerning?: string | RemoveAttribute;
2312
+ mask?: string | RemoveAttribute;
2313
+ opacity?: number | string | "inherit" | RemoveAttribute;
2314
+ overflow?: "visible" | "hidden" | "scroll" | "auto" | "inherit" | RemoveAttribute;
2315
+ pathLength?: string | number | RemoveAttribute;
2316
+ stroke?: string | RemoveAttribute;
2317
+ visibility?: "visible" | "hidden" | "collapse" | "inherit" | RemoveAttribute;
2318
+ }
2319
+ interface AnimationElementSVGAttributes<T>
2320
+ extends SVGAttributes<T>, ExternalResourceSVGAttributes, ConditionalProcessingSVGAttributes {
2321
+ onBegin?: EventHandlerUnion<T, TimeEvent> | undefined;
2322
+ "on:begin"?: EventHandlerWithOptionsUnion<T, TimeEvent> | undefined;
2323
+
2324
+ onEnd?: EventHandlerUnion<T, TimeEvent> | undefined;
2325
+ "on:end"?: EventHandlerWithOptionsUnion<T, TimeEvent> | undefined;
2326
+
2327
+ onRepeat?: EventHandlerUnion<T, TimeEvent> | undefined;
2328
+ "on:repeat"?: EventHandlerWithOptionsUnion<T, TimeEvent> | undefined;
2329
+ }
2330
+ interface ContainerElementSVGAttributes<T>
2331
+ extends
2332
+ SVGAttributes<T>,
2333
+ ShapeElementSVGAttributes<T>,
2334
+ Pick<
2335
+ PresentationSVGAttributes,
2336
+ | "clip-path"
2337
+ | "mask"
2338
+ | "cursor"
2339
+ | "opacity"
2340
+ | "filter"
2341
+ | "enable-background"
2342
+ | "color-interpolation"
2343
+ | "color-rendering"
2344
+ > {}
2345
+ interface FilterPrimitiveElementSVGAttributes<T>
2346
+ extends SVGAttributes<T>, Pick<PresentationSVGAttributes, "color-interpolation-filters"> {
2347
+ height?: number | string | RemoveAttribute;
2348
+ result?: string | RemoveAttribute;
2349
+ width?: number | string | RemoveAttribute;
2350
+ x?: number | string | RemoveAttribute;
2351
+ y?: number | string | RemoveAttribute;
2352
+ }
2353
+ interface SingleInputFilterSVGAttributes {
2354
+ in?: string | RemoveAttribute;
2355
+ }
2356
+ interface DoubleInputFilterSVGAttributes {
2357
+ in?: string | RemoveAttribute;
2358
+ in2?: string | RemoveAttribute;
2359
+ }
2360
+ interface FitToViewBoxSVGAttributes {
2361
+ preserveAspectRatio?: SVGPreserveAspectRatio | RemoveAttribute;
2362
+ viewBox?: string | RemoveAttribute;
2363
+ }
2364
+ interface GradientElementSVGAttributes<T>
2365
+ extends SVGAttributes<T>, ExternalResourceSVGAttributes, StylableSVGAttributes {
2366
+ gradientTransform?: string | RemoveAttribute;
2367
+ gradientUnits?: SVGUnits | RemoveAttribute;
2368
+ href?: string | RemoveAttribute;
2369
+ spreadMethod?: "pad" | "reflect" | "repeat" | RemoveAttribute;
2370
+ }
2371
+ interface GraphicsElementSVGAttributes<T>
2372
+ extends
2373
+ SVGAttributes<T>,
2374
+ Pick<
2375
+ PresentationSVGAttributes,
2376
+ | "clip-rule"
2377
+ | "mask"
2378
+ | "pointer-events"
2379
+ | "cursor"
2380
+ | "opacity"
2381
+ | "filter"
2382
+ | "display"
2383
+ | "visibility"
2384
+ | "color-interpolation"
2385
+ | "color-rendering"
2386
+ > {}
2387
+ interface LightSourceElementSVGAttributes<T> extends SVGAttributes<T> {}
2388
+ interface NewViewportSVGAttributes<T>
2389
+ extends SVGAttributes<T>, Pick<PresentationSVGAttributes, "overflow" | "clip"> {
2390
+ viewBox?: string | RemoveAttribute;
2391
+ }
2392
+ interface ShapeElementSVGAttributes<T>
2393
+ extends
2394
+ SVGAttributes<T>,
2395
+ Pick<
2396
+ PresentationSVGAttributes,
2397
+ | "color"
2398
+ | "fill"
2399
+ | "fill-rule"
2400
+ | "fill-opacity"
2401
+ | "stroke"
2402
+ | "stroke-width"
2403
+ | "stroke-linecap"
2404
+ | "stroke-linejoin"
2405
+ | "stroke-miterlimit"
2406
+ | "stroke-dasharray"
2407
+ | "stroke-dashoffset"
2408
+ | "stroke-opacity"
2409
+ | "shape-rendering"
2410
+ | "pathLength"
2411
+ > {}
2412
+ interface TextContentElementSVGAttributes<T>
2413
+ extends
2414
+ SVGAttributes<T>,
2415
+ Pick<
2416
+ PresentationSVGAttributes,
2417
+ | "font-family"
2418
+ | "font-style"
2419
+ | "font-variant"
2420
+ | "font-weight"
2421
+ | "font-stretch"
2422
+ | "font-size"
2423
+ | "font-size-adjust"
2424
+ | "kerning"
2425
+ | "letter-spacing"
2426
+ | "word-spacing"
2427
+ | "text-decoration"
2428
+ | "glyph-orientation-horizontal"
2429
+ | "glyph-orientation-vertical"
2430
+ | "direction"
2431
+ | "unicode-bidi"
2432
+ | "text-anchor"
2433
+ | "dominant-baseline"
2434
+ | "color"
2435
+ | "fill"
2436
+ | "fill-rule"
2437
+ | "fill-opacity"
2438
+ | "stroke"
2439
+ | "stroke-width"
2440
+ | "stroke-linecap"
2441
+ | "stroke-linejoin"
2442
+ | "stroke-miterlimit"
2443
+ | "stroke-dasharray"
2444
+ | "stroke-dashoffset"
2445
+ | "stroke-opacity"
2446
+ > {}
2447
+ interface ZoomAndPanSVGAttributes {
2448
+ /**
2449
+ * @deprecated
2450
+ * @non-standard
2451
+ */
2452
+ zoomAndPan?: "disable" | "magnify" | RemoveAttribute;
2453
+ }
2454
+ interface AnimateSVGAttributes<T>
2455
+ extends
2456
+ AnimationElementSVGAttributes<T>,
2457
+ AnimationAttributeTargetSVGAttributes,
2458
+ AnimationTimingSVGAttributes,
2459
+ AnimationValueSVGAttributes,
2460
+ AnimationAdditionSVGAttributes,
2461
+ Pick<PresentationSVGAttributes, "color-interpolation" | "color-rendering"> {}
2462
+ interface AnimateMotionSVGAttributes<T>
2463
+ extends
2464
+ AnimationElementSVGAttributes<T>,
2465
+ AnimationTimingSVGAttributes,
2466
+ AnimationValueSVGAttributes,
2467
+ AnimationAdditionSVGAttributes {
2468
+ keyPoints?: string | RemoveAttribute;
2469
+ origin?: "default" | RemoveAttribute;
2470
+ path?: string | RemoveAttribute;
2471
+ rotate?: number | string | "auto" | "auto-reverse" | RemoveAttribute;
2472
+ }
2473
+ interface AnimateTransformSVGAttributes<T>
2474
+ extends
2475
+ AnimationElementSVGAttributes<T>,
2476
+ AnimationAttributeTargetSVGAttributes,
2477
+ AnimationTimingSVGAttributes,
2478
+ AnimationValueSVGAttributes,
2479
+ AnimationAdditionSVGAttributes {
2480
+ type?: "translate" | "scale" | "rotate" | "skewX" | "skewY" | RemoveAttribute;
2481
+ }
2482
+ interface CircleSVGAttributes<T>
2483
+ extends
2484
+ GraphicsElementSVGAttributes<T>,
2485
+ ShapeElementSVGAttributes<T>,
2486
+ ConditionalProcessingSVGAttributes,
2487
+ StylableSVGAttributes,
2488
+ TransformableSVGAttributes,
2489
+ Pick<PresentationSVGAttributes, "clip-path"> {
2490
+ cx?: number | string | RemoveAttribute;
2491
+ cy?: number | string | RemoveAttribute;
2492
+ r?: number | string | RemoveAttribute;
2493
+ }
2494
+ interface ClipPathSVGAttributes<T>
2495
+ extends
2496
+ SVGAttributes<T>,
2497
+ ConditionalProcessingSVGAttributes,
2498
+ ExternalResourceSVGAttributes,
2499
+ StylableSVGAttributes,
2500
+ TransformableSVGAttributes,
2501
+ Pick<PresentationSVGAttributes, "clip-path"> {
2502
+ clipPathUnits?: SVGUnits | RemoveAttribute;
2503
+ }
2504
+ interface DefsSVGAttributes<T>
2505
+ extends
2506
+ ContainerElementSVGAttributes<T>,
2507
+ ConditionalProcessingSVGAttributes,
2508
+ ExternalResourceSVGAttributes,
2509
+ StylableSVGAttributes,
2510
+ TransformableSVGAttributes {}
2511
+ interface DescSVGAttributes<T> extends SVGAttributes<T>, StylableSVGAttributes {}
2512
+ interface EllipseSVGAttributes<T>
2513
+ extends
2514
+ GraphicsElementSVGAttributes<T>,
2515
+ ShapeElementSVGAttributes<T>,
2516
+ ConditionalProcessingSVGAttributes,
2517
+ ExternalResourceSVGAttributes,
2518
+ StylableSVGAttributes,
2519
+ TransformableSVGAttributes,
2520
+ Pick<PresentationSVGAttributes, "clip-path"> {
2521
+ cx?: number | string | RemoveAttribute;
2522
+ cy?: number | string | RemoveAttribute;
2523
+ rx?: number | string | RemoveAttribute;
2524
+ ry?: number | string | RemoveAttribute;
2525
+ }
2526
+ interface FeBlendSVGAttributes<T>
2527
+ extends
2528
+ FilterPrimitiveElementSVGAttributes<T>,
2529
+ DoubleInputFilterSVGAttributes,
2530
+ StylableSVGAttributes {
2531
+ mode?: "normal" | "multiply" | "screen" | "darken" | "lighten" | RemoveAttribute;
2532
+ }
2533
+ interface FeColorMatrixSVGAttributes<T>
2534
+ extends
2535
+ FilterPrimitiveElementSVGAttributes<T>,
2536
+ SingleInputFilterSVGAttributes,
2537
+ StylableSVGAttributes {
2538
+ type?: "matrix" | "saturate" | "hueRotate" | "luminanceToAlpha" | RemoveAttribute;
2539
+ values?: string | RemoveAttribute;
2540
+ }
2541
+ interface FeComponentTransferSVGAttributes<T>
2542
+ extends
2543
+ FilterPrimitiveElementSVGAttributes<T>,
2544
+ SingleInputFilterSVGAttributes,
2545
+ StylableSVGAttributes {}
2546
+ interface FeCompositeSVGAttributes<T>
2547
+ extends
2548
+ FilterPrimitiveElementSVGAttributes<T>,
2549
+ DoubleInputFilterSVGAttributes,
2550
+ StylableSVGAttributes {
2551
+ k1?: number | string | RemoveAttribute;
2552
+ k2?: number | string | RemoveAttribute;
2553
+ k3?: number | string | RemoveAttribute;
2554
+ k4?: number | string | RemoveAttribute;
2555
+ operator?: "over" | "in" | "out" | "atop" | "xor" | "arithmetic" | RemoveAttribute;
2556
+ }
2557
+ interface FeConvolveMatrixSVGAttributes<T>
2558
+ extends
2559
+ FilterPrimitiveElementSVGAttributes<T>,
2560
+ SingleInputFilterSVGAttributes,
2561
+ StylableSVGAttributes {
2562
+ bias?: number | string | RemoveAttribute;
2563
+ divisor?: number | string | RemoveAttribute;
2564
+ edgeMode?: "duplicate" | "wrap" | "none" | RemoveAttribute;
2565
+ kernelMatrix?: string | RemoveAttribute;
2566
+ kernelUnitLength?: number | string | RemoveAttribute;
2567
+ order?: number | string | RemoveAttribute;
2568
+ preserveAlpha?: EnumeratedPseudoBoolean | RemoveAttribute;
2569
+ targetX?: number | string | RemoveAttribute;
2570
+ targetY?: number | string | RemoveAttribute;
2571
+ }
2572
+ interface FeDiffuseLightingSVGAttributes<T>
2573
+ extends
2574
+ FilterPrimitiveElementSVGAttributes<T>,
2575
+ SingleInputFilterSVGAttributes,
2576
+ StylableSVGAttributes,
2577
+ Pick<PresentationSVGAttributes, "color" | "lighting-color"> {
2578
+ diffuseConstant?: number | string | RemoveAttribute;
2579
+ kernelUnitLength?: number | string | RemoveAttribute;
2580
+ surfaceScale?: number | string | RemoveAttribute;
2581
+ }
2582
+ interface FeDisplacementMapSVGAttributes<T>
2583
+ extends
2584
+ FilterPrimitiveElementSVGAttributes<T>,
2585
+ DoubleInputFilterSVGAttributes,
2586
+ StylableSVGAttributes {
2587
+ scale?: number | string | RemoveAttribute;
2588
+ xChannelSelector?: "R" | "G" | "B" | "A" | RemoveAttribute;
2589
+ yChannelSelector?: "R" | "G" | "B" | "A" | RemoveAttribute;
2590
+ }
2591
+ interface FeDistantLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
2592
+ azimuth?: number | string | RemoveAttribute;
2593
+ elevation?: number | string | RemoveAttribute;
2594
+ }
2595
+ interface FeDropShadowSVGAttributes<T>
2596
+ extends
2597
+ SVGAttributes<T>,
2598
+ FilterPrimitiveElementSVGAttributes<T>,
2599
+ StylableSVGAttributes,
2600
+ Pick<PresentationSVGAttributes, "color" | "flood-color" | "flood-opacity"> {
2601
+ dx?: number | string | RemoveAttribute;
2602
+ dy?: number | string | RemoveAttribute;
2603
+ stdDeviation?: number | string | RemoveAttribute;
2604
+ }
2605
+ interface FeFloodSVGAttributes<T>
2606
+ extends
2607
+ FilterPrimitiveElementSVGAttributes<T>,
2608
+ StylableSVGAttributes,
2609
+ Pick<PresentationSVGAttributes, "color" | "flood-color" | "flood-opacity"> {}
2610
+ interface FeFuncSVGAttributes<T> extends SVGAttributes<T> {
2611
+ amplitude?: number | string | RemoveAttribute;
2612
+ exponent?: number | string | RemoveAttribute;
2613
+ intercept?: number | string | RemoveAttribute;
2614
+ offset?: number | string | RemoveAttribute;
2615
+ slope?: number | string | RemoveAttribute;
2616
+ tableValues?: string | RemoveAttribute;
2617
+ type?: "identity" | "table" | "discrete" | "linear" | "gamma" | RemoveAttribute;
2618
+ }
2619
+ interface FeGaussianBlurSVGAttributes<T>
2620
+ extends
2621
+ FilterPrimitiveElementSVGAttributes<T>,
2622
+ SingleInputFilterSVGAttributes,
2623
+ StylableSVGAttributes {
2624
+ stdDeviation?: number | string | RemoveAttribute;
2625
+ }
2626
+ interface FeImageSVGAttributes<T>
2627
+ extends
2628
+ FilterPrimitiveElementSVGAttributes<T>,
2629
+ ExternalResourceSVGAttributes,
2630
+ StylableSVGAttributes {
2631
+ href?: string | RemoveAttribute;
2632
+ preserveAspectRatio?: SVGPreserveAspectRatio | RemoveAttribute;
2633
+ }
2634
+ interface FeMergeSVGAttributes<T>
2635
+ extends FilterPrimitiveElementSVGAttributes<T>, StylableSVGAttributes {}
2636
+ interface FeMergeNodeSVGAttributes<T> extends SVGAttributes<T>, SingleInputFilterSVGAttributes {}
2637
+ interface FeMorphologySVGAttributes<T>
2638
+ extends
2639
+ FilterPrimitiveElementSVGAttributes<T>,
2640
+ SingleInputFilterSVGAttributes,
2641
+ StylableSVGAttributes {
2642
+ operator?: "erode" | "dilate" | RemoveAttribute;
2643
+ radius?: number | string | RemoveAttribute;
2644
+ }
2645
+ interface FeOffsetSVGAttributes<T>
2646
+ extends
2647
+ FilterPrimitiveElementSVGAttributes<T>,
2648
+ SingleInputFilterSVGAttributes,
2649
+ StylableSVGAttributes {
2650
+ dx?: number | string | RemoveAttribute;
2651
+ dy?: number | string | RemoveAttribute;
2652
+ }
2653
+ interface FePointLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
2654
+ x?: number | string | RemoveAttribute;
2655
+ y?: number | string | RemoveAttribute;
2656
+ z?: number | string | RemoveAttribute;
2657
+ }
2658
+ interface FeSpecularLightingSVGAttributes<T>
2659
+ extends
2660
+ FilterPrimitiveElementSVGAttributes<T>,
2661
+ SingleInputFilterSVGAttributes,
2662
+ StylableSVGAttributes,
2663
+ Pick<PresentationSVGAttributes, "color" | "lighting-color"> {
2664
+ kernelUnitLength?: number | string | RemoveAttribute;
2665
+ specularConstant?: string | RemoveAttribute;
2666
+ specularExponent?: string | RemoveAttribute;
2667
+ surfaceScale?: string | RemoveAttribute;
2668
+ }
2669
+ interface FeSpotLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
2670
+ limitingConeAngle?: number | string | RemoveAttribute;
2671
+ pointsAtX?: number | string | RemoveAttribute;
2672
+ pointsAtY?: number | string | RemoveAttribute;
2673
+ pointsAtZ?: number | string | RemoveAttribute;
2674
+ specularExponent?: number | string | RemoveAttribute;
2675
+ x?: number | string | RemoveAttribute;
2676
+ y?: number | string | RemoveAttribute;
2677
+ z?: number | string | RemoveAttribute;
2678
+ }
2679
+ interface FeTileSVGAttributes<T>
2680
+ extends
2681
+ FilterPrimitiveElementSVGAttributes<T>,
2682
+ SingleInputFilterSVGAttributes,
2683
+ StylableSVGAttributes {}
2684
+ interface FeTurbulanceSVGAttributes<T>
2685
+ extends FilterPrimitiveElementSVGAttributes<T>, StylableSVGAttributes {
2686
+ baseFrequency?: number | string | RemoveAttribute;
2687
+ numOctaves?: number | string | RemoveAttribute;
2688
+ seed?: number | string | RemoveAttribute;
2689
+ stitchTiles?: "stitch" | "noStitch" | RemoveAttribute;
2690
+ type?: "fractalNoise" | "turbulence" | RemoveAttribute;
2691
+ }
2692
+ interface FilterSVGAttributes<T>
2693
+ extends SVGAttributes<T>, ExternalResourceSVGAttributes, StylableSVGAttributes {
2694
+ filterRes?: number | string | RemoveAttribute;
2695
+ filterUnits?: SVGUnits | RemoveAttribute;
2696
+ height?: number | string | RemoveAttribute;
2697
+ primitiveUnits?: SVGUnits | RemoveAttribute;
2698
+ width?: number | string | RemoveAttribute;
2699
+ x?: number | string | RemoveAttribute;
2700
+ y?: number | string | RemoveAttribute;
2701
+ }
2702
+ interface ForeignObjectSVGAttributes<T>
2703
+ extends
2704
+ NewViewportSVGAttributes<T>,
2705
+ ConditionalProcessingSVGAttributes,
2706
+ ExternalResourceSVGAttributes,
2707
+ StylableSVGAttributes,
2708
+ TransformableSVGAttributes,
2709
+ Pick<PresentationSVGAttributes, "display" | "visibility"> {
2710
+ height?: number | string | RemoveAttribute;
2711
+ width?: number | string | RemoveAttribute;
2712
+ x?: number | string | RemoveAttribute;
2713
+ y?: number | string | RemoveAttribute;
2714
+ }
2715
+ interface GSVGAttributes<T>
2716
+ extends
2717
+ ContainerElementSVGAttributes<T>,
2718
+ ConditionalProcessingSVGAttributes,
2719
+ ExternalResourceSVGAttributes,
2720
+ StylableSVGAttributes,
2721
+ TransformableSVGAttributes,
2722
+ Pick<PresentationSVGAttributes, "clip-path" | "display" | "visibility"> {}
2723
+ interface ImageSVGAttributes<T>
2724
+ extends
2725
+ NewViewportSVGAttributes<T>,
2726
+ GraphicsElementSVGAttributes<T>,
2727
+ ConditionalProcessingSVGAttributes,
2728
+ StylableSVGAttributes,
2729
+ TransformableSVGAttributes,
2730
+ Pick<PresentationSVGAttributes, "clip-path" | "color-profile" | "image-rendering"> {
2731
+ height?: number | string | RemoveAttribute;
2732
+ href?: string | RemoveAttribute;
2733
+ preserveAspectRatio?: ImagePreserveAspectRatio | RemoveAttribute;
2734
+ width?: number | string | RemoveAttribute;
2735
+ x?: number | string | RemoveAttribute;
2736
+ y?: number | string | RemoveAttribute;
2737
+ }
2738
+ interface LineSVGAttributes<T>
2739
+ extends
2740
+ GraphicsElementSVGAttributes<T>,
2741
+ ShapeElementSVGAttributes<T>,
2742
+ ConditionalProcessingSVGAttributes,
2743
+ ExternalResourceSVGAttributes,
2744
+ StylableSVGAttributes,
2745
+ TransformableSVGAttributes,
2746
+ Pick<PresentationSVGAttributes, "clip-path" | "marker-start" | "marker-mid" | "marker-end"> {
2747
+ x1?: number | string | RemoveAttribute;
2748
+ x2?: number | string | RemoveAttribute;
2749
+ y1?: number | string | RemoveAttribute;
2750
+ y2?: number | string | RemoveAttribute;
2751
+ }
2752
+ interface LinearGradientSVGAttributes<T> extends GradientElementSVGAttributes<T> {
2753
+ x1?: number | string | RemoveAttribute;
2754
+ x2?: number | string | RemoveAttribute;
2755
+ y1?: number | string | RemoveAttribute;
2756
+ y2?: number | string | RemoveAttribute;
2757
+ }
2758
+ interface MarkerSVGAttributes<T>
2759
+ extends
2760
+ ContainerElementSVGAttributes<T>,
2761
+ ExternalResourceSVGAttributes,
2762
+ StylableSVGAttributes,
2763
+ FitToViewBoxSVGAttributes,
2764
+ Pick<PresentationSVGAttributes, "clip-path" | "overflow" | "clip"> {
2765
+ markerHeight?: number | string | RemoveAttribute;
2766
+ markerUnits?: "strokeWidth" | "userSpaceOnUse" | RemoveAttribute;
2767
+ markerWidth?: number | string | RemoveAttribute;
2768
+ orient?: string | RemoveAttribute;
2769
+ refX?: number | string | RemoveAttribute;
2770
+ refY?: number | string | RemoveAttribute;
2771
+ }
2772
+ interface MaskSVGAttributes<T>
2773
+ extends
2774
+ Omit<ContainerElementSVGAttributes<T>, "opacity" | "filter">,
2775
+ ConditionalProcessingSVGAttributes,
2776
+ ExternalResourceSVGAttributes,
2777
+ StylableSVGAttributes,
2778
+ Pick<PresentationSVGAttributes, "clip-path"> {
2779
+ height?: number | string | RemoveAttribute;
2780
+ maskContentUnits?: SVGUnits | RemoveAttribute;
2781
+ maskUnits?: SVGUnits | RemoveAttribute;
2782
+ width?: number | string | RemoveAttribute;
2783
+ x?: number | string | RemoveAttribute;
2784
+ y?: number | string | RemoveAttribute;
2785
+ }
2786
+ interface MetadataSVGAttributes<T> extends SVGAttributes<T> {}
2787
+ interface MPathSVGAttributes<T> extends SVGAttributes<T> {}
2788
+ interface PathSVGAttributes<T>
2789
+ extends
2790
+ GraphicsElementSVGAttributes<T>,
2791
+ ShapeElementSVGAttributes<T>,
2792
+ ConditionalProcessingSVGAttributes,
2793
+ ExternalResourceSVGAttributes,
2794
+ StylableSVGAttributes,
2795
+ TransformableSVGAttributes,
2796
+ Pick<PresentationSVGAttributes, "clip-path" | "marker-start" | "marker-mid" | "marker-end"> {
2797
+ d?: string | RemoveAttribute;
2798
+ pathLength?: number | string | RemoveAttribute;
2799
+ }
2800
+ interface PatternSVGAttributes<T>
2801
+ extends
2802
+ ContainerElementSVGAttributes<T>,
2803
+ ConditionalProcessingSVGAttributes,
2804
+ ExternalResourceSVGAttributes,
2805
+ StylableSVGAttributes,
2806
+ FitToViewBoxSVGAttributes,
2807
+ Pick<PresentationSVGAttributes, "clip-path" | "overflow" | "clip"> {
2808
+ height?: number | string | RemoveAttribute;
2809
+ href?: string | RemoveAttribute;
2810
+ patternContentUnits?: SVGUnits | RemoveAttribute;
2811
+ patternTransform?: string | RemoveAttribute;
2812
+ patternUnits?: SVGUnits | RemoveAttribute;
2813
+ width?: number | string | RemoveAttribute;
2814
+ x?: number | string | RemoveAttribute;
2815
+ y?: number | string | RemoveAttribute;
2816
+ }
2817
+ interface PolygonSVGAttributes<T>
2818
+ extends
2819
+ GraphicsElementSVGAttributes<T>,
2820
+ ShapeElementSVGAttributes<T>,
2821
+ ConditionalProcessingSVGAttributes,
2822
+ ExternalResourceSVGAttributes,
2823
+ StylableSVGAttributes,
2824
+ TransformableSVGAttributes,
2825
+ Pick<PresentationSVGAttributes, "clip-path" | "marker-start" | "marker-mid" | "marker-end"> {
2826
+ points?: string | RemoveAttribute;
2827
+ }
2828
+ interface PolylineSVGAttributes<T>
2829
+ extends
2830
+ GraphicsElementSVGAttributes<T>,
2831
+ ShapeElementSVGAttributes<T>,
2832
+ ConditionalProcessingSVGAttributes,
2833
+ ExternalResourceSVGAttributes,
2834
+ StylableSVGAttributes,
2835
+ TransformableSVGAttributes,
2836
+ Pick<PresentationSVGAttributes, "clip-path" | "marker-start" | "marker-mid" | "marker-end"> {
2837
+ points?: string | RemoveAttribute;
2838
+ }
2839
+ interface RadialGradientSVGAttributes<T> extends GradientElementSVGAttributes<T> {
2840
+ cx?: number | string | RemoveAttribute;
2841
+ cy?: number | string | RemoveAttribute;
2842
+ fx?: number | string | RemoveAttribute;
2843
+ fy?: number | string | RemoveAttribute;
2844
+ r?: number | string | RemoveAttribute;
2845
+ }
2846
+ interface RectSVGAttributes<T>
2847
+ extends
2848
+ GraphicsElementSVGAttributes<T>,
2849
+ ShapeElementSVGAttributes<T>,
2850
+ ConditionalProcessingSVGAttributes,
2851
+ ExternalResourceSVGAttributes,
2852
+ StylableSVGAttributes,
2853
+ TransformableSVGAttributes,
2854
+ Pick<PresentationSVGAttributes, "clip-path"> {
2855
+ height?: number | string | RemoveAttribute;
2856
+ rx?: number | string | RemoveAttribute;
2857
+ ry?: number | string | RemoveAttribute;
2858
+ width?: number | string | RemoveAttribute;
2859
+ x?: number | string | RemoveAttribute;
2860
+ y?: number | string | RemoveAttribute;
2861
+ }
2862
+ interface SetSVGAttributes<T>
2863
+ extends AnimationElementSVGAttributes<T>, StylableSVGAttributes, AnimationTimingSVGAttributes {}
2864
+ interface StopSVGAttributes<T>
2865
+ extends
2866
+ SVGAttributes<T>,
2867
+ StylableSVGAttributes,
2868
+ Pick<PresentationSVGAttributes, "color" | "stop-color" | "stop-opacity"> {
2869
+ offset?: number | string | RemoveAttribute;
2870
+ }
2871
+ interface SvgSVGAttributes<T>
2872
+ extends
2873
+ ContainerElementSVGAttributes<T>,
2874
+ NewViewportSVGAttributes<T>,
2875
+ ConditionalProcessingSVGAttributes,
2876
+ ExternalResourceSVGAttributes,
2877
+ StylableSVGAttributes,
2878
+ FitToViewBoxSVGAttributes,
2879
+ ZoomAndPanSVGAttributes,
2880
+ PresentationSVGAttributes,
2881
+ EventHandlersWindow<T> {
2882
+ "xmlns:xlink"?: string | RemoveAttribute;
2883
+ contentScriptType?: string | RemoveAttribute;
2884
+ contentStyleType?: string | RemoveAttribute;
2885
+ height?: number | string | RemoveAttribute;
2886
+ width?: number | string | RemoveAttribute;
2887
+ x?: number | string | RemoveAttribute;
2888
+ y?: number | string | RemoveAttribute;
2889
+
2890
+ /** @deprecated */
2891
+ baseProfile?: string | RemoveAttribute;
2892
+ /** @deprecated */
2893
+ version?: string | RemoveAttribute;
2894
+ }
2895
+ interface SwitchSVGAttributes<T>
2896
+ extends
2897
+ ContainerElementSVGAttributes<T>,
2898
+ ConditionalProcessingSVGAttributes,
2899
+ ExternalResourceSVGAttributes,
2900
+ StylableSVGAttributes,
2901
+ TransformableSVGAttributes,
2902
+ Pick<PresentationSVGAttributes, "display" | "visibility"> {}
2903
+ interface SymbolSVGAttributes<T>
2904
+ extends
2905
+ ContainerElementSVGAttributes<T>,
2906
+ NewViewportSVGAttributes<T>,
2907
+ ExternalResourceSVGAttributes,
2908
+ StylableSVGAttributes,
2909
+ FitToViewBoxSVGAttributes,
2910
+ Pick<PresentationSVGAttributes, "clip-path"> {
2911
+ height?: number | string | RemoveAttribute;
2912
+ preserveAspectRatio?: SVGPreserveAspectRatio | RemoveAttribute;
2913
+ refX?: number | string | RemoveAttribute;
2914
+ refY?: number | string | RemoveAttribute;
2915
+ viewBox?: string | RemoveAttribute;
2916
+ width?: number | string | RemoveAttribute;
2917
+ x?: number | string | RemoveAttribute;
2918
+ y?: number | string | RemoveAttribute;
2919
+ }
2920
+ interface TextSVGAttributes<T>
2921
+ extends
2922
+ TextContentElementSVGAttributes<T>,
2923
+ GraphicsElementSVGAttributes<T>,
2924
+ ConditionalProcessingSVGAttributes,
2925
+ ExternalResourceSVGAttributes,
2926
+ StylableSVGAttributes,
2927
+ TransformableSVGAttributes,
2928
+ Pick<PresentationSVGAttributes, "clip-path" | "writing-mode" | "text-rendering"> {
2929
+ dx?: number | string | RemoveAttribute;
2930
+ dy?: number | string | RemoveAttribute;
2931
+ lengthAdjust?: "spacing" | "spacingAndGlyphs" | RemoveAttribute;
2932
+ rotate?: number | string | RemoveAttribute;
2933
+ textLength?: number | string | RemoveAttribute;
2934
+ x?: number | string | RemoveAttribute;
2935
+ y?: number | string | RemoveAttribute;
2936
+ }
2937
+ interface TextPathSVGAttributes<T>
2938
+ extends
2939
+ TextContentElementSVGAttributes<T>,
2940
+ ConditionalProcessingSVGAttributes,
2941
+ ExternalResourceSVGAttributes,
2942
+ StylableSVGAttributes,
2943
+ Pick<
2944
+ PresentationSVGAttributes,
2945
+ "alignment-baseline" | "baseline-shift" | "display" | "visibility"
2946
+ > {
2947
+ href?: string | RemoveAttribute;
2948
+ method?: "align" | "stretch" | RemoveAttribute;
2949
+ spacing?: "auto" | "exact" | RemoveAttribute;
2950
+ startOffset?: number | string | RemoveAttribute;
2951
+ }
2952
+ interface TSpanSVGAttributes<T>
2953
+ extends
2954
+ TextContentElementSVGAttributes<T>,
2955
+ ConditionalProcessingSVGAttributes,
2956
+ ExternalResourceSVGAttributes,
2957
+ StylableSVGAttributes,
2958
+ Pick<
2959
+ PresentationSVGAttributes,
2960
+ "alignment-baseline" | "baseline-shift" | "display" | "visibility"
2961
+ > {
2962
+ dx?: number | string | RemoveAttribute;
2963
+ dy?: number | string | RemoveAttribute;
2964
+ lengthAdjust?: "spacing" | "spacingAndGlyphs" | RemoveAttribute;
2965
+ rotate?: number | string | RemoveAttribute;
2966
+ textLength?: number | string | RemoveAttribute;
2967
+ x?: number | string | RemoveAttribute;
2968
+ y?: number | string | RemoveAttribute;
2969
+ }
2970
+ /** @see https://developer.mozilla.org/en-US/docs/Web/SVG/Element/use */
2971
+ interface UseSVGAttributes<T>
2972
+ extends
2973
+ SVGAttributes<T>,
2974
+ StylableSVGAttributes,
2975
+ ConditionalProcessingSVGAttributes,
2976
+ GraphicsElementSVGAttributes<T>,
2977
+ PresentationSVGAttributes,
2978
+ ExternalResourceSVGAttributes,
2979
+ TransformableSVGAttributes {
2980
+ height?: number | string | RemoveAttribute;
2981
+ href?: string | RemoveAttribute;
2982
+ width?: number | string | RemoveAttribute;
2983
+ x?: number | string | RemoveAttribute;
2984
+ y?: number | string | RemoveAttribute;
2985
+ }
2986
+ interface ViewSVGAttributes<T>
2987
+ extends
2988
+ SVGAttributes<T>,
2989
+ ExternalResourceSVGAttributes,
2990
+ FitToViewBoxSVGAttributes,
2991
+ ZoomAndPanSVGAttributes {
2992
+ viewTarget?: string | RemoveAttribute;
2993
+ }
2994
+
2995
+ // MATH
2996
+
2997
+ interface MathMLAnnotationElementAttributes<T> extends MathMLAttributes<T> {
2998
+ encoding?: string | RemoveAttribute;
2999
+
3000
+ /** @deprecated */
3001
+ src?: string | RemoveAttribute;
3002
+ }
3003
+ interface MathMLAnnotationXmlElementAttributes<T> extends MathMLAttributes<T> {
3004
+ encoding?: string | RemoveAttribute;
3005
+
3006
+ /** @deprecated */
3007
+ src?: string | RemoveAttribute;
3008
+ }
3009
+ interface MathMLMactionElementAttributes<T> extends MathMLAttributes<T> {
3010
+ /**
3011
+ * @deprecated
3012
+ * @non-standard
3013
+ */
3014
+ actiontype?: "statusline" | "toggle" | RemoveAttribute;
3015
+ /**
3016
+ * @deprecated
3017
+ * @non-standard
3018
+ */
3019
+ selection?: string | RemoveAttribute;
3020
+ }
3021
+ interface MathMLMathElementAttributes<T> extends MathMLAttributes<T> {
3022
+ display?: "block" | "inline" | RemoveAttribute;
3023
+ }
3024
+ interface MathMLMerrorElementAttributes<T> extends MathMLAttributes<T> {}
3025
+ interface MathMLMfracElementAttributes<T> extends MathMLAttributes<T> {
3026
+ linethickness?: string | RemoveAttribute;
3027
+
3028
+ /**
3029
+ * @deprecated
3030
+ * @non-standard
3031
+ */
3032
+ denomalign?: "center" | "left" | "right" | RemoveAttribute;
3033
+ /**
3034
+ * @deprecated
3035
+ * @non-standard
3036
+ */
3037
+ numalign?: "center" | "left" | "right" | RemoveAttribute;
3038
+ }
3039
+ interface MathMLMiElementAttributes<T> extends MathMLAttributes<T> {
3040
+ mathvariant?: "normal" | RemoveAttribute;
3041
+ }
3042
+
3043
+ interface MathMLMmultiscriptsElementAttributes<T> extends MathMLAttributes<T> {
3044
+ /**
3045
+ * @deprecated
3046
+ * @non-standard
3047
+ */
3048
+ subscriptshift?: string | RemoveAttribute;
3049
+ /**
3050
+ * @deprecated
3051
+ * @non-standard
3052
+ */
3053
+ superscriptshift?: string | RemoveAttribute;
3054
+ }
3055
+ interface MathMLMnElementAttributes<T> extends MathMLAttributes<T> {}
3056
+ interface MathMLMoElementAttributes<T> extends MathMLAttributes<T> {
3057
+ fence?: BooleanAttribute | RemoveAttribute;
3058
+ form?: "prefix" | "infix" | "postfix" | RemoveAttribute;
3059
+ largeop?: BooleanAttribute | RemoveAttribute;
3060
+ lspace?: string | RemoveAttribute;
3061
+ maxsize?: string | RemoveAttribute;
3062
+ minsize?: string | RemoveAttribute;
3063
+ movablelimits?: BooleanAttribute | RemoveAttribute;
3064
+ rspace?: string | RemoveAttribute;
3065
+ separator?: BooleanAttribute | RemoveAttribute;
3066
+ stretchy?: BooleanAttribute | RemoveAttribute;
3067
+ symmetric?: BooleanAttribute | RemoveAttribute;
3068
+
3069
+ /** @non-standard */
3070
+ accent?: BooleanAttribute | RemoveAttribute;
3071
+ }
3072
+ interface MathMLMoverElementAttributes<T> extends MathMLAttributes<T> {
3073
+ accent?: BooleanAttribute | RemoveAttribute;
3074
+ }
3075
+ interface MathMLMpaddedElementAttributes<T> extends MathMLAttributes<T> {
3076
+ depth?: string | RemoveAttribute;
3077
+ height?: string | RemoveAttribute;
3078
+ lspace?: string | RemoveAttribute;
3079
+ voffset?: string | RemoveAttribute;
3080
+ width?: string | RemoveAttribute;
3081
+ }
3082
+ interface MathMLMphantomElementAttributes<T> extends MathMLAttributes<T> {}
3083
+ interface MathMLMprescriptsElementAttributes<T> extends MathMLAttributes<T> {}
3084
+ interface MathMLMrootElementAttributes<T> extends MathMLAttributes<T> {}
3085
+ interface MathMLMrowElementAttributes<T> extends MathMLAttributes<T> {}
3086
+ interface MathMLMsElementAttributes<T> extends MathMLAttributes<T> {
3087
+ /** @deprecated */
3088
+ lquote?: string | RemoveAttribute;
3089
+ /** @deprecated */
3090
+ rquote?: string | RemoveAttribute;
3091
+ }
3092
+ interface MathMLMspaceElementAttributes<T> extends MathMLAttributes<T> {
3093
+ depth?: string | RemoveAttribute;
3094
+ height?: string | RemoveAttribute;
3095
+ width?: string | RemoveAttribute;
3096
+ }
3097
+ interface MathMLMsqrtElementAttributes<T> extends MathMLAttributes<T> {}
3098
+ interface MathMLMstyleElementAttributes<T> extends MathMLAttributes<T> {
3099
+ /**
3100
+ * @deprecated
3101
+ * @non-standard
3102
+ */
3103
+ background?: string | RemoveAttribute;
3104
+ /**
3105
+ * @deprecated
3106
+ * @non-standard
3107
+ */
3108
+ color?: string | RemoveAttribute;
3109
+ /**
3110
+ * @deprecated
3111
+ * @non-standard
3112
+ */
3113
+ fontsize?: string | RemoveAttribute;
3114
+ /**
3115
+ * @deprecated
3116
+ * @non-standard
3117
+ */
3118
+ fontstyle?: string | RemoveAttribute;
3119
+ /**
3120
+ * @deprecated
3121
+ * @non-standard
3122
+ */
3123
+ fontweight?: string | RemoveAttribute;
3124
+
3125
+ /** @deprecated */
3126
+ scriptminsize?: string | RemoveAttribute;
3127
+ /** @deprecated */
3128
+ scriptsizemultiplier?: string | RemoveAttribute;
3129
+ }
3130
+ interface MathMLMsubElementAttributes<T> extends MathMLAttributes<T> {
3131
+ /**
3132
+ * @deprecated
3133
+ * @non-standard
3134
+ */
3135
+ subscriptshift?: string | RemoveAttribute;
3136
+ }
3137
+ interface MathMLMsubsupElementAttributes<T> extends MathMLAttributes<T> {
3138
+ /**
3139
+ * @deprecated
3140
+ * @non-standard
3141
+ */
3142
+ subscriptshift?: string | RemoveAttribute;
3143
+ /**
3144
+ * @deprecated
3145
+ * @non-standard
3146
+ */
3147
+ superscriptshift?: string | RemoveAttribute;
3148
+ }
3149
+ interface MathMLMsupElementAttributes<T> extends MathMLAttributes<T> {
3150
+ /**
3151
+ * @deprecated
3152
+ * @non-standard
3153
+ */
3154
+ superscriptshift?: string | RemoveAttribute;
3155
+ }
3156
+ interface MathMLMtableElementAttributes<T> extends MathMLAttributes<T> {
3157
+ /** @non-standard */
3158
+ align?: "axis" | "baseline" | "bottom" | "center" | "top" | RemoveAttribute;
3159
+ /** @non-standard */
3160
+ columnalign?: "center" | "left" | "right" | RemoveAttribute;
3161
+ /** @non-standard */
3162
+ columnlines?: "dashed" | "none" | "solid" | RemoveAttribute;
3163
+ /** @non-standard */
3164
+ columnspacing?: string | RemoveAttribute;
3165
+ /** @non-standard */
3166
+ frame?: "dashed" | "none" | "solid" | RemoveAttribute;
3167
+ /** @non-standard */
3168
+ framespacing?: string | RemoveAttribute;
3169
+ /** @non-standard */
3170
+ rowalign?: "axis" | "baseline" | "bottom" | "center" | "top" | RemoveAttribute;
3171
+ /** @non-standard */
3172
+ rowlines?: "dashed" | "none" | "solid" | RemoveAttribute;
3173
+ /** @non-standard */
3174
+ rowspacing?: string | RemoveAttribute;
3175
+ /** @non-standard */
3176
+ width?: string | RemoveAttribute;
3177
+ }
3178
+ interface MathMLMtdElementAttributes<T> extends MathMLAttributes<T> {
3179
+ columnspan?: number | string | RemoveAttribute;
3180
+ rowspan?: number | string | RemoveAttribute;
3181
+ /** @non-standard */
3182
+ columnalign?: "center" | "left" | "right" | RemoveAttribute;
3183
+ /** @non-standard */
3184
+ rowalign?: "axis" | "baseline" | "bottom" | "center" | "top" | RemoveAttribute;
3185
+ }
3186
+ interface MathMLMtextElementAttributes<T> extends MathMLAttributes<T> {}
3187
+ interface MathMLMtrElementAttributes<T> extends MathMLAttributes<T> {
3188
+ /** @non-standard */
3189
+ columnalign?: "center" | "left" | "right" | RemoveAttribute;
3190
+ /** @non-standard */
3191
+ rowalign?: "axis" | "baseline" | "bottom" | "center" | "top" | RemoveAttribute;
3192
+ }
3193
+ interface MathMLMunderElementAttributes<T> extends MathMLAttributes<T> {
3194
+ accentunder?: BooleanAttribute | RemoveAttribute;
3195
+ }
3196
+ interface MathMLMunderoverElementAttributes<T> extends MathMLAttributes<T> {
3197
+ accent?: BooleanAttribute | RemoveAttribute;
3198
+ accentunder?: BooleanAttribute | RemoveAttribute;
3199
+ }
3200
+ interface MathMLSemanticsElementAttributes<T> extends MathMLAttributes<T> {}
3201
+
3202
+ interface MathMLMencloseElementAttributes<T> extends MathMLAttributes<T> {
3203
+ /** @non-standard */
3204
+ notation?: string | RemoveAttribute;
3205
+ }
3206
+ interface MathMLMfencedElementAttributes<T> extends MathMLAttributes<T> {
3207
+ close?: string | RemoveAttribute;
3208
+ open?: string | RemoveAttribute;
3209
+ separators?: string | RemoveAttribute;
3210
+ }
3211
+
3212
+ // TAGS
3213
+
3214
+ /** @type {HTMLElementTagNameMap} */
3215
+ interface HTMLElementTags {
3216
+ /**
3217
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a
3218
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement
3219
+ */
3220
+ a: AnchorHTMLAttributes<HTMLAnchorElement> & Properties<HTMLAnchorElement>;
3221
+ /**
3222
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/abbr
3223
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3224
+ */
3225
+ abbr: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3226
+ /**
3227
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/address
3228
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3229
+ */
3230
+ address: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3231
+ /**
3232
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/area
3233
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLAreaElement
3234
+ */
3235
+ area: AreaHTMLAttributes<HTMLAreaElement> & Properties<HTMLAreaElement>;
3236
+ /**
3237
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/article
3238
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3239
+ */
3240
+ article: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3241
+ /**
3242
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/aside
3243
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3244
+ */
3245
+ aside: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3246
+ /**
3247
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio
3248
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement
3249
+ */
3250
+ audio: AudioHTMLAttributes<HTMLAudioElement> & Properties<HTMLAudioElement>;
3251
+ /**
3252
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/b
3253
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3254
+ */
3255
+ b: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3256
+ /**
3257
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base
3258
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLBaseElement
3259
+ */
3260
+ base: BaseHTMLAttributes<HTMLBaseElement> & Properties<HTMLBaseElement>;
3261
+ /**
3262
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdi
3263
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3264
+ */
3265
+ bdi: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3266
+ /**
3267
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdo
3268
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3269
+ */
3270
+ bdo: BdoHTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3271
+ /**
3272
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/blockquote
3273
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLQuoteElement
3274
+ */
3275
+ blockquote: BlockquoteHTMLAttributes<HTMLQuoteElement> & Properties<HTMLQuoteElement>;
3276
+ /**
3277
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/body
3278
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLBodyElement
3279
+ */
3280
+ body: BodyHTMLAttributes<HTMLBodyElement> & Properties<HTMLBodyElement>;
3281
+ /**
3282
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/br
3283
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLBRElement
3284
+ */
3285
+ br: HTMLAttributes<HTMLBRElement> & Properties<HTMLBRElement>;
3286
+ /**
3287
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button
3288
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLButtonElement
3289
+ */
3290
+ button: ButtonHTMLAttributes<HTMLButtonElement> & Properties<HTMLButtonElement>;
3291
+ /**
3292
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas
3293
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement
3294
+ */
3295
+ canvas: CanvasHTMLAttributes<HTMLCanvasElement> & Properties<HTMLCanvasElement>;
3296
+ /**
3297
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/caption
3298
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableCaptionElement
3299
+ */
3300
+ caption: CaptionHTMLAttributes<HTMLTableCaptionElement> & Properties<HTMLTableCaptionElement>;
3301
+ /**
3302
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/cite
3303
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3304
+ */
3305
+ cite: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3306
+ /**
3307
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/code
3308
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3309
+ */
3310
+ code: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3311
+ /**
3312
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col
3313
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableColElement
3314
+ */
3315
+ col: ColHTMLAttributes<HTMLTableColElement> & Properties<HTMLTableColElement>;
3316
+ /**
3317
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup
3318
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableColElement
3319
+ */
3320
+ colgroup: ColgroupHTMLAttributes<HTMLTableColElement> & Properties<HTMLTableColElement>;
3321
+ /**
3322
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/data
3323
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLDataElement
3324
+ */
3325
+ data: DataHTMLAttributes<HTMLDataElement> & Properties<HTMLDataElement>;
3326
+ /**
3327
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist
3328
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLDataListElement
3329
+ */
3330
+ datalist: HTMLAttributes<HTMLDataListElement> & Properties<HTMLDataListElement>;
3331
+ /**
3332
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dd
3333
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3334
+ */
3335
+ dd: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3336
+ /**
3337
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/del
3338
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLModElement
3339
+ */
3340
+ del: ModHTMLAttributes<HTMLModElement> & Properties<HTMLModElement>;
3341
+ /**
3342
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details
3343
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLDetailsElement
3344
+ */
3345
+ details: DetailsHtmlAttributes<HTMLDetailsElement> & Properties<HTMLDetailsElement>;
3346
+ /**
3347
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dfn
3348
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3349
+ */
3350
+ dfn: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3351
+ /**
3352
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog
3353
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement
3354
+ */
3355
+ dialog: DialogHtmlAttributes<HTMLDialogElement> & Properties<HTMLDialogElement>;
3356
+ /**
3357
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/div
3358
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLDivElement
3359
+ */
3360
+ div: HTMLAttributes<HTMLDivElement> & Properties<HTMLDivElement>;
3361
+ /**
3362
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dl
3363
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLDListElement
3364
+ */
3365
+ dl: HTMLAttributes<HTMLDListElement> & Properties<HTMLDListElement>;
3366
+ /**
3367
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dt
3368
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3369
+ */
3370
+ dt: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3371
+ /**
3372
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/em
3373
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3374
+ */
3375
+ em: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3376
+ /**
3377
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/embed
3378
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLEmbedElement
3379
+ */
3380
+ embed: EmbedHTMLAttributes<HTMLEmbedElement> & Properties<HTMLEmbedElement>;
3381
+ /**
3382
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset
3383
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLFieldSetElement
3384
+ */
3385
+ fieldset: FieldsetHTMLAttributes<HTMLFieldSetElement> & Properties<HTMLFieldSetElement>;
3386
+ /**
3387
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/figcaption
3388
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3389
+ */
3390
+ figcaption: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3391
+ /**
3392
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/figure
3393
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3394
+ */
3395
+ figure: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3396
+ /**
3397
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/footer
3398
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3399
+ */
3400
+ footer: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3401
+ /**
3402
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form
3403
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement
3404
+ */
3405
+ form: FormHTMLAttributes<HTMLFormElement> & Properties<HTMLFormElement>;
3406
+ /**
3407
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h1
3408
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHeadingElement
3409
+ */
3410
+ h1: HTMLAttributes<HTMLHeadingElement> & Properties<HTMLHeadingElement>;
3411
+ /**
3412
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h2
3413
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHeadingElement
3414
+ */
3415
+ h2: HTMLAttributes<HTMLHeadingElement> & Properties<HTMLHeadingElement>;
3416
+ /**
3417
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h3
3418
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHeadingElement
3419
+ */
3420
+ h3: HTMLAttributes<HTMLHeadingElement> & Properties<HTMLHeadingElement>;
3421
+ /**
3422
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h4
3423
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHeadingElement
3424
+ */
3425
+ h4: HTMLAttributes<HTMLHeadingElement> & Properties<HTMLHeadingElement>;
3426
+ /**
3427
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h5
3428
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHeadingElement
3429
+ */
3430
+ h5: HTMLAttributes<HTMLHeadingElement> & Properties<HTMLHeadingElement>;
3431
+ /**
3432
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h6
3433
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHeadingElement
3434
+ */
3435
+ h6: HTMLAttributes<HTMLHeadingElement> & Properties<HTMLHeadingElement>;
3436
+ /**
3437
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/head
3438
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHeadElement
3439
+ */
3440
+ head: HTMLAttributes<HTMLHeadElement> & Properties<HTMLHeadElement>;
3441
+ /**
3442
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/header
3443
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3444
+ */
3445
+ header: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3446
+ /**
3447
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/hgroup
3448
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3449
+ */
3450
+ hgroup: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3451
+ /**
3452
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/hr
3453
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHRElement
3454
+ */
3455
+ hr: HTMLAttributes<HTMLHRElement> & Properties<HTMLHRElement>;
3456
+ /**
3457
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/html
3458
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLHtmlElement
3459
+ */
3460
+ html: HTMLAttributes<HTMLHtmlElement> & Properties<HTMLHtmlElement>;
3461
+ /**
3462
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/i
3463
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3464
+ */
3465
+ i: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3466
+ /**
3467
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
3468
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement
3469
+ */
3470
+ iframe: IframeHTMLAttributes<HTMLIFrameElement> & Properties<HTMLIFrameElement>;
3471
+ /**
3472
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img
3473
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement
3474
+ */
3475
+ img: ImgHTMLAttributes<HTMLImageElement> & Properties<HTMLImageElement>;
3476
+ /**
3477
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input
3478
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement
3479
+ */
3480
+ input: InputHTMLAttributes<HTMLInputElement> & Properties<HTMLInputElement>;
3481
+ /**
3482
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ins
3483
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLModElement
3484
+ */
3485
+ ins: ModHTMLAttributes<HTMLModElement> & Properties<HTMLModElement>;
3486
+ /**
3487
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/kbd
3488
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3489
+ */
3490
+ kbd: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3491
+ /**
3492
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label
3493
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLLabelElement
3494
+ */
3495
+ label: LabelHTMLAttributes<HTMLLabelElement> & Properties<HTMLLabelElement>;
3496
+ /**
3497
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend
3498
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLLegendElement
3499
+ */
3500
+ legend: HTMLAttributes<HTMLLegendElement> & Properties<HTMLLegendElement>;
3501
+ /**
3502
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li
3503
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLLIElement
3504
+ */
3505
+ li: LiHTMLAttributes<HTMLLIElement> & Properties<HTMLLIElement>;
3506
+ /**
3507
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link
3508
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLLinkElement
3509
+ */
3510
+ link: LinkHTMLAttributes<HTMLLinkElement> & Properties<HTMLLinkElement>;
3511
+ /**
3512
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/main
3513
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3514
+ */
3515
+ main: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3516
+ /**
3517
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map
3518
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLMapElement
3519
+ */
3520
+ map: MapHTMLAttributes<HTMLMapElement> & Properties<HTMLMapElement>;
3521
+ /**
3522
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/mark
3523
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3524
+ */
3525
+ mark: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3526
+ /**
3527
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu
3528
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLMenuElement
3529
+ */
3530
+ menu: MenuHTMLAttributes<HTMLMenuElement> & Properties<HTMLMenuElement>;
3531
+ /**
3532
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta
3533
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLMetaElement
3534
+ */
3535
+ meta: MetaHTMLAttributes<HTMLMetaElement> & Properties<HTMLMetaElement>;
3536
+ /**
3537
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meter
3538
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLMeterElement
3539
+ */
3540
+ meter: MeterHTMLAttributes<HTMLMeterElement> & Properties<HTMLMeterElement>;
3541
+ /**
3542
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/nav
3543
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3544
+ */
3545
+ nav: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3546
+ /**
3547
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/noscript
3548
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3549
+ */
3550
+ noscript: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3551
+ /**
3552
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/object
3553
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLObjectElement
3554
+ */
3555
+ object: ObjectHTMLAttributes<HTMLObjectElement> & Properties<HTMLObjectElement>;
3556
+ /**
3557
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol
3558
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLOListElement
3559
+ */
3560
+ ol: OlHTMLAttributes<HTMLOListElement> & Properties<HTMLOListElement>;
3561
+ /**
3562
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/optgroup
3563
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLOptGroupElement
3564
+ */
3565
+ optgroup: OptgroupHTMLAttributes<HTMLOptGroupElement> & Properties<HTMLOptGroupElement>;
3566
+ /**
3567
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/option
3568
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLOptionElement
3569
+ */
3570
+ option: OptionHTMLAttributes<HTMLOptionElement> & Properties<HTMLOptionElement>;
3571
+ /**
3572
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/output
3573
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLOutputElement
3574
+ */
3575
+ output: OutputHTMLAttributes<HTMLOutputElement> & Properties<HTMLOutputElement>;
3576
+ /**
3577
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/p
3578
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLParagraphElement
3579
+ */
3580
+ p: HTMLAttributes<HTMLParagraphElement> & Properties<HTMLParagraphElement>;
3581
+ /**
3582
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture
3583
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLPictureElement
3584
+ */
3585
+ picture: HTMLAttributes<HTMLPictureElement> & Properties<HTMLPictureElement>;
3586
+ /**
3587
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/pre
3588
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLPreElement
3589
+ */
3590
+ pre: HTMLAttributes<HTMLPreElement> & Properties<HTMLPreElement>;
3591
+ /**
3592
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/progress
3593
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLProgressElement
3594
+ */
3595
+ progress: ProgressHTMLAttributes<HTMLProgressElement> & Properties<HTMLProgressElement>;
3596
+ /**
3597
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/q
3598
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLQuoteElement
3599
+ */
3600
+ q: QuoteHTMLAttributes<HTMLQuoteElement> & Properties<HTMLQuoteElement>;
3601
+ /**
3602
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/rp
3603
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3604
+ */
3605
+ rp: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3606
+ /**
3607
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/rt
3608
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3609
+ */
3610
+ rt: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3611
+ /**
3612
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ruby
3613
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3614
+ */
3615
+ ruby: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3616
+ /**
3617
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/s
3618
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3619
+ */
3620
+ s: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3621
+ /**
3622
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/samp
3623
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3624
+ */
3625
+ samp: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3626
+ /**
3627
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
3628
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLScriptElement
3629
+ */
3630
+ script: ScriptHTMLAttributes<HTMLScriptElement> & Properties<HTMLScriptElement>;
3631
+ /**
3632
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/search
3633
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3634
+ */
3635
+ search: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3636
+ /**
3637
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/section
3638
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3639
+ */
3640
+ section: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3641
+ /**
3642
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select
3643
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement
3644
+ */
3645
+ select: SelectHTMLAttributes<HTMLSelectElement> & Properties<HTMLSelectElement>;
3646
+ /**
3647
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/slot
3648
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement
3649
+ */
3650
+ slot: HTMLSlotElementAttributes<HTMLSlotElement> & Properties<HTMLSlotElement>;
3651
+ /**
3652
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/small
3653
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3654
+ */
3655
+ small: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3656
+ /**
3657
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source
3658
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLSourceElement
3659
+ */
3660
+ source: SourceHTMLAttributes<HTMLSourceElement> & Properties<HTMLSourceElement>;
3661
+ /**
3662
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/span
3663
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLSpanElement
3664
+ */
3665
+ span: HTMLAttributes<HTMLSpanElement> & Properties<HTMLSpanElement>;
3666
+ /**
3667
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/strong
3668
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3669
+ */
3670
+ strong: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3671
+ /**
3672
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/style
3673
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLStyleElement
3674
+ */
3675
+ style: StyleHTMLAttributes<HTMLStyleElement> & Properties<HTMLStyleElement>;
3676
+ /**
3677
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sub
3678
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3679
+ */
3680
+ sub: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3681
+ /**
3682
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/summary
3683
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3684
+ */
3685
+ summary: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3686
+ /**
3687
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sup
3688
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3689
+ */
3690
+ sup: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3691
+ /**
3692
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/table
3693
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableElement
3694
+ */
3695
+ table: HTMLAttributes<HTMLTableElement> & Properties<HTMLTableElement>;
3696
+ /**
3697
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody
3698
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableSectionElement
3699
+ */
3700
+ tbody: HTMLAttributes<HTMLTableSectionElement> & Properties<HTMLTableSectionElement>;
3701
+ /**
3702
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td
3703
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableCellElement
3704
+ */
3705
+ td: TdHTMLAttributes<HTMLTableCellElement> & Properties<HTMLTableCellElement>;
3706
+ /**
3707
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/template
3708
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTemplateElement
3709
+ */
3710
+ template: TemplateHTMLAttributes<HTMLTemplateElement> & Properties<HTMLTemplateElement>;
3711
+ /**
3712
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea
3713
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTextAreaElement
3714
+ */
3715
+ textarea: TextareaHTMLAttributes<HTMLTextAreaElement> & Properties<HTMLTextAreaElement>;
3716
+ /**
3717
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tfoot
3718
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableSectionElement
3719
+ */
3720
+ tfoot: HTMLAttributes<HTMLTableSectionElement> & Properties<HTMLTableSectionElement>;
3721
+ /**
3722
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th
3723
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableCellElement
3724
+ */
3725
+ th: ThHTMLAttributes<HTMLTableCellElement> & Properties<HTMLTableCellElement>;
3726
+ /**
3727
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead
3728
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableSectionElement
3729
+ */
3730
+ thead: HTMLAttributes<HTMLTableSectionElement> & Properties<HTMLTableSectionElement>;
3731
+ /**
3732
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/time
3733
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTimeElement
3734
+ */
3735
+ time: TimeHTMLAttributes<HTMLTimeElement> & Properties<HTMLTimeElement>;
3736
+ /**
3737
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/title
3738
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTitleElement
3739
+ */
3740
+ title: HTMLAttributes<HTMLTitleElement> & Properties<HTMLTitleElement>;
3741
+ /**
3742
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr
3743
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableRowElement
3744
+ */
3745
+ tr: HTMLAttributes<HTMLTableRowElement> & Properties<HTMLTableRowElement>;
3746
+ /**
3747
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/track
3748
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLTrackElement
3749
+ */
3750
+ track: TrackHTMLAttributes<HTMLTrackElement> & Properties<HTMLTrackElement>;
3751
+ /**
3752
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/u
3753
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3754
+ */
3755
+ u: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3756
+ /**
3757
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul
3758
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLUListElement
3759
+ */
3760
+ ul: HTMLAttributes<HTMLUListElement> & Properties<HTMLUListElement>;
3761
+ /**
3762
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/var
3763
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3764
+ */
3765
+ var: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3766
+ /**
3767
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video
3768
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLVideoElement
3769
+ */
3770
+ video: VideoHTMLAttributes<HTMLVideoElement> & Properties<HTMLVideoElement>;
3771
+ /**
3772
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/wbr
3773
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3774
+ */
3775
+ wbr: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3776
+ /** @url https://www.electronjs.org/docs/latest/api/webview-tag */
3777
+ webview: WebViewHTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3778
+ }
3779
+ /** @type {HTMLElementDeprecatedTagNameMap} */
3780
+ interface HTMLElementDeprecatedTags {
3781
+ /**
3782
+ * @deprecated
3783
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/big
3784
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement
3785
+ */
3786
+ big: HTMLAttributes<HTMLElement> & Properties<HTMLElement>;
3787
+ /**
3788
+ * @deprecated
3789
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/keygen
3790
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLUnknownElement
3791
+ */
3792
+ keygen: KeygenHTMLAttributes<HTMLUnknownElement> & Properties<HTMLUnknownElement>;
3793
+ /**
3794
+ * @deprecated
3795
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menuitem
3796
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLUnknownElement
3797
+ */
3798
+ menuitem: HTMLAttributes<HTMLUnknownElement> & Properties<HTMLUnknownElement>;
3799
+ /**
3800
+ * @deprecated
3801
+ * @url https://developer.mozilla.org/en-US/docs/Web/HTML/Element/param
3802
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/HTMLParamElement
3803
+ */
3804
+ param: ParamHTMLAttributes<HTMLParamElement> & Properties<HTMLParamElement>;
3805
+ }
3806
+ /** @type {SVGElementTagNameMap} */
3807
+ interface SVGElementTags {
3808
+ /**
3809
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/animate
3810
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGAnimateElement
3811
+ */
3812
+ animate: AnimateSVGAttributes<SVGAnimateElement> & Properties<SVGAnimateElement>;
3813
+ /**
3814
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/animateMotion
3815
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGAnimateMotionElement
3816
+ */
3817
+ animateMotion: AnimateMotionSVGAttributes<SVGAnimateMotionElement> &
3818
+ Properties<SVGAnimateMotionElement>;
3819
+ /**
3820
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/animateTransform
3821
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGAnimateTransformElement
3822
+ */
3823
+ animateTransform: AnimateTransformSVGAttributes<SVGAnimateTransformElement> &
3824
+ Properties<SVGAnimateTransformElement>;
3825
+ /**
3826
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/circle
3827
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGCircleElement
3828
+ */
3829
+ circle: CircleSVGAttributes<SVGCircleElement> & Properties<SVGCircleElement>;
3830
+ /**
3831
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/clipPath
3832
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGClipPathElement
3833
+ */
3834
+ clipPath: ClipPathSVGAttributes<SVGClipPathElement> & Properties<SVGClipPathElement>;
3835
+ /**
3836
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/defs
3837
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGDefsElement
3838
+ */
3839
+ defs: DefsSVGAttributes<SVGDefsElement> & Properties<SVGDefsElement>;
3840
+ /**
3841
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/desc
3842
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGDescElement
3843
+ */
3844
+ desc: DescSVGAttributes<SVGDescElement> & Properties<SVGDescElement>;
3845
+ /**
3846
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/ellipse
3847
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGEllipseElement
3848
+ */
3849
+ ellipse: EllipseSVGAttributes<SVGEllipseElement> & Properties<SVGEllipseElement>;
3850
+ /**
3851
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feBlend
3852
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEBlendElement
3853
+ */
3854
+ feBlend: FeBlendSVGAttributes<SVGFEBlendElement> & Properties<SVGFEBlendElement>;
3855
+ /**
3856
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feColorMatrix
3857
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEColorMatrixElement
3858
+ */
3859
+ feColorMatrix: FeColorMatrixSVGAttributes<SVGFEColorMatrixElement> &
3860
+ Properties<SVGFEColorMatrixElement>;
3861
+ /**
3862
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feComponentTransfer
3863
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEComponentTransferElemen
3864
+ */
3865
+ feComponentTransfer: FeComponentTransferSVGAttributes<SVGFEComponentTransferElement> &
3866
+ Properties<SVGFEComponentTransferElement>;
3867
+ /**
3868
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feComposite
3869
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFECompositeElement
3870
+ */
3871
+ feComposite: FeCompositeSVGAttributes<SVGFECompositeElement> &
3872
+ Properties<SVGFECompositeElement>;
3873
+ /**
3874
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feConvolveMatrix
3875
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEConvolveMatrixElement
3876
+ */
3877
+ feConvolveMatrix: FeConvolveMatrixSVGAttributes<SVGFEConvolveMatrixElement> &
3878
+ Properties<SVGFEConvolveMatrixElement>;
3879
+ /**
3880
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDiffuseLighting
3881
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEDiffuseLightingElement
3882
+ */
3883
+ feDiffuseLighting: FeDiffuseLightingSVGAttributes<SVGFEDiffuseLightingElement> &
3884
+ Properties<SVGFEDiffuseLightingElement>;
3885
+ /**
3886
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDisplacementMap
3887
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEDisplacementMapElement
3888
+ */
3889
+ feDisplacementMap: FeDisplacementMapSVGAttributes<SVGFEDisplacementMapElement> &
3890
+ Properties<SVGFEDisplacementMapElement>;
3891
+ /**
3892
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDistantLight
3893
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEDistantLightElement
3894
+ */
3895
+ feDistantLight: FeDistantLightSVGAttributes<SVGFEDistantLightElement> &
3896
+ Properties<SVGFEDistantLightElement>;
3897
+ /**
3898
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDropShadow
3899
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEDropShadowElement
3900
+ */
3901
+ feDropShadow: FeDropShadowSVGAttributes<SVGFEDropShadowElement> &
3902
+ Properties<SVGFEDropShadowElement>;
3903
+ /**
3904
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFlood
3905
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEFloodElement
3906
+ */
3907
+ feFlood: FeFloodSVGAttributes<SVGFEFloodElement> & Properties<SVGFEFloodElement>;
3908
+ /**
3909
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncA
3910
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEFuncAElement
3911
+ */
3912
+ feFuncA: FeFuncSVGAttributes<SVGFEFuncAElement> & Properties<SVGFEFuncAElement>;
3913
+ /**
3914
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncB
3915
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEFuncBElement
3916
+ */
3917
+ feFuncB: FeFuncSVGAttributes<SVGFEFuncBElement> & Properties<SVGFEFuncBElement>;
3918
+ /**
3919
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncG
3920
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEFuncGElement
3921
+ */
3922
+ feFuncG: FeFuncSVGAttributes<SVGFEFuncGElement> & Properties<SVGFEFuncGElement>;
3923
+ /**
3924
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncR
3925
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEFuncRElement
3926
+ */
3927
+ feFuncR: FeFuncSVGAttributes<SVGFEFuncRElement> & Properties<SVGFEFuncRElement>;
3928
+ /**
3929
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feGaussianBlur
3930
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEGaussianBlurElement
3931
+ */
3932
+ feGaussianBlur: FeGaussianBlurSVGAttributes<SVGFEGaussianBlurElement> &
3933
+ Properties<SVGFEGaussianBlurElement>;
3934
+ /**
3935
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feImage
3936
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEImageElement
3937
+ */
3938
+ feImage: FeImageSVGAttributes<SVGFEImageElement> & Properties<SVGFEImageElement>;
3939
+ /**
3940
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMerge
3941
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEMergeElement
3942
+ */
3943
+ feMerge: FeMergeSVGAttributes<SVGFEMergeElement> & Properties<SVGFEMergeElement>;
3944
+ /**
3945
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMergeNode
3946
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEMergeNodeElement
3947
+ */
3948
+ feMergeNode: FeMergeNodeSVGAttributes<SVGFEMergeNodeElement> &
3949
+ Properties<SVGFEMergeNodeElement>;
3950
+ /**
3951
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMorphology
3952
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEMorphologyElement
3953
+ */
3954
+ feMorphology: FeMorphologySVGAttributes<SVGFEMorphologyElement> &
3955
+ Properties<SVGFEMorphologyElement>;
3956
+ /**
3957
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feOffset
3958
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEOffsetElement
3959
+ */
3960
+ feOffset: FeOffsetSVGAttributes<SVGFEOffsetElement> & Properties<SVGFEOffsetElement>;
3961
+ /**
3962
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/fePointLight
3963
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFEPointLightElement
3964
+ */
3965
+ fePointLight: FePointLightSVGAttributes<SVGFEPointLightElement> &
3966
+ Properties<SVGFEPointLightElement>;
3967
+ /**
3968
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feSpecularLighting
3969
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFESpecularLightingElement
3970
+ */
3971
+ feSpecularLighting: FeSpecularLightingSVGAttributes<SVGFESpecularLightingElement> &
3972
+ Properties<SVGFESpecularLightingElement>;
3973
+ /**
3974
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feSpotLight
3975
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFESpotLightElement
3976
+ */
3977
+ feSpotLight: FeSpotLightSVGAttributes<SVGFESpotLightElement> &
3978
+ Properties<SVGFESpotLightElement>;
3979
+ /**
3980
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feTile
3981
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFETileElement
3982
+ */
3983
+ feTile: FeTileSVGAttributes<SVGFETileElement> & Properties<SVGFETileElement>;
3984
+ /**
3985
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feTurbulence
3986
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFETurbulenceElement
3987
+ */
3988
+ feTurbulence: FeTurbulanceSVGAttributes<SVGFETurbulenceElement> &
3989
+ Properties<SVGFETurbulenceElement>;
3990
+ /**
3991
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/filter
3992
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGFilterElement
3993
+ */
3994
+ filter: FilterSVGAttributes<SVGFilterElement> & Properties<SVGFilterElement>;
3995
+ /**
3996
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/foreignObject
3997
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGForeignObjectElement
3998
+ */
3999
+ foreignObject: ForeignObjectSVGAttributes<SVGForeignObjectElement> &
4000
+ Properties<SVGForeignObjectElement>;
4001
+ /**
4002
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/g
4003
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGGElement
4004
+ */
4005
+ g: GSVGAttributes<SVGGElement> & Properties<SVGGElement>;
4006
+ /**
4007
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/image
4008
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGImageElement
4009
+ */
4010
+ image: ImageSVGAttributes<SVGImageElement> & Properties<SVGImageElement>;
4011
+ /**
4012
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/line
4013
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGLineElement
4014
+ */
4015
+ line: LineSVGAttributes<SVGLineElement> & Properties<SVGLineElement>;
4016
+ /**
4017
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/linearGradient
4018
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGLinearGradientElement
4019
+ */
4020
+ linearGradient: LinearGradientSVGAttributes<SVGLinearGradientElement> &
4021
+ Properties<SVGLinearGradientElement>;
4022
+ /**
4023
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/marker
4024
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGMarkerElement
4025
+ */
4026
+ marker: MarkerSVGAttributes<SVGMarkerElement> & Properties<SVGMarkerElement>;
4027
+ /**
4028
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/mask
4029
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGMaskElement
4030
+ */
4031
+ mask: MaskSVGAttributes<SVGMaskElement> & Properties<SVGMaskElement>;
4032
+ /**
4033
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/metadata
4034
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGMetadataElement
4035
+ */
4036
+ metadata: MetadataSVGAttributes<SVGMetadataElement> & Properties<SVGMetadataElement>;
4037
+ /**
4038
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/mpath
4039
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGMPathElement
4040
+ */
4041
+ mpath: MPathSVGAttributes<SVGMPathElement> & Properties<SVGMPathElement>;
4042
+ /**
4043
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/path
4044
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGPathElement
4045
+ */
4046
+ path: PathSVGAttributes<SVGPathElement> & Properties<SVGPathElement>;
4047
+ /**
4048
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/pattern
4049
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGPatternElement
4050
+ */
4051
+ pattern: PatternSVGAttributes<SVGPatternElement> & Properties<SVGPatternElement>;
4052
+ /**
4053
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/polygon
4054
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGPolygonElement
4055
+ */
4056
+ polygon: PolygonSVGAttributes<SVGPolygonElement> & Properties<SVGPolygonElement>;
4057
+ /**
4058
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/polyline
4059
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGPolylineElement
4060
+ */
4061
+ polyline: PolylineSVGAttributes<SVGPolylineElement> & Properties<SVGPolylineElement>;
4062
+ /**
4063
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/radialGradient
4064
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGRadialGradientElement
4065
+ */
4066
+ radialGradient: RadialGradientSVGAttributes<SVGRadialGradientElement> &
4067
+ Properties<SVGRadialGradientElement>;
4068
+ /**
4069
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/rect
4070
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGRectElement
4071
+ */
4072
+ rect: RectSVGAttributes<SVGRectElement> & Properties<SVGRectElement>;
4073
+ /**
4074
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/set
4075
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGSetElement
4076
+ */
4077
+ set: SetSVGAttributes<SVGSetElement> & Properties<SVGSetElement>;
4078
+ /**
4079
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/stop
4080
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGStopElement
4081
+ */
4082
+ stop: StopSVGAttributes<SVGStopElement> & Properties<SVGStopElement>;
4083
+ /**
4084
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/svg
4085
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGSVGElement
4086
+ */
4087
+ svg: SvgSVGAttributes<SVGSVGElement> & Properties<SVGSVGElement>;
4088
+ /**
4089
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/switch
4090
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGSwitchElement
4091
+ */
4092
+ switch: SwitchSVGAttributes<SVGSwitchElement> & Properties<SVGSwitchElement>;
4093
+ /**
4094
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/symbol
4095
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGSymbolElement
4096
+ */
4097
+ symbol: SymbolSVGAttributes<SVGSymbolElement> & Properties<SVGSymbolElement>;
4098
+ /**
4099
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/text
4100
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGTextElement
4101
+ */
4102
+ text: TextSVGAttributes<SVGTextElement> & Properties<SVGTextElement>;
4103
+ /**
4104
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/textPath
4105
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGTextPathElement
4106
+ */
4107
+ textPath: TextPathSVGAttributes<SVGTextPathElement> & Properties<SVGTextPathElement>;
4108
+ /**
4109
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/tspan
4110
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGTSpanElement
4111
+ */
4112
+ tspan: TSpanSVGAttributes<SVGTSpanElement> & Properties<SVGTSpanElement>;
4113
+ /**
4114
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/use
4115
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGUseElement
4116
+ */
4117
+ use: UseSVGAttributes<SVGUseElement> & Properties<SVGUseElement>;
4118
+ /**
4119
+ * @url https://developer.mozilla.org/en-US/docs/Web/SVG/Element/view
4120
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/SVGViewElement
4121
+ */
4122
+ view: ViewSVGAttributes<SVGViewElement> & Properties<SVGViewElement>;
4123
+ }
4124
+
4125
+ interface MathMLElementTags {
4126
+ /**
4127
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/annotation
4128
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4129
+ */
4130
+ annotation: MathMLAnnotationElementAttributes<MathMLElement> & Properties<MathMLElement>;
4131
+ /**
4132
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/annotation-xml
4133
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4134
+ */
4135
+ "annotation-xml": MathMLAnnotationXmlElementAttributes<MathMLElement>;
4136
+ /**
4137
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/math
4138
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4139
+ */
4140
+ math: MathMLMathElementAttributes<MathMLElement> & Properties<MathMLElement>;
4141
+ /**
4142
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/merror
4143
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4144
+ */
4145
+ merror: MathMLMerrorElementAttributes<MathMLElement> & Properties<MathMLElement>;
4146
+ /**
4147
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mfrac
4148
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4149
+ */
4150
+ mfrac: MathMLMfracElementAttributes<MathMLElement> & Properties<MathMLElement>;
4151
+ /**
4152
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mi
4153
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4154
+ */
4155
+ mi: MathMLMiElementAttributes<MathMLElement> & Properties<MathMLElement>;
4156
+ /**
4157
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mmultiscripts
4158
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4159
+ */
4160
+ mmultiscripts: MathMLMmultiscriptsElementAttributes<MathMLElement> & Properties<MathMLElement>;
4161
+ /**
4162
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mn
4163
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4164
+ */
4165
+ mn: MathMLMnElementAttributes<MathMLElement> & Properties<MathMLElement>;
4166
+ /**
4167
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mo
4168
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4169
+ */
4170
+ mo: MathMLMoElementAttributes<MathMLElement> & Properties<MathMLElement>;
4171
+ /**
4172
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mover
4173
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4174
+ */
4175
+ mover: MathMLMoverElementAttributes<MathMLElement> & Properties<MathMLElement>;
4176
+ /**
4177
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mpadded
4178
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4179
+ */
4180
+ mpadded: MathMLMpaddedElementAttributes<MathMLElement> & Properties<MathMLElement>;
4181
+ /**
4182
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mphantom
4183
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4184
+ */
4185
+ mphantom: MathMLMphantomElementAttributes<MathMLElement> & Properties<MathMLElement>;
4186
+ /**
4187
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mprescripts
4188
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4189
+ */
4190
+ mprescripts: MathMLMprescriptsElementAttributes<MathMLElement> & Properties<MathMLElement>;
4191
+ /**
4192
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mroot
4193
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4194
+ */
4195
+ mroot: MathMLMrootElementAttributes<MathMLElement> & Properties<MathMLElement>;
4196
+ /**
4197
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mrow
4198
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4199
+ */
4200
+ mrow: MathMLMrowElementAttributes<MathMLElement> & Properties<MathMLElement>;
4201
+ /**
4202
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/ms
4203
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4204
+ */
4205
+ ms: MathMLMsElementAttributes<MathMLElement> & Properties<MathMLElement>;
4206
+ /**
4207
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mspace
4208
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4209
+ */
4210
+ mspace: MathMLMspaceElementAttributes<MathMLElement> & Properties<MathMLElement>;
4211
+ /**
4212
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msqrt
4213
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4214
+ */
4215
+ msqrt: MathMLMsqrtElementAttributes<MathMLElement> & Properties<MathMLElement>;
4216
+ /**
4217
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mstyle
4218
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4219
+ */
4220
+ mstyle: MathMLMstyleElementAttributes<MathMLElement> & Properties<MathMLElement>;
4221
+ /**
4222
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msub
4223
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4224
+ */
4225
+ msub: MathMLMsubElementAttributes<MathMLElement> & Properties<MathMLElement>;
4226
+ /**
4227
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msubsup
4228
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4229
+ */
4230
+ msubsup: MathMLMsubsupElementAttributes<MathMLElement> & Properties<MathMLElement>;
4231
+ /**
4232
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msup
4233
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4234
+ */
4235
+ msup: MathMLMsupElementAttributes<MathMLElement> & Properties<MathMLElement>;
4236
+ /**
4237
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtable
4238
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4239
+ */
4240
+ mtable: MathMLMtableElementAttributes<MathMLElement> & Properties<MathMLElement>;
4241
+ /**
4242
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtd
4243
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4244
+ */
4245
+ mtd: MathMLMtdElementAttributes<MathMLElement> & Properties<MathMLElement>;
4246
+ /**
4247
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtext
4248
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4249
+ */
4250
+ mtext: MathMLMtextElementAttributes<MathMLElement> & Properties<MathMLElement>;
4251
+ /**
4252
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtr
4253
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4254
+ */
4255
+ mtr: MathMLMtrElementAttributes<MathMLElement> & Properties<MathMLElement>;
4256
+ /**
4257
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/munder
4258
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4259
+ */
4260
+ munder: MathMLMunderElementAttributes<MathMLElement> & Properties<MathMLElement>;
4261
+ /**
4262
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/munderover
4263
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4264
+ */
4265
+ munderover: MathMLMunderoverElementAttributes<MathMLElement> & Properties<MathMLElement>;
4266
+ /**
4267
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/semantics
4268
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4269
+ */
4270
+ semantics: MathMLSemanticsElementAttributes<MathMLElement> & Properties<MathMLElement>;
4271
+ /**
4272
+ * @non-standard
4273
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/menclose
4274
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4275
+ */
4276
+ menclose: MathMLMencloseElementAttributes<MathMLElement> & Properties<MathMLElement>;
4277
+ /**
4278
+ * @deprecated
4279
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/maction
4280
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4281
+ */
4282
+ maction: MathMLMactionElementAttributes<MathMLElement> & Properties<MathMLElement>;
4283
+ /**
4284
+ * @deprecated
4285
+ * @non-standard
4286
+ * @url https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mfenced
4287
+ * @url https://developer.mozilla.org/en-US/docs/Web/API/MathMLElement
4288
+ */
4289
+ mfenced: MathMLMfencedElementAttributes<MathMLElement> & Properties<MathMLElement>;
4290
+ }
4291
+
4292
+ interface IntrinsicElements
4293
+ extends HTMLElementTags, HTMLElementDeprecatedTags, SVGElementTags, MathMLElementTags {}
4294
+ }