@arcgis/lumina 4.32.0-next.58 → 4.32.0-next.59

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/dist/jsx/jsx.d.ts DELETED
@@ -1,2096 +0,0 @@
1
- /**
2
- * This reference directive is removed by tsup at compile time. It is only
3
- * needed to correctly type-check this package. For consumers of this package,
4
- * they should have an `./src/lumina.ts` file like so:
5
- * ```ts
6
- * /// <reference types="@arcgis/lumina/typings" />
7
- * ```
8
- */
9
- import type { Properties as CssProperties } from "csstype";
10
- import type { TemplateResult } from "lit-html";
11
- import type { DirectiveResult } from "lit-html/directive.js";
12
- import type { ClassMapDirective, ClassInfo } from "lit-html/directives/class-map.js";
13
- import type { StyleMapDirective } from "lit-html/directives/style-map.js";
14
- import type { Ref } from "lit-html/directives/ref.js";
15
- /**
16
- * The "h" namespace is used to import JSX types for elements and attributes.
17
- * It is imported in order to avoid conflicting global JSX issues.
18
- */
19
- export declare namespace h {
20
- export function h(sel: any, data?: any, text?: any): TemplateResult;
21
- export type { LuminaJsx as JSX };
22
- }
23
- /**
24
- * The references to this function are removed at build time.
25
- */
26
- export declare const Fragment: (props: {
27
- children?: JsxNode;
28
- }) => TemplateResult;
29
- /**
30
- * @private
31
- * The references to this function are removed at build time. You do not need
32
- * to import it directly
33
- */
34
- export declare function jsx(type: string, props: unknown, key?: unknown): JsxNode;
35
- /**
36
- * @private
37
- * The references to this function are removed at build time. You do not need
38
- * to import it directly
39
- */
40
- export declare function jsxs(type: string, props: unknown, key?: unknown): JsxNode;
41
- /**
42
- * The JSX to lit-html conversion has a heuristic to determine whether a prop
43
- * should be converted to a property or attribute at runtime. In cases where
44
- * that heuristic is not sufficient, you can use the `bindAttribute()` function to
45
- * explicitly tell the conversion to treat the prop as an attribute.
46
- *
47
- * This function call will be erased at build-time, thus it has no runtime
48
- * impact. But that also means you should not call this function anywhere other
49
- * than at the top level of a JSX prop value
50
- *
51
- * @example
52
- * ```tsx
53
- * <my-component
54
- * name={bindAttribute("Pass name as attribute rather than property")}
55
- * />
56
- * ```
57
- *
58
- * Will be converted at build time into:
59
- * ```ts
60
- * html`<my-component name="Pass name as attribute rather than property"></my-component>`
61
- * ```
62
- *
63
- * @remarks
64
- * If you often encounter cases where the JSX to lit-html incorrectly converts
65
- * the prop to a property necessitating the use of `bindAttribute()`, please open
66
- * an issue for Lumina.
67
- */
68
- export declare const bindAttribute: <T>(value: T) => T;
69
- /**
70
- * The JSX to lit-html conversion has a heuristic to determine whether a prop
71
- * should be converted to a property, attribute or boolean attribute at runtime.
72
- * In cases where that heuristic is not sufficient, you can use the
73
- * `bindBooleanAttribute()` function to explicitly tell the conversion to treat the
74
- * prop as a boolean attribute.
75
- *
76
- * This function call will be erased at build-time, thus it has no runtime
77
- * impact. But that also means you should not call this function anywhere other
78
- * than at the top level of a JSX prop value
79
- *
80
- * @see https://lit.dev/docs/templates/expressions/#boolean-attribute-expressions
81
- *
82
- * @example
83
- * ```tsx
84
- * <my-component
85
- * checked={bindBooleanAttribute(myBoolean)}
86
- * />
87
- * ```
88
- *
89
- * Will be converted at build time into:
90
- * ```ts
91
- * html`<my-component ?checked=${myBoolean}></my-component>`
92
- * ```
93
- *
94
- * @remarks
95
- * If you often encounter cases where the JSX to lit-html incorrectly converts
96
- * the prop necessitating the use of `bindBooleanAttribute()`, please open
97
- * an issue for Lumina.
98
- */
99
- export declare const bindBooleanAttribute: <T>(value: T) => T;
100
- /**
101
- * The JSX to lit-html conversion has a heuristic to determine whether a prop
102
- * should be converted to a property or attribute at runtime. In cases where
103
- * that heuristic is not sufficient, you can use the `bindProperty()` function to
104
- * explicitly tell the conversion to treat the prop as a property.
105
- *
106
- * This function call will be erased at build-time, thus it has no runtime
107
- * impact. But that also means you should not call this function anywhere other
108
- * than at the top level of a JSX prop value
109
- *
110
- * @example
111
- * ```tsx
112
- * <my-component
113
- * my-prop={bindProperty("Pass my-prop as a property rather than attribute")}
114
- * />
115
- * ```
116
- *
117
- * Will be converted at build time into:
118
- * ```ts
119
- * html`<my-component .my-prop="Pass my-prop as a property rather than attribute"></my-component>`
120
- * ```
121
- *
122
- * @remarks
123
- * If you often encounter cases where the JSX to lit-html incorrectly converts
124
- * the prop to an attribute necessitating the use of `bindProperty()`, please open
125
- * an issue for Lumina.
126
- *
127
- * @remarks
128
- * This function is not named `property()` because that is already taken by
129
- * Lit's \@property() decorator
130
- */
131
- export declare const bindProperty: <T>(value: T) => T;
132
- /**
133
- * The `bindEvent()` function lets you customize the event binding behavior by
134
- * providing options like passive, capture, once and other options that you
135
- * normally can provide to `addEventListener`
136
- *
137
- * This function call will be erased at build-time, thus it has no runtime
138
- * impact.
139
- *
140
- * @example
141
- * ```tsx
142
- * <my-component
143
- * onScroll={bindEvent({ handleEvent: console.log, passive:true })}
144
- * />
145
- * ```tsx
146
- *
147
- * ```ts
148
- * html`<my-component onScroll=${{ handleEvent: console.log, passive:true }}></my-component>`
149
- * ```
150
- *
151
- * @remarks
152
- * This function is a _JSX to lit-html_ adaptation of the Lit's event listener
153
- * customization syntax.
154
- * See https://lit.dev/docs/components/events/#event-options-decorator
155
- *
156
- *
157
- * @remarks
158
- * This function is not named `event` because there is a legacy `window.event`
159
- * global that was interfering with auto-imports of this function.
160
- */
161
- export declare const bindEvent: <T>(descriptor: T | (AddEventListenerOptions & {
162
- handleEvent: T;
163
- })) => T;
164
- export type JsxNode = DirectiveResult<any> | JsxNodeArray | Node | TemplateResult | boolean | number | (NonNullable<unknown> & string) | null | undefined;
165
- interface JsxNodeArray extends Array<JsxNode> {
166
- }
167
- /**
168
- * this.el property on a component only has the public properties of the
169
- * component. All internal methods, properties, as well as LitElement methods
170
- * are excluded. This type approximates what the public API of the component
171
- * looks like.
172
- *
173
- * @example
174
- * Usually, you don't need to use this type directly. If you have an
175
- * `ArcgisCounter` element, you can get it's el type by using
176
- * `ArcgisCounter["el"]`
177
- *
178
- * @remarks
179
- * By using Omit<>, TypeScript also "forgets" all private members of the
180
- * passed in type, which is convenient for us.
181
- */
182
- export type ToElement<Component> = Omit<Component, LuminaJsx.ExcludedProperties>;
183
- /**
184
- * Utility type for getting the JSX prop types for a given component. In particular:
185
- *
186
- * - Excludes LitElement properties that should not be exposed to the end-user
187
- * - Converts event .emit() properties into event callbacks
188
- * - Replaces original HTMLElement property typings with the ones we provide for
189
- * greater type-safety and control
190
- * - For native events listeners, makes currentTarget equal to the component's
191
- * HTML instance
192
- *
193
- * We mark all component properties as optional because there is no easy
194
- * way for us to differentiate between public component properties and just
195
- * regular members that don't have `@property()` decorator (presence or
196
- * absence of decorator does not change the type). Thus, if we don't mark all
197
- * properties as optional, TypeScript will force us to provide a value for all
198
- * methods, and regular properties component may have.
199
- */
200
- export type ToJsx<Component extends {
201
- el: unknown;
202
- }> = LuminaJsx.HTMLAttributes<Component["el"]> & LuminaJsx.RemapEvents<Component> & Partial<Omit<Component, LuminaJsx.ExcludedProperties | keyof HTMLElement | keyof LuminaJsx.RemapEvents<Component>>>;
203
- /**
204
- * This interface will be automatically extended in src/lumina.ts files to add
205
- * typings for Stencil elements usages in Lumina. You do not need to manually
206
- * extend this interface.
207
- *
208
- * @example
209
- * ```ts
210
- * import type { JSX as CalciteJSX } from "@esri/calcite-components/dist/types/components";
211
- * import type { JSX as CommonComponentsJsx } from "@arcgis/common-components/dist/types/components";
212
- *
213
- * declare module "@arcgis/lumina" {
214
- * interface ImportStencilElements
215
- * extends CalciteJSX.IntrinsicElements,
216
- * CommonComponentsJsx.IntrinsicElements {
217
- * }
218
- * }
219
- * ```
220
- */
221
- export interface ImportStencilElements {
222
- }
223
- /**
224
- * Get the type of all events for a given component. Includes native DOM events
225
- * and custom events.
226
- *
227
- * @example
228
- * ```tsx
229
- * render() {
230
- * return <arcgis-map onArcgisViewClick={this._handleViewClick} />
231
- * }
232
- * _handleViewClick(event: ToEvents<HTMLArcgisMapElement>["arcgisViewClick"]) {
233
- * // event.detail
234
- * // event.currentTarget
235
- * }
236
- * ```
237
- *
238
- * @remarks
239
- * This helper is intended to be used on components defined within the same
240
- * package. For external components, you can use
241
- * `HTMLArcgisMapElement["arcgisViewClick"]` directly, without need for
242
- * `ToEvents<>`.
243
- *
244
- * @remarks
245
- * Alternative implementation of this type that is simpler, and potentially
246
- * more performant, but looses "go to definition" information.
247
- *
248
- * ```tsx
249
- * export type ToEvents<Component extends { el: unknown }> = {
250
- * [Key in keyof ToJsx<Component> as Key extends `on${infer EventName}`
251
- * ? Uncapitalize<EventName>
252
- * : never]-?: ListenerToPayloadType<ToJsx<Component>[Key]>;
253
- * };
254
- *
255
- * type ListenerToPayloadType<Listener> = Listener extends (event: infer EventType) => unknown ? EventType : never;
256
- * ```
257
- *
258
- * TypeScript issues that may fix this:
259
- * - https://github.com/microsoft/TypeScript/issues/49909
260
- * - https://github.com/microsoft/TypeScript/issues/50715
261
- */
262
- export type ToEvents<Component> = GlobalEventTypes<MaybeEl<Component>> & {
263
- [Key in keyof Component as ListenerToPayloadType<Component[Key]> extends BaseEvent ? Key : never]-?: ListenerToPayloadType<Component[Key]> & {
264
- currentTarget: MaybeEl<Component>;
265
- target: MaybeEl<Component>;
266
- };
267
- };
268
- type MaybeEl<Component> = Component extends {
269
- el: unknown;
270
- } ? Component["el"] : Component;
271
- export interface TargetedEvent<Target = EventTarget | null, Payload = void> extends BaseEvent {
272
- /**
273
- * Returns any custom data event was created with.
274
- *
275
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/detail)
276
- */
277
- readonly detail: Payload;
278
- /**
279
- * Returns the object whose event listener's callback is currently being invoked.
280
- *
281
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/currentTarget)
282
- */
283
- readonly currentTarget: Target;
284
- /**
285
- * Returns the object to which event is dispatched (its target).
286
- *
287
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/target)
288
- */
289
- readonly target: Target;
290
- }
291
- interface BaseEvent extends Omit<Event, "currentTarget" | "target"> {
292
- /** @deprecated */
293
- initCustomEvent(type: string, bubbles?: boolean, cancelable?: boolean, detail?: any): void;
294
- }
295
- export type EventHandler<E> = {
296
- bivarianceHack(event: E): void;
297
- }["bivarianceHack"];
298
- /**
299
- * From "GlobalEventHandlersCamelCase" extract event names and their payloads.
300
- * Not using "HTMLElementEventMap" because that map has all events in lowercase.
301
- */
302
- type GlobalEventTypes<Target = HTMLElement> = {
303
- [Key in keyof LuminaJsx.GlobalEventHandlersCamelCase<Target> as Key extends `on${infer EventName}` ? Uncapitalize<EventName> : never]-?: Parameters<NonNullable<LuminaJsx.GlobalEventHandlersCamelCase<Target>[Key]>>[0];
304
- };
305
- type ListenerToPayloadType<Listener> = unknown extends Listener ? void : Listener extends {
306
- emit: (...rest: never[]) => infer PayloadType;
307
- } ? PayloadType : Listener extends BaseEvent ? Listener : void;
308
- /**
309
- * Defined Lumina custom elements. This interface is used only for internal
310
- * type-checking only.
311
- */
312
- export interface DeclareElements {
313
- }
314
- /**
315
- * These typings are based on dom-expressions typings:
316
- * https://github.com/ryansolid/dom-expressions/blob/main/packages/dom-expressions/src/jsx.d.ts
317
- *
318
- * They in turn based the typings on Surplus and Inferno:
319
- * - https://github.com/adamhaile/surplus/blob/master/index.d.ts
320
- * - https://github.com/infernojs/inferno/blob/master/packages/inferno/src/core/types.ts
321
- *
322
- * Documentation about how to type JSX in TypeScript:
323
- * https://www.typescriptlang.org/docs/handbook/jsx.html
324
- */
325
- type DOMElement = Element;
326
- export declare namespace LuminaJsx {
327
- /**
328
- * Whether to pick TemplateResult or JsxNode here is a compromise.
329
- *
330
- * - If I tell it Lit JSX type is JsxNode, then even <a /> expression will
331
- * have a very broad JsxNode type (union of template results, null,
332
- * undefined, false, and more). This may slow down type-checking and may be
333
- * too-broad for certain use cases.
334
- * - Since <a /> would be typed very broad, you won't be able to declare
335
- * your function as receiving just TemplateResult
336
- * - Also, this makes TypeScript not allow you to return undefined from
337
- * your functional component
338
- * - This is what React did and what I am going with
339
- * - If I tell TypeScript that JSX type is TemplateResult, then my function
340
- * component is no longer allowed to return undefined or string or etc.
341
- *
342
- * This is mainly a TypeScript limitation. Issues tracking this:
343
- * - https://github.com/microsoft/TypeScript/issues/21699
344
- * - https://github.com/DefinitelyTyped/DefinitelyTyped/issues/18912
345
- *
346
- */
347
- type Element = TemplateResult;
348
- interface ElementClass {
349
- }
350
- interface ElementAttributesProperty {
351
- }
352
- interface IntrinsicClassAttributes {
353
- }
354
- interface ElementChildrenAttribute {
355
- children: JsxNode;
356
- }
357
- interface IntrinsicAttributes {
358
- /**
359
- * The `key` is a special attribute that can be set on any element.
360
- *
361
- * At build-time it is translated into the `keyed()` directive:
362
- * https://lit.dev/docs/templates/directives/#keyed
363
- *
364
- * @remarks
365
- * Unlike in React or Stencil, any JavaScript value is acceptable as a key
366
- */
367
- key?: unknown;
368
- }
369
- interface IntrinsicElements extends HTMLElementTags, SVGElementTags, ReMappedComponents<DeclareElements>, Omit<ReMapStencilComponents<ImportStencilElements>, keyof HTMLElementTags | keyof SVGElementTags> {
370
- }
371
- /**
372
- * By not requiring to have some sort of typings generation watcher to run
373
- * in the background and generate types for the components based on the
374
- * exposed properties, we improve developer experience a lot.
375
- * (no need to run a watcher in the background, no need to commit an
376
- * autogenerated file, fewer merge conflicts...)
377
- *
378
- * The trade-off is that we can't tell in TypeScript if component's public
379
- * properties have a `@property()` decorator or not, so have to expose them
380
- * all. To reduce the noise, we exclude some properties that we know are
381
- * definitely not props (as they are coming from LitElement)
382
- *
383
- * An ESLint rule that mandates all properties to be private/protected or else
384
- * to have a `@property()` decorator would mitigate the issue to a large
385
- * extent.
386
- *
387
- * This does not impact the typings we publish - at build time we have all the
388
- * information and can generate the typings that expose only the actual
389
- * properties component declared.
390
- *
391
- * @remarks
392
- * Do not exclude "manager" and "componentOnReady" since these properties are
393
- * available both on lazy and non-lazy instance.
394
- */
395
- type ExcludedProperties = "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "el" | "listen" | "load" | "loaded" | "willUpdate" | "updated" | "render" | "renderOptions";
396
- type ReMappedComponents<Components> = {
397
- [Key in keyof Components]: Components[Key] extends {
398
- el: unknown;
399
- } ? ToJsx<Components[Key]> : never;
400
- };
401
- /**
402
- * From event emitters create event listener callbacks
403
- */
404
- type RemapEvents<Component extends {
405
- el: unknown;
406
- }> = {
407
- [Key in keyof Component as `on${Key & string}`]?: unknown extends Component[Key] ? never : Component[Key] extends {
408
- emit: (...rest: never[]) => infer PayloadType;
409
- } ? (event: PayloadType & {
410
- currentTarget: Component["el"];
411
- target: Component["el"];
412
- }) => void : never;
413
- };
414
- /**
415
- * - Make ref prop return HTMLElement rather than Stencil element type
416
- * - Uncapitalize the event properties to match the syntax of React 19,
417
- * Preact and Lumina
418
- * - Replace Stencil's HTMLElement property typings with the ones we provide
419
- * for greater type-safety, better documentation and more control
420
- */
421
- type ReMapStencilComponents<Components> = {
422
- [Key in keyof Pick<Components, keyof Components & keyof HTMLElementTagNameMap>]: ReMapStencilComponent<Components[Key]> & HTMLAttributes<HTMLElementTagNameMap[Key]>;
423
- };
424
- type ReMapStencilComponent<Component> = {
425
- [Key in keyof Component as Key extends "ref" | keyof HTMLElement ? never : FixupStencilEventCasing<Key>]: Component[Key];
426
- };
427
- type FixupStencilEventCasing<PropertyName extends PropertyKey> = PropertyName extends `on${infer EventName}` ? `on${Uncapitalize<EventName>}` : PropertyName;
428
- type EventHandlerUnion<T, E extends Event> = (e: E & {
429
- currentTarget: T;
430
- target: DOMElement;
431
- }) => void;
432
- type InputEventHandlerUnion<T, E extends InputEvent> = (e: E & {
433
- currentTarget: T;
434
- target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement ? T : DOMElement;
435
- }) => void;
436
- type ChangeEventHandlerUnion<T, E extends Event> = (e: E & {
437
- currentTarget: T;
438
- target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement ? T : DOMElement;
439
- }) => void;
440
- type FocusEventHandlerUnion<T, E extends FocusEvent> = (e: E & {
441
- currentTarget: T;
442
- target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement ? T : DOMElement;
443
- }) => void;
444
- interface CustomAttributes<T = HTMLElement> {
445
- /**
446
- * The `key` is a special attribute that can be set on any element.
447
- *
448
- * At build-time it is translated into the `keyed()` directive:
449
- * https://lit.dev/docs/templates/directives/#keyed
450
- *
451
- * @remarks
452
- * Unlike in React or Stencil, any JavaScript value is acceptable as a key
453
- */
454
- key?: unknown;
455
- ref?: EventHandler<T | undefined> | Ref<T>;
456
- directives?: readonly DirectiveResult[];
457
- }
458
- interface DOMAttributes<T = HTMLElement> extends CustomAttributes<T>, GlobalEventHandlersCamelCase<T> {
459
- children?: JsxNode;
460
- innerHTML?: string;
461
- innerText?: string | number;
462
- textContent?: string | number;
463
- class?: string | ClassInfo | DirectiveResult<typeof ClassMapDirective>;
464
- }
465
- interface GlobalEventHandlersCamelCase<T = HTMLElement> {
466
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationcancel_event) */
467
- onAnimationCancel?: EventHandlerUnion<T, AnimationEvent>;
468
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event) */
469
- onAnimationEnd?: EventHandlerUnion<T, AnimationEvent>;
470
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event) */
471
- onAnimationIteration?: EventHandlerUnion<T, AnimationEvent>;
472
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event) */
473
- onAnimationStart?: EventHandlerUnion<T, AnimationEvent>;
474
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/auxclick_event) */
475
- onAuxClick?: EventHandlerUnion<T, MouseEvent>;
476
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/beforeinput_event) */
477
- onBeforeInput?: InputEventHandlerUnion<T, InputEvent>;
478
- /**
479
- * Fires when the object loses the input focus.
480
- *
481
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/blur_event)
482
- */
483
- onBlur?: FocusEventHandlerUnion<T, FocusEvent>;
484
- /**
485
- * Fires when the contents of the object or selection have changed.
486
- *
487
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/change_event)
488
- */
489
- onChange?: ChangeEventHandlerUnion<T, Event>;
490
- /**
491
- * Fires when the user clicks the left mouse button on the object
492
- *
493
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/click_event)
494
- */
495
- onClick?: EventHandlerUnion<T, PointerEvent>;
496
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/compositionend_event) */
497
- onCompositionEnd?: EventHandlerUnion<T, CompositionEvent>;
498
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/compositionstart_event) */
499
- onCompositionStart?: EventHandlerUnion<T, CompositionEvent>;
500
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/compositionupdate_event) */
501
- onCompositionUpdate?: EventHandlerUnion<T, CompositionEvent>;
502
- /**
503
- * Fires when the user clicks the right mouse button in the client area, opening the context menu.
504
- *
505
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/contextmenu_event)
506
- */
507
- onContextMenu?: EventHandlerUnion<T, MouseEvent>;
508
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/copy_event) */
509
- onCopy?: EventHandlerUnion<T, ClipboardEvent>;
510
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/cut_event) */
511
- onCut?: EventHandlerUnion<T, ClipboardEvent>;
512
- /**
513
- * Fires when the user double-clicks the object.
514
- *
515
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/dblclick_event)
516
- */
517
- onDblClick?: EventHandlerUnion<T, MouseEvent>;
518
- /**
519
- * Fires on the source object continuously during a drag operation.
520
- *
521
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drag_event)
522
- */
523
- onDrag?: EventHandlerUnion<T, DragEvent>;
524
- /**
525
- * Fires on the source object when the user releases the mouse at the close of a drag operation.
526
- *
527
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragend_event)
528
- */
529
- onDragEnd?: EventHandlerUnion<T, DragEvent>;
530
- /**
531
- * Fires on the target element when the user drags the object to a valid drop target.
532
- *
533
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragenter_event)
534
- */
535
- onDragEnter?: EventHandlerUnion<T, DragEvent>;
536
- /**
537
- * Fires on the target object when the user moves the mouse out of a valid drop target during a drag operation.
538
- *
539
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragleave_event)
540
- */
541
- onDragLeave?: EventHandlerUnion<T, DragEvent>;
542
- /**
543
- * Fires on the target element continuously while the user drags the object over a valid drop target.
544
- *
545
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragover_event)
546
- */
547
- onDragOver?: EventHandlerUnion<T, DragEvent>;
548
- /**
549
- * Fires on the source object when the user starts to drag a text selection or selected object.
550
- *
551
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragstart_event)
552
- */
553
- onDragStart?: EventHandlerUnion<T, DragEvent>;
554
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drop_event) */
555
- onDrop?: EventHandlerUnion<T, DragEvent>;
556
- onEncrypted?: EventHandlerUnion<T, Event>;
557
- /**
558
- * Fires when an error occurs during object loading.
559
- *
560
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/error_event)
561
- */
562
- onError?: EventHandlerUnion<T, Event>;
563
- /**
564
- * Fires when the object receives focus.
565
- *
566
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/focus_event)
567
- */
568
- onFocus?: FocusEventHandlerUnion<T, FocusEvent>;
569
- /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/API/Element/focusout_event) */
570
- onFocusOut?: FocusEventHandlerUnion<T, FocusEvent>;
571
- /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/API/Element/focusin_event) */
572
- onFocusIn?: FocusEventHandlerUnion<T, FocusEvent>;
573
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/fullscreenchange_event) */
574
- onFullscreenChange?: EventHandlerUnion<T, Event>;
575
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/fullscreenerror_event) */
576
- onFullscreenError?: EventHandlerUnion<T, Event>;
577
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/gotpointercapture_event) */
578
- onGotPointerCapture?: EventHandlerUnion<T, PointerEvent>;
579
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/input_event) */
580
- onInput?: InputEventHandlerUnion<T, InputEvent>;
581
- /**
582
- * Fires when the user presses a key.
583
- *
584
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keydown_event)
585
- */
586
- onKeyDown?: EventHandlerUnion<T, KeyboardEvent>;
587
- /**
588
- * Fires when the user releases a key.
589
- *
590
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keyup_event)
591
- */
592
- onKeyUp?: EventHandlerUnion<T, KeyboardEvent>;
593
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/lostpointercapture_event) */
594
- onLostPointerCapture?: EventHandlerUnion<T, PointerEvent>;
595
- /**
596
- * Fires when the user clicks the object with either mouse button.
597
- *
598
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousedown_event)
599
- */
600
- onMouseDown?: EventHandlerUnion<T, MouseEvent>;
601
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseenter_event) */
602
- onMouseEnter?: EventHandlerUnion<T, MouseEvent>;
603
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseleave_event) */
604
- onMouseLeave?: EventHandlerUnion<T, MouseEvent>;
605
- /**
606
- * Fires when the user moves the mouse over the object.
607
- *
608
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousemove_event)
609
- */
610
- onMouseMove?: EventHandlerUnion<T, MouseEvent>;
611
- /**
612
- * Fires when the user moves the mouse pointer outside the boundaries of the object.
613
- *
614
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseout_event)
615
- */
616
- onMouseOut?: EventHandlerUnion<T, MouseEvent>;
617
- /**
618
- * Fires when the user moves the mouse pointer into the object.
619
- *
620
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseover_event)
621
- */
622
- onMouseOver?: EventHandlerUnion<T, MouseEvent>;
623
- /**
624
- * Fires when the user releases a mouse button while the mouse is over the object.
625
- *
626
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseup_event)
627
- */
628
- onMouseUp?: EventHandlerUnion<T, MouseEvent>;
629
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/paste_event) */
630
- onPaste?: EventHandlerUnion<T, ClipboardEvent>;
631
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointercancel_event) */
632
- onPointerCancel?: EventHandlerUnion<T, PointerEvent>;
633
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerdown_event) */
634
- onPointerDown?: EventHandlerUnion<T, PointerEvent>;
635
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerenter_event) */
636
- onPointerEnter?: EventHandlerUnion<T, PointerEvent>;
637
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerleave_event) */
638
- onPointerLeave?: EventHandlerUnion<T, PointerEvent>;
639
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointermove_event) */
640
- onPointerMove?: EventHandlerUnion<T, PointerEvent>;
641
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerout_event) */
642
- onPointerOut?: EventHandlerUnion<T, PointerEvent>;
643
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerover_event) */
644
- onPointerOver?: EventHandlerUnion<T, PointerEvent>;
645
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerup_event) */
646
- onPointerUp?: EventHandlerUnion<T, PointerEvent>;
647
- /**
648
- * Fires when the user repositions the scroll box in the scroll bar on the object.
649
- *
650
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scroll_event)
651
- */
652
- onScroll?: EventHandlerUnion<T, Event>;
653
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scrollend_event) */
654
- onScrollEnd?: EventHandlerUnion<T, Event>;
655
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/securitypolicyviolation_event) */
656
- onSecurityPolicyViolation?: EventHandlerUnion<T, SecurityPolicyViolationEvent>;
657
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/selectstart_event) */
658
- onSelectStart?: EventHandlerUnion<T, Event>;
659
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchcancel_event) */
660
- onTouchCancel?: EventHandlerUnion<T, TouchEvent>;
661
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchend_event) */
662
- onTouchEnd?: EventHandlerUnion<T, TouchEvent>;
663
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchmove_event) */
664
- onTouchMove?: EventHandlerUnion<T, TouchEvent>;
665
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchstart_event) */
666
- onTouchStart?: EventHandlerUnion<T, TouchEvent>;
667
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitioncancel_event) */
668
- onTransitionCancel?: EventHandlerUnion<T, TransitionEvent>;
669
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event) */
670
- onTransitionEnd?: EventHandlerUnion<T, TransitionEvent>;
671
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionrun_event) */
672
- onTransitionRun?: EventHandlerUnion<T, TransitionEvent>;
673
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionstart_event) */
674
- onTransitionStart?: EventHandlerUnion<T, TransitionEvent>;
675
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/wheel_event) */
676
- onWheel?: EventHandlerUnion<T, WheelEvent>;
677
- }
678
- type HTMLAutocapitalize = "off" | "none" | "on" | "sentences" | "words" | "characters";
679
- type HTMLDir = "ltr" | "rtl" | "auto";
680
- type HTMLFormEncType = "application/x-www-form-urlencoded" | "multipart/form-data" | "text/plain";
681
- type HTMLFormMethod = "post" | "get" | "dialog";
682
- type HTMLCrossOrigin = "anonymous" | "use-credentials" | "";
683
- type HTMLReferrerPolicy = "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url";
684
- type HTMLIframeSandbox = "allow-downloads-without-user-activation" | "allow-downloads" | "allow-forms" | "allow-modals" | "allow-orientation-lock" | "allow-pointer-lock" | "allow-popups" | "allow-popups-to-escape-sandbox" | "allow-presentation" | "allow-same-origin" | "allow-scripts" | "allow-storage-access-by-user-activation" | "allow-top-navigation" | "allow-top-navigation-by-user-activation" | "allow-top-navigation-to-custom-protocols";
685
- type HTMLLinkAs = "audio" | "document" | "embed" | "fetch" | "font" | "image" | "object" | "script" | "style" | "track" | "video" | "worker";
686
- /**
687
- * All the WAI-ARIA 1.1 attributes from https://www.w3.org/TR/wai-aria-1.1/
688
- *
689
- * @remarks
690
- * If attribute is settable as a property, that is preferred - such aria
691
- * attributes are in camelCase in this interface. Some are settable as
692
- * DOM attribute only - such names are in kebab-case.
693
- */
694
- interface AriaAttributes {
695
- /**
696
- * Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.
697
- *
698
- * @remarks
699
- * While HTML attributes on regular HTML elements are case-insensitive, when
700
- * the same common attributes are set on a foreign HTML elements (SVG/Math),
701
- * they are case sensitive. Thus, we can't author this as
702
- * "aria-activeDescendant"
703
- */
704
- ["aria-activedescendant"]?: string;
705
- ariaActiveDescendantElement?: HTMLElement;
706
- /** Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute. */
707
- ariaAtomic?: boolean | "false" | "true";
708
- /**
709
- * Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input and specifies how predictions would be
710
- * presented if they are made.
711
- */
712
- ariaAutoComplete?: "none" | "inline" | "list" | "both";
713
- /** Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user. */
714
- ariaBusy?: boolean | "false" | "true";
715
- /**
716
- * Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.
717
- * @see ariaPressed
718
- * @see ariaSelected
719
- */
720
- ariaChecked?: boolean | "false" | "mixed" | "true";
721
- /**
722
- * Defines the total number of columns in a table, grid, or treegrid.
723
- * @see ariaColIndex
724
- */
725
- ariaColCount?: number | string;
726
- /**
727
- * Defines an element's column index or position with respect to the total number of columns within a table, grid, or treegrid.
728
- * @see ariaColCount
729
- * @see ariaColSpan
730
- */
731
- ariaColIndex?: number | string;
732
- /**
733
- * Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.
734
- * @see ariaColIndex
735
- * @see ariaRowSpan
736
- */
737
- ariaColSpan?: number | string;
738
- /**
739
- * Identifies the element (or elements) whose contents or presence are controlled by the current element.
740
- * @see ariaOwns.
741
- */
742
- ["aria-controls"]?: string;
743
- ariaControlsElements?: HTMLElement[];
744
- /** Indicates the element that represents the current item within a container or set of related elements. */
745
- ariaCurrent?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time";
746
- /**
747
- * Defines a string value that describes or annotates the current element.
748
- * @see aria-describedby
749
- */
750
- ariaDescription?: string;
751
- /**
752
- * Identifies the element (or elements) that describes the object.
753
- * @see aria-labelledby
754
- */
755
- ["aria-describedby"]?: string;
756
- ariaDescribedByElements?: HTMLElement;
757
- /**
758
- * Identifies the element that provides a detailed, extended description for the object.
759
- * @see aria-describedby
760
- */
761
- ["aria-details"]?: string;
762
- ariaDetailsElements?: HTMLElement;
763
- /**
764
- * Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.
765
- * @see ariaHidden
766
- * @see ariaReadonly
767
- */
768
- ariaDisabled?: boolean | "false" | "true";
769
- /**
770
- * Identifies the element that provides an error message for the object.
771
- * @see ariaInvalid
772
- * @see aria-describedby
773
- */
774
- ["aria-errormessage"]?: string;
775
- ariaErrorMessageElements?: HTMLElement;
776
- /** Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed. */
777
- ariaExpanded?: boolean | "false" | "true";
778
- /**
779
- * Identifies the next element (or elements) in an alternate reading order of content which, at the user's discretion,
780
- * allows assistive technology to override the general default of reading in document source order.
781
- */
782
- ["aria-flowto"]?: string;
783
- ariaFlowToElements?: HTMLElement;
784
- /** Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element. */
785
- ariaHasPopup?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog";
786
- /**
787
- * Indicates whether the element is exposed to an accessibility API.
788
- * @see ariaDisabled
789
- */
790
- ariaHidden?: boolean | "false" | "true";
791
- /**
792
- * Indicates the entered value does not conform to the format expected by the application.
793
- * @see aria-errormessage
794
- */
795
- ariaInvalid?: boolean | "false" | "true" | "grammar" | "spelling";
796
- /** Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element. */
797
- ariaKeyShortcuts?: string;
798
- /**
799
- * Defines a string value that labels the current element.
800
- * @see aria-labelledby
801
- */
802
- ariaLabel?: string;
803
- /**
804
- * Identifies the element (or elements) that labels the current element.
805
- * @see aria-describedby
806
- */
807
- ["aria-labelledby"]?: string;
808
- ariaLabelledByElements?: HTMLElement;
809
- /** Defines the hierarchical level of an element within a structure. */
810
- ariaLevel?: number | string;
811
- /** Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region. */
812
- ariaLive?: "off" | "assertive" | "polite";
813
- /** Indicates whether an element is modal when displayed. */
814
- ariaModal?: boolean | "false" | "true";
815
- /** Indicates whether a text box accepts multiple lines of input or only a single line. */
816
- ariaMultiLine?: boolean | "false" | "true";
817
- /** Indicates that the user may select more than one item from the current selectable descendants. */
818
- ariaMultiSelectable?: boolean | "false" | "true";
819
- /** Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous. */
820
- ariaOrientation?: "horizontal" | "vertical";
821
- /**
822
- * Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship
823
- * between DOM elements where the DOM hierarchy cannot be used to represent the relationship.
824
- * @see aria-controls
825
- */
826
- ["aria-owns"]?: string;
827
- ariaOwnsElements?: HTMLElement;
828
- /**
829
- * Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.
830
- * A hint could be a sample value or a brief description of the expected format.
831
- */
832
- ariaPlaceholder?: string;
833
- /**
834
- * Defines an element's number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.
835
- * @see ariaSetSize.
836
- */
837
- ariaPosInSet?: number | string;
838
- /**
839
- * Indicates the current "pressed" state of toggle buttons.
840
- * @see ariaChecked
841
- * @see ariaSelected
842
- */
843
- ariaPressed?: boolean | "false" | "mixed" | "true";
844
- /**
845
- * Indicates that the element is not editable, but is otherwise operable.
846
- * @see ariaDisabled
847
- */
848
- ariaReadOnly?: boolean | "false" | "true";
849
- /**
850
- * Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.
851
- * @see ariaAtomic
852
- */
853
- ariaRelevant?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals";
854
- /** Indicates that user input is required on the element before a form may be submitted. */
855
- ariaRequired?: boolean | "false" | "true";
856
- /** Defines a human-readable, author-localized description for the role of an element. */
857
- ariaRoleDescription?: string;
858
- /**
859
- * Defines the total number of rows in a table, grid, or treegrid.
860
- * @see ariaRowIndex
861
- */
862
- ariaRowCount?: number | string;
863
- /**
864
- * Defines an element's row index or position with respect to the total number of rows within a table, grid, or treegrid.
865
- * @see ariaRowCount
866
- * @see ariaRowSpan
867
- */
868
- ariaRowIndex?: number | string;
869
- /**
870
- * Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.
871
- * @see ariaRowIndex
872
- * @see ariaColSpan
873
- */
874
- ariaRowSpan?: number | string;
875
- /**
876
- * Indicates the current "selected" state of various widgets.
877
- * @see ariaChecked
878
- * @see ariaPressed
879
- */
880
- ariaSelected?: boolean | "false" | "true";
881
- /**
882
- * Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.
883
- * @see ariaPosInSet
884
- */
885
- ariaSetSize?: number | string;
886
- /** Indicates if items in a table or grid are sorted in ascending or descending order. */
887
- ariaSort?: "none" | "ascending" | "descending" | "other";
888
- /** Defines the maximum allowed value for a range widget. */
889
- ariaValueMax?: number | string;
890
- /** Defines the minimum allowed value for a range widget. */
891
- ariaValueMin?: number | string;
892
- /**
893
- * Defines the current value for a range widget.
894
- * @see ariaValueText.
895
- */
896
- ariaValueNow?: number | string;
897
- /** Defines the human readable text alternative of ariaValueNow for a range widget. */
898
- ariaValueText?: string;
899
- role?: "alert" | "alertdialog" | "application" | "article" | "banner" | "button" | "cell" | "checkbox" | "columnheader" | "combobox" | "complementary" | "contentinfo" | "definition" | "dialog" | "directory" | "document" | "feed" | "figure" | "form" | "grid" | "gridcell" | "group" | "heading" | "img" | "link" | "list" | "listbox" | "listitem" | "log" | "main" | "marquee" | "math" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "meter" | "navigation" | "none" | "note" | "option" | "presentation" | "progressbar" | "radio" | "radiogroup" | "region" | "row" | "rowgroup" | "rowheader" | "scrollbar" | "search" | "searchbox" | "separator" | "slider" | "spinbutton" | "status" | "switch" | "tab" | "table" | "tablist" | "tabpanel" | "term" | "textbox" | "timer" | "toolbar" | "tooltip" | "tree" | "treegrid" | "treeitem";
900
- }
901
- interface HTMLAttributes<T = HTMLElement> extends AriaAttributes, DOMAttributes<T>, RdfaAttributes {
902
- accessKey?: string;
903
- autofocus?: boolean;
904
- dir?: HTMLDir;
905
- draggable?: boolean;
906
- enterKeyHint?: string;
907
- hidden?: boolean | "hidden" | "until-found";
908
- id?: string;
909
- inert?: boolean;
910
- lang?: string;
911
- spellcheck?: boolean;
912
- style?: CssProperties | string | DirectiveResult<typeof StyleMapDirective>;
913
- title?: string;
914
- translate?: boolean;
915
- popover?: boolean | "manual" | "auto";
916
- slot?: string;
917
- part?: string;
918
- contentEditable?: boolean | "plaintext-only" | "inherit";
919
- tabIndex?: number | string;
920
- autocapitalize?: HTMLAutocapitalize;
921
- itemProp?: string;
922
- itemScope?: boolean;
923
- itemType?: string;
924
- itemId?: string;
925
- itemRef?: string;
926
- exportParts?: string;
927
- inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search";
928
- }
929
- interface RdfaAttributes {
930
- about?: string;
931
- datatype?: string;
932
- inList?: string;
933
- prefix?: string;
934
- property?: string;
935
- rel?: string;
936
- resource?: string;
937
- rev?: string;
938
- typeof?: string;
939
- vocab?: string;
940
- }
941
- interface AnchorHTMLAttributes<T> extends HTMLAttributes<T> {
942
- /**
943
- * Provide empty string, or file name
944
- *
945
- * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#download
946
- */
947
- download?: string;
948
- href?: string;
949
- hreflang?: string;
950
- media?: string;
951
- ping?: string;
952
- rel?: string;
953
- target?: string;
954
- type?: string;
955
- referrerPolicy?: HTMLReferrerPolicy;
956
- }
957
- interface AudioHTMLAttributes<T> extends MediaHTMLAttributes<T> {
958
- }
959
- interface AreaHTMLAttributes<T> extends HTMLAttributes<T> {
960
- alt?: string;
961
- coords?: string;
962
- /**
963
- * Provide empty string, or file name
964
- *
965
- * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#download
966
- */
967
- download?: string;
968
- href?: string;
969
- hreflang?: string;
970
- ping?: string;
971
- rel?: string;
972
- shape?: "rect" | "circle" | "poly" | "default";
973
- target?: string;
974
- referrerPolicy?: HTMLReferrerPolicy;
975
- }
976
- interface BaseHTMLAttributes<T> extends HTMLAttributes<T> {
977
- href?: string;
978
- target?: string;
979
- }
980
- interface BlockquoteHTMLAttributes<T> extends HTMLAttributes<T> {
981
- cite?: string;
982
- }
983
- interface ButtonHTMLAttributes<T> extends HTMLAttributes<T> {
984
- disabled?: boolean;
985
- form?: string;
986
- name?: string;
987
- type?: "submit" | "reset" | "button";
988
- value?: string | number;
989
- formAction?: string;
990
- formEnctype?: HTMLFormEncType;
991
- formMethod?: HTMLFormMethod;
992
- formNoValidate?: boolean;
993
- formTarget?: string;
994
- popoverTarget?: string;
995
- popoverTargetElement?: HTMLElement;
996
- popoverTargetAction?: "hide" | "show" | "toggle";
997
- }
998
- interface CanvasHTMLAttributes<T> extends HTMLAttributes<T> {
999
- width?: number | string;
1000
- height?: number | string;
1001
- }
1002
- interface ColHTMLAttributes<T> extends HTMLAttributes<T> {
1003
- span?: number | string;
1004
- width?: number | string;
1005
- }
1006
- interface ColgroupHTMLAttributes<T> extends HTMLAttributes<T> {
1007
- span?: number | string;
1008
- }
1009
- interface DataHTMLAttributes<T> extends HTMLAttributes<T> {
1010
- value?: string | number;
1011
- }
1012
- interface DetailsHTMLAttributes<T> extends HTMLAttributes<T> {
1013
- open?: boolean;
1014
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement/toggle_event) */
1015
- onToggle?: EventHandlerUnion<T, Event>;
1016
- }
1017
- interface DialogHTMLAttributes<T> extends HTMLAttributes<T> {
1018
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/open) */
1019
- open?: boolean;
1020
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/returnValue) */
1021
- returnValue?: string;
1022
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/cancel_event) */
1023
- onCancel?: EventHandlerUnion<T, Event>;
1024
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close_event) */
1025
- onClose?: EventHandlerUnion<T, Event>;
1026
- }
1027
- interface EmbedHTMLAttributes<T> extends HTMLAttributes<T> {
1028
- height?: number | string;
1029
- src?: string;
1030
- type?: string;
1031
- width?: number | string;
1032
- }
1033
- interface FieldsetHTMLAttributes<T> extends HTMLAttributes<T> {
1034
- disabled?: boolean;
1035
- form?: string;
1036
- name?: string;
1037
- }
1038
- interface FormHTMLAttributes<T> extends HTMLAttributes<T> {
1039
- acceptCharset?: string;
1040
- action?: string;
1041
- encoding?: HTMLFormEncType;
1042
- enctype?: HTMLFormEncType;
1043
- method?: HTMLFormMethod;
1044
- name?: string;
1045
- target?: string;
1046
- noValidate?: boolean;
1047
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/formdata_event) */
1048
- onFormData?: EventHandlerUnion<T, FormDataEvent>;
1049
- /**
1050
- * Fires when the user resets a form.
1051
- *
1052
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reset_event)
1053
- */
1054
- onReset?: EventHandlerUnion<T, Event>;
1055
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/submit_event) */
1056
- onSubmit?: EventHandlerUnion<T, Event & {
1057
- submitter: HTMLElement;
1058
- }>;
1059
- }
1060
- interface IframeHTMLAttributes<T> extends HTMLAttributes<T> {
1061
- allow?: string;
1062
- allowFullscreen?: boolean;
1063
- height?: number | string;
1064
- loading?: "eager" | "lazy";
1065
- name?: string;
1066
- sandbox?: HTMLIframeSandbox | string;
1067
- src?: string;
1068
- srcdoc?: string;
1069
- width?: number | string;
1070
- referrerPolicy?: HTMLReferrerPolicy;
1071
- }
1072
- interface ImgHTMLAttributes<T> extends HTMLAttributes<T> {
1073
- alt?: string;
1074
- decoding?: "sync" | "async" | "auto";
1075
- height?: number | string;
1076
- isMap?: boolean;
1077
- loading?: "eager" | "lazy";
1078
- referrerPolicy?: HTMLReferrerPolicy;
1079
- sizes?: string;
1080
- src?: string;
1081
- srcset?: string;
1082
- useMap?: string;
1083
- width?: number | string;
1084
- crossOrigin?: HTMLCrossOrigin;
1085
- elementTiming?: string;
1086
- fetchPriority?: "high" | "low" | "auto";
1087
- }
1088
- interface InputHTMLAttributes<T> extends HTMLAttributes<T> {
1089
- autocomplete?: AutoFill;
1090
- accept?: string;
1091
- alt?: string;
1092
- capture?: boolean | string;
1093
- checked?: boolean;
1094
- disabled?: boolean;
1095
- form?: string;
1096
- height?: number | string;
1097
- incremental?: boolean;
1098
- list?: string;
1099
- max?: number | string;
1100
- min?: number | string;
1101
- multiple?: boolean;
1102
- name?: string;
1103
- pattern?: string;
1104
- placeholder?: string;
1105
- readOnly?: boolean;
1106
- results?: number;
1107
- required?: boolean;
1108
- size?: number | string;
1109
- src?: string;
1110
- step?: number | string;
1111
- type?: string;
1112
- value?: string | number;
1113
- defaultValue?: string | number;
1114
- width?: number | string;
1115
- formAction?: string;
1116
- formEnctype?: HTMLFormEncType;
1117
- formMethod?: HTMLFormMethod;
1118
- formNoValidate?: boolean;
1119
- formTarget?: string;
1120
- maxLength?: number | string;
1121
- minLength?: number | string;
1122
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/invalid_event) */
1123
- onInvalid?: EventHandlerUnion<T, Event>;
1124
- /**
1125
- * Fires when the current selection changes.
1126
- *
1127
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/select_event)
1128
- */
1129
- onSelect?: EventHandlerUnion<T, UIEvent>;
1130
- }
1131
- interface InsHTMLAttributes<T> extends HTMLAttributes<T> {
1132
- cite?: string;
1133
- dateTime?: string;
1134
- }
1135
- interface LabelHTMLAttributes<T> extends HTMLAttributes<T> {
1136
- htmlFor?: string;
1137
- form?: string;
1138
- }
1139
- interface LiHTMLAttributes<T> extends HTMLAttributes<T> {
1140
- value?: number | string;
1141
- }
1142
- interface LinkHTMLAttributes<T> extends HTMLAttributes<T> {
1143
- as?: HTMLLinkAs;
1144
- disabled?: boolean;
1145
- fetchPriority?: "high" | "low" | "auto";
1146
- href?: string;
1147
- hreflang?: string;
1148
- imageSizes?: string;
1149
- imageSrcset?: string;
1150
- integrity?: string;
1151
- media?: string;
1152
- rel?: string;
1153
- sizes?: string;
1154
- type?: string;
1155
- crossOrigin?: HTMLCrossOrigin;
1156
- referrerPolicy?: HTMLReferrerPolicy;
1157
- }
1158
- interface MapHTMLAttributes<T> extends HTMLAttributes<T> {
1159
- name?: string;
1160
- }
1161
- interface MathMLAttributes<T = HTMLMathElement> extends HTMLAttributes<T> {
1162
- dir?: "ltr" | "rtl" | undefined;
1163
- /**
1164
- * HTML attributes in foreign elements are case-sensitive
1165
- */
1166
- displaystyle?: boolean | undefined;
1167
- nonce?: string | undefined;
1168
- /**
1169
- * HTML attributes in foreign elements are case-sensitive
1170
- */
1171
- scriptlevel?: boolean | string | undefined;
1172
- }
1173
- interface HTMLMathElement extends MathMLElement {
1174
- display?: "block" | "inline" | undefined;
1175
- }
1176
- interface MediaHTMLAttributes<T> extends HTMLAttributes<T> {
1177
- autoplay?: boolean;
1178
- controls?: boolean;
1179
- loop?: boolean;
1180
- muted?: boolean;
1181
- preload?: "none" | "metadata" | "auto" | "";
1182
- src?: string;
1183
- crossOrigin?: HTMLCrossOrigin;
1184
- /**
1185
- * Fires when the user aborts the download.
1186
- *
1187
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/abort_event)
1188
- */
1189
- onAbort?: EventHandlerUnion<T, Event>;
1190
- /**
1191
- * Occurs when playback is possible, but would require further buffering.
1192
- *
1193
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplay_event)
1194
- */
1195
- onCanPlay?: EventHandlerUnion<T, Event>;
1196
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplaythrough_event) */
1197
- onCanPlayThrough?: EventHandlerUnion<T, Event>;
1198
- /**
1199
- * Occurs when the duration attribute is updated.
1200
- *
1201
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/durationchange_event)
1202
- */
1203
- onDurationChange?: EventHandlerUnion<T, Event>;
1204
- /**
1205
- * Occurs when the media element is reset to its initial state.
1206
- *
1207
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/emptied_event)
1208
- */
1209
- onEmptied?: EventHandlerUnion<T, Event>;
1210
- /**
1211
- * Occurs when media data is loaded at the current playback position.
1212
- *
1213
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadeddata_event)
1214
- */
1215
- onLoadedData?: EventHandlerUnion<T, Event>;
1216
- /**
1217
- * Occurs when the duration and dimensions of the media have been determined.
1218
- *
1219
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadedmetadata_event)
1220
- */
1221
- onLoadedMetadata?: EventHandlerUnion<T, Event>;
1222
- /**
1223
- * Occurs when Internet Explorer begins looking for media data.
1224
- *
1225
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadstart_event)
1226
- */
1227
- onLoadStart?: EventHandlerUnion<T, Event>;
1228
- /**
1229
- * Occurs when playback is paused.
1230
- *
1231
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/pause_event)
1232
- */
1233
- onPause?: EventHandlerUnion<T, Event>;
1234
- /**
1235
- * Occurs when the play method is requested.
1236
- *
1237
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/play_event)
1238
- */
1239
- onPlay?: EventHandlerUnion<T, Event>;
1240
- /**
1241
- * Occurs when the audio or video has started playing.
1242
- *
1243
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/playing_event)
1244
- */
1245
- onPlaying?: EventHandlerUnion<T, Event>;
1246
- /**
1247
- * Occurs to indicate progress while downloading media data.
1248
- *
1249
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/progress_event)
1250
- */
1251
- onProgress?: EventHandlerUnion<T, Event>;
1252
- /**
1253
- * Occurs when the playback rate is increased or decreased.
1254
- *
1255
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ratechange_event)
1256
- */
1257
- onRateChange?: EventHandlerUnion<T, Event>;
1258
- /**
1259
- * Occurs when the seek operation ends.
1260
- *
1261
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeked_event)
1262
- */
1263
- onSeeked?: EventHandlerUnion<T, Event>;
1264
- /**
1265
- * Occurs when the current playback position is moved.
1266
- *
1267
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeking_event)
1268
- */
1269
- onSeeking?: EventHandlerUnion<T, Event>;
1270
- /**
1271
- * Occurs when the download has stopped.
1272
- *
1273
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/stalled_event)
1274
- */
1275
- onStalled?: EventHandlerUnion<T, Event>;
1276
- /**
1277
- * Occurs if the load operation has been intentionally halted.
1278
- *
1279
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/suspend_event)
1280
- */
1281
- onSuspend?: EventHandlerUnion<T, Event>;
1282
- /**
1283
- * Occurs to indicate the current playback position.
1284
- *
1285
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/timeupdate_event)
1286
- */
1287
- onTimeUpdate?: EventHandlerUnion<T, Event>;
1288
- /**
1289
- * Occurs when the volume is changed, or playback is muted or unmuted.
1290
- *
1291
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/volumechange_event)
1292
- */
1293
- onVolumeChange?: EventHandlerUnion<T, Event>;
1294
- /**
1295
- * Occurs when playback stops because the next frame of a video resource is not available.
1296
- *
1297
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/waiting_event)
1298
- */
1299
- onWaiting?: EventHandlerUnion<T, Event>;
1300
- }
1301
- interface MenuHTMLAttributes<T> extends HTMLAttributes<T> {
1302
- label?: string;
1303
- type?: "context" | "toolbar";
1304
- }
1305
- interface MetaHTMLAttributes<T> extends HTMLAttributes<T> {
1306
- charset?: string;
1307
- content?: string;
1308
- httpEquiv?: string;
1309
- name?: string;
1310
- media?: string;
1311
- }
1312
- interface MeterHTMLAttributes<T> extends HTMLAttributes<T> {
1313
- form?: string;
1314
- high?: number | string;
1315
- low?: number | string;
1316
- max?: number | string;
1317
- min?: number | string;
1318
- optimum?: number | string;
1319
- value?: string | number;
1320
- }
1321
- interface QuoteHTMLAttributes<T> extends HTMLAttributes<T> {
1322
- cite?: string;
1323
- }
1324
- interface ObjectHTMLAttributes<T> extends HTMLAttributes<T> {
1325
- data?: string;
1326
- form?: string;
1327
- height?: number | string;
1328
- name?: string;
1329
- type?: string;
1330
- width?: number | string;
1331
- useMap?: string;
1332
- }
1333
- interface OlHTMLAttributes<T> extends HTMLAttributes<T> {
1334
- reversed?: boolean;
1335
- start?: number | string;
1336
- type?: "1" | "a" | "A" | "i" | "I";
1337
- }
1338
- interface OptgroupHTMLAttributes<T> extends HTMLAttributes<T> {
1339
- disabled?: boolean;
1340
- label?: string;
1341
- }
1342
- interface OptionHTMLAttributes<T> extends HTMLAttributes<T> {
1343
- disabled?: boolean;
1344
- label?: string;
1345
- selected?: boolean;
1346
- value?: string | number;
1347
- }
1348
- interface OutputHTMLAttributes<T> extends HTMLAttributes<T> {
1349
- form?: string;
1350
- for?: string;
1351
- name?: string;
1352
- value?: string | number;
1353
- defaultValue?: string | number;
1354
- }
1355
- interface ProgressHTMLAttributes<T> extends HTMLAttributes<T> {
1356
- max?: number | string;
1357
- value?: string | number;
1358
- }
1359
- interface ScriptHTMLAttributes<T> extends HTMLAttributes<T> {
1360
- async?: boolean;
1361
- charset?: string;
1362
- defer?: boolean;
1363
- integrity?: string;
1364
- nonce?: string;
1365
- src?: string;
1366
- type?: string;
1367
- crossOrigin?: HTMLCrossOrigin;
1368
- noModule?: boolean;
1369
- referrerPolicy?: HTMLReferrerPolicy;
1370
- }
1371
- interface SelectHTMLAttributes<T> extends HTMLAttributes<T> {
1372
- disabled?: boolean;
1373
- form?: string;
1374
- multiple?: boolean;
1375
- name?: string;
1376
- required?: boolean;
1377
- size?: number | string;
1378
- value?: string | number;
1379
- }
1380
- interface SlotHTMLAttributes<T = HTMLSlotElement> extends HTMLAttributes<T> {
1381
- name?: string;
1382
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/slotchange_event) */
1383
- onSlotChange?: EventHandlerUnion<T, Event>;
1384
- }
1385
- interface SourceHTMLAttributes<T> extends HTMLAttributes<T> {
1386
- media?: string;
1387
- sizes?: string;
1388
- src?: string;
1389
- srcset?: string;
1390
- type?: string;
1391
- }
1392
- interface StyleHTMLAttributes<T> extends HTMLAttributes<T> {
1393
- media?: string;
1394
- nonce?: string;
1395
- scoped?: boolean;
1396
- type?: string;
1397
- }
1398
- interface TdHTMLAttributes<T> extends HTMLAttributes<T> {
1399
- headers?: string;
1400
- colSpan?: number | string;
1401
- rowSpan?: number | string;
1402
- }
1403
- interface TemplateHTMLAttributes<T extends HTMLTemplateElement> extends HTMLAttributes<T> {
1404
- content?: DocumentFragment;
1405
- }
1406
- interface TextareaHTMLAttributes<T> extends HTMLAttributes<T> {
1407
- children?: "Error: Use value property instead. See https://lit.dev/docs/templates/expressions/#invalid-locations";
1408
- cols?: number | string;
1409
- dirname?: string;
1410
- disabled?: boolean;
1411
- form?: string;
1412
- name?: string;
1413
- placeholder?: string;
1414
- readOnly?: boolean;
1415
- required?: boolean;
1416
- rows?: number | string;
1417
- value?: string | number;
1418
- defaultValue?: string | number;
1419
- wrap?: "hard" | "soft" | "off";
1420
- maxLength?: number | string;
1421
- minLength?: number | string;
1422
- }
1423
- interface ThHTMLAttributes<T> extends HTMLAttributes<T> {
1424
- headers?: string;
1425
- colSpan?: number | string;
1426
- rowSpan?: number | string;
1427
- scope?: "col" | "row" | "rowgroup" | "colgroup";
1428
- }
1429
- interface TimeHTMLAttributes<T> extends HTMLAttributes<T> {
1430
- dateTime?: string;
1431
- }
1432
- interface TrackHTMLAttributes<T> extends HTMLAttributes<T> {
1433
- default?: boolean;
1434
- kind?: "subtitles" | "captions" | "descriptions" | "chapters" | "metadata";
1435
- label?: string;
1436
- src?: string;
1437
- srclang?: string;
1438
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/cuechange_event) */
1439
- onCueChange?: EventHandlerUnion<T, Event>;
1440
- }
1441
- interface VideoHTMLAttributes<T> extends MediaHTMLAttributes<T> {
1442
- height?: number | string;
1443
- playsInline?: boolean;
1444
- poster?: string;
1445
- width?: number | string;
1446
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/resize_event) */
1447
- onResize?: EventHandlerUnion<T, UIEvent>;
1448
- }
1449
- type SVGPreserveAspectRatio = "none" | "xMinYMin" | "xMidYMin" | "xMaxYMin" | "xMinYMid" | "xMidYMid" | "xMaxYMid" | "xMinYMax" | "xMidYMax" | "xMaxYMax" | "xMinYMin meet" | "xMidYMin meet" | "xMaxYMin meet" | "xMinYMid meet" | "xMidYMid meet" | "xMaxYMid meet" | "xMinYMax meet" | "xMidYMax meet" | "xMaxYMax meet" | "xMinYMin slice" | "xMidYMin slice" | "xMaxYMin slice" | "xMinYMid slice" | "xMidYMid slice" | "xMaxYMid slice" | "xMinYMax slice" | "xMidYMax slice" | "xMaxYMax slice";
1450
- type ImagePreserveAspectRatio = SVGPreserveAspectRatio | "defer none" | "defer xMinYMin" | "defer xMidYMin" | "defer xMaxYMin" | "defer xMinYMid" | "defer xMidYMid" | "defer xMaxYMid" | "defer xMinYMax" | "defer xMidYMax" | "defer xMaxYMax" | "defer xMinYMin meet" | "defer xMidYMin meet" | "defer xMaxYMin meet" | "defer xMinYMid meet" | "defer xMidYMid meet" | "defer xMaxYMid meet" | "defer xMinYMax meet" | "defer xMidYMax meet" | "defer xMaxYMax meet" | "defer xMinYMin slice" | "defer xMidYMin slice" | "defer xMaxYMin slice" | "defer xMinYMid slice" | "defer xMidYMid slice" | "defer xMaxYMid slice" | "defer xMinYMax slice" | "defer xMidYMax slice" | "defer xMaxYMax slice";
1451
- type SVGUnits = "userSpaceOnUse" | "objectBoundingBox";
1452
- interface CoreSVGAttributes<T> extends AriaAttributes, DOMAttributes<T> {
1453
- id?: string;
1454
- lang?: string;
1455
- tabIndex?: number | string;
1456
- }
1457
- interface StylableSVGAttributes {
1458
- class?: string | ClassInfo | DirectiveResult<typeof ClassMapDirective>;
1459
- style?: CssProperties | string | DirectiveResult<typeof StyleMapDirective>;
1460
- }
1461
- interface TransformableSVGAttributes {
1462
- transform?: string | undefined;
1463
- }
1464
- interface ConditionalProcessingSVGAttributes {
1465
- requiredExtensions?: string;
1466
- requiredFeatures?: string;
1467
- systemLanguage?: string;
1468
- }
1469
- interface ExternalResourceSVGAttributes {
1470
- externalResourcesRequired?: boolean | "true" | "false";
1471
- }
1472
- interface AnimationTimingSVGAttributes {
1473
- begin?: string | undefined;
1474
- dur?: string | undefined;
1475
- end?: string | undefined;
1476
- min?: string | undefined;
1477
- max?: string | undefined;
1478
- restart?: "always" | "whenNotActive" | "never" | undefined;
1479
- repeatCount?: number | "indefinite" | undefined;
1480
- repeatDur?: string | undefined;
1481
- fill?: "freeze" | "remove" | undefined;
1482
- }
1483
- interface AnimationValueSVGAttributes {
1484
- calcMode?: "discrete" | "linear" | "paced" | "spline" | undefined;
1485
- values?: string | undefined;
1486
- keyTimes?: string | undefined;
1487
- keySplines?: string | undefined;
1488
- from?: number | string | undefined;
1489
- to?: number | string | undefined;
1490
- by?: number | string | undefined;
1491
- }
1492
- interface AnimationAdditionSVGAttributes {
1493
- attributeName?: string | undefined;
1494
- additive?: "replace" | "sum" | undefined;
1495
- accumulate?: "none" | "sum" | undefined;
1496
- }
1497
- interface AnimationAttributeTargetSVGAttributes {
1498
- attributeName?: string | undefined;
1499
- attributeType?: "CSS" | "XML" | "auto" | undefined;
1500
- }
1501
- interface PresentationSVGAttributes {
1502
- "alignment-baseline"?: "auto" | "baseline" | "before-edge" | "text-before-edge" | "middle" | "central" | "after-edge" | "text-after-edge" | "ideographic" | "alphabetic" | "hanging" | "mathematical" | "inherit";
1503
- "baseline-shift"?: number | string;
1504
- "clip"?: string;
1505
- "clip-path"?: string;
1506
- "clip-rule"?: "nonzero" | "evenodd" | "inherit";
1507
- "color"?: string;
1508
- "color-interpolation"?: "auto" | "sRGB" | "linearRGB" | "inherit";
1509
- "color-interpolation-filters"?: "auto" | "sRGB" | "linearRGB" | "inherit";
1510
- "color-profile"?: string;
1511
- "color-rendering"?: "auto" | "optimizeSpeed" | "optimizeQuality" | "inherit";
1512
- "cursor"?: string;
1513
- "direction"?: "ltr" | "rtl" | "inherit";
1514
- "display"?: string;
1515
- "dominant-baseline"?: "auto" | "text-bottom" | "alphabetic" | "ideographic" | "middle" | "central" | "mathematical" | "hanging" | "text-top" | "inherit";
1516
- "enable-background"?: string;
1517
- "fill"?: string;
1518
- "fill-opacity"?: number | string | "inherit";
1519
- "fill-rule"?: "nonzero" | "evenodd" | "inherit";
1520
- "filter"?: string;
1521
- "flood-color"?: string;
1522
- "flood-opacity"?: number | string | "inherit";
1523
- "font-family"?: string;
1524
- "font-size"?: string;
1525
- "font-size-adjust"?: number | string;
1526
- "font-stretch"?: string;
1527
- "font-style"?: "normal" | "italic" | "oblique" | "inherit";
1528
- "font-variant"?: string;
1529
- "font-weight"?: number | string;
1530
- "glyph-orientation-horizontal"?: string;
1531
- "glyph-orientation-vertical"?: string;
1532
- "image-rendering"?: "auto" | "optimizeQuality" | "optimizeSpeed" | "inherit";
1533
- "kerning"?: string;
1534
- "letter-spacing"?: number | string;
1535
- "lighting-color"?: string;
1536
- "marker-end"?: string;
1537
- "marker-mid"?: string;
1538
- "marker-start"?: string;
1539
- "mask"?: string;
1540
- "opacity"?: number | string | "inherit";
1541
- "overflow"?: "visible" | "hidden" | "scroll" | "auto" | "inherit";
1542
- "pathLength"?: string | number;
1543
- "pointer-events"?: "bounding-box" | "visiblePainted" | "visibleFill" | "visibleStroke" | "visible" | "painted" | "color" | "fill" | "stroke" | "all" | "none" | "inherit";
1544
- "shape-rendering"?: "auto" | "optimizeSpeed" | "crispEdges" | "geometricPrecision" | "inherit";
1545
- "stop-color"?: string;
1546
- "stop-opacity"?: number | string | "inherit";
1547
- "stroke"?: string;
1548
- "stroke-dasharray"?: string;
1549
- "stroke-dashoffset"?: number | string;
1550
- "stroke-linecap"?: "butt" | "round" | "square" | "inherit";
1551
- "stroke-linejoin"?: "arcs" | "bevel" | "miter" | "miter-clip" | "round" | "inherit";
1552
- "stroke-miterlimit"?: number | string | "inherit";
1553
- "stroke-opacity"?: number | string | "inherit";
1554
- "stroke-width"?: number | string;
1555
- "text-anchor"?: "start" | "middle" | "end" | "inherit";
1556
- "text-decoration"?: "none" | "underline" | "overline" | "line-through" | "blink" | "inherit";
1557
- "text-rendering"?: "auto" | "optimizeSpeed" | "optimizeLegibility" | "geometricPrecision" | "inherit";
1558
- "unicode-bidi"?: string;
1559
- "visibility"?: "visible" | "hidden" | "collapse" | "inherit";
1560
- "word-spacing"?: number | string;
1561
- "writing-mode"?: "lr-tb" | "rl-tb" | "tb-rl" | "lr" | "rl" | "tb" | "inherit";
1562
- }
1563
- interface AnimationElementSVGAttributes<T> extends CoreSVGAttributes<T>, ExternalResourceSVGAttributes, ConditionalProcessingSVGAttributes {
1564
- }
1565
- interface ContainerElementSVGAttributes<T> extends CoreSVGAttributes<T>, ShapeElementSVGAttributes<T>, Pick<PresentationSVGAttributes, "clip-path" | "mask" | "cursor" | "opacity" | "filter" | "enable-background" | "color-interpolation" | "color-rendering"> {
1566
- }
1567
- interface FilterPrimitiveElementSVGAttributes<T> extends CoreSVGAttributes<T>, Pick<PresentationSVGAttributes, "color-interpolation-filters"> {
1568
- x?: number | string | undefined;
1569
- y?: number | string | undefined;
1570
- width?: number | string | undefined;
1571
- height?: number | string | undefined;
1572
- result?: string | undefined;
1573
- }
1574
- interface SingleInputFilterSVGAttributes {
1575
- in?: string | undefined;
1576
- }
1577
- interface DoubleInputFilterSVGAttributes {
1578
- in?: string | undefined;
1579
- in2?: string | undefined;
1580
- }
1581
- interface FitToViewBoxSVGAttributes {
1582
- viewBox?: string;
1583
- preserveAspectRatio?: SVGPreserveAspectRatio;
1584
- }
1585
- interface GradientElementSVGAttributes<T> extends CoreSVGAttributes<T>, ExternalResourceSVGAttributes, StylableSVGAttributes {
1586
- gradientUnits?: SVGUnits | undefined;
1587
- gradientTransform?: string | undefined;
1588
- spreadMethod?: "pad" | "reflect" | "repeat" | undefined;
1589
- href?: string | undefined;
1590
- }
1591
- interface GraphicsElementSVGAttributes<T> extends CoreSVGAttributes<T>, Pick<PresentationSVGAttributes, "clip-rule" | "mask" | "pointer-events" | "cursor" | "opacity" | "filter" | "display" | "visibility" | "color-interpolation" | "color-rendering"> {
1592
- }
1593
- interface LightSourceElementSVGAttributes<T> extends CoreSVGAttributes<T> {
1594
- }
1595
- interface NewViewportSVGAttributes<T> extends CoreSVGAttributes<T>, Pick<PresentationSVGAttributes, "overflow" | "clip"> {
1596
- viewBox?: string;
1597
- }
1598
- interface ShapeElementSVGAttributes<T> extends CoreSVGAttributes<T>, Pick<PresentationSVGAttributes, "color" | "fill" | "fill-rule" | "fill-opacity" | "stroke" | "stroke-width" | "stroke-linecap" | "stroke-linejoin" | "stroke-miterlimit" | "stroke-dasharray" | "stroke-dashoffset" | "stroke-opacity" | "shape-rendering" | "pathLength"> {
1599
- }
1600
- interface TextContentElementSVGAttributes<T> extends CoreSVGAttributes<T>, Pick<PresentationSVGAttributes, "font-family" | "font-style" | "font-variant" | "font-weight" | "font-stretch" | "font-size" | "font-size-adjust" | "kerning" | "letter-spacing" | "word-spacing" | "text-decoration" | "glyph-orientation-horizontal" | "glyph-orientation-vertical" | "direction" | "unicode-bidi" | "text-anchor" | "dominant-baseline" | "color" | "fill" | "fill-rule" | "fill-opacity" | "stroke" | "stroke-width" | "stroke-linecap" | "stroke-linejoin" | "stroke-miterlimit" | "stroke-dasharray" | "stroke-dashoffset" | "stroke-opacity"> {
1601
- }
1602
- interface ZoomAndPanSVGAttributes {
1603
- zoomAndPan?: "disable" | "magnify";
1604
- }
1605
- interface AnimateSVGAttributes<T> extends AnimationElementSVGAttributes<T>, AnimationAttributeTargetSVGAttributes, AnimationTimingSVGAttributes, AnimationValueSVGAttributes, AnimationAdditionSVGAttributes, Pick<PresentationSVGAttributes, "color-interpolation" | "color-rendering"> {
1606
- }
1607
- interface AnimateMotionSVGAttributes<T> extends AnimationElementSVGAttributes<T>, AnimationTimingSVGAttributes, AnimationValueSVGAttributes, AnimationAdditionSVGAttributes {
1608
- path?: string | undefined;
1609
- keyPoints?: string | undefined;
1610
- rotate?: number | string | "auto" | "auto-reverse" | undefined;
1611
- origin?: "default" | undefined;
1612
- }
1613
- interface AnimateTransformSVGAttributes<T> extends AnimationElementSVGAttributes<T>, AnimationAttributeTargetSVGAttributes, AnimationTimingSVGAttributes, AnimationValueSVGAttributes, AnimationAdditionSVGAttributes {
1614
- type?: "translate" | "scale" | "rotate" | "skewX" | "skewY" | undefined;
1615
- }
1616
- interface CircleSVGAttributes<T> extends GraphicsElementSVGAttributes<T>, ShapeElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes {
1617
- cx?: number | string | undefined;
1618
- cy?: number | string | undefined;
1619
- r?: number | string | undefined;
1620
- }
1621
- interface ClipPathSVGAttributes<T> extends CoreSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "clip-path"> {
1622
- clipPathUnits?: SVGUnits | undefined;
1623
- }
1624
- interface DefsSVGAttributes<T> extends ContainerElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes {
1625
- }
1626
- interface DescSVGAttributes<T> extends CoreSVGAttributes<T>, StylableSVGAttributes {
1627
- }
1628
- interface EllipseSVGAttributes<T> extends GraphicsElementSVGAttributes<T>, ShapeElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes {
1629
- cx?: number | string | undefined;
1630
- cy?: number | string | undefined;
1631
- rx?: number | string | undefined;
1632
- ry?: number | string | undefined;
1633
- }
1634
- interface FeBlendSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, DoubleInputFilterSVGAttributes, StylableSVGAttributes {
1635
- mode?: "normal" | "multiply" | "screen" | "darken" | "lighten" | undefined;
1636
- }
1637
- interface FeColorMatrixSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes {
1638
- type?: "matrix" | "saturate" | "hueRotate" | "luminanceToAlpha" | undefined;
1639
- values?: string | undefined;
1640
- }
1641
- interface FeComponentTransferSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes {
1642
- }
1643
- interface FeCompositeSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, DoubleInputFilterSVGAttributes, StylableSVGAttributes {
1644
- operator?: "over" | "in" | "out" | "atop" | "xor" | "arithmetic" | undefined;
1645
- k1?: number | string | undefined;
1646
- k2?: number | string | undefined;
1647
- k3?: number | string | undefined;
1648
- k4?: number | string | undefined;
1649
- }
1650
- interface FeConvolveMatrixSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes {
1651
- order?: number | string | undefined;
1652
- kernelMatrix?: string | undefined;
1653
- divisor?: number | string | undefined;
1654
- bias?: number | string | undefined;
1655
- targetX?: number | string | undefined;
1656
- targetY?: number | string | undefined;
1657
- edgeMode?: "duplicate" | "wrap" | "none" | undefined;
1658
- kernelUnitLength?: number | string | undefined;
1659
- preserveAlpha?: boolean | "true" | "false" | undefined;
1660
- }
1661
- interface FeDiffuseLightingSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes, Pick<PresentationSVGAttributes, "color" | "lighting-color"> {
1662
- surfaceScale?: number | string | undefined;
1663
- diffuseConstant?: number | string | undefined;
1664
- kernelUnitLength?: number | string | undefined;
1665
- }
1666
- interface FeDisplacementMapSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, DoubleInputFilterSVGAttributes, StylableSVGAttributes {
1667
- scale?: number | string | undefined;
1668
- xChannelSelector?: "R" | "G" | "B" | "A" | undefined;
1669
- yChannelSelector?: "R" | "G" | "B" | "A" | undefined;
1670
- }
1671
- interface FeDistantLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
1672
- azimuth?: number | string | undefined;
1673
- elevation?: number | string | undefined;
1674
- }
1675
- interface FeDropShadowSVGAttributes<T> extends CoreSVGAttributes<T>, FilterPrimitiveElementSVGAttributes<T>, StylableSVGAttributes, Pick<PresentationSVGAttributes, "color" | "flood-color" | "flood-opacity"> {
1676
- dx?: number | string | undefined;
1677
- dy?: number | string | undefined;
1678
- stdDeviation?: number | string | undefined;
1679
- }
1680
- interface FeFloodSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, StylableSVGAttributes, Pick<PresentationSVGAttributes, "color" | "flood-color" | "flood-opacity"> {
1681
- }
1682
- interface FeFuncSVGAttributes<T> extends CoreSVGAttributes<T> {
1683
- type?: "identity" | "table" | "discrete" | "linear" | "gamma" | undefined;
1684
- tableValues?: string | undefined;
1685
- slope?: number | string | undefined;
1686
- intercept?: number | string | undefined;
1687
- amplitude?: number | string | undefined;
1688
- exponent?: number | string | undefined;
1689
- offset?: number | string | undefined;
1690
- }
1691
- interface FeGaussianBlurSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes {
1692
- stdDeviation?: number | string | undefined;
1693
- }
1694
- interface FeImageSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, ExternalResourceSVGAttributes, StylableSVGAttributes {
1695
- preserveAspectRatio?: SVGPreserveAspectRatio | undefined;
1696
- href?: string | undefined;
1697
- }
1698
- interface FeMergeSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, StylableSVGAttributes {
1699
- }
1700
- interface FeMergeNodeSVGAttributes<T> extends CoreSVGAttributes<T>, SingleInputFilterSVGAttributes {
1701
- }
1702
- interface FeMorphologySVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes {
1703
- operator?: "erode" | "dilate" | undefined;
1704
- radius?: number | string | undefined;
1705
- }
1706
- interface FeOffsetSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes {
1707
- dx?: number | string | undefined;
1708
- dy?: number | string | undefined;
1709
- }
1710
- interface FePointLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
1711
- x?: number | string | undefined;
1712
- y?: number | string | undefined;
1713
- z?: number | string | undefined;
1714
- }
1715
- interface FeSpecularLightingSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes, Pick<PresentationSVGAttributes, "color" | "lighting-color"> {
1716
- surfaceScale?: string | undefined;
1717
- specularConstant?: string | undefined;
1718
- specularExponent?: string | undefined;
1719
- kernelUnitLength?: number | string | undefined;
1720
- }
1721
- interface FeSpotLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
1722
- x?: number | string | undefined;
1723
- y?: number | string | undefined;
1724
- z?: number | string | undefined;
1725
- pointsAtX?: number | string | undefined;
1726
- pointsAtY?: number | string | undefined;
1727
- pointsAtZ?: number | string | undefined;
1728
- specularExponent?: number | string | undefined;
1729
- limitingConeAngle?: number | string | undefined;
1730
- }
1731
- interface FeTileSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, SingleInputFilterSVGAttributes, StylableSVGAttributes {
1732
- }
1733
- interface FeTurbulanceSVGAttributes<T> extends FilterPrimitiveElementSVGAttributes<T>, StylableSVGAttributes {
1734
- baseFrequency?: number | string | undefined;
1735
- numOctaves?: number | string | undefined;
1736
- seed?: number | string | undefined;
1737
- stitchTiles?: "stitch" | "noStitch" | undefined;
1738
- type?: "fractalNoise" | "turbulence" | undefined;
1739
- }
1740
- interface FilterSVGAttributes<T> extends CoreSVGAttributes<T>, ExternalResourceSVGAttributes, StylableSVGAttributes {
1741
- filterUnits?: SVGUnits | undefined;
1742
- primitiveUnits?: SVGUnits | undefined;
1743
- x?: number | string | undefined;
1744
- y?: number | string | undefined;
1745
- width?: number | string | undefined;
1746
- height?: number | string | undefined;
1747
- filterRes?: number | string | undefined;
1748
- }
1749
- interface ForeignObjectSVGAttributes<T> extends NewViewportSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "display" | "visibility"> {
1750
- x?: number | string | undefined;
1751
- y?: number | string | undefined;
1752
- width?: number | string | undefined;
1753
- height?: number | string | undefined;
1754
- }
1755
- interface GSVGAttributes<T> extends ContainerElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "display" | "visibility"> {
1756
- }
1757
- interface ImageSVGAttributes<T> extends NewViewportSVGAttributes<T>, GraphicsElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "color-profile" | "image-rendering"> {
1758
- x?: number | string | undefined;
1759
- y?: number | string | undefined;
1760
- width?: number | string | undefined;
1761
- height?: number | string | undefined;
1762
- preserveAspectRatio?: ImagePreserveAspectRatio | undefined;
1763
- href?: string | undefined;
1764
- }
1765
- interface LineSVGAttributes<T> extends GraphicsElementSVGAttributes<T>, ShapeElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "marker-start" | "marker-mid" | "marker-end"> {
1766
- x1?: number | string | undefined;
1767
- y1?: number | string | undefined;
1768
- x2?: number | string | undefined;
1769
- y2?: number | string | undefined;
1770
- }
1771
- interface LinearGradientSVGAttributes<T> extends GradientElementSVGAttributes<T> {
1772
- x1?: number | string | undefined;
1773
- x2?: number | string | undefined;
1774
- y1?: number | string | undefined;
1775
- y2?: number | string | undefined;
1776
- }
1777
- interface MarkerSVGAttributes<T> extends ContainerElementSVGAttributes<T>, ExternalResourceSVGAttributes, StylableSVGAttributes, FitToViewBoxSVGAttributes, Pick<PresentationSVGAttributes, "overflow" | "clip"> {
1778
- markerUnits?: "strokeWidth" | "userSpaceOnUse" | undefined;
1779
- refX?: number | string | undefined;
1780
- refY?: number | string | undefined;
1781
- markerWidth?: number | string | undefined;
1782
- markerHeight?: number | string | undefined;
1783
- orient?: string | undefined;
1784
- }
1785
- interface MaskSVGAttributes<T> extends Omit<ContainerElementSVGAttributes<T>, "opacity" | "filter">, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes {
1786
- maskUnits?: SVGUnits | undefined;
1787
- maskContentUnits?: SVGUnits | undefined;
1788
- x?: number | string | undefined;
1789
- y?: number | string | undefined;
1790
- width?: number | string | undefined;
1791
- height?: number | string | undefined;
1792
- }
1793
- interface MetadataSVGAttributes<T> extends CoreSVGAttributes<T> {
1794
- }
1795
- interface MPathSVGAttributes<T> extends CoreSVGAttributes<T> {
1796
- }
1797
- interface PathSVGAttributes<T> extends GraphicsElementSVGAttributes<T>, ShapeElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "marker-start" | "marker-mid" | "marker-end"> {
1798
- d?: string | undefined;
1799
- pathLength?: number | string | undefined;
1800
- }
1801
- interface PatternSVGAttributes<T> extends ContainerElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, FitToViewBoxSVGAttributes, Pick<PresentationSVGAttributes, "overflow" | "clip"> {
1802
- x?: number | string | undefined;
1803
- y?: number | string | undefined;
1804
- width?: number | string | undefined;
1805
- height?: number | string | undefined;
1806
- patternUnits?: SVGUnits | undefined;
1807
- patternContentUnits?: SVGUnits | undefined;
1808
- patternTransform?: string | undefined;
1809
- href?: string | undefined;
1810
- }
1811
- interface PolygonSVGAttributes<T> extends GraphicsElementSVGAttributes<T>, ShapeElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "marker-start" | "marker-mid" | "marker-end"> {
1812
- points?: string | undefined;
1813
- }
1814
- interface PolylineSVGAttributes<T> extends GraphicsElementSVGAttributes<T>, ShapeElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "marker-start" | "marker-mid" | "marker-end"> {
1815
- points?: string | undefined;
1816
- }
1817
- interface RadialGradientSVGAttributes<T> extends GradientElementSVGAttributes<T> {
1818
- cx?: number | string | undefined;
1819
- cy?: number | string | undefined;
1820
- r?: number | string | undefined;
1821
- fx?: number | string | undefined;
1822
- fy?: number | string | undefined;
1823
- }
1824
- interface RectSVGAttributes<T> extends GraphicsElementSVGAttributes<T>, ShapeElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes {
1825
- x?: number | string | undefined;
1826
- y?: number | string | undefined;
1827
- width?: number | string | undefined;
1828
- height?: number | string | undefined;
1829
- rx?: number | string | undefined;
1830
- ry?: number | string | undefined;
1831
- }
1832
- interface SetSVGAttributes<T> extends CoreSVGAttributes<T>, StylableSVGAttributes, AnimationTimingSVGAttributes {
1833
- }
1834
- interface StopSVGAttributes<T> extends CoreSVGAttributes<T>, StylableSVGAttributes, Pick<PresentationSVGAttributes, "color" | "stop-color" | "stop-opacity"> {
1835
- offset?: number | string | undefined;
1836
- }
1837
- interface SvgSVGAttributes<T> extends ContainerElementSVGAttributes<T>, NewViewportSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, FitToViewBoxSVGAttributes, ZoomAndPanSVGAttributes, PresentationSVGAttributes {
1838
- version?: string;
1839
- baseProfile?: string;
1840
- x?: number | string;
1841
- y?: number | string;
1842
- width?: number | string;
1843
- height?: number | string;
1844
- contentScriptType?: string;
1845
- contentStyleType?: string;
1846
- xmlns?: string;
1847
- /**
1848
- * Fires immediately after the browser loads the object.
1849
- *
1850
- * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGElement/load_event)
1851
- */
1852
- onLoad?: EventHandlerUnion<T, Event>;
1853
- }
1854
- interface SwitchSVGAttributes<T> extends ContainerElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "display" | "visibility"> {
1855
- }
1856
- interface SymbolSVGAttributes<T> extends ContainerElementSVGAttributes<T>, NewViewportSVGAttributes<T>, ExternalResourceSVGAttributes, StylableSVGAttributes, FitToViewBoxSVGAttributes {
1857
- width?: number | string | undefined;
1858
- height?: number | string | undefined;
1859
- preserveAspectRatio?: SVGPreserveAspectRatio | undefined;
1860
- refX?: number | string | undefined;
1861
- refY?: number | string | undefined;
1862
- viewBox?: string | undefined;
1863
- x?: number | string | undefined;
1864
- y?: number | string | undefined;
1865
- }
1866
- interface TextSVGAttributes<T> extends TextContentElementSVGAttributes<T>, GraphicsElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, TransformableSVGAttributes, Pick<PresentationSVGAttributes, "writing-mode" | "text-rendering"> {
1867
- x?: number | string | undefined;
1868
- y?: number | string | undefined;
1869
- dx?: number | string | undefined;
1870
- dy?: number | string | undefined;
1871
- rotate?: number | string | undefined;
1872
- textLength?: number | string | undefined;
1873
- lengthAdjust?: "spacing" | "spacingAndGlyphs" | undefined;
1874
- }
1875
- interface TextPathSVGAttributes<T> extends TextContentElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, Pick<PresentationSVGAttributes, "alignment-baseline" | "baseline-shift" | "display" | "visibility"> {
1876
- startOffset?: number | string | undefined;
1877
- method?: "align" | "stretch" | undefined;
1878
- spacing?: "auto" | "exact" | undefined;
1879
- href?: string | undefined;
1880
- }
1881
- interface TSpanSVGAttributes<T> extends TextContentElementSVGAttributes<T>, ConditionalProcessingSVGAttributes, ExternalResourceSVGAttributes, StylableSVGAttributes, Pick<PresentationSVGAttributes, "alignment-baseline" | "baseline-shift" | "display" | "visibility"> {
1882
- x?: number | string | undefined;
1883
- y?: number | string | undefined;
1884
- dx?: number | string | undefined;
1885
- dy?: number | string | undefined;
1886
- rotate?: number | string | undefined;
1887
- textLength?: number | string | undefined;
1888
- lengthAdjust?: "spacing" | "spacingAndGlyphs" | undefined;
1889
- }
1890
- /**
1891
- * @see https://developer.mozilla.org/en-US/docs/Web/SVG/Element/use
1892
- */
1893
- interface UseSVGAttributes<T> extends CoreSVGAttributes<T>, StylableSVGAttributes, ConditionalProcessingSVGAttributes, GraphicsElementSVGAttributes<T>, PresentationSVGAttributes, ExternalResourceSVGAttributes, TransformableSVGAttributes {
1894
- x?: number | string | undefined;
1895
- y?: number | string | undefined;
1896
- width?: number | string | undefined;
1897
- height?: number | string | undefined;
1898
- href?: string | undefined;
1899
- }
1900
- interface ViewSVGAttributes<T> extends CoreSVGAttributes<T>, ExternalResourceSVGAttributes, FitToViewBoxSVGAttributes, ZoomAndPanSVGAttributes {
1901
- viewTarget?: string | undefined;
1902
- }
1903
- /**
1904
- * A list of native HTML elements and their props.
1905
- *
1906
- * @see {HTMLElementTagNameMap}
1907
- */
1908
- interface HTMLElementTags {
1909
- a: AnchorHTMLAttributes<HTMLAnchorElement>;
1910
- abbr: HTMLAttributes;
1911
- address: HTMLAttributes;
1912
- area: AreaHTMLAttributes<HTMLAreaElement>;
1913
- article: HTMLAttributes;
1914
- aside: HTMLAttributes;
1915
- audio: AudioHTMLAttributes<HTMLAudioElement>;
1916
- b: HTMLAttributes;
1917
- base: BaseHTMLAttributes<HTMLBaseElement>;
1918
- bdi: HTMLAttributes;
1919
- bdo: HTMLAttributes;
1920
- blockquote: BlockquoteHTMLAttributes<HTMLQuoteElement>;
1921
- body: HTMLAttributes<HTMLBodyElement>;
1922
- br: HTMLAttributes<HTMLBRElement>;
1923
- button: ButtonHTMLAttributes<HTMLButtonElement>;
1924
- canvas: CanvasHTMLAttributes<HTMLCanvasElement>;
1925
- caption: HTMLAttributes;
1926
- cite: HTMLAttributes;
1927
- code: HTMLAttributes;
1928
- col: ColHTMLAttributes<HTMLTableColElement>;
1929
- colgroup: ColgroupHTMLAttributes<HTMLTableColElement>;
1930
- data: DataHTMLAttributes<HTMLDataElement>;
1931
- datalist: HTMLAttributes<HTMLDataListElement>;
1932
- dd: HTMLAttributes;
1933
- del: HTMLAttributes;
1934
- details: DetailsHTMLAttributes<HTMLDetailsElement>;
1935
- dfn: HTMLAttributes;
1936
- dialog: DialogHTMLAttributes<HTMLDialogElement>;
1937
- div: HTMLAttributes<HTMLDivElement>;
1938
- dl: HTMLAttributes<HTMLDListElement>;
1939
- dt: HTMLAttributes;
1940
- em: HTMLAttributes;
1941
- embed: EmbedHTMLAttributes<HTMLEmbedElement>;
1942
- fieldset: FieldsetHTMLAttributes<HTMLFieldSetElement>;
1943
- figcaption: HTMLAttributes;
1944
- figure: HTMLAttributes;
1945
- footer: HTMLAttributes;
1946
- form: FormHTMLAttributes<HTMLFormElement>;
1947
- h1: HTMLAttributes<HTMLHeadingElement>;
1948
- h2: HTMLAttributes<HTMLHeadingElement>;
1949
- h3: HTMLAttributes<HTMLHeadingElement>;
1950
- h4: HTMLAttributes<HTMLHeadingElement>;
1951
- h5: HTMLAttributes<HTMLHeadingElement>;
1952
- h6: HTMLAttributes<HTMLHeadingElement>;
1953
- head: HTMLAttributes<HTMLHeadElement>;
1954
- header: HTMLAttributes;
1955
- hgroup: HTMLAttributes;
1956
- hr: HTMLAttributes<HTMLHRElement>;
1957
- html: HTMLAttributes<HTMLHtmlElement>;
1958
- i: HTMLAttributes;
1959
- iframe: IframeHTMLAttributes<HTMLIFrameElement>;
1960
- img: ImgHTMLAttributes<HTMLImageElement>;
1961
- input: InputHTMLAttributes<HTMLInputElement>;
1962
- ins: InsHTMLAttributes<HTMLModElement>;
1963
- kbd: HTMLAttributes;
1964
- label: LabelHTMLAttributes<HTMLLabelElement>;
1965
- legend: HTMLAttributes<HTMLLegendElement>;
1966
- li: LiHTMLAttributes<HTMLLIElement>;
1967
- link: LinkHTMLAttributes<HTMLLinkElement>;
1968
- main: HTMLAttributes;
1969
- map: MapHTMLAttributes<HTMLMapElement>;
1970
- math: MathMLAttributes;
1971
- mark: HTMLAttributes;
1972
- menu: MenuHTMLAttributes<HTMLMenuElement>;
1973
- meta: MetaHTMLAttributes<HTMLMetaElement>;
1974
- meter: MeterHTMLAttributes<HTMLMeterElement>;
1975
- nav: HTMLAttributes;
1976
- noscript: HTMLAttributes;
1977
- object: ObjectHTMLAttributes<HTMLObjectElement>;
1978
- ol: OlHTMLAttributes<HTMLOListElement>;
1979
- optgroup: OptgroupHTMLAttributes<HTMLOptGroupElement>;
1980
- option: OptionHTMLAttributes<HTMLOptionElement>;
1981
- output: OutputHTMLAttributes<HTMLOutputElement>;
1982
- p: HTMLAttributes<HTMLParagraphElement>;
1983
- picture: HTMLAttributes;
1984
- pre: HTMLAttributes<HTMLPreElement>;
1985
- progress: ProgressHTMLAttributes<HTMLProgressElement>;
1986
- q: QuoteHTMLAttributes<HTMLQuoteElement>;
1987
- rp: HTMLAttributes;
1988
- rt: HTMLAttributes;
1989
- ruby: HTMLAttributes;
1990
- s: HTMLAttributes;
1991
- samp: HTMLAttributes;
1992
- script: ScriptHTMLAttributes<HTMLScriptElement>;
1993
- search: HTMLAttributes;
1994
- section: HTMLAttributes;
1995
- select: SelectHTMLAttributes<HTMLSelectElement>;
1996
- slot: SlotHTMLAttributes;
1997
- small: HTMLAttributes;
1998
- source: SourceHTMLAttributes<HTMLSourceElement>;
1999
- span: HTMLAttributes<HTMLSpanElement>;
2000
- strong: HTMLAttributes;
2001
- /**
2002
- * For use when you have a dynamic CSS string that needs to be added as a
2003
- * style. If you have a static string, use Lit's "styles" property instead
2004
- * for better performance.
2005
- */
2006
- style: StyleHTMLAttributes<HTMLStyleElement>;
2007
- svg: SvgSVGAttributes<SVGSVGElement>;
2008
- sub: HTMLAttributes;
2009
- summary: HTMLAttributes;
2010
- sup: HTMLAttributes;
2011
- table: HTMLAttributes<HTMLTableElement>;
2012
- tbody: HTMLAttributes<HTMLTableSectionElement>;
2013
- td: TdHTMLAttributes<HTMLTableCellElement>;
2014
- template: TemplateHTMLAttributes<HTMLTemplateElement>;
2015
- textarea: TextareaHTMLAttributes<HTMLTextAreaElement>;
2016
- tfoot: HTMLAttributes<HTMLTableSectionElement>;
2017
- th: ThHTMLAttributes<HTMLTableCellElement>;
2018
- thead: HTMLAttributes<HTMLTableSectionElement>;
2019
- time: TimeHTMLAttributes<HTMLTimeElement>;
2020
- title: HTMLAttributes<HTMLTitleElement>;
2021
- tr: HTMLAttributes<HTMLTableRowElement>;
2022
- track: TrackHTMLAttributes<HTMLTrackElement>;
2023
- u: HTMLAttributes;
2024
- ul: HTMLAttributes<HTMLUListElement>;
2025
- var: HTMLAttributes;
2026
- video: VideoHTMLAttributes<HTMLVideoElement>;
2027
- wbr: HTMLAttributes;
2028
- }
2029
- /**
2030
- * A list of native SVG elements and their props.
2031
- *
2032
- * @type {SVGElementTagNameMap}
2033
- */
2034
- interface SVGElementTags {
2035
- animate: AnimateSVGAttributes<SVGAnimateElement>;
2036
- animateMotion: AnimateMotionSVGAttributes<SVGAnimateMotionElement>;
2037
- animateTransform: AnimateTransformSVGAttributes<SVGAnimateTransformElement>;
2038
- circle: CircleSVGAttributes<SVGCircleElement>;
2039
- clipPath: ClipPathSVGAttributes<SVGClipPathElement>;
2040
- defs: DefsSVGAttributes<SVGDefsElement>;
2041
- desc: DescSVGAttributes<SVGDescElement>;
2042
- ellipse: EllipseSVGAttributes<SVGEllipseElement>;
2043
- feBlend: FeBlendSVGAttributes<SVGFEBlendElement>;
2044
- feColorMatrix: FeColorMatrixSVGAttributes<SVGFEColorMatrixElement>;
2045
- feComponentTransfer: FeComponentTransferSVGAttributes<SVGFEComponentTransferElement>;
2046
- feComposite: FeCompositeSVGAttributes<SVGFECompositeElement>;
2047
- feConvolveMatrix: FeConvolveMatrixSVGAttributes<SVGFEConvolveMatrixElement>;
2048
- feDiffuseLighting: FeDiffuseLightingSVGAttributes<SVGFEDiffuseLightingElement>;
2049
- feDisplacementMap: FeDisplacementMapSVGAttributes<SVGFEDisplacementMapElement>;
2050
- feDistantLight: FeDistantLightSVGAttributes<SVGFEDistantLightElement>;
2051
- feDropShadow: FeDropShadowSVGAttributes<SVGFEDropShadowElement>;
2052
- feFlood: FeFloodSVGAttributes<SVGFEFloodElement>;
2053
- feFuncA: FeFuncSVGAttributes<SVGFEFuncAElement>;
2054
- feFuncB: FeFuncSVGAttributes<SVGFEFuncBElement>;
2055
- feFuncG: FeFuncSVGAttributes<SVGFEFuncGElement>;
2056
- feFuncR: FeFuncSVGAttributes<SVGFEFuncRElement>;
2057
- feGaussianBlur: FeGaussianBlurSVGAttributes<SVGFEGaussianBlurElement>;
2058
- feImage: FeImageSVGAttributes<SVGFEImageElement>;
2059
- feMerge: FeMergeSVGAttributes<SVGFEMergeElement>;
2060
- feMergeNode: FeMergeNodeSVGAttributes<SVGFEMergeNodeElement>;
2061
- feMorphology: FeMorphologySVGAttributes<SVGFEMorphologyElement>;
2062
- feOffset: FeOffsetSVGAttributes<SVGFEOffsetElement>;
2063
- fePointLight: FePointLightSVGAttributes<SVGFEPointLightElement>;
2064
- feSpecularLighting: FeSpecularLightingSVGAttributes<SVGFESpecularLightingElement>;
2065
- feSpotLight: FeSpotLightSVGAttributes<SVGFESpotLightElement>;
2066
- feTile: FeTileSVGAttributes<SVGFETileElement>;
2067
- feTurbulence: FeTurbulanceSVGAttributes<SVGFETurbulenceElement>;
2068
- filter: FilterSVGAttributes<SVGFilterElement>;
2069
- foreignObject: ForeignObjectSVGAttributes<SVGForeignObjectElement>;
2070
- g: GSVGAttributes<SVGGElement>;
2071
- image: ImageSVGAttributes<SVGImageElement>;
2072
- line: LineSVGAttributes<SVGLineElement>;
2073
- linearGradient: LinearGradientSVGAttributes<SVGLinearGradientElement>;
2074
- marker: MarkerSVGAttributes<SVGMarkerElement>;
2075
- mask: MaskSVGAttributes<SVGMaskElement>;
2076
- metadata: MetadataSVGAttributes<SVGMetadataElement>;
2077
- mpath: MPathSVGAttributes<SVGMPathElement>;
2078
- path: PathSVGAttributes<SVGPathElement>;
2079
- pattern: PatternSVGAttributes<SVGPatternElement>;
2080
- polygon: PolygonSVGAttributes<SVGPolygonElement>;
2081
- polyline: PolylineSVGAttributes<SVGPolylineElement>;
2082
- radialGradient: RadialGradientSVGAttributes<SVGRadialGradientElement>;
2083
- rect: RectSVGAttributes<SVGRectElement>;
2084
- set: SetSVGAttributes<SVGSetElement>;
2085
- stop: StopSVGAttributes<SVGStopElement>;
2086
- svg: SvgSVGAttributes<SVGSVGElement>;
2087
- switch: SwitchSVGAttributes<SVGSwitchElement>;
2088
- symbol: SymbolSVGAttributes<SVGSymbolElement>;
2089
- text: TextSVGAttributes<SVGTextElement>;
2090
- textPath: TextPathSVGAttributes<SVGTextPathElement>;
2091
- tspan: TSpanSVGAttributes<SVGTSpanElement>;
2092
- use: UseSVGAttributes<SVGUseElement>;
2093
- view: ViewSVGAttributes<SVGViewElement>;
2094
- }
2095
- }
2096
- export {};