marko 6.0.17 → 6.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/tags-html.d.ts CHANGED
@@ -122,6 +122,107 @@ declare global {
122
122
  var: NativeTag<Marko.HTML.Var, HTMLElement>;
123
123
  video: NativeTag<Marko.HTML.Video, HTMLVideoElement>;
124
124
  wbr: NativeTag<Marko.HTML.WBr, HTMLElement>;
125
+
126
+ animate: NativeTag<Marko.SVG.Animate, SVGAnimateElement>;
127
+ animateMotion: NativeTag<
128
+ Marko.SVG.AnimateMotion,
129
+ SVGAnimateMotionElement
130
+ >;
131
+ animateTransform: NativeTag<
132
+ Marko.SVG.AnimateTransform,
133
+ SVGAnimateTransformElement
134
+ >;
135
+ circle: NativeTag<Marko.SVG.Circle, SVGCircleElement>;
136
+ clipPath: NativeTag<Marko.SVG.ClipPath, SVGClipPathElement>;
137
+ defs: NativeTag<Marko.SVG.Defs, SVGDefsElement>;
138
+ desc: NativeTag<Marko.SVG.Desc, SVGDescElement>;
139
+ discard: NativeTag<Marko.SVG.Discard, SVGElement>;
140
+ ellipse: NativeTag<Marko.SVG.Ellipse, SVGEllipseElement>;
141
+ feBlend: NativeTag<Marko.SVG.FEBlend, SVGFEBlendElement>;
142
+ feColorMatrix: NativeTag<
143
+ Marko.SVG.FEColorMatrix,
144
+ SVGFEColorMatrixElement
145
+ >;
146
+ feComponentTransfer: NativeTag<
147
+ Marko.SVG.FEComponentTransfer,
148
+ SVGFEComponentTransferElement
149
+ >;
150
+ feComposite: NativeTag<Marko.SVG.FEComposite, SVGFECompositeElement>;
151
+ feConvolveMatrix: NativeTag<
152
+ Marko.SVG.FEConvolveMatrix,
153
+ SVGFEConvolveMatrixElement
154
+ >;
155
+ feDiffuseLighting: NativeTag<
156
+ Marko.SVG.FEDiffuseLighting,
157
+ SVGFEDiffuseLightingElement
158
+ >;
159
+ feDisplacementMap: NativeTag<
160
+ Marko.SVG.FEDisplacementMap,
161
+ SVGFEDisplacementMapElement
162
+ >;
163
+ feDistantLight: NativeTag<
164
+ Marko.SVG.FEDistantLight,
165
+ SVGFEDistantLightElement
166
+ >;
167
+ feDropShadow: NativeTag<Marko.SVG.FEDropShadow, SVGFEDropShadowElement>;
168
+ feFlood: NativeTag<Marko.SVG.FEFlood, SVGFEFloodElement>;
169
+ feFuncA: NativeTag<Marko.SVG.FEFuncA, SVGFEFuncAElement>;
170
+ feFuncB: NativeTag<Marko.SVG.FEFuncB, SVGFEFuncBElement>;
171
+ feFuncG: NativeTag<Marko.SVG.FEFuncG, SVGFEFuncGElement>;
172
+ feFuncR: NativeTag<Marko.SVG.FEFuncR, SVGFEFuncRElement>;
173
+ feGaussianBlur: NativeTag<
174
+ Marko.SVG.FEGaussianBlur,
175
+ SVGFEGaussianBlurElement
176
+ >;
177
+ feImage: NativeTag<Marko.SVG.FEImage, SVGFEImageElement>;
178
+ feMerge: NativeTag<Marko.SVG.FEMerge, SVGFEMergeElement>;
179
+ feMergeNode: NativeTag<Marko.SVG.FEMergeNode, SVGFEMergeNodeElement>;
180
+ feMorphology: NativeTag<Marko.SVG.FEMorphology, SVGFEMorphologyElement>;
181
+ feOffset: NativeTag<Marko.SVG.FEOffset, SVGFEOffsetElement>;
182
+ fePointLight: NativeTag<Marko.SVG.FEPointLight, SVGFEPointLightElement>;
183
+ feSpecularLighting: NativeTag<
184
+ Marko.SVG.FESpecularLighting,
185
+ SVGFESpecularLightingElement
186
+ >;
187
+ feSpotLight: NativeTag<Marko.SVG.FESpotLight, SVGFESpotLightElement>;
188
+ feTile: NativeTag<Marko.SVG.FETile, SVGFETileElement>;
189
+ feTurbulence: NativeTag<Marko.SVG.FETurbulence, SVGFETurbulenceElement>;
190
+ filter: NativeTag<Marko.SVG.Filter, SVGFilterElement>;
191
+ foreignObject: NativeTag<
192
+ Marko.SVG.ForeignObject,
193
+ SVGForeignObjectElement
194
+ >;
195
+ g: NativeTag<Marko.SVG.G, SVGGElement>;
196
+ image: NativeTag<Marko.SVG.Image, SVGImageElement>;
197
+ line: NativeTag<Marko.SVG.Line, SVGLineElement>;
198
+ linearGradient: NativeTag<
199
+ Marko.SVG.LinearGradient,
200
+ SVGLinearGradientElement
201
+ >;
202
+ marker: NativeTag<Marko.SVG.Marker, SVGMarkerElement>;
203
+ mask: NativeTag<Marko.SVG.Mask, SVGMaskElement>;
204
+ metadata: NativeTag<Marko.SVG.Metadata, SVGMetadataElement>;
205
+ mpath: NativeTag<Marko.SVG.MPath, SVGMPathElement>;
206
+ path: NativeTag<Marko.SVG.Path, SVGPathElement>;
207
+ pattern: NativeTag<Marko.SVG.Pattern, SVGPatternElement>;
208
+ polygon: NativeTag<Marko.SVG.Polygon, SVGPolygonElement>;
209
+ polyline: NativeTag<Marko.SVG.Polyline, SVGPolylineElement>;
210
+ radialGradient: NativeTag<
211
+ Marko.SVG.RadialGradient,
212
+ SVGRadialGradientElement
213
+ >;
214
+ rect: NativeTag<Marko.SVG.Rect, SVGRectElement>;
215
+ set: NativeTag<Marko.SVG.Set, SVGSetElement>;
216
+ stop: NativeTag<Marko.SVG.Stop, SVGStopElement>;
217
+ svg: NativeTag<Marko.SVG.SVG, SVGSVGElement>;
218
+ switch: NativeTag<Marko.SVG.Switch, SVGSwitchElement>;
219
+ symbol: NativeTag<Marko.SVG.Symbol, SVGSymbolElement>;
220
+ text: NativeTag<Marko.SVG.Text, SVGTextElement>;
221
+ textPath: NativeTag<Marko.SVG.TextPath, SVGTextPathElement>;
222
+ title: NativeTag<Marko.SVG.Title, SVGTitleElement>;
223
+ tspan: NativeTag<Marko.SVG.TSpan, SVGTSpanElement>;
224
+ use: NativeTag<Marko.SVG.Use, SVGUseElement>;
225
+ view: NativeTag<Marko.SVG.View, SVGViewElement>;
125
226
  }
126
227
 
127
228
  namespace CSS {
@@ -2395,218 +2496,1814 @@ declare global {
2395
2496
  interface WBr extends HTMLAttributes<HTMLElement> {}
2396
2497
  }
2397
2498
 
2398
- interface Directives {
2499
+ /**
2500
+ * Elements pulled from https://www.w3.org/TR/SVG2/eltindex.html and a few other spec sources
2501
+ */
2502
+ namespace SVG {
2399
2503
  /**
2400
- * Used to uniquely identify a tag within a template in order
2401
- * to get an element reference to it later.
2402
- *
2403
- * @see Marko.Component.getEl
2404
- * @see Marko.Component.getComponent
2504
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElement
2405
2505
  */
2406
- key?: AttrString;
2506
+ interface A
2507
+ extends SVGCoreAttributes<SVGAElement>,
2508
+ SVGConditionalProcessingAttributes {
2509
+ /**
2510
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElementHrefAttribute
2511
+ */
2512
+ href?: AttrString;
2407
2513
 
2408
- /**
2409
- * Tells Marko to avoid updating the element or its contents (excluding custom tags which may rerender independently).
2410
- */
2411
- "no-update"?: AttrBoolean;
2514
+ /**
2515
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElementTargetAttribute
2516
+ */
2517
+ target?: AttrTarget;
2412
2518
 
2413
- /**
2414
- * Tells Marko to avoid updating an element's contents (excluding custom tags which may rerender independently). Used instead of no-update when runtime functionality is needed.
2415
- */
2416
- "no-update-if"?: AttrBoolean;
2519
+ /**
2520
+ * any value (if non-empty, value represents a suggested file name)
2521
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElementDownloadAttribute
2522
+ */
2523
+ download?: AttrString;
2417
2524
 
2418
- /**
2419
- * Tells Marko to avoid updating an element's body.
2420
- */
2421
- "no-update-body"?: AttrBoolean;
2525
+ /**
2526
+ * space-separated valid non-empty URL tokens
2527
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElementPingAttribute
2528
+ */
2529
+ ping?: HTML.A["ping"];
2422
2530
 
2423
- /**
2424
- * Tells Marko to avoid updating an element's body. Used instead of no-update-body when runtime functionality is needed.
2425
- * @see https://markojs.com/docs/syntax/#conditional-rendering
2426
- */
2427
- "no-update-body-if"?: AttrBoolean;
2428
- }
2531
+ /**
2532
+ * space-separated keyword tokens
2533
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElementRelAttribute
2534
+ */
2535
+ rel?: HTML.A["rel"];
2429
2536
 
2430
- interface HTMLAttributes<T extends Element = Element>
2431
- extends AriaAttributes {
2432
- /**
2433
- * Specifies a keyboard shortcut to activate or focus on an element.
2434
- * @see https://html.spec.whatwg.org/multipage/interaction.html#the-accesskey-attribute
2435
- */
2436
- accesskey?: AttrString;
2537
+ /**
2538
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElementHreflangAttribute
2539
+ */
2540
+ hreflang?: HTML.A["hreflang"];
2437
2541
 
2438
- /**
2439
- * Controls the capitalization behavior of user input.
2440
- * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-autocapitalize
2441
- */
2442
- autocapitalize?:
2443
- | AttrOnOff
2444
- | "characters"
2445
- | "none"
2446
- | "sentences"
2447
- | "words";
2542
+ /**
2543
+ * A MIME type string
2544
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElementTypeAttribute
2545
+ */
2546
+ type?: HTML.A["type"];
2448
2547
 
2449
- /**
2450
- * Indicates whether the element should automatically get focus when the page loads.
2451
- * @see https://html.spec.whatwg.org/multipage/interaction.html#the-autofocus-attribute
2452
- */
2453
- autofocus?: AttrBoolean;
2548
+ /**
2549
+ * @see https://www.w3.org/TR/SVG2/linking.html#AElementReferrerpolicyAttribute
2550
+ */
2551
+ referrerPolicy?: AttrReferrerPolicy;
2552
+ }
2454
2553
 
2455
2554
  /**
2456
- * Specifies a space-separated list of class names for an element.
2457
- * @see https://markojs.com/docs/syntax/#class-attribute
2458
- * @see https://html.spec.whatwg.org/multipage/dom.html#classes
2555
+ * @see https://svgwg.org/specs/animations/#AnimateElement
2459
2556
  */
2460
- class?: AttrClass;
2557
+ interface Animate
2558
+ extends SVGCoreAttributes<SVGAnimateElement>,
2559
+ SVGAnimationAdditionAttributes,
2560
+ SVGAnimationTargetElementAttributes,
2561
+ SVGAnimationAttributeTargetAttributes,
2562
+ SVGAnimationTimingAttributes,
2563
+ SVGAnimationValueAttributes {}
2461
2564
 
2462
2565
  /**
2463
- * Specifies whether the content of an element is editable or not.
2464
- * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-contenteditable
2566
+ * @see https://svgwg.org/specs/animations/#AnimateMotionElement
2465
2567
  */
2466
- contenteditable?: AttrBooleanString | "plaintext-only";
2568
+ interface AnimateMotion
2569
+ extends SVGCoreAttributes<SVGAnimateMotionElement>,
2570
+ SVGAnimationAdditionAttributes,
2571
+ SVGAnimationTargetElementAttributes,
2572
+ SVGAnimationTimingAttributes,
2573
+ SVGAnimationValueAttributes {
2574
+ /**
2575
+ * @see https://svgwg.org/specs/animations/#AnimateMotionElementPathAttribute
2576
+ */
2577
+ path?: AttrString;
2467
2578
 
2468
- /**
2469
- * Specifies the ID of a context menu to show when the element is right-clicked.
2470
- * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-contextmenu
2471
- */
2472
- contextmenu?: AttrString;
2579
+ /**
2580
+ * A semicolon-separated list of floating point values between 0 and 1
2581
+ * @see https://svgwg.org/specs/animations/#KeyPointsAttribute
2582
+ */
2583
+ keyPoints?: AttrString;
2473
2584
 
2474
- /**
2475
- * Specifies the text direction for the content of an element.
2476
- * @see https://html.spec.whatwg.org/multipage/dom.html#the-dir-attribute
2477
- */
2478
- dir?: AttrMissing | "ltr" | "rtl" | "auto";
2585
+ /**
2586
+ * @see https://svgwg.org/specs/animations/#RotateAttribute
2587
+ */
2588
+ rotate?: AttrMissing | number | "auto" | "auto-reverse" | (string & {});
2479
2589
 
2480
- /**
2481
- * Specifies whether an element is draggable or not.
2482
- * @see https://html.spec.whatwg.org/multipage/dnd.html#the-draggable-attribute
2483
- */
2484
- draggable?: AttrBooleanString;
2590
+ /**
2591
+ * @see https://svgwg.org/specs/animations/#OriginAttribute
2592
+ */
2593
+ origin?: AttrMissing | "default";
2594
+ }
2485
2595
 
2486
2596
  /**
2487
- * A string used to identify the element for performance measurement purposes.
2488
- * @see https://wicg.github.io/element-timing/#sec-elements-exposed
2597
+ * @see https://svgwg.org/specs/animations/#AnimateTransformElement
2489
2598
  */
2490
- elementtiming?: AttrString;
2599
+ interface AnimateTransform
2600
+ extends SVGCoreAttributes<SVGAnimateTransformElement>,
2601
+ SVGAnimationAdditionAttributes,
2602
+ SVGAnimationTargetElementAttributes,
2603
+ SVGAnimationAttributeTargetAttributes,
2604
+ SVGAnimationTimingAttributes,
2605
+ SVGAnimationValueAttributes {
2606
+ /**
2607
+ * @see https://svgwg.org/specs/animations/#AnimateTransformElementTypeAttribute
2608
+ */
2609
+ type?:
2610
+ | AttrMissing
2611
+ | "translate"
2612
+ | "scale"
2613
+ | "rotate"
2614
+ | "skewX"
2615
+ | "skewY";
2616
+ }
2491
2617
 
2492
2618
  /**
2493
- * Provides a hint to the user agent about the type of action expected from the "Enter" key.
2494
- * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-enterkeyhint
2619
+ * @see https://www.w3.org/TR/SVG2/shapes.html#CircleElement
2495
2620
  */
2496
- enterkeyhint?:
2497
- | AttrMissing
2498
- | "enter"
2499
- | "done"
2500
- | "go"
2501
- | "next"
2502
- | "previous"
2503
- | "search"
2504
- | "send";
2621
+ interface Circle
2622
+ extends SVGCoreAttributes<SVGCircleElement>,
2623
+ SVGConditionalProcessingAttributes {
2624
+ /**
2625
+ * @see https://www.w3.org/TR/SVG2/paths.html#PathLengthAttribute
2626
+ */
2627
+ pathLength?: AttrStringOrNumber;
2505
2628
 
2506
- /**
2507
- * Specifies a list of part names for the element that are available for CSS ::part() selector.
2508
- * @see https://drafts.csswg.org/css-shadow-parts-1/#exportparts-attribute
2509
- */
2510
- exportparts?: AttrString;
2629
+ /**
2630
+ * @see https://www.w3.org/TR/SVG2/geometry.html#CxProperty
2631
+ */
2632
+ cx?: AttrStringOrNumber;
2511
2633
 
2512
- /**
2513
- * Indicates whether the element should be hidden from rendering or not.
2514
- * @see https://html.spec.whatwg.org/multipage/interaction.html#the-hidden-attribute
2515
- */
2516
- hidden?: AttrBoolean | "until-found";
2634
+ /**
2635
+ * @see https://www.w3.org/TR/SVG2/geometry.html#CyProperty
2636
+ */
2637
+ cy?: AttrStringOrNumber;
2517
2638
 
2518
- /**
2519
- * Specifies a unique identifier for the element within the document.
2520
- * @see https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute
2521
- */
2522
- id?: AttrString;
2639
+ /**
2640
+ * @see https://www.w3.org/TR/SVG2/geometry.html#RProperty
2641
+ */
2642
+ r?: AttrStringOrNumber;
2643
+ }
2523
2644
 
2524
2645
  /**
2525
- * Specifies whether an element should be inert or not, preventing user interaction and making it non-focusable.
2526
- * @see https://html.spec.whatwg.org/multipage/interaction.html#inert-subtrees
2646
+ * @see https://www.w3.org/TR/css-masking-1/#elementdef-clippath
2527
2647
  */
2528
- inert?: AttrBoolean;
2648
+ interface ClipPath
2649
+ extends SVGCoreAttributes<SVGClipPathElement>,
2650
+ SVGConditionalProcessingAttributes {
2651
+ /**
2652
+ * @see https://www.w3.org/TR/2011/REC-SVG11-20110816/struct.html#ExternalResourcesRequiredAttribute
2653
+ */
2654
+ externalResourcesRequired?: AttrBooleanString;
2529
2655
 
2530
- /**
2531
- * Provides a hint to the user agent about the type of virtual keyboard to display for text input.
2532
- * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-inputmode
2533
- */
2534
- inputmode?:
2535
- | AttrMissing
2536
- | "decimal"
2537
- | "email"
2538
- | "none"
2539
- | "numeric"
2540
- | "search"
2541
- | "tel"
2542
- | "text"
2543
- | "url";
2656
+ /**
2657
+ * @see https://www.w3.org/TR/css-masking-1/#element-attrdef-clippath-clippathunits
2658
+ */
2659
+ clipPathUnits?: AttrMissing | "userSpaceOnUse" | "objectBoundingBox";
2660
+ }
2544
2661
 
2545
2662
  /**
2546
- * Specifies the name of a custom element to use as a replacement for the standard built-in element.
2547
- * @see https://html.spec.whatwg.org/multipage/custom-elements.html#attr-is
2663
+ * @see https://www.w3.org/TR/SVG2/struct.html#DefsElement
2548
2664
  */
2549
- is?: AttrString;
2665
+ interface Defs extends SVGCoreAttributes<SVGDefsElement> {}
2550
2666
 
2551
2667
  /**
2552
- * Specifies a globally unique identifier (URI) for the element in the context of microdata.
2553
- * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemid
2668
+ * @see https://www.w3.org/TR/SVG2/struct.html#DescElement
2554
2669
  */
2555
- itemid?: AttrString;
2670
+ interface Desc extends SVGCoreAttributes<SVGDescElement> {}
2556
2671
 
2557
2672
  /**
2558
- * Specifies a list of one or more property names for the element in the context of microdata.
2559
- * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemprop
2673
+ * @see https://svgwg.org/specs/animations/#DiscardElement
2560
2674
  */
2561
- itemprop?: AttrString;
2675
+ interface Discard
2676
+ extends SVGCoreAttributes<SVGElement>,
2677
+ SVGConditionalProcessingAttributes {
2678
+ /**
2679
+ * @see https://svgwg.org/specs/animations/#DiscardElementBeginAttribute
2680
+ */
2681
+ begin?: AttrString;
2562
2682
 
2563
- /**
2564
- * Specifies a list of IDs of elements that contain additional properties for the item in the context of microdata.
2565
- * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemref
2566
- */
2567
- itemref?: AttrString;
2683
+ /**
2684
+ * @see https://svgwg.org/specs/animations/#DiscardElementHrefAttribute
2685
+ */
2686
+ href?: AttrString;
2687
+ }
2568
2688
 
2569
2689
  /**
2570
- * Specifies that the element is a microdata item, representing a single entity or concept.
2571
- * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemscope
2690
+ * @see https://www.w3.org/TR/SVG2/shapes.html#EllipseElement
2572
2691
  */
2573
- itemscope?: AttrBoolean;
2692
+ interface Ellipse
2693
+ extends SVGCoreAttributes<SVGEllipseElement>,
2694
+ SVGConditionalProcessingAttributes {
2695
+ /**
2696
+ * @see https://www.w3.org/TR/SVG2/paths.html#PathLengthAttribute
2697
+ */
2698
+ pathLength?: AttrStringOrNumber;
2574
2699
 
2575
- /**
2576
- * Specifies the type of item represented by the element using a vocabulary URL in the context of microdata.
2577
- * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemtype
2578
- */
2579
- itemtype?: AttrString;
2700
+ /**
2701
+ * @see https://www.w3.org/TR/SVG2/geometry.html#CxProperty
2702
+ */
2703
+ cx?: AttrStringOrNumber;
2580
2704
 
2581
- /**
2582
- * Specifies the primary language for the element's contents and for any child elements.
2583
- * @see https://html.spec.whatwg.org/multipage/dom.html#attr-lang
2584
- */
2585
- lang?: AttrString;
2705
+ /**
2706
+ * @see https://www.w3.org/TR/SVG2/geometry.html#CyProperty
2707
+ */
2708
+ cy?: AttrStringOrNumber;
2709
+
2710
+ /**
2711
+ * @see https://www.w3.org/TR/SVG2/geometry.html#RxProperty
2712
+ */
2713
+ rx?: AttrStringOrNumber;
2714
+
2715
+ /**
2716
+ * @see https://www.w3.org/TR/SVG2/geometry.html#RyProperty
2717
+ */
2718
+ ry?: AttrStringOrNumber;
2719
+ }
2586
2720
 
2587
2721
  /**
2588
- * Specifies a cryptographic nonce (number used once) for content within a script or style element.
2589
- * @see https://html.spec.whatwg.org/multipage/urls-and-fetching.html#attr-nonce
2722
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-feblend
2590
2723
  */
2591
- nonce?: AttrString;
2724
+ interface FEBlend
2725
+ extends SVGCoreAttributes<SVGFEBlendElement>,
2726
+ SVGFilterPrimitiveAttributes {
2727
+ /**
2728
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2729
+ */
2730
+ in?: AttrFEIn;
2731
+
2732
+ /**
2733
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2734
+ */
2735
+ in2?: AttrFEIn;
2736
+
2737
+ /**
2738
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feblend-mode
2739
+ */
2740
+ mode?: AttrBlendMode;
2741
+ }
2592
2742
 
2593
2743
  /**
2594
- * Specifies that the element won't be rendered until it becomes shown, at which point it will be rendered on top of other page content.
2595
- * @see https://html.spec.whatwg.org/multipage/popover.html#attr-popover
2744
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fecolormatrix
2596
2745
  */
2597
- popover?: AttrBoolean | "auto" | "manual";
2746
+ interface FEColorMatrix
2747
+ extends SVGCoreAttributes<SVGFEColorMatrixElement>,
2748
+ SVGFilterPrimitiveAttributes {
2749
+ /**
2750
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2751
+ */
2752
+ in?: AttrFEIn;
2753
+
2754
+ /**
2755
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecolormatrix-type
2756
+ */
2757
+ type?:
2758
+ | AttrMissing
2759
+ | "matrix"
2760
+ | "saturate"
2761
+ | "hueRotate"
2762
+ | "luminanceToAlpha";
2763
+
2764
+ /**
2765
+ * A list of numbers
2766
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecolormatrix-values
2767
+ */
2768
+ values?: AttrStringOrNumber;
2769
+ }
2598
2770
 
2599
2771
  /**
2600
- * Specifies a list of part names for the element that can be targeted by the ::part() CSS pseudo-element.
2601
- * @see https://drafts.csswg.org/css-shadow-parts-1/#part-attribute
2772
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fecomponenttransfer
2602
2773
  */
2603
- part?: AttrString;
2774
+ interface FEComponentTransfer
2775
+ extends SVGCoreAttributes<SVGFEComponentTransferElement>,
2776
+ SVGFilterPrimitiveAttributes {
2777
+ /**
2778
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2779
+ */
2780
+ in?: AttrFEIn;
2781
+ }
2604
2782
 
2605
2783
  /**
2606
- * Specifies the name of the slot the element should be assigned to when inside a shadow tree.
2607
- * @see https://html.spec.whatwg.org/multipage/scripting.html#attr-slot
2784
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fecomposite
2608
2785
  */
2609
- slot?: AttrString;
2786
+ interface FEComposite
2787
+ extends SVGCoreAttributes<SVGFECompositeElement>,
2788
+ SVGFilterPrimitiveAttributes {
2789
+ /**
2790
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2791
+ */
2792
+ in?: AttrFEIn;
2793
+
2794
+ /**
2795
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2796
+ */
2797
+ in2?: AttrFEIn;
2798
+
2799
+ /**
2800
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomposite-operator
2801
+ */
2802
+ operator?:
2803
+ | AttrMissing
2804
+ | "over"
2805
+ | "in"
2806
+ | "out"
2807
+ | "atop"
2808
+ | "xor"
2809
+ | "lighter"
2810
+ | "arithmetic";
2811
+
2812
+ /**
2813
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomposite-k1
2814
+ */
2815
+ k1?: AttrStringOrNumber;
2816
+
2817
+ /**
2818
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomposite-k2
2819
+ */
2820
+ k2?: AttrStringOrNumber;
2821
+
2822
+ /**
2823
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomposite-k3
2824
+ */
2825
+ k3?: AttrStringOrNumber;
2826
+
2827
+ /**
2828
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomposite-k4
2829
+ */
2830
+ k4?: AttrStringOrNumber;
2831
+ }
2832
+
2833
+ /**
2834
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-feconvolvematrix
2835
+ */
2836
+ interface FEConvolveMatrix
2837
+ extends SVGCoreAttributes<SVGFEConvolveMatrixElement>,
2838
+ SVGFilterPrimitiveAttributes {
2839
+ /**
2840
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2841
+ */
2842
+ in?: AttrFEIn;
2843
+
2844
+ /**
2845
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-order
2846
+ */
2847
+ order?: AttrStringOrNumber;
2848
+
2849
+ /**
2850
+ * List of numbers
2851
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feconvolvematrix-kernelmatrix
2852
+ */
2853
+ kernelMatrix?: AttrStringOrNumber;
2854
+
2855
+ /**
2856
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feconvolvematrix-divisor
2857
+ */
2858
+ divisor?: AttrStringOrNumber;
2859
+
2860
+ /**
2861
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feconvolvematrix-bias
2862
+ */
2863
+ bias?: AttrStringOrNumber;
2864
+
2865
+ /**
2866
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feconvolvematrix-targetx
2867
+ */
2868
+ targetX?: AttrStringOrNumber;
2869
+
2870
+ /**
2871
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feconvolvematrix-targety
2872
+ */
2873
+ targetY?: AttrStringOrNumber;
2874
+
2875
+ /**
2876
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feconvolvematrix-edgemode
2877
+ */
2878
+ edgeMode?: AttrMissing | "duplicate" | "wrap" | "none";
2879
+
2880
+ /**
2881
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feconvolvematrix-kernelunitlength
2882
+ */
2883
+ kernelUnitLength?: AttrStringOrNumber;
2884
+
2885
+ /**
2886
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feconvolvematrix-preservealpha
2887
+ */
2888
+ preserveAlpha?: AttrBooleanString;
2889
+ }
2890
+
2891
+ /**
2892
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fediffuselighting
2893
+ */
2894
+ interface FEDiffuseLighting
2895
+ extends SVGCoreAttributes<SVGFEDiffuseLightingElement>,
2896
+ SVGFilterPrimitiveAttributes {
2897
+ /**
2898
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2899
+ */
2900
+ in?: AttrFEIn;
2901
+
2902
+ /**
2903
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fediffuselighting-surfacescale
2904
+ */
2905
+ surfaceScale?: AttrStringOrNumber;
2906
+
2907
+ /**
2908
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fediffuselighting-diffuseconstant
2909
+ */
2910
+ diffuseConstant?: AttrStringOrNumber;
2911
+
2912
+ /**
2913
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fediffuselighting-kernelunitlength
2914
+ */
2915
+ kernelUnitLength?: AttrStringOrNumber;
2916
+ }
2917
+
2918
+ /**
2919
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fedisplacementmap
2920
+ */
2921
+ interface FEDisplacementMap
2922
+ extends SVGCoreAttributes<SVGFEDisplacementMapElement>,
2923
+ SVGFilterPrimitiveAttributes {
2924
+ /**
2925
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2926
+ */
2927
+ in?: AttrFEIn;
2928
+
2929
+ /**
2930
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2931
+ */
2932
+ in2?: AttrFEIn;
2933
+
2934
+ /**
2935
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fedisplacementmap-scale
2936
+ */
2937
+ scale?: AttrStringOrNumber;
2938
+
2939
+ /**
2940
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fedisplacementmap-xchannelselector
2941
+ */
2942
+ xChannelSelector?: "R" | "G" | "B" | "A";
2943
+
2944
+ /**
2945
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fedisplacementmap-ychannelselector
2946
+ */
2947
+ yChannelSelector?: "R" | "G" | "B" | "A";
2948
+ }
2949
+
2950
+ /**
2951
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fedistantlight
2952
+ */
2953
+ interface FEDistantLight
2954
+ extends SVGCoreAttributes<SVGFEDistantLightElement>,
2955
+ SVGFilterPrimitiveAttributes {
2956
+ /**
2957
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2958
+ */
2959
+ in?: AttrFEIn;
2960
+
2961
+ /**
2962
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fedistantlight-azimuth
2963
+ */
2964
+ azimuth?: AttrStringOrNumber;
2965
+
2966
+ /**
2967
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fedistantlight-elevation
2968
+ */
2969
+ elevation?: AttrStringOrNumber;
2970
+ }
2971
+
2972
+ /**
2973
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fedropshadow
2974
+ */
2975
+ interface FEDropShadow
2976
+ extends SVGCoreAttributes<SVGFEDropShadowElement>,
2977
+ SVGFilterPrimitiveAttributes {
2978
+ /**
2979
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
2980
+ */
2981
+ in?: AttrFEIn;
2982
+
2983
+ /**
2984
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fedropshadow-stddeviation
2985
+ */
2986
+ stdDeviation?: AttrStringOrNumber;
2987
+
2988
+ /**
2989
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fedropshadow-dx
2990
+ */
2991
+ dx?: AttrStringOrNumber;
2992
+
2993
+ /**
2994
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fedropshadow-dy
2995
+ */
2996
+ dy?: AttrStringOrNumber;
2997
+ }
2998
+
2999
+ /**
3000
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-feflood
3001
+ */
3002
+ interface FEFlood
3003
+ extends SVGCoreAttributes<SVGFEFloodElement>,
3004
+ SVGFilterPrimitiveAttributes {}
3005
+
3006
+ /**
3007
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fefunca
3008
+ */
3009
+ interface FEFuncA
3010
+ extends SVGCoreAttributes<SVGFEFuncAElement>,
3011
+ SVGTransferFunctionElementAttributes {}
3012
+
3013
+ /**
3014
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fefuncb
3015
+ */
3016
+ interface FEFuncB
3017
+ extends SVGCoreAttributes<SVGFEFuncBElement>,
3018
+ SVGTransferFunctionElementAttributes {}
3019
+
3020
+ /**
3021
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fefuncg
3022
+ */
3023
+ interface FEFuncG
3024
+ extends SVGCoreAttributes<SVGFEFuncGElement>,
3025
+ SVGTransferFunctionElementAttributes {}
3026
+
3027
+ /**
3028
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fefuncr
3029
+ */
3030
+ interface FEFuncR
3031
+ extends SVGCoreAttributes<SVGFEFuncRElement>,
3032
+ SVGTransferFunctionElementAttributes {}
3033
+
3034
+ /**
3035
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fegaussianblur
3036
+ */
3037
+ interface FEGaussianBlur
3038
+ extends SVGCoreAttributes<SVGFEGaussianBlurElement>,
3039
+ SVGFilterPrimitiveAttributes {
3040
+ /**
3041
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
3042
+ */
3043
+ in?: AttrFEIn;
3044
+
3045
+ /**
3046
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fegaussianblur-stddeviation
3047
+ */
3048
+ stdDeviation?: AttrStringOrNumber;
3049
+
3050
+ /**
3051
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fegaussianblur-edgemode
3052
+ */
3053
+ edgeMode?: AttrMissing | "duplicate" | "wrap" | "none";
3054
+ }
3055
+
3056
+ /**
3057
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-feimage
3058
+ */
3059
+ interface FEImage
3060
+ extends SVGCoreAttributes<SVGFEImageElement>,
3061
+ SVGFilterPrimitiveAttributes {
3062
+ /**
3063
+ * @see https://www.w3.org/TR/2011/REC-SVG11-20110816/struct.html#ExternalResourcesRequiredAttribute
3064
+ */
3065
+ externalResourcesRequired?: AttrBooleanString;
3066
+
3067
+ /**
3068
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feimage-preserveaspectratio
3069
+ */
3070
+ preserveAspectRatio?: AttrPreserveAspectRatio;
3071
+
3072
+ /**
3073
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feimage-crossorigin
3074
+ */
3075
+ crossorigin?: AttrMissing | "anonymous" | "use-credentials";
3076
+ }
3077
+
3078
+ /**
3079
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-femerge
3080
+ */
3081
+ interface FEMerge
3082
+ extends SVGCoreAttributes<SVGFEMergeElement>,
3083
+ SVGFilterPrimitiveAttributes {}
3084
+
3085
+ /**
3086
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-femergenode
3087
+ */
3088
+ interface FEMergeNode extends SVGCoreAttributes<SVGFEMergeNodeElement> {
3089
+ /**
3090
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
3091
+ */
3092
+ in?: AttrFEIn;
3093
+ }
3094
+
3095
+ /**
3096
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-femorphology
3097
+ */
3098
+ interface FEMorphology extends SVGCoreAttributes<SVGFEMorphologyElement> {
3099
+ /**
3100
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
3101
+ */
3102
+ in?: AttrFEIn;
3103
+ }
3104
+
3105
+ /**
3106
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-feoffset
3107
+ */
3108
+ interface FEOffset
3109
+ extends SVGCoreAttributes<SVGFEOffsetElement>,
3110
+ SVGFilterPrimitiveAttributes {
3111
+ /**
3112
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
3113
+ */
3114
+ in?: AttrFEIn;
3115
+
3116
+ /**
3117
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-femorphology-operator
3118
+ */
3119
+ operator?: AttrMissing | "erode" | "dilate";
3120
+
3121
+ /**
3122
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-femorphology-radius
3123
+ */
3124
+ radius?: AttrStringOrNumber;
3125
+ }
3126
+
3127
+ /**
3128
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fepointlight
3129
+ */
3130
+ interface FEPointLight extends SVGCoreAttributes<SVGFEPointLightElement> {
3131
+ /**
3132
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fepointlight-x
3133
+ */
3134
+ x?: AttrStringOrNumber;
3135
+
3136
+ /**
3137
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fepointlight-y
3138
+ */
3139
+ y?: AttrStringOrNumber;
3140
+
3141
+ /**
3142
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fepointlight-z
3143
+ */
3144
+ z?: AttrStringOrNumber;
3145
+ }
3146
+
3147
+ /**
3148
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fespecularlighting
3149
+ */
3150
+ interface FESpecularLighting
3151
+ extends SVGCoreAttributes<SVGFESpecularLightingElement>,
3152
+ SVGFilterPrimitiveAttributes {
3153
+ /**
3154
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
3155
+ */
3156
+ in?: AttrFEIn;
3157
+
3158
+ /**
3159
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespecularlighting-surfacescale
3160
+ */
3161
+ surfaceScale?: AttrStringOrNumber;
3162
+
3163
+ /**
3164
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespecularlighting-specularconstant
3165
+ */
3166
+ specularConstant?: AttrStringOrNumber;
3167
+
3168
+ /**
3169
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespecularlighting-specularexponent
3170
+ */
3171
+ specularExponent?: AttrStringOrNumber;
3172
+
3173
+ /**
3174
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespecularlighting-kernelunitlength
3175
+ */
3176
+ kernelUnitLength?: AttrStringOrNumber;
3177
+ }
3178
+
3179
+ /**
3180
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fespotlight
3181
+ */
3182
+ interface FESpotLight extends SVGCoreAttributes<SVGFESpotLightElement> {
3183
+ /**
3184
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespotlight-x
3185
+ */
3186
+ x?: AttrStringOrNumber;
3187
+
3188
+ /**
3189
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespotlight-y
3190
+ */
3191
+ y?: AttrStringOrNumber;
3192
+
3193
+ /**
3194
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespotlight-z
3195
+ */
3196
+ z?: AttrStringOrNumber;
3197
+
3198
+ /**
3199
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespotlight-pointsatx
3200
+ */
3201
+ pointsAtX?: AttrStringOrNumber;
3202
+
3203
+ /**
3204
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespotlight-pointsaty
3205
+ */
3206
+ pointsAtY?: AttrStringOrNumber;
3207
+
3208
+ /**
3209
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespotlight-pointsatz
3210
+ */
3211
+ pointsAtZ?: AttrStringOrNumber;
3212
+
3213
+ /**
3214
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespotlight-specularexponent
3215
+ */
3216
+ specularExponent?: AttrStringOrNumber;
3217
+
3218
+ /**
3219
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fespotlight-limitingconeangle
3220
+ */
3221
+ limitingConeAngle?: AttrStringOrNumber;
3222
+ }
3223
+
3224
+ /**
3225
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-fetile
3226
+ */
3227
+ interface FETile
3228
+ extends SVGCoreAttributes<SVGFETileElement>,
3229
+ SVGFilterPrimitiveAttributes {
3230
+ /**
3231
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-in
3232
+ */
3233
+ in?: AttrFEIn;
3234
+ }
3235
+
3236
+ /**
3237
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-feturbulence
3238
+ */
3239
+ interface FETurbulence
3240
+ extends SVGCoreAttributes<SVGFETurbulenceElement>,
3241
+ SVGFilterPrimitiveAttributes {
3242
+ /**
3243
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feturbulence-basefrequency
3244
+ */
3245
+ baseFrequency?: AttrStringOrNumber;
3246
+
3247
+ /**
3248
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feturbulence-numoctaves
3249
+ */
3250
+ numOctaves?: AttrStringOrNumber;
3251
+
3252
+ /**
3253
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feturbulence-seed
3254
+ */
3255
+ seed?: AttrStringOrNumber;
3256
+
3257
+ /**
3258
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feturbulence-stitchtiles
3259
+ */
3260
+ stichTiles?: AttrMissing | "stitch" | "noStitch";
3261
+
3262
+ /**
3263
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-feturbulence-type
3264
+ */
3265
+ type?: AttrMissing | "fractalNoise" | "turbulence";
3266
+ }
3267
+
3268
+ /**
3269
+ * @see https://www.w3.org/TR/filter-effects-1/#elementdef-filter
3270
+ */
3271
+ interface Filter extends SVGCoreAttributes<SVGFilterElement> {
3272
+ /**
3273
+ * @see https://www.w3.org/TR/2011/REC-SVG11-20110816/struct.html#ExternalResourcesRequiredAttribute
3274
+ */
3275
+ externalResourcesRequired?: AttrBooleanString;
3276
+
3277
+ /**
3278
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-x
3279
+ */
3280
+ x?: AttrStringOrNumber;
3281
+
3282
+ /**
3283
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-y
3284
+ */
3285
+ y?: AttrStringOrNumber;
3286
+
3287
+ /**
3288
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-width
3289
+ */
3290
+ width?: AttrStringOrNumber;
3291
+
3292
+ /**
3293
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-height
3294
+ */
3295
+ height?: AttrStringOrNumber;
3296
+
3297
+ /**
3298
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-filterunits
3299
+ */
3300
+ filterUnits?: AttrMissing | "userSpaceOnUse" | "objectBoundingBox";
3301
+
3302
+ /**
3303
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitiveunits
3304
+ */
3305
+ primitiveUnits?: AttrMissing | "userSpaceOnUse" | "objectBoundingBox";
3306
+ }
3307
+
3308
+ /**
3309
+ * @see https://www.w3.org/TR/SVG2/embedded.html#ForeignObjectElement
3310
+ */
3311
+ interface ForeignObject
3312
+ extends SVGCoreAttributes<SVGForeignObjectElement>,
3313
+ SVGConditionalProcessingAttributes {
3314
+ /**
3315
+ * @see https://www.w3.org/TR/SVG2/geometry.html#XProperty
3316
+ */
3317
+ x?: AttrStringOrNumber;
3318
+
3319
+ /**
3320
+ * @see https://www.w3.org/TR/SVG2/geometry.html#YProperty
3321
+ */
3322
+ y?: AttrStringOrNumber;
3323
+
3324
+ /**
3325
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3326
+ */
3327
+ width?: AttrStringOrNumber;
3328
+
3329
+ /**
3330
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3331
+ */
3332
+ height?: AttrStringOrNumber;
3333
+ }
3334
+
3335
+ /**
3336
+ * @see https://www.w3.org/TR/SVG2/struct.html#GElement
3337
+ */
3338
+ interface G
3339
+ extends SVGCoreAttributes<SVGGElement>,
3340
+ SVGConditionalProcessingAttributes {}
3341
+
3342
+ /**
3343
+ * @see https://www.w3.org/TR/SVG2/embedded.html#ImageElement
3344
+ */
3345
+ interface Image
3346
+ extends SVGCoreAttributes<SVGImageElement>,
3347
+ SVGConditionalProcessingAttributes {
3348
+ /**
3349
+ * @see https://www.w3.org/TR/SVG2/coords.html#PreserveAspectRatioAttribute
3350
+ */
3351
+ preserveAspectRatio?: AttrPreserveAspectRatio;
3352
+
3353
+ /**
3354
+ * @see https://www.w3.org/TR/SVG2/embedded.html#ImageElementHrefAttribute
3355
+ */
3356
+ href?: AttrString;
3357
+
3358
+ /**
3359
+ * @see https://www.w3.org/TR/SVG2/embedded.html#ImageElementCrossoriginAttribute
3360
+ */
3361
+ crossorigin?: AttrMissing | "anonymous" | "use-credentials";
3362
+
3363
+ /**
3364
+ * @see https://www.w3.org/TR/SVG2/geometry.html#XProperty
3365
+ */
3366
+ x?: AttrStringOrNumber;
3367
+
3368
+ /**
3369
+ * @see https://www.w3.org/TR/SVG2/geometry.html#YProperty
3370
+ */
3371
+ y?: AttrStringOrNumber;
3372
+
3373
+ /**
3374
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3375
+ */
3376
+ width?: AttrStringOrNumber;
3377
+
3378
+ /**
3379
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3380
+ */
3381
+ height?: AttrStringOrNumber;
3382
+ }
3383
+
3384
+ /**
3385
+ * @see https://www.w3.org/TR/SVG2/shapes.html#LineElement
3386
+ */
3387
+ interface Line
3388
+ extends SVGCoreAttributes<SVGLineElement>,
3389
+ SVGConditionalProcessingAttributes {
3390
+ /**
3391
+ * @see https://www.w3.org/TR/SVG2/paths.html#PathLengthAttribute
3392
+ */
3393
+ pathLength?: AttrStringOrNumber;
3394
+
3395
+ /**
3396
+ * @see https://www.w3.org/TR/SVG2/shapes.html#LineElementX1Attribute
3397
+ */
3398
+ x1?: AttrStringOrNumber;
3399
+
3400
+ /**
3401
+ * @see https://www.w3.org/TR/SVG2/shapes.html#LineElementY1Attribute
3402
+ */
3403
+ y1?: AttrStringOrNumber;
3404
+
3405
+ /**
3406
+ * @see https://www.w3.org/TR/SVG2/shapes.html#LineElementX2Attribute
3407
+ */
3408
+ x2?: AttrStringOrNumber;
3409
+
3410
+ /**
3411
+ * @see https://www.w3.org/TR/SVG2/shapes.html#LineElementY2Attribute
3412
+ */
3413
+ y2?: AttrStringOrNumber;
3414
+ }
3415
+
3416
+ /**
3417
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElement
3418
+ */
3419
+ interface LinearGradient
3420
+ extends SVGCoreAttributes<SVGLinearGradientElement> {
3421
+ /**
3422
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElementX1Attribute
3423
+ */
3424
+ x1?: AttrStringOrNumber;
3425
+
3426
+ /**
3427
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElementY1Attribute
3428
+ */
3429
+ y1?: AttrStringOrNumber;
3430
+
3431
+ /**
3432
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElementX2Attribute
3433
+ */
3434
+ x2?: AttrStringOrNumber;
3435
+
3436
+ /**
3437
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElementY2Attribute
3438
+ */
3439
+ y2?: AttrStringOrNumber;
3440
+
3441
+ /**
3442
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElementGradientUnitsAttribute
3443
+ */
3444
+ gradientUnits?: AttrMissing | "userSpaceOnUse" | "objectBoundingBox";
3445
+
3446
+ /**
3447
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElementGradientTransformAttribute
3448
+ */
3449
+ gradientTransform?: AttrStringOrNumber;
3450
+
3451
+ /**
3452
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElementSpreadMethodAttribute
3453
+ */
3454
+ spreadMethod?: AttrMissing | "pad" | "reflect" | "repeat";
3455
+
3456
+ /**
3457
+ * @see https://www.w3.org/TR/SVG2/pservers.html#LinearGradientElementHrefAttribute
3458
+ */
3459
+ href?: AttrString;
3460
+ }
3461
+
3462
+ /**
3463
+ * @see https://www.w3.org/TR/SVG2/painting.html#MarkerElement
3464
+ */
3465
+ interface Marker extends SVGCoreAttributes<SVGMarkerElement> {
3466
+ /**
3467
+ * @see https://www.w3.org/TR/SVG2/coords.html#ViewBoxAttribute
3468
+ */
3469
+ viewBox?: AttrStringOrNumber;
3470
+
3471
+ /**
3472
+ * @see https://www.w3.org/TR/SVG2/coords.html#PreserveAspectRatioAttribute
3473
+ */
3474
+ preserveAspectRatio?: AttrPreserveAspectRatio;
3475
+
3476
+ /**
3477
+ * @see https://www.w3.org/TR/SVG2/painting.html#MarkerElementRefXAttribute
3478
+ */
3479
+ refX?: AttrMissing | "left" | "center" | "right" | (string & {});
3480
+
3481
+ /**
3482
+ * @see https://www.w3.org/TR/SVG2/painting.html#MarkerElementRefYAttribute
3483
+ */
3484
+ refY?: AttrMissing | "left" | "center" | "right" | (string & {});
3485
+
3486
+ /**
3487
+ * @see https://www.w3.org/TR/SVG2/painting.html#MarkerUnitsAttribute
3488
+ */
3489
+ markerUnits?: AttrMissing | "strokeWidth" | "userSpaceOnUse";
3490
+
3491
+ /**
3492
+ * @see https://www.w3.org/TR/SVG2/painting.html#MarkerWidthAttribute
3493
+ */
3494
+ markerWidth?: AttrStringOrNumber;
3495
+
3496
+ /**
3497
+ * @see https://www.w3.org/TR/SVG2/painting.html#MarkerHeightAttribute
3498
+ */
3499
+ markerHeight?: AttrStringOrNumber;
3500
+
3501
+ /**
3502
+ * @see https://www.w3.org/TR/SVG2/painting.html#OrientAttribute
3503
+ */
3504
+ orient?:
3505
+ | AttrMissing
3506
+ | "auto"
3507
+ | "auto-start-reverse"
3508
+ | number
3509
+ | (string & {});
3510
+ }
3511
+
3512
+ /**
3513
+ * @see https://www.w3.org/TR/css-masking-1/#elementdef-mask
3514
+ */
3515
+ interface Mask
3516
+ extends SVGCoreAttributes<SVGMaskElement>,
3517
+ SVGConditionalProcessingAttributes {
3518
+ /**
3519
+ * @see https://www.w3.org/TR/css-masking-1/#element-attrdef-mask-x
3520
+ */
3521
+ x?: AttrStringOrNumber;
3522
+
3523
+ /**
3524
+ * @see https://www.w3.org/TR/css-masking-1/#element-attrdef-mask-y
3525
+ */
3526
+ y?: AttrStringOrNumber;
3527
+
3528
+ /**
3529
+ * @see https://www.w3.org/TR/css-masking-1/#element-attrdef-mask-width
3530
+ */
3531
+ width?: AttrStringOrNumber;
3532
+
3533
+ /**
3534
+ * @see https://www.w3.org/TR/css-masking-1/#element-attrdef-mask-height
3535
+ */
3536
+ height?: AttrStringOrNumber;
3537
+
3538
+ /**
3539
+ * @see https://www.w3.org/TR/css-masking-1/#element-attrdef-mask-maskunits
3540
+ */
3541
+ maskUnits?: AttrMissing | "userSpaceOnUse" | "objectBoundingBox";
3542
+
3543
+ /**
3544
+ * @see https://www.w3.org/TR/css-masking-1/#element-attrdef-mask-maskcontentunits
3545
+ */
3546
+ maskContentUnits?: AttrMissing | "userSpaceOnUse" | "objectBoundingBox";
3547
+ }
3548
+
3549
+ /**
3550
+ * @see https://www.w3.org/TR/SVG2/struct.html#MetadataElement
3551
+ */
3552
+ interface Metadata extends SVGCoreAttributes<SVGMetadataElement> {}
3553
+
3554
+ /**
3555
+ * @see https://svgwg.org/specs/animations/#MPathElement
3556
+ */
3557
+ interface MPath
3558
+ extends SVGCoreAttributes<SVGMPathElement>,
3559
+ SVGConditionalProcessingAttributes {
3560
+ /**
3561
+ * @see https://svgwg.org/specs/animations/#MPathElementHrefAttribute
3562
+ */
3563
+ href?: AttrString;
3564
+ }
3565
+
3566
+ /**
3567
+ * @see https://www.w3.org/TR/SVG2/paths.html#PathElement
3568
+ */
3569
+ interface Path
3570
+ extends SVGCoreAttributes<SVGPathElement>,
3571
+ SVGConditionalProcessingAttributes {
3572
+ /**
3573
+ * @see https://www.w3.org/TR/SVG2/paths.html#PathLengthAttribute
3574
+ */
3575
+ pathLength?: AttrStringOrNumber;
3576
+
3577
+ /**
3578
+ * @see https://www.w3.org/TR/SVG2/paths.html#DProperty
3579
+ */
3580
+ d?: AttrString;
3581
+ }
3582
+
3583
+ /**
3584
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElement
3585
+ */
3586
+ interface Pattern extends SVGCoreAttributes<SVGPatternElement> {
3587
+ /**
3588
+ * @see https://www.w3.org/TR/SVG2/coords.html#ViewBoxAttribute
3589
+ */
3590
+ viewBox?: AttrStringOrNumber;
3591
+
3592
+ /**
3593
+ * @see https://www.w3.org/TR/SVG2/coords.html#PreserveAspectRatioAttribute
3594
+ */
3595
+ preserveAspectRatio?: AttrPreserveAspectRatio;
3596
+
3597
+ /**
3598
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElementXAttribute
3599
+ */
3600
+ x?: AttrStringOrNumber;
3601
+
3602
+ /**
3603
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElementYAttribute
3604
+ */
3605
+ y?: AttrStringOrNumber;
3606
+
3607
+ /**
3608
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElementWidthAttribute
3609
+ */
3610
+ width?: AttrStringOrNumber;
3611
+
3612
+ /**
3613
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElementHeightAttribute
3614
+ */
3615
+ height?: AttrStringOrNumber;
3616
+
3617
+ /**
3618
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElementPatternUnitsAttribute
3619
+ */
3620
+ patternUnits?: AttrMissing | "userSpaceOnUse" | "objectBoundingBox";
3621
+
3622
+ /**
3623
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElementPatternContentUnitsAttribute
3624
+ */
3625
+ patternContentUnits?:
3626
+ | AttrMissing
3627
+ | "userSpaceOnUse"
3628
+ | "objectBoundingBox";
3629
+
3630
+ /**
3631
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElementPatternTransformAttribute
3632
+ */
3633
+ patternTransform?: AttrStringOrNumber;
3634
+
3635
+ /**
3636
+ * @see https://www.w3.org/TR/SVG2/pservers.html#PatternElementHrefAttribute
3637
+ */
3638
+ href?: AttrString;
3639
+ }
3640
+
3641
+ /**
3642
+ * @see https://www.w3.org/TR/SVG2/shapes.html#PolygonElement
3643
+ */
3644
+ interface Polygon
3645
+ extends SVGCoreAttributes<SVGPolygonElement>,
3646
+ SVGConditionalProcessingAttributes {
3647
+ /**
3648
+ * @see https://www.w3.org/TR/SVG2/paths.html#PathLengthAttribute
3649
+ */
3650
+ pathLength?: AttrStringOrNumber;
3651
+
3652
+ /**
3653
+ * @see https://www.w3.org/TR/SVG2/shapes.html#PolygonElementPointsAttribute
3654
+ */
3655
+ points?: AttrStringOrNumber;
3656
+ }
3657
+
3658
+ /**
3659
+ * @see https://www.w3.org/TR/SVG2/shapes.html#PolylineElement
3660
+ */
3661
+ interface Polyline
3662
+ extends SVGCoreAttributes<SVGPolylineElement>,
3663
+ SVGConditionalProcessingAttributes {
3664
+ /**
3665
+ * @see https://www.w3.org/TR/SVG2/paths.html#PathLengthAttribute
3666
+ */
3667
+ pathLength?: AttrStringOrNumber;
3668
+
3669
+ /**
3670
+ * @see https://www.w3.org/TR/SVG2/shapes.html#PolygonElementPointsAttribute
3671
+ */
3672
+ points?: AttrStringOrNumber;
3673
+ }
3674
+
3675
+ /**
3676
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElement
3677
+ */
3678
+ interface RadialGradient
3679
+ extends SVGCoreAttributes<SVGRadialGradientElement> {
3680
+ /**
3681
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementCXAttribute
3682
+ */
3683
+ cx?: AttrStringOrNumber;
3684
+
3685
+ /**
3686
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementCYAttribute
3687
+ */
3688
+ cy?: AttrStringOrNumber;
3689
+
3690
+ /**
3691
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementRAttribute
3692
+ */
3693
+ r?: AttrStringOrNumber;
3694
+
3695
+ /**
3696
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementFXAttribute
3697
+ */
3698
+ fx?: AttrStringOrNumber;
3699
+
3700
+ /**
3701
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementFYAttribute
3702
+ */
3703
+ fy?: AttrStringOrNumber;
3704
+
3705
+ /**
3706
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementFRAttribute
3707
+ */
3708
+ fr?: AttrStringOrNumber;
3709
+
3710
+ /**
3711
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementGradientUnitsAttribute
3712
+ */
3713
+ gradientUnits?: AttrMissing | "userSpaceOnUse" | "objectBoundingBox";
3714
+
3715
+ /**
3716
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementGradientTransformAttribute
3717
+ */
3718
+ gradientTransform?: AttrString;
3719
+
3720
+ /**
3721
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementSpreadMethodAttribute
3722
+ */
3723
+ spreadMethod?: AttrMissing | "pad" | "reflect" | "repeat";
3724
+
3725
+ /**
3726
+ * @see https://www.w3.org/TR/SVG2/pservers.html#RadialGradientElementHrefAttribute
3727
+ */
3728
+ href?: AttrString;
3729
+ }
3730
+
3731
+ /**
3732
+ * @see https://www.w3.org/TR/SVG2/shapes.html#RectElement
3733
+ */
3734
+ interface Rect
3735
+ extends SVGCoreAttributes<SVGRectElement>,
3736
+ SVGConditionalProcessingAttributes {
3737
+ /**
3738
+ * @see https://www.w3.org/TR/SVG2/paths.html#PathLengthAttribute
3739
+ */
3740
+ pathLength?: AttrStringOrNumber;
3741
+
3742
+ /**
3743
+ * @see https://www.w3.org/TR/SVG2/geometry.html#XProperty
3744
+ */
3745
+ x?: AttrStringOrNumber;
3746
+
3747
+ /**
3748
+ * @see https://www.w3.org/TR/SVG2/geometry.html#YProperty
3749
+ */
3750
+ y?: AttrStringOrNumber;
3751
+
3752
+ /**
3753
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3754
+ */
3755
+ width?: AttrStringOrNumber;
3756
+
3757
+ /**
3758
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3759
+ */
3760
+ height?: AttrStringOrNumber;
3761
+
3762
+ /**
3763
+ * @see https://www.w3.org/TR/SVG2/geometry.html#RxProperty
3764
+ */
3765
+ rx?: AttrStringOrNumber;
3766
+
3767
+ /**
3768
+ * @see https://www.w3.org/TR/SVG2/geometry.html#RyProperty
3769
+ */
3770
+ ry?: AttrStringOrNumber;
3771
+ }
3772
+
3773
+ /**
3774
+ * @see https://svgwg.org/specs/animations/#SetElement
3775
+ */
3776
+ interface Set
3777
+ extends SVGCoreAttributes<SVGSetElement>,
3778
+ SVGAnimationTargetElementAttributes,
3779
+ SVGAnimationAttributeTargetAttributes,
3780
+ SVGAnimationTimingAttributes,
3781
+ SVGConditionalProcessingAttributes {
3782
+ /**
3783
+ * @see https://svgwg.org/specs/animations/#SetElementToAttribute
3784
+ */
3785
+ to?: AttrStringOrNumber;
3786
+ }
3787
+
3788
+ /**
3789
+ * @see https://www.w3.org/TR/SVG2/pservers.html#StopElement
3790
+ */
3791
+ interface Stop extends SVGCoreAttributes<SVGStopElement> {
3792
+ /**
3793
+ * @see https://www.w3.org/TR/SVG2/pservers.html#StopElementOffsetAttribute
3794
+ */
3795
+ offset?: AttrStringOrNumber;
3796
+ }
3797
+
3798
+ /**
3799
+ * @see https://www.w3.org/TR/SVG2/struct.html#SVGElement
3800
+ */
3801
+ interface SVG
3802
+ extends SVGCoreAttributes<SVGSVGElement>,
3803
+ SVGConditionalProcessingAttributes {
3804
+ /**
3805
+ * A list of four numbers `<min-x>`, `<min-y>`, `<width>` and `<height>`, separated by whitespace and/or a comma
3806
+ * @see https://www.w3.org/TR/SVG2/coords.html#ViewBoxAttribute
3807
+ */
3808
+ viewBox?: AttrString;
3809
+
3810
+ /**
3811
+ * @see https://www.w3.org/TR/SVG2/coords.html#PreserveAspectRatioAttribute
3812
+ */
3813
+ preserveAspectRatio?: AttrPreserveAspectRatio;
3814
+
3815
+ /**
3816
+ * @see https://www.w3.org/TR/SVG2/interact.html#ZoomAndPanAttribute
3817
+ */
3818
+ zoomAndPan?: AttrMissing | "disable" | "magnify";
3819
+
3820
+ /**
3821
+ * @see https://www.w3.org/TR/SVG2/geometry.html#XProperty
3822
+ */
3823
+ x?: AttrStringOrNumber;
3824
+
3825
+ /**
3826
+ * @see https://www.w3.org/TR/SVG2/geometry.html#YProperty
3827
+ */
3828
+ y?: AttrStringOrNumber;
3829
+
3830
+ /**
3831
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3832
+ */
3833
+ width?: AttrStringOrNumber;
3834
+
3835
+ /**
3836
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3837
+ */
3838
+ height?: AttrStringOrNumber;
3839
+ }
3840
+
3841
+ /**
3842
+ * @see https://www.w3.org/TR/SVG2/struct.html#SwitchElement
3843
+ */
3844
+ interface Switch
3845
+ extends SVGCoreAttributes<SVGSwitchElement>,
3846
+ SVGConditionalProcessingAttributes {}
3847
+
3848
+ /**
3849
+ * @see https://www.w3.org/TR/SVG2/struct.html#SymbolElement
3850
+ */
3851
+ interface Symbol extends SVGCoreAttributes<SVGSymbolElement> {
3852
+ /**
3853
+ * @see https://www.w3.org/TR/SVG2/coords.html#PreserveAspectRatioAttribute
3854
+ */
3855
+ preserveAspectRatio?: AttrPreserveAspectRatio;
3856
+
3857
+ /**
3858
+ * @see https://www.w3.org/TR/SVG2/coords.html#ViewBoxAttribute
3859
+ */
3860
+ viewBox?: AttrStringOrNumber;
3861
+
3862
+ /**
3863
+ * @see https://www.w3.org/TR/SVG2/struct.html#SymbolElementRefXAttribute
3864
+ */
3865
+ refX?:
3866
+ | AttrMissing
3867
+ | "left"
3868
+ | "center"
3869
+ | "right"
3870
+ | number
3871
+ | (string & {});
3872
+
3873
+ /**
3874
+ * @see https://www.w3.org/TR/SVG2/struct.html#SymbolElementRefYAttribute
3875
+ */
3876
+ refY?:
3877
+ | AttrMissing
3878
+ | "top"
3879
+ | "center"
3880
+ | "bottom"
3881
+ | number
3882
+ | (string & {});
3883
+
3884
+ /**
3885
+ * @see https://www.w3.org/TR/SVG2/geometry.html#XProperty
3886
+ */
3887
+ x?: AttrStringOrNumber;
3888
+
3889
+ /**
3890
+ * @see https://www.w3.org/TR/SVG2/geometry.html#YProperty
3891
+ */
3892
+ y?: AttrStringOrNumber;
3893
+
3894
+ /**
3895
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3896
+ */
3897
+ width?: AttrStringOrNumber;
3898
+
3899
+ /**
3900
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
3901
+ */
3902
+ height?: AttrStringOrNumber;
3903
+ }
3904
+
3905
+ /**
3906
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElement
3907
+ */
3908
+ interface Text
3909
+ extends SVGCoreAttributes<SVGTextElement>,
3910
+ SVGConditionalProcessingAttributes {
3911
+ /**
3912
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementLengthAdjustAttribute
3913
+ */
3914
+ lengthAdjust?: AttrMissing | "spacing" | "spacingAndGlyphs";
3915
+
3916
+ /**
3917
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementXAttribute
3918
+ */
3919
+ x?: AttrStringOrNumber;
3920
+
3921
+ /**
3922
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementYAttribute
3923
+ */
3924
+ y?: AttrStringOrNumber;
3925
+
3926
+ /**
3927
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementDXAttribute
3928
+ */
3929
+ dx?: AttrStringOrNumber;
3930
+
3931
+ /**
3932
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementDYAttribute
3933
+ */
3934
+ dy?: AttrStringOrNumber;
3935
+
3936
+ /**
3937
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementRotateAttribute
3938
+ */
3939
+ rotate?: AttrStringOrNumber;
3940
+
3941
+ /**
3942
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementTextLengthAttribute
3943
+ */
3944
+ textLength?: AttrStringOrNumber;
3945
+ }
3946
+
3947
+ /**
3948
+ * @see https://www.w3.org/TR/SVG2/text.html#TextPathElement
3949
+ */
3950
+ interface TextPath
3951
+ extends SVGCoreAttributes<SVGTextPathElement>,
3952
+ SVGConditionalProcessingAttributes {
3953
+ /**
3954
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementLengthAdjustAttribute
3955
+ */
3956
+ lengthAdjust?: AttrMissing | "spacing" | "spacingAndGlyphs";
3957
+
3958
+ /**
3959
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementTextLengthAttribute
3960
+ */
3961
+ textLength?: AttrStringOrNumber;
3962
+
3963
+ /**
3964
+ * @see https://www.w3.org/TR/SVG2/text.html#TextPathElementPathAttribute
3965
+ */
3966
+ path?: AttrStringOrNumber;
3967
+
3968
+ /**
3969
+ * @see https://www.w3.org/TR/SVG2/text.html#TextPathElementHrefAttribute
3970
+ */
3971
+ href?: AttrString;
3972
+
3973
+ /**
3974
+ * @see https://www.w3.org/TR/SVG2/text.html#TextPathElementStartOffsetAttribute
3975
+ */
3976
+ startOffset?: AttrStringOrNumber;
3977
+
3978
+ /**
3979
+ * @see https://www.w3.org/TR/SVG2/text.html#TextPathElementMethodAttribute
3980
+ */
3981
+ method?: AttrMissing | "align" | "stretch";
3982
+
3983
+ /**
3984
+ * @see https://www.w3.org/TR/SVG2/text.html#TextPathElementSpacingAttribute
3985
+ */
3986
+ spacing?: AttrMissing | "auto" | "exact";
3987
+
3988
+ /**
3989
+ * @see https://www.w3.org/TR/SVG2/text.html#TextPathElementSideAttribute
3990
+ */
3991
+ side?: AttrMissing | "left" | "right";
3992
+ }
3993
+
3994
+ /**
3995
+ * @see https://www.w3.org/TR/SVG2/struct.html#TitleElement
3996
+ */
3997
+ interface Title extends SVGCoreAttributes<SVGTitleElement> {}
3998
+
3999
+ /**
4000
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElement
4001
+ */
4002
+ interface TSpan
4003
+ extends SVGCoreAttributes<SVGTSpanElement>,
4004
+ SVGConditionalProcessingAttributes {
4005
+ /**
4006
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementLengthAdjustAttribute
4007
+ */
4008
+ lengthAdjust?: AttrMissing | "spacing" | "spacingAndGlyphs";
4009
+
4010
+ /**
4011
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementXAttribute
4012
+ */
4013
+ x?: AttrStringOrNumber;
4014
+
4015
+ /**
4016
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementYAttribute
4017
+ */
4018
+ y?: AttrStringOrNumber;
4019
+
4020
+ /**
4021
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementDXAttribute
4022
+ */
4023
+ dx?: AttrStringOrNumber;
4024
+
4025
+ /**
4026
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementDYAttribute
4027
+ */
4028
+ dy?: AttrStringOrNumber;
4029
+
4030
+ /**
4031
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementRotateAttribute
4032
+ */
4033
+ rotate?: AttrStringOrNumber;
4034
+
4035
+ /**
4036
+ * @see https://www.w3.org/TR/SVG2/text.html#TextElementTextLengthAttribute
4037
+ */
4038
+ textLength?: AttrStringOrNumber;
4039
+ }
4040
+
4041
+ /**
4042
+ * @see https://www.w3.org/TR/SVG2/struct.html#UseElement
4043
+ */
4044
+ interface Use
4045
+ extends SVGCoreAttributes<SVGUseElement>,
4046
+ SVGConditionalProcessingAttributes {
4047
+ /**
4048
+ * @see https://www.w3.org/TR/SVG2/struct.html#UseElementHrefAttribute
4049
+ */
4050
+ href?: AttrString;
4051
+
4052
+ /**
4053
+ * @see https://www.w3.org/TR/SVG2/geometry.html#XProperty
4054
+ */
4055
+ x?: AttrStringOrNumber;
4056
+
4057
+ /**
4058
+ * @see https://www.w3.org/TR/SVG2/geometry.html#YProperty
4059
+ */
4060
+ y?: AttrStringOrNumber;
4061
+
4062
+ /**
4063
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
4064
+ */
4065
+ width?: AttrStringOrNumber;
4066
+
4067
+ /**
4068
+ * @see https://www.w3.org/TR/SVG2/geometry.html#Sizing
4069
+ */
4070
+ height?: AttrStringOrNumber;
4071
+ }
4072
+
4073
+ /**
4074
+ * @see https://www.w3.org/TR/SVG2/linking.html#ViewElement
4075
+ */
4076
+ interface View extends SVGCoreAttributes<SVGViewElement> {
4077
+ /**
4078
+ * @see https://www.w3.org/TR/SVG2/coords.html#ViewBoxAttribute
4079
+ */
4080
+ viewBox?: AttrStringOrNumber;
4081
+
4082
+ /**
4083
+ * @see https://www.w3.org/TR/SVG2/coords.html#PreserveAspectRatioAttribute
4084
+ */
4085
+ preserveAspectRatio?: AttrPreserveAspectRatio;
4086
+
4087
+ /**
4088
+ * @see https://www.w3.org/TR/SVG2/interact.html#ZoomAndPanAttribute
4089
+ */
4090
+ zoomAndPan?: AttrMissing | "disable" | "magnify";
4091
+ }
4092
+ }
4093
+
4094
+ interface Directives {
4095
+ /**
4096
+ * Used to uniquely identify a tag within a template in order
4097
+ * to get an element reference to it later.
4098
+ *
4099
+ * @see Marko.Component.getEl
4100
+ * @see Marko.Component.getComponent
4101
+ */
4102
+ key?: AttrString;
4103
+
4104
+ /**
4105
+ * Tells Marko to avoid updating the element or its contents (excluding custom tags which may rerender independently).
4106
+ */
4107
+ "no-update"?: AttrBoolean;
4108
+
4109
+ /**
4110
+ * Tells Marko to avoid updating an element's contents (excluding custom tags which may rerender independently). Used instead of no-update when runtime functionality is needed.
4111
+ */
4112
+ "no-update-if"?: AttrBoolean;
4113
+
4114
+ /**
4115
+ * Tells Marko to avoid updating an element's body.
4116
+ */
4117
+ "no-update-body"?: AttrBoolean;
4118
+
4119
+ /**
4120
+ * Tells Marko to avoid updating an element's body. Used instead of no-update-body when runtime functionality is needed.
4121
+ * @see https://markojs.com/docs/syntax/#conditional-rendering
4122
+ */
4123
+ "no-update-body-if"?: AttrBoolean;
4124
+ }
4125
+
4126
+ interface HTMLAttributes<T extends Element = Element>
4127
+ extends AriaAttributes,
4128
+ EventAttributes<T> {
4129
+ /**
4130
+ * Specifies a keyboard shortcut to activate or focus on an element.
4131
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#the-accesskey-attribute
4132
+ */
4133
+ accesskey?: AttrString;
4134
+
4135
+ /**
4136
+ * Controls the capitalization behavior of user input.
4137
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-autocapitalize
4138
+ */
4139
+ autocapitalize?:
4140
+ | AttrOnOff
4141
+ | "characters"
4142
+ | "none"
4143
+ | "sentences"
4144
+ | "words";
4145
+
4146
+ /**
4147
+ * Indicates whether the element should automatically get focus when the page loads.
4148
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#the-autofocus-attribute
4149
+ */
4150
+ autofocus?: AttrBoolean;
4151
+
4152
+ /**
4153
+ * Specifies a space-separated list of class names for an element.
4154
+ * @see https://markojs.com/docs/syntax/#class-attribute
4155
+ * @see https://html.spec.whatwg.org/multipage/dom.html#classes
4156
+ */
4157
+ class?: AttrClass;
4158
+
4159
+ /**
4160
+ * Specifies whether the content of an element is editable or not.
4161
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-contenteditable
4162
+ */
4163
+ contenteditable?: AttrBooleanString | "plaintext-only";
4164
+
4165
+ /**
4166
+ * Specifies the ID of a context menu to show when the element is right-clicked.
4167
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-contextmenu
4168
+ */
4169
+ contextmenu?: AttrString;
4170
+
4171
+ /**
4172
+ * Specifies the text direction for the content of an element.
4173
+ * @see https://html.spec.whatwg.org/multipage/dom.html#the-dir-attribute
4174
+ */
4175
+ dir?: AttrMissing | "ltr" | "rtl" | "auto";
4176
+
4177
+ /**
4178
+ * Specifies whether an element is draggable or not.
4179
+ * @see https://html.spec.whatwg.org/multipage/dnd.html#the-draggable-attribute
4180
+ */
4181
+ draggable?: AttrBooleanString;
4182
+
4183
+ /**
4184
+ * A string used to identify the element for performance measurement purposes.
4185
+ * @see https://wicg.github.io/element-timing/#sec-elements-exposed
4186
+ */
4187
+ elementtiming?: AttrString;
4188
+
4189
+ /**
4190
+ * Provides a hint to the user agent about the type of action expected from the "Enter" key.
4191
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-enterkeyhint
4192
+ */
4193
+ enterkeyhint?:
4194
+ | AttrMissing
4195
+ | "enter"
4196
+ | "done"
4197
+ | "go"
4198
+ | "next"
4199
+ | "previous"
4200
+ | "search"
4201
+ | "send";
4202
+
4203
+ /**
4204
+ * Specifies a list of part names for the element that are available for CSS ::part() selector.
4205
+ * @see https://drafts.csswg.org/css-shadow-parts-1/#exportparts-attribute
4206
+ */
4207
+ exportparts?: AttrString;
4208
+
4209
+ /**
4210
+ * Indicates whether the element should be hidden from rendering or not.
4211
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#the-hidden-attribute
4212
+ */
4213
+ hidden?: AttrBoolean | "until-found";
4214
+
4215
+ /**
4216
+ * Specifies a unique identifier for the element within the document.
4217
+ * @see https://html.spec.whatwg.org/multipage/dom.html#the-id-attribute
4218
+ */
4219
+ id?: AttrString;
4220
+
4221
+ /**
4222
+ * Specifies whether an element should be inert or not, preventing user interaction and making it non-focusable.
4223
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#inert-subtrees
4224
+ */
4225
+ inert?: AttrBoolean;
4226
+
4227
+ /**
4228
+ * Provides a hint to the user agent about the type of virtual keyboard to display for text input.
4229
+ * @see https://html.spec.whatwg.org/multipage/interaction.html#attr-inputmode
4230
+ */
4231
+ inputmode?:
4232
+ | AttrMissing
4233
+ | "decimal"
4234
+ | "email"
4235
+ | "none"
4236
+ | "numeric"
4237
+ | "search"
4238
+ | "tel"
4239
+ | "text"
4240
+ | "url";
4241
+
4242
+ /**
4243
+ * Specifies the name of a custom element to use as a replacement for the standard built-in element.
4244
+ * @see https://html.spec.whatwg.org/multipage/custom-elements.html#attr-is
4245
+ */
4246
+ is?: AttrString;
4247
+
4248
+ /**
4249
+ * Specifies a globally unique identifier (URI) for the element in the context of microdata.
4250
+ * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemid
4251
+ */
4252
+ itemid?: AttrString;
4253
+
4254
+ /**
4255
+ * Specifies a list of one or more property names for the element in the context of microdata.
4256
+ * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemprop
4257
+ */
4258
+ itemprop?: AttrString;
4259
+
4260
+ /**
4261
+ * Specifies a list of IDs of elements that contain additional properties for the item in the context of microdata.
4262
+ * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemref
4263
+ */
4264
+ itemref?: AttrString;
4265
+
4266
+ /**
4267
+ * Specifies that the element is a microdata item, representing a single entity or concept.
4268
+ * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemscope
4269
+ */
4270
+ itemscope?: AttrBoolean;
4271
+
4272
+ /**
4273
+ * Specifies the type of item represented by the element using a vocabulary URL in the context of microdata.
4274
+ * @see https://html.spec.whatwg.org/multipage/microdata.html#attr-itemtype
4275
+ */
4276
+ itemtype?: AttrString;
4277
+
4278
+ /**
4279
+ * Specifies the primary language for the element's contents and for any child elements.
4280
+ * @see https://html.spec.whatwg.org/multipage/dom.html#attr-lang
4281
+ */
4282
+ lang?: AttrString;
4283
+
4284
+ /**
4285
+ * Specifies a cryptographic nonce (number used once) for content within a script or style element.
4286
+ * @see https://html.spec.whatwg.org/multipage/urls-and-fetching.html#attr-nonce
4287
+ */
4288
+ nonce?: AttrString;
4289
+
4290
+ /**
4291
+ * Specifies that the element won't be rendered until it becomes shown, at which point it will be rendered on top of other page content.
4292
+ * @see https://html.spec.whatwg.org/multipage/popover.html#attr-popover
4293
+ */
4294
+ popover?: AttrBoolean | "auto" | "manual";
4295
+
4296
+ /**
4297
+ * Specifies a list of part names for the element that can be targeted by the ::part() CSS pseudo-element.
4298
+ * @see https://drafts.csswg.org/css-shadow-parts-1/#part-attribute
4299
+ */
4300
+ part?: AttrString;
4301
+
4302
+ /**
4303
+ * Specifies the name of the slot the element should be assigned to when inside a shadow tree.
4304
+ * @see https://html.spec.whatwg.org/multipage/scripting.html#attr-slot
4305
+ */
4306
+ slot?: AttrString;
2610
4307
 
2611
4308
  /**
2612
4309
  * Specifies whether the element should have its spelling and grammar checked or not.
@@ -2651,6 +4348,353 @@ declare global {
2651
4348
  */
2652
4349
  content?: Marko.Body<[], void>;
2653
4350
 
4351
+ /**
4352
+ * data-* global attributes form a class of attributes called custom data attributes, that allow proprietary
4353
+ * information to be exchanged between the HTML and its DOM representation by scripts.
4354
+ * @see https://html.spec.whatwg.org/multipage/dom.html#embedding-custom-non-visible-data-with-the-data-*-attributes
4355
+ */
4356
+ [data: `data-${string}`]: AttrMissing | string | number | boolean;
4357
+ }
4358
+
4359
+ interface SVGCoreAttributes<T extends Element = Element>
4360
+ extends AriaAttributes,
4361
+ EventAttributes,
4362
+ SVGPresentationAttributes {
4363
+ /**
4364
+ * @see https://www.w3.org/TR/SVG2/struct.html#IDAttribute
4365
+ */
4366
+ id?: AttrString;
4367
+
4368
+ /**
4369
+ * @see https://www.w3.org/TR/SVG2/struct.html#SVGElementTabindexAttribute
4370
+ */
4371
+ tabindex?: AttrStringOrNumber;
4372
+
4373
+ /**
4374
+ * @see https://www.w3.org/TR/SVG2/struct.html#LangAttribute
4375
+ */
4376
+ lang?: string;
4377
+
4378
+ /**
4379
+ * @see https://www.w3.org/TR/SVG2/struct.html#XMLSpaceAttribute
4380
+ * @deprecated New content should use the white-space property instead
4381
+ */
4382
+ "xml:space"?: AttrMissing | "default" | "preserve";
4383
+
4384
+ /**
4385
+ * @see https://www.w3.org/TR/SVG2/styling.html#ClassAttribute
4386
+ */
4387
+ class?: AttrClass;
4388
+
4389
+ /**
4390
+ * @see https://www.w3.org/TR/SVG2/styling.html#StyleAttribute
4391
+ */
4392
+ style?: AttrStyle;
4393
+
4394
+ /**
4395
+ * Provide body content for the tag as a Marko.Body.
4396
+ * @see Marko.Body
4397
+ */
4398
+ content?: Marko.Body<[], void>;
4399
+
4400
+ /**
4401
+ * @see https://www.w3.org/TR/SVG2/struct.html#DataAttributes
4402
+ */
4403
+ [data: `data-${string}`]: AttrMissing | string | number | boolean;
4404
+ }
4405
+
4406
+ /**
4407
+ * The SVG spec isn't _exactly_ the same as the CSS spec so
4408
+ * some of these properties might have extra or incorrect values.
4409
+ * If you need something that's missing, please submit a PR
4410
+ */
4411
+ interface SVGPresentationAttributes {
4412
+ "alignment-baseline"?: AttrMissing | csstype.Property.AlignmentBaseline;
4413
+ "baseline-shift"?: AttrMissing | csstype.Property.BaselineShift | number;
4414
+ clip?: AttrMissing | csstype.Property.Clip | number;
4415
+ "clip-path"?: AttrMissing | csstype.Property.ClipPath;
4416
+ "clip-rule"?: AttrMissing | csstype.Property.ClipRule;
4417
+ color?: AttrMissing | csstype.Property.Color;
4418
+ "color-interpolation"?: AttrMissing | csstype.Property.ColorInterpolation;
4419
+ "color-interpolation-filters"?:
4420
+ | AttrMissing
4421
+ | csstype.Property.ColorInterpolation;
4422
+ "color-rendering"?: AttrMissing | csstype.Property.ColorRendering;
4423
+ cursor?: AttrMissing | csstype.Property.Cursor;
4424
+ direction?: AttrMissing | csstype.Property.Direction;
4425
+ display?: AttrMissing | csstype.Property.Display;
4426
+ "dominant-baseline"?:
4427
+ | AttrMissing
4428
+ | csstype.Property.DominantBaseline
4429
+ | number;
4430
+ /**
4431
+ * @see https://www.w3.org/TR/SVG11/filters.html#EnableBackgroundProperty
4432
+ */
4433
+ "enable-background"?: AttrMissing | "accumulate" | "new" | (string & {});
4434
+ fill?: AttrMissing | csstype.Property.Fill;
4435
+ "fill-opacity"?: AttrMissing | csstype.Property.FillOpacity | number;
4436
+ "fill-rule"?: AttrMissing | csstype.Property.FillRule;
4437
+ filter?: AttrMissing | csstype.Property.Filter;
4438
+ "flood-color"?: AttrMissing | csstype.Property.FloodColor;
4439
+ "flood-opacity"?: AttrMissing | csstype.Property.FloodOpacity | number;
4440
+ font?: AttrMissing | csstype.Property.Font;
4441
+ "font-family"?: AttrMissing | csstype.Property.FontFamily;
4442
+ "font-size"?: AttrMissing | csstype.Property.FontSize | number;
4443
+ "font-size-adjust"?:
4444
+ | AttrMissing
4445
+ | csstype.Property.FontSizeAdjust
4446
+ | number;
4447
+ "font-stretch"?: AttrMissing | csstype.Property.FontStretch;
4448
+ "font-style"?: AttrMissing | csstype.Property.FontStyle;
4449
+ "font-variant"?: AttrMissing | csstype.Property.FontVariant;
4450
+ "font-weight"?: AttrMissing | csstype.Property.FontWeight | number;
4451
+ "glyph-orientation-horizontal"?:
4452
+ | AttrMissing
4453
+ | csstype.Property.GlyphOrientationVertical;
4454
+ "glyph-orientation-vertical"?:
4455
+ | AttrMissing
4456
+ | csstype.Property.GlyphOrientationVertical;
4457
+ "image-rendering"?: AttrMissing | csstype.Property.ImageRendering;
4458
+ isolation?: AttrMissing | csstype.Property.Isolation;
4459
+ kerning?: AttrMissing | csstype.Property.FontKerning | number;
4460
+ "letter-spacing"?: AttrMissing | csstype.Property.LetterSpacing | number;
4461
+ "lighting-color"?: AttrMissing | csstype.Property.LightingColor;
4462
+ marker?: AttrMissing | csstype.Property.Marker;
4463
+ "marker-end"?: AttrMissing | csstype.Property.MarkerEnd;
4464
+ "marker-mid"?: AttrMissing | csstype.Property.MarkerMid;
4465
+ "marker-start"?: AttrMissing | csstype.Property.MarkerStart;
4466
+ mask?: AttrMissing | csstype.Property.Mask;
4467
+ opacity?: AttrMissing | csstype.Property.Opacity | number;
4468
+ overflow?: AttrMissing | csstype.Property.Overflow;
4469
+ "paint-order"?: AttrMissing | csstype.Property.PaintOrder;
4470
+ "pointer-events"?: AttrMissing | csstype.Property.PointerEvents;
4471
+ "shape-rendering"?: AttrMissing | csstype.Property.ShapeRendering;
4472
+ "stop-color"?: AttrMissing | csstype.Property.StopColor;
4473
+ "stop-opacity"?: AttrMissing | csstype.Property.StopOpacity | number;
4474
+ stroke?: AttrMissing | csstype.Property.Stroke;
4475
+ "stroke-dasharray"?:
4476
+ | AttrMissing
4477
+ | csstype.Property.StrokeDasharray
4478
+ | number;
4479
+ "stroke-dashoffset"?:
4480
+ | AttrMissing
4481
+ | csstype.Property.StrokeDashoffset
4482
+ | number;
4483
+ "stroke-linecap"?: AttrMissing | csstype.Property.StrokeLinecap;
4484
+ "stroke-linejoin"?: AttrMissing | csstype.Property.StrokeLinejoin;
4485
+ "stroke-miterlimit"?:
4486
+ | AttrMissing
4487
+ | csstype.Property.StrokeMiterlimit
4488
+ | number;
4489
+ "stroke-opacity"?: AttrMissing | csstype.Property.StrokeOpacity | number;
4490
+ "stroke-width"?: AttrMissing | csstype.Property.StrokeWidth | number;
4491
+ "text-anchor"?: AttrMissing | csstype.Property.TextAnchor;
4492
+ "text-decoration"?: AttrMissing | csstype.Property.TextDecoration;
4493
+ "text-rendering"?: AttrMissing | csstype.Property.TextRendering;
4494
+ transform?: AttrMissing | csstype.Property.Transform;
4495
+ "unicode-bidi"?: AttrMissing | csstype.Property.UnicodeBidi;
4496
+ "vector-effect"?: AttrMissing | csstype.Property.VectorEffect;
4497
+ visibility?: AttrMissing | csstype.Property.Visibility;
4498
+ "word-spacing"?: AttrMissing | csstype.Property.WordSpacing | number;
4499
+ "writing-mode"?: AttrMissing | csstype.Property.WritingMode;
4500
+ }
4501
+
4502
+ interface SVGTransferFunctionElementAttributes {
4503
+ /**
4504
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomponenttransfer-type
4505
+ */
4506
+ type?:
4507
+ | AttrMissing
4508
+ | "identity"
4509
+ | "table"
4510
+ | "discrete"
4511
+ | "linear"
4512
+ | "gamma";
4513
+
4514
+ /**
4515
+ * List of numbers
4516
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomponenttransfer-tablevalues
4517
+ */
4518
+ tableValues?: AttrStringOrNumber;
4519
+
4520
+ /**
4521
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomponenttransfer-slope
4522
+ */
4523
+ slope?: AttrStringOrNumber;
4524
+
4525
+ /**
4526
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomponenttransfer-intercept
4527
+ */
4528
+ intercept?: AttrStringOrNumber;
4529
+
4530
+ /**
4531
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomponenttransfer-amplitude
4532
+ */
4533
+ amplitude?: AttrStringOrNumber;
4534
+
4535
+ /**
4536
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomponenttransfer-exponent
4537
+ */
4538
+ exponent?: AttrStringOrNumber;
4539
+
4540
+ /**
4541
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-fecomponenttransfer-offset
4542
+ */
4543
+ offset?: AttrStringOrNumber;
4544
+ }
4545
+
4546
+ interface SVGAnimationAdditionAttributes {
4547
+ /**
4548
+ * @see https://svgwg.org/specs/animations/#AdditiveAttribute
4549
+ */
4550
+ additive?: AttrMissing | "replace" | "sum";
4551
+
4552
+ /**
4553
+ * @see https://svgwg.org/specs/animations/#AccumulateAttribute
4554
+ */
4555
+ accumulate?: AttrMissing | "none" | "sum";
4556
+ }
4557
+
4558
+ interface SVGAnimationTargetElementAttributes {
4559
+ /**
4560
+ * @see https://svgwg.org/specs/animations/#HrefAttribute
4561
+ */
4562
+ href?: AttrString;
4563
+ }
4564
+
4565
+ interface SVGAnimationAttributeTargetAttributes {
4566
+ /**
4567
+ * @see https://svgwg.org/specs/animations/#AttributeNameAttribute
4568
+ */
4569
+ attributeName?: AttrString;
4570
+ }
4571
+
4572
+ interface SVGAnimationTimingAttributes {
4573
+ /**
4574
+ * A semicolon separated list of values
4575
+ * @see https://svgwg.org/specs/animations/#BeginAttribute
4576
+ */
4577
+ begin?: AttrString;
4578
+
4579
+ /**
4580
+ * @see https://svgwg.org/specs/animations/#DurAttribute
4581
+ */
4582
+ dur?: AttrMissing | "media" | "indefinite" | number | (string & {});
4583
+
4584
+ /**
4585
+ * A semicolon separated list of values
4586
+ * @see https://svgwg.org/specs/animations/#EndAttribute
4587
+ */
4588
+ end?: AttrString;
4589
+
4590
+ /**
4591
+ * @see https://svgwg.org/specs/animations/#MinAttribute
4592
+ */
4593
+ min?: AttrMissing | "media" | number | (string & {});
4594
+
4595
+ /**
4596
+ * @see https://svgwg.org/specs/animations/#MaxAttribute
4597
+ */
4598
+ max?: AttrMissing | "media" | number | (string & {});
4599
+
4600
+ /**
4601
+ * @see https://svgwg.org/specs/animations/#RestartAttribute
4602
+ */
4603
+ restart?: AttrMissing | "always" | "whenNotActive" | "never";
4604
+
4605
+ /**
4606
+ * @see https://svgwg.org/specs/animations/#RepeatCountAttribute
4607
+ */
4608
+ repeatCount?: AttrMissing | AttrNumber | "indefinite";
4609
+
4610
+ /**
4611
+ * @see https://svgwg.org/specs/animations/#RepeatDurAttribute
4612
+ */
4613
+ repeatDur?: AttrMissing | AttrNumber | "indefinite";
4614
+
4615
+ /**
4616
+ * @see https://svgwg.org/specs/animations/#FillAttribute
4617
+ */
4618
+ fill?: AttrMissing | "freeze" | "remove";
4619
+ }
4620
+
4621
+ interface SVGAnimationValueAttributes {
4622
+ /**
4623
+ * @see https://svgwg.org/specs/animations/#CalcModeAttribute
4624
+ */
4625
+ calcMode?: AttrMissing | "discrete" | "linear" | "paced" | "spline";
4626
+
4627
+ /**
4628
+ * A semicolon-separated list of values
4629
+ * @see https://svgwg.org/specs/animations/#ValuesAttribute
4630
+ */
4631
+ values?: AttrString;
4632
+
4633
+ /**
4634
+ * A semicolon-separated list of numbers
4635
+ * @see https://svgwg.org/specs/animations/#KeyTimesAttribute
4636
+ */
4637
+ keyTimes?: AttrStringOrNumber;
4638
+
4639
+ /**
4640
+ * A semicolon-separated list of Bézier control points
4641
+ * @see https://svgwg.org/specs/animations/#KeySplinesAttribute
4642
+ */
4643
+ keySplines?: AttrString;
4644
+
4645
+ /**
4646
+ * @see https://svgwg.org/specs/animations/#FromAttribute
4647
+ */
4648
+ from?: AttrStringOrNumber;
4649
+
4650
+ /**
4651
+ * @see https://svgwg.org/specs/animations/#FromAttribute
4652
+ */
4653
+ to?: AttrStringOrNumber;
4654
+
4655
+ /**
4656
+ * @see https://svgwg.org/specs/animations/#FromAttribute
4657
+ */
4658
+ by?: AttrStringOrNumber;
4659
+ }
4660
+
4661
+ interface SVGConditionalProcessingAttributes {
4662
+ /**
4663
+ * Set of space-separated tokens
4664
+ * @see https://www.w3.org/TR/SVG2/struct.html#RequiredExtensionsAttribute
4665
+ */
4666
+ requiredExtensions?: AttrString;
4667
+
4668
+ /**
4669
+ * Set of comma-separated tokens
4670
+ * @see https://www.w3.org/TR/SVG2/struct.html#SystemLanguageAttribute
4671
+ */
4672
+ systemLanguage?: AttrString;
4673
+ }
4674
+
4675
+ interface SVGFilterPrimitiveAttributes {
4676
+ /**
4677
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-x
4678
+ */
4679
+ x?: AttrStringOrNumber;
4680
+
4681
+ /**
4682
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-y
4683
+ */
4684
+ y?: AttrStringOrNumber;
4685
+
4686
+ /**
4687
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-height
4688
+ */
4689
+ height?: AttrStringOrNumber;
4690
+
4691
+ /**
4692
+ * @see https://www.w3.org/TR/filter-effects-1/#element-attrdef-filter-primitive-result
4693
+ */
4694
+ result?: AttrString;
4695
+ }
4696
+
4697
+ interface EventAttributes<T extends Element> {
2654
4698
  /**
2655
4699
  * Fired when resource was not fully loaded, but not as the result of an error.
2656
4700
  * @see https://html.spec.whatwg.org/multipage/media.html#event-media-abort
@@ -3441,13 +5485,6 @@ declare global {
3441
5485
  onWheel?: AttrEventHandler<WheelEvent, T>;
3442
5486
  "on-wheel"?: this["onWheel"];
3443
5487
  onwheel?: AttrString;
3444
-
3445
- /**
3446
- * data-* global attributes form a class of attributes called custom data attributes, that allow proprietary
3447
- * information to be exchanged between the HTML and its DOM representation by scripts.
3448
- * @see https://html.spec.whatwg.org/multipage/dom.html#embedding-custom-non-visible-data-with-the-data-*-attributes
3449
- */
3450
- [data: `data-${string}`]: AttrMissing | string | number | boolean;
3451
5488
  }
3452
5489
 
3453
5490
  interface AriaAttributes {
@@ -3620,7 +5657,7 @@ declare global {
3620
5657
  * Defines the hierarchical level of an element within a structure.
3621
5658
  * @see https://www.w3.org/TR/wai-aria-1.1/#aria-level
3622
5659
  */
3623
- "aria-level"?: AttrMissing | number | string;
5660
+ "aria-level"?: AttrString;
3624
5661
  /**
3625
5662
  * Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies,
3626
5663
  * and user can expect from the live region.
@@ -3933,3 +5970,16 @@ type AttrAutoComplete =
3933
5970
  | "fax"
3934
5971
  | "pager"
3935
5972
  | (string & {});
5973
+ type AttrPreserveAspectRatio =
5974
+ | AttrMissing
5975
+ | `${"none" | `x${"Min" | "Mid" | "Max"}Y${"Min" | "Mid" | "Max"}`}${" meet" | " slice" | ""}`;
5976
+
5977
+ type AttrFEIn =
5978
+ | AttrMissing
5979
+ | "SourceGraphic"
5980
+ | "SourceAlpha"
5981
+ | "BackgroundImage"
5982
+ | "BackgroundAlpha"
5983
+ | "FillPaint"
5984
+ | "StrokePaint"
5985
+ | (string & {});