solid-js 1.8.19 → 1.8.21

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.
Files changed (48) hide show
  1. package/dist/dev.cjs +6 -6
  2. package/dist/dev.js +562 -321
  3. package/dist/server.js +168 -74
  4. package/dist/solid.cjs +6 -6
  5. package/dist/solid.js +489 -279
  6. package/h/dist/h.js +38 -9
  7. package/h/jsx-runtime/dist/jsx.js +1 -1
  8. package/h/jsx-runtime/types/index.d.ts +11 -8
  9. package/h/types/hyperscript.d.ts +11 -11
  10. package/html/dist/html.js +216 -94
  11. package/html/types/lit.d.ts +47 -33
  12. package/package.json +1 -1
  13. package/store/dist/dev.js +122 -43
  14. package/store/dist/server.js +19 -8
  15. package/store/dist/store.js +113 -40
  16. package/store/types/index.d.ts +21 -7
  17. package/store/types/modifiers.d.ts +6 -3
  18. package/store/types/mutable.d.ts +5 -2
  19. package/store/types/server.d.ts +12 -4
  20. package/store/types/store.d.ts +218 -61
  21. package/types/index.d.ts +75 -10
  22. package/types/jsx.d.ts +913 -862
  23. package/types/reactive/array.d.ts +12 -4
  24. package/types/reactive/observable.d.ts +25 -17
  25. package/types/reactive/scheduler.d.ts +9 -6
  26. package/types/reactive/signal.d.ts +233 -142
  27. package/types/render/Suspense.d.ts +5 -5
  28. package/types/render/component.d.ts +64 -33
  29. package/types/render/flow.d.ts +43 -31
  30. package/types/render/hydration.d.ts +15 -15
  31. package/types/server/index.d.ts +57 -2
  32. package/types/server/reactive.d.ts +73 -42
  33. package/types/server/rendering.d.ts +169 -98
  34. package/universal/dist/dev.js +28 -12
  35. package/universal/dist/universal.js +28 -12
  36. package/universal/types/index.d.ts +3 -1
  37. package/universal/types/universal.d.ts +0 -1
  38. package/web/dist/dev.cjs +34 -18
  39. package/web/dist/dev.js +655 -97
  40. package/web/dist/server.cjs +1 -1
  41. package/web/dist/server.js +210 -96
  42. package/web/dist/web.cjs +32 -16
  43. package/web/dist/web.js +646 -95
  44. package/web/storage/dist/storage.js +3 -3
  45. package/web/types/client.d.ts +2 -2
  46. package/web/types/core.d.ts +10 -1
  47. package/web/types/index.d.ts +27 -10
  48. package/web/types/server-mock.d.ts +47 -32
package/types/jsx.d.ts CHANGED
@@ -125,14 +125,14 @@ export namespace JSX {
125
125
  }
126
126
 
127
127
  interface IntrinsicAttributes {
128
- ref?: unknown | ((e: unknown) => void);
128
+ ref?: unknown | ((e: unknown) => void) | undefined;
129
129
  }
130
130
  interface CustomAttributes<T> {
131
- ref?: T | ((el: T) => void);
131
+ ref?: T | ((el: T) => void) | undefined;
132
132
  classList?: {
133
133
  [k: string]: boolean | undefined;
134
134
  };
135
- $ServerOnly?: boolean;
135
+ $ServerOnly?: boolean | undefined;
136
136
  }
137
137
  type Accessor<T> = () => T;
138
138
  interface Directives {}
@@ -187,207 +187,209 @@ export namespace JSX {
187
187
  OnCaptureAttributes<T>,
188
188
  CustomEventHandlersCamelCase<T>,
189
189
  CustomEventHandlersLowerCase<T> {
190
- children?: Element;
191
- innerHTML?: string;
192
- innerText?: string | number;
193
- textContent?: string | number;
190
+ children?: Element | undefined;
191
+ innerHTML?: string | undefined;
192
+ innerText?: string | number | undefined;
193
+ textContent?: string | number | undefined;
194
194
  // camel case events
195
- onCopy?: EventHandlerUnion<T, ClipboardEvent>;
196
- onCut?: EventHandlerUnion<T, ClipboardEvent>;
197
- onPaste?: EventHandlerUnion<T, ClipboardEvent>;
198
- onCompositionEnd?: EventHandlerUnion<T, CompositionEvent>;
199
- onCompositionStart?: EventHandlerUnion<T, CompositionEvent>;
200
- onCompositionUpdate?: EventHandlerUnion<T, CompositionEvent>;
201
- onFocusOut?: FocusEventHandlerUnion<T, FocusEvent>;
202
- onFocusIn?: FocusEventHandlerUnion<T, FocusEvent>;
203
- onEncrypted?: EventHandlerUnion<T, Event>;
204
- onDragExit?: EventHandlerUnion<T, DragEvent>;
195
+ onCopy?: EventHandlerUnion<T, ClipboardEvent> | undefined;
196
+ onCut?: EventHandlerUnion<T, ClipboardEvent> | undefined;
197
+ onPaste?: EventHandlerUnion<T, ClipboardEvent> | undefined;
198
+ onCompositionEnd?: EventHandlerUnion<T, CompositionEvent> | undefined;
199
+ onCompositionStart?: EventHandlerUnion<T, CompositionEvent> | undefined;
200
+ onCompositionUpdate?: EventHandlerUnion<T, CompositionEvent> | undefined;
201
+ onFocusOut?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
202
+ onFocusIn?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
203
+ onEncrypted?: EventHandlerUnion<T, Event> | undefined;
204
+ onDragExit?: EventHandlerUnion<T, DragEvent> | undefined;
205
205
  // lower case events
206
- oncopy?: EventHandlerUnion<T, ClipboardEvent>;
207
- oncut?: EventHandlerUnion<T, ClipboardEvent>;
208
- onpaste?: EventHandlerUnion<T, ClipboardEvent>;
209
- oncompositionend?: EventHandlerUnion<T, CompositionEvent>;
210
- oncompositionstart?: EventHandlerUnion<T, CompositionEvent>;
211
- oncompositionupdate?: EventHandlerUnion<T, CompositionEvent>;
212
- onfocusout?: FocusEventHandlerUnion<T, FocusEvent>;
213
- onfocusin?: FocusEventHandlerUnion<T, FocusEvent>;
214
- onencrypted?: EventHandlerUnion<T, Event>;
215
- ondragexit?: EventHandlerUnion<T, DragEvent>;
206
+ oncopy?: EventHandlerUnion<T, ClipboardEvent> | undefined;
207
+ oncut?: EventHandlerUnion<T, ClipboardEvent> | undefined;
208
+ onpaste?: EventHandlerUnion<T, ClipboardEvent> | undefined;
209
+ oncompositionend?: EventHandlerUnion<T, CompositionEvent> | undefined;
210
+ oncompositionstart?: EventHandlerUnion<T, CompositionEvent> | undefined;
211
+ oncompositionupdate?: EventHandlerUnion<T, CompositionEvent> | undefined;
212
+ onfocusout?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
213
+ onfocusin?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
214
+ onencrypted?: EventHandlerUnion<T, Event> | undefined;
215
+ ondragexit?: EventHandlerUnion<T, DragEvent> | undefined;
216
216
  }
217
217
  interface CustomEventHandlersCamelCase<T> {
218
- onAbort?: EventHandlerUnion<T, Event>;
219
- onAnimationEnd?: EventHandlerUnion<T, AnimationEvent>;
220
- onAnimationIteration?: EventHandlerUnion<T, AnimationEvent>;
221
- onAnimationStart?: EventHandlerUnion<T, AnimationEvent>;
222
- onAuxClick?: EventHandlerUnion<T, MouseEvent>;
223
- onBeforeInput?: InputEventHandlerUnion<T, InputEvent>;
224
- onBeforeToggle?: EventHandlerUnion<T, ToggleEvent>;
225
- onBlur?: FocusEventHandlerUnion<T, FocusEvent>;
226
- onCanPlay?: EventHandlerUnion<T, Event>;
227
- onCanPlayThrough?: EventHandlerUnion<T, Event>;
228
- onChange?: ChangeEventHandlerUnion<T, Event>;
229
- onClick?: EventHandlerUnion<T, MouseEvent>;
230
- onContextMenu?: EventHandlerUnion<T, MouseEvent>;
231
- onDblClick?: EventHandlerUnion<T, MouseEvent>;
232
- onDrag?: EventHandlerUnion<T, DragEvent>;
233
- onDragEnd?: EventHandlerUnion<T, DragEvent>;
234
- onDragEnter?: EventHandlerUnion<T, DragEvent>;
235
- onDragLeave?: EventHandlerUnion<T, DragEvent>;
236
- onDragOver?: EventHandlerUnion<T, DragEvent>;
237
- onDragStart?: EventHandlerUnion<T, DragEvent>;
238
- onDrop?: EventHandlerUnion<T, DragEvent>;
239
- onDurationChange?: EventHandlerUnion<T, Event>;
240
- onEmptied?: EventHandlerUnion<T, Event>;
241
- onEnded?: EventHandlerUnion<T, Event>;
242
- onError?: EventHandlerUnion<T, Event>;
243
- onFocus?: FocusEventHandlerUnion<T, FocusEvent>;
244
- onGotPointerCapture?: EventHandlerUnion<T, PointerEvent>;
245
- onInput?: InputEventHandlerUnion<T, InputEvent>;
246
- onInvalid?: EventHandlerUnion<T, Event>;
247
- onKeyDown?: EventHandlerUnion<T, KeyboardEvent>;
248
- onKeyPress?: EventHandlerUnion<T, KeyboardEvent>;
249
- onKeyUp?: EventHandlerUnion<T, KeyboardEvent>;
250
- onLoad?: EventHandlerUnion<T, Event>;
251
- onLoadedData?: EventHandlerUnion<T, Event>;
252
- onLoadedMetadata?: EventHandlerUnion<T, Event>;
253
- onLoadStart?: EventHandlerUnion<T, Event>;
254
- onLostPointerCapture?: EventHandlerUnion<T, PointerEvent>;
255
- onMouseDown?: EventHandlerUnion<T, MouseEvent>;
256
- onMouseEnter?: EventHandlerUnion<T, MouseEvent>;
257
- onMouseLeave?: EventHandlerUnion<T, MouseEvent>;
258
- onMouseMove?: EventHandlerUnion<T, MouseEvent>;
259
- onMouseOut?: EventHandlerUnion<T, MouseEvent>;
260
- onMouseOver?: EventHandlerUnion<T, MouseEvent>;
261
- onMouseUp?: EventHandlerUnion<T, MouseEvent>;
262
- onPause?: EventHandlerUnion<T, Event>;
263
- onPlay?: EventHandlerUnion<T, Event>;
264
- onPlaying?: EventHandlerUnion<T, Event>;
265
- onPointerCancel?: EventHandlerUnion<T, PointerEvent>;
266
- onPointerDown?: EventHandlerUnion<T, PointerEvent>;
267
- onPointerEnter?: EventHandlerUnion<T, PointerEvent>;
268
- onPointerLeave?: EventHandlerUnion<T, PointerEvent>;
269
- onPointerMove?: EventHandlerUnion<T, PointerEvent>;
270
- onPointerOut?: EventHandlerUnion<T, PointerEvent>;
271
- onPointerOver?: EventHandlerUnion<T, PointerEvent>;
272
- onPointerUp?: EventHandlerUnion<T, PointerEvent>;
273
- onProgress?: EventHandlerUnion<T, Event>;
274
- onRateChange?: EventHandlerUnion<T, Event>;
275
- onReset?: EventHandlerUnion<T, Event>;
276
- onScroll?: EventHandlerUnion<T, Event>;
277
- onScrollEnd?: EventHandlerUnion<T, Event>;
278
- onSeeked?: EventHandlerUnion<T, Event>;
279
- onSeeking?: EventHandlerUnion<T, Event>;
280
- onSelect?: EventHandlerUnion<T, UIEvent>;
281
- onStalled?: EventHandlerUnion<T, Event>;
282
- onSubmit?: EventHandlerUnion<
283
- T,
284
- Event & {
285
- submitter: HTMLElement;
286
- }
287
- >;
288
- onSuspend?: EventHandlerUnion<T, Event>;
289
- onTimeUpdate?: EventHandlerUnion<T, Event>;
290
- onToggle?: EventHandlerUnion<T, ToggleEvent>;
291
- onTouchCancel?: EventHandlerUnion<T, TouchEvent>;
292
- onTouchEnd?: EventHandlerUnion<T, TouchEvent>;
293
- onTouchMove?: EventHandlerUnion<T, TouchEvent>;
294
- onTouchStart?: EventHandlerUnion<T, TouchEvent>;
295
- onTransitionStart?: EventHandlerUnion<T, TransitionEvent>;
296
- onTransitionEnd?: EventHandlerUnion<T, TransitionEvent>;
297
- onTransitionRun?: EventHandlerUnion<T, TransitionEvent>;
298
- onTransitionCancel?: EventHandlerUnion<T, TransitionEvent>;
299
- onVolumeChange?: EventHandlerUnion<T, Event>;
300
- onWaiting?: EventHandlerUnion<T, Event>;
301
- onWheel?: EventHandlerUnion<T, WheelEvent>;
218
+ onAbort?: EventHandlerUnion<T, Event> | undefined;
219
+ onAnimationEnd?: EventHandlerUnion<T, AnimationEvent> | undefined;
220
+ onAnimationIteration?: EventHandlerUnion<T, AnimationEvent> | undefined;
221
+ onAnimationStart?: EventHandlerUnion<T, AnimationEvent> | undefined;
222
+ onAuxClick?: EventHandlerUnion<T, MouseEvent> | undefined;
223
+ onBeforeInput?: InputEventHandlerUnion<T, InputEvent> | undefined;
224
+ onBeforeToggle?: EventHandlerUnion<T, ToggleEvent> | undefined;
225
+ onBlur?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
226
+ onCanPlay?: EventHandlerUnion<T, Event> | undefined;
227
+ onCanPlayThrough?: EventHandlerUnion<T, Event> | undefined;
228
+ onChange?: ChangeEventHandlerUnion<T, Event> | undefined;
229
+ onClick?: EventHandlerUnion<T, MouseEvent> | undefined;
230
+ onContextMenu?: EventHandlerUnion<T, MouseEvent> | undefined;
231
+ onDblClick?: EventHandlerUnion<T, MouseEvent> | undefined;
232
+ onDrag?: EventHandlerUnion<T, DragEvent> | undefined;
233
+ onDragEnd?: EventHandlerUnion<T, DragEvent> | undefined;
234
+ onDragEnter?: EventHandlerUnion<T, DragEvent> | undefined;
235
+ onDragLeave?: EventHandlerUnion<T, DragEvent> | undefined;
236
+ onDragOver?: EventHandlerUnion<T, DragEvent> | undefined;
237
+ onDragStart?: EventHandlerUnion<T, DragEvent> | undefined;
238
+ onDrop?: EventHandlerUnion<T, DragEvent> | undefined;
239
+ onDurationChange?: EventHandlerUnion<T, Event> | undefined;
240
+ onEmptied?: EventHandlerUnion<T, Event> | undefined;
241
+ onEnded?: EventHandlerUnion<T, Event> | undefined;
242
+ onError?: EventHandlerUnion<T, Event> | undefined;
243
+ onFocus?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
244
+ onGotPointerCapture?: EventHandlerUnion<T, PointerEvent> | undefined;
245
+ onInput?: InputEventHandlerUnion<T, InputEvent> | undefined;
246
+ onInvalid?: EventHandlerUnion<T, Event> | undefined;
247
+ onKeyDown?: EventHandlerUnion<T, KeyboardEvent> | undefined;
248
+ onKeyPress?: EventHandlerUnion<T, KeyboardEvent> | undefined;
249
+ onKeyUp?: EventHandlerUnion<T, KeyboardEvent> | undefined;
250
+ onLoad?: EventHandlerUnion<T, Event> | undefined;
251
+ onLoadedData?: EventHandlerUnion<T, Event> | undefined;
252
+ onLoadedMetadata?: EventHandlerUnion<T, Event> | undefined;
253
+ onLoadStart?: EventHandlerUnion<T, Event> | undefined;
254
+ onLostPointerCapture?: EventHandlerUnion<T, PointerEvent> | undefined;
255
+ onMouseDown?: EventHandlerUnion<T, MouseEvent> | undefined;
256
+ onMouseEnter?: EventHandlerUnion<T, MouseEvent> | undefined;
257
+ onMouseLeave?: EventHandlerUnion<T, MouseEvent> | undefined;
258
+ onMouseMove?: EventHandlerUnion<T, MouseEvent> | undefined;
259
+ onMouseOut?: EventHandlerUnion<T, MouseEvent> | undefined;
260
+ onMouseOver?: EventHandlerUnion<T, MouseEvent> | undefined;
261
+ onMouseUp?: EventHandlerUnion<T, MouseEvent> | undefined;
262
+ onPause?: EventHandlerUnion<T, Event> | undefined;
263
+ onPlay?: EventHandlerUnion<T, Event> | undefined;
264
+ onPlaying?: EventHandlerUnion<T, Event> | undefined;
265
+ onPointerCancel?: EventHandlerUnion<T, PointerEvent> | undefined;
266
+ onPointerDown?: EventHandlerUnion<T, PointerEvent> | undefined;
267
+ onPointerEnter?: EventHandlerUnion<T, PointerEvent> | undefined;
268
+ onPointerLeave?: EventHandlerUnion<T, PointerEvent> | undefined;
269
+ onPointerMove?: EventHandlerUnion<T, PointerEvent> | undefined;
270
+ onPointerOut?: EventHandlerUnion<T, PointerEvent> | undefined;
271
+ onPointerOver?: EventHandlerUnion<T, PointerEvent> | undefined;
272
+ onPointerUp?: EventHandlerUnion<T, PointerEvent> | undefined;
273
+ onProgress?: EventHandlerUnion<T, Event> | undefined;
274
+ onRateChange?: EventHandlerUnion<T, Event> | undefined;
275
+ onReset?: EventHandlerUnion<T, Event> | undefined;
276
+ onScroll?: EventHandlerUnion<T, Event> | undefined;
277
+ onScrollEnd?: EventHandlerUnion<T, Event> | undefined;
278
+ onSeeked?: EventHandlerUnion<T, Event> | undefined;
279
+ onSeeking?: EventHandlerUnion<T, Event> | undefined;
280
+ onSelect?: EventHandlerUnion<T, UIEvent> | undefined;
281
+ onStalled?: EventHandlerUnion<T, Event> | undefined;
282
+ onSubmit?:
283
+ | EventHandlerUnion<
284
+ T,
285
+ Event & {
286
+ submitter: HTMLElement;
287
+ }
288
+ >
289
+ | undefined;
290
+ onSuspend?: EventHandlerUnion<T, Event> | undefined;
291
+ onTimeUpdate?: EventHandlerUnion<T, Event> | undefined;
292
+ onToggle?: EventHandlerUnion<T, ToggleEvent> | undefined;
293
+ onTouchCancel?: EventHandlerUnion<T, TouchEvent> | undefined;
294
+ onTouchEnd?: EventHandlerUnion<T, TouchEvent> | undefined;
295
+ onTouchMove?: EventHandlerUnion<T, TouchEvent> | undefined;
296
+ onTouchStart?: EventHandlerUnion<T, TouchEvent> | undefined;
297
+ onTransitionStart?: EventHandlerUnion<T, TransitionEvent> | undefined;
298
+ onTransitionEnd?: EventHandlerUnion<T, TransitionEvent> | undefined;
299
+ onTransitionRun?: EventHandlerUnion<T, TransitionEvent> | undefined;
300
+ onTransitionCancel?: EventHandlerUnion<T, TransitionEvent> | undefined;
301
+ onVolumeChange?: EventHandlerUnion<T, Event> | undefined;
302
+ onWaiting?: EventHandlerUnion<T, Event> | undefined;
303
+ onWheel?: EventHandlerUnion<T, WheelEvent> | undefined;
302
304
  }
303
305
  /**
304
306
  * @type {GlobalEventHandlers}
305
307
  */
306
308
  interface CustomEventHandlersLowerCase<T> {
307
- onabort?: EventHandlerUnion<T, Event>;
308
- onanimationend?: EventHandlerUnion<T, AnimationEvent>;
309
- onanimationiteration?: EventHandlerUnion<T, AnimationEvent>;
310
- onanimationstart?: EventHandlerUnion<T, AnimationEvent>;
311
- onauxclick?: EventHandlerUnion<T, MouseEvent>;
312
- onbeforeinput?: InputEventHandlerUnion<T, InputEvent>;
313
- onbeforetoggle?: EventHandlerUnion<T, ToggleEvent>;
314
- onblur?: FocusEventHandlerUnion<T, FocusEvent>;
315
- oncanplay?: EventHandlerUnion<T, Event>;
316
- oncanplaythrough?: EventHandlerUnion<T, Event>;
317
- onchange?: ChangeEventHandlerUnion<T, Event>;
318
- onclick?: EventHandlerUnion<T, MouseEvent>;
319
- oncontextmenu?: EventHandlerUnion<T, MouseEvent>;
320
- ondblclick?: EventHandlerUnion<T, MouseEvent>;
321
- ondrag?: EventHandlerUnion<T, DragEvent>;
322
- ondragend?: EventHandlerUnion<T, DragEvent>;
323
- ondragenter?: EventHandlerUnion<T, DragEvent>;
324
- ondragleave?: EventHandlerUnion<T, DragEvent>;
325
- ondragover?: EventHandlerUnion<T, DragEvent>;
326
- ondragstart?: EventHandlerUnion<T, DragEvent>;
327
- ondrop?: EventHandlerUnion<T, DragEvent>;
328
- ondurationchange?: EventHandlerUnion<T, Event>;
329
- onemptied?: EventHandlerUnion<T, Event>;
330
- onended?: EventHandlerUnion<T, Event>;
331
- onerror?: EventHandlerUnion<T, Event>;
332
- onfocus?: FocusEventHandlerUnion<T, FocusEvent>;
333
- ongotpointercapture?: EventHandlerUnion<T, PointerEvent>;
334
- oninput?: InputEventHandlerUnion<T, InputEvent>;
335
- oninvalid?: EventHandlerUnion<T, Event>;
336
- onkeydown?: EventHandlerUnion<T, KeyboardEvent>;
337
- onkeypress?: EventHandlerUnion<T, KeyboardEvent>;
338
- onkeyup?: EventHandlerUnion<T, KeyboardEvent>;
339
- onload?: EventHandlerUnion<T, Event>;
340
- onloadeddata?: EventHandlerUnion<T, Event>;
341
- onloadedmetadata?: EventHandlerUnion<T, Event>;
342
- onloadstart?: EventHandlerUnion<T, Event>;
343
- onlostpointercapture?: EventHandlerUnion<T, PointerEvent>;
344
- onmousedown?: EventHandlerUnion<T, MouseEvent>;
345
- onmouseenter?: EventHandlerUnion<T, MouseEvent>;
346
- onmouseleave?: EventHandlerUnion<T, MouseEvent>;
347
- onmousemove?: EventHandlerUnion<T, MouseEvent>;
348
- onmouseout?: EventHandlerUnion<T, MouseEvent>;
349
- onmouseover?: EventHandlerUnion<T, MouseEvent>;
350
- onmouseup?: EventHandlerUnion<T, MouseEvent>;
351
- onpause?: EventHandlerUnion<T, Event>;
352
- onplay?: EventHandlerUnion<T, Event>;
353
- onplaying?: EventHandlerUnion<T, Event>;
354
- onpointercancel?: EventHandlerUnion<T, PointerEvent>;
355
- onpointerdown?: EventHandlerUnion<T, PointerEvent>;
356
- onpointerenter?: EventHandlerUnion<T, PointerEvent>;
357
- onpointerleave?: EventHandlerUnion<T, PointerEvent>;
358
- onpointermove?: EventHandlerUnion<T, PointerEvent>;
359
- onpointerout?: EventHandlerUnion<T, PointerEvent>;
360
- onpointerover?: EventHandlerUnion<T, PointerEvent>;
361
- onpointerup?: EventHandlerUnion<T, PointerEvent>;
362
- onprogress?: EventHandlerUnion<T, Event>;
363
- onratechange?: EventHandlerUnion<T, Event>;
364
- onreset?: EventHandlerUnion<T, Event>;
365
- onscroll?: EventHandlerUnion<T, Event>;
366
- onscrollend?: EventHandlerUnion<T, Event>;
367
- onseeked?: EventHandlerUnion<T, Event>;
368
- onseeking?: EventHandlerUnion<T, Event>;
369
- onselect?: EventHandlerUnion<T, UIEvent>;
370
- onstalled?: EventHandlerUnion<T, Event>;
309
+ onabort?: EventHandlerUnion<T, Event> | undefined;
310
+ onanimationend?: EventHandlerUnion<T, AnimationEvent> | undefined;
311
+ onanimationiteration?: EventHandlerUnion<T, AnimationEvent> | undefined;
312
+ onanimationstart?: EventHandlerUnion<T, AnimationEvent> | undefined;
313
+ onauxclick?: EventHandlerUnion<T, MouseEvent> | undefined;
314
+ onbeforeinput?: InputEventHandlerUnion<T, InputEvent> | undefined;
315
+ onbeforetoggle?: EventHandlerUnion<T, ToggleEvent> | undefined;
316
+ onblur?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
317
+ oncanplay?: EventHandlerUnion<T, Event> | undefined;
318
+ oncanplaythrough?: EventHandlerUnion<T, Event> | undefined;
319
+ onchange?: ChangeEventHandlerUnion<T, Event> | undefined;
320
+ onclick?: EventHandlerUnion<T, MouseEvent> | undefined;
321
+ oncontextmenu?: EventHandlerUnion<T, MouseEvent> | undefined;
322
+ ondblclick?: EventHandlerUnion<T, MouseEvent> | undefined;
323
+ ondrag?: EventHandlerUnion<T, DragEvent> | undefined;
324
+ ondragend?: EventHandlerUnion<T, DragEvent> | undefined;
325
+ ondragenter?: EventHandlerUnion<T, DragEvent> | undefined;
326
+ ondragleave?: EventHandlerUnion<T, DragEvent> | undefined;
327
+ ondragover?: EventHandlerUnion<T, DragEvent> | undefined;
328
+ ondragstart?: EventHandlerUnion<T, DragEvent> | undefined;
329
+ ondrop?: EventHandlerUnion<T, DragEvent> | undefined;
330
+ ondurationchange?: EventHandlerUnion<T, Event> | undefined;
331
+ onemptied?: EventHandlerUnion<T, Event> | undefined;
332
+ onended?: EventHandlerUnion<T, Event> | undefined;
333
+ onerror?: EventHandlerUnion<T, Event> | undefined;
334
+ onfocus?: FocusEventHandlerUnion<T, FocusEvent> | undefined;
335
+ ongotpointercapture?: EventHandlerUnion<T, PointerEvent> | undefined;
336
+ oninput?: InputEventHandlerUnion<T, InputEvent> | undefined;
337
+ oninvalid?: EventHandlerUnion<T, Event> | undefined;
338
+ onkeydown?: EventHandlerUnion<T, KeyboardEvent> | undefined;
339
+ onkeypress?: EventHandlerUnion<T, KeyboardEvent> | undefined;
340
+ onkeyup?: EventHandlerUnion<T, KeyboardEvent> | undefined;
341
+ onload?: EventHandlerUnion<T, Event> | undefined;
342
+ onloadeddata?: EventHandlerUnion<T, Event> | undefined;
343
+ onloadedmetadata?: EventHandlerUnion<T, Event> | undefined;
344
+ onloadstart?: EventHandlerUnion<T, Event> | undefined;
345
+ onlostpointercapture?: EventHandlerUnion<T, PointerEvent> | undefined;
346
+ onmousedown?: EventHandlerUnion<T, MouseEvent> | undefined;
347
+ onmouseenter?: EventHandlerUnion<T, MouseEvent> | undefined;
348
+ onmouseleave?: EventHandlerUnion<T, MouseEvent> | undefined;
349
+ onmousemove?: EventHandlerUnion<T, MouseEvent> | undefined;
350
+ onmouseout?: EventHandlerUnion<T, MouseEvent> | undefined;
351
+ onmouseover?: EventHandlerUnion<T, MouseEvent> | undefined;
352
+ onmouseup?: EventHandlerUnion<T, MouseEvent> | undefined;
353
+ onpause?: EventHandlerUnion<T, Event> | undefined;
354
+ onplay?: EventHandlerUnion<T, Event> | undefined;
355
+ onplaying?: EventHandlerUnion<T, Event> | undefined;
356
+ onpointercancel?: EventHandlerUnion<T, PointerEvent> | undefined;
357
+ onpointerdown?: EventHandlerUnion<T, PointerEvent> | undefined;
358
+ onpointerenter?: EventHandlerUnion<T, PointerEvent> | undefined;
359
+ onpointerleave?: EventHandlerUnion<T, PointerEvent> | undefined;
360
+ onpointermove?: EventHandlerUnion<T, PointerEvent> | undefined;
361
+ onpointerout?: EventHandlerUnion<T, PointerEvent> | undefined;
362
+ onpointerover?: EventHandlerUnion<T, PointerEvent> | undefined;
363
+ onpointerup?: EventHandlerUnion<T, PointerEvent> | undefined;
364
+ onprogress?: EventHandlerUnion<T, Event> | undefined;
365
+ onratechange?: EventHandlerUnion<T, Event> | undefined;
366
+ onreset?: EventHandlerUnion<T, Event> | undefined;
367
+ onscroll?: EventHandlerUnion<T, Event> | undefined;
368
+ onscrollend?: EventHandlerUnion<T, Event> | undefined;
369
+ onseeked?: EventHandlerUnion<T, Event> | undefined;
370
+ onseeking?: EventHandlerUnion<T, Event> | undefined;
371
+ onselect?: EventHandlerUnion<T, UIEvent> | undefined;
372
+ onstalled?: EventHandlerUnion<T, Event> | undefined;
371
373
  onsubmit?: EventHandlerUnion<
372
374
  T,
373
375
  Event & {
374
376
  submitter: HTMLElement;
375
377
  }
376
378
  >;
377
- onsuspend?: EventHandlerUnion<T, Event>;
378
- ontimeupdate?: EventHandlerUnion<T, Event>;
379
- ontoggle?: EventHandlerUnion<T, ToggleEvent>;
380
- ontouchcancel?: EventHandlerUnion<T, TouchEvent>;
381
- ontouchend?: EventHandlerUnion<T, TouchEvent>;
382
- ontouchmove?: EventHandlerUnion<T, TouchEvent>;
383
- ontouchstart?: EventHandlerUnion<T, TouchEvent>;
384
- ontransitionstart?: EventHandlerUnion<T, TransitionEvent>;
385
- ontransitionend?: EventHandlerUnion<T, TransitionEvent>;
386
- ontransitionrun?: EventHandlerUnion<T, TransitionEvent>;
387
- ontransitioncancel?: EventHandlerUnion<T, TransitionEvent>;
388
- onvolumechange?: EventHandlerUnion<T, Event>;
389
- onwaiting?: EventHandlerUnion<T, Event>;
390
- onwheel?: EventHandlerUnion<T, WheelEvent>;
379
+ onsuspend?: EventHandlerUnion<T, Event> | undefined;
380
+ ontimeupdate?: EventHandlerUnion<T, Event> | undefined;
381
+ ontoggle?: EventHandlerUnion<T, ToggleEvent> | undefined;
382
+ ontouchcancel?: EventHandlerUnion<T, TouchEvent> | undefined;
383
+ ontouchend?: EventHandlerUnion<T, TouchEvent> | undefined;
384
+ ontouchmove?: EventHandlerUnion<T, TouchEvent> | undefined;
385
+ ontouchstart?: EventHandlerUnion<T, TouchEvent> | undefined;
386
+ ontransitionstart?: EventHandlerUnion<T, TransitionEvent> | undefined;
387
+ ontransitionend?: EventHandlerUnion<T, TransitionEvent> | undefined;
388
+ ontransitionrun?: EventHandlerUnion<T, TransitionEvent> | undefined;
389
+ ontransitioncancel?: EventHandlerUnion<T, TransitionEvent> | undefined;
390
+ onvolumechange?: EventHandlerUnion<T, Event> | undefined;
391
+ onwaiting?: EventHandlerUnion<T, Event> | undefined;
392
+ onwheel?: EventHandlerUnion<T, WheelEvent> | undefined;
391
393
  }
392
394
 
393
395
  interface CSSProperties extends csstype.PropertiesHyphen {
@@ -442,142 +444,160 @@ export namespace JSX {
442
444
  // All the WAI-ARIA 1.1 attributes from https://www.w3.org/TR/wai-aria-1.1/
443
445
  interface AriaAttributes {
444
446
  /** Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application. */
445
- "aria-activedescendant"?: string;
447
+ "aria-activedescendant"?: string | undefined;
446
448
  /** 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. */
447
- "aria-atomic"?: boolean | "false" | "true";
449
+ "aria-atomic"?: boolean | "false" | "true" | undefined;
448
450
  /**
449
451
  * 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
450
452
  * presented if they are made.
451
453
  */
452
- "aria-autocomplete"?: "none" | "inline" | "list" | "both";
454
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined;
453
455
  /** 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. */
454
- "aria-busy"?: boolean | "false" | "true";
456
+ "aria-busy"?: boolean | "false" | "true" | undefined;
455
457
  /**
456
458
  * Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.
457
459
  * @see aria-pressed @see aria-selected.
458
460
  */
459
- "aria-checked"?: boolean | "false" | "mixed" | "true";
461
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined;
460
462
  /**
461
463
  * Defines the total number of columns in a table, grid, or treegrid.
462
464
  * @see aria-colindex.
463
465
  */
464
- "aria-colcount"?: number | string;
466
+ "aria-colcount"?: number | string | undefined;
465
467
  /**
466
468
  * Defines an element's column index or position with respect to the total number of columns within a table, grid, or treegrid.
467
469
  * @see aria-colcount @see aria-colspan.
468
470
  */
469
- "aria-colindex"?: number | string;
471
+ "aria-colindex"?: number | string | undefined;
470
472
  /**
471
473
  * Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.
472
474
  * @see aria-colindex @see aria-rowspan.
473
475
  */
474
- "aria-colspan"?: number | string;
476
+ "aria-colspan"?: number | string | undefined;
475
477
  /**
476
478
  * Identifies the element (or elements) whose contents or presence are controlled by the current element.
477
479
  * @see aria-owns.
478
480
  */
479
- "aria-controls"?: string;
481
+ "aria-controls"?: string | undefined;
480
482
  /** Indicates the element that represents the current item within a container or set of related elements. */
481
- "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time";
483
+ "aria-current"?:
484
+ | boolean
485
+ | "false"
486
+ | "true"
487
+ | "page"
488
+ | "step"
489
+ | "location"
490
+ | "date"
491
+ | "time"
492
+ | undefined;
482
493
  /**
483
494
  * Identifies the element (or elements) that describes the object.
484
495
  * @see aria-labelledby
485
496
  */
486
- "aria-describedby"?: string;
497
+ "aria-describedby"?: string | undefined;
487
498
  /**
488
499
  * Identifies the element that provides a detailed, extended description for the object.
489
500
  * @see aria-describedby.
490
501
  */
491
- "aria-details"?: string;
502
+ "aria-details"?: string | undefined;
492
503
  /**
493
504
  * Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.
494
505
  * @see aria-hidden @see aria-readonly.
495
506
  */
496
- "aria-disabled"?: boolean | "false" | "true";
507
+ "aria-disabled"?: boolean | "false" | "true" | undefined;
497
508
  /**
498
509
  * Indicates what functions can be performed when a dragged object is released on the drop target.
499
510
  * @deprecated in ARIA 1.1
500
511
  */
501
- "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup";
512
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
502
513
  /**
503
514
  * Identifies the element that provides an error message for the object.
504
515
  * @see aria-invalid @see aria-describedby.
505
516
  */
506
- "aria-errormessage"?: string;
517
+ "aria-errormessage"?: string | undefined;
507
518
  /** Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed. */
508
- "aria-expanded"?: boolean | "false" | "true";
519
+ "aria-expanded"?: boolean | "false" | "true" | undefined;
509
520
  /**
510
521
  * Identifies the next element (or elements) in an alternate reading order of content which, at the user's discretion,
511
522
  * allows assistive technology to override the general default of reading in document source order.
512
523
  */
513
- "aria-flowto"?: string;
524
+ "aria-flowto"?: string | undefined;
514
525
  /**
515
526
  * Indicates an element's "grabbed" state in a drag-and-drop operation.
516
527
  * @deprecated in ARIA 1.1
517
528
  */
518
- "aria-grabbed"?: boolean | "false" | "true";
529
+ "aria-grabbed"?: boolean | "false" | "true" | undefined;
519
530
  /** Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element. */
520
- "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog";
531
+ "aria-haspopup"?:
532
+ | boolean
533
+ | "false"
534
+ | "true"
535
+ | "menu"
536
+ | "listbox"
537
+ | "tree"
538
+ | "grid"
539
+ | "dialog"
540
+ | undefined;
521
541
  /**
522
542
  * Indicates whether the element is exposed to an accessibility API.
523
543
  * @see aria-disabled.
524
544
  */
525
- "aria-hidden"?: boolean | "false" | "true";
545
+ "aria-hidden"?: boolean | "false" | "true" | undefined;
526
546
  /**
527
547
  * Indicates the entered value does not conform to the format expected by the application.
528
548
  * @see aria-errormessage.
529
549
  */
530
- "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling";
550
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined;
531
551
  /** Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element. */
532
- "aria-keyshortcuts"?: string;
552
+ "aria-keyshortcuts"?: string | undefined;
533
553
  /**
534
554
  * Defines a string value that labels the current element.
535
555
  * @see aria-labelledby.
536
556
  */
537
- "aria-label"?: string;
557
+ "aria-label"?: string | undefined;
538
558
  /**
539
559
  * Identifies the element (or elements) that labels the current element.
540
560
  * @see aria-describedby.
541
561
  */
542
- "aria-labelledby"?: string;
562
+ "aria-labelledby"?: string | undefined;
543
563
  /** Defines the hierarchical level of an element within a structure. */
544
- "aria-level"?: number | string;
564
+ "aria-level"?: number | string | undefined;
545
565
  /** 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. */
546
- "aria-live"?: "off" | "assertive" | "polite";
566
+ "aria-live"?: "off" | "assertive" | "polite" | undefined;
547
567
  /** Indicates whether an element is modal when displayed. */
548
- "aria-modal"?: boolean | "false" | "true";
568
+ "aria-modal"?: boolean | "false" | "true" | undefined;
549
569
  /** Indicates whether a text box accepts multiple lines of input or only a single line. */
550
- "aria-multiline"?: boolean | "false" | "true";
570
+ "aria-multiline"?: boolean | "false" | "true" | undefined;
551
571
  /** Indicates that the user may select more than one item from the current selectable descendants. */
552
- "aria-multiselectable"?: boolean | "false" | "true";
572
+ "aria-multiselectable"?: boolean | "false" | "true" | undefined;
553
573
  /** Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous. */
554
- "aria-orientation"?: "horizontal" | "vertical";
574
+ "aria-orientation"?: "horizontal" | "vertical" | undefined;
555
575
  /**
556
576
  * Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship
557
577
  * between DOM elements where the DOM hierarchy cannot be used to represent the relationship.
558
578
  * @see aria-controls.
559
579
  */
560
- "aria-owns"?: string;
580
+ "aria-owns"?: string | undefined;
561
581
  /**
562
582
  * Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.
563
583
  * A hint could be a sample value or a brief description of the expected format.
564
584
  */
565
- "aria-placeholder"?: string;
585
+ "aria-placeholder"?: string | undefined;
566
586
  /**
567
587
  * 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.
568
588
  * @see aria-setsize.
569
589
  */
570
- "aria-posinset"?: number | string;
590
+ "aria-posinset"?: number | string | undefined;
571
591
  /**
572
592
  * Indicates the current "pressed" state of toggle buttons.
573
593
  * @see aria-checked @see aria-selected.
574
594
  */
575
- "aria-pressed"?: boolean | "false" | "mixed" | "true";
595
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined;
576
596
  /**
577
597
  * Indicates that the element is not editable, but is otherwise operable.
578
598
  * @see aria-disabled.
579
599
  */
580
- "aria-readonly"?: boolean | "false" | "true";
600
+ "aria-readonly"?: boolean | "false" | "true" | undefined;
581
601
  /**
582
602
  * Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.
583
603
  * @see aria-atomic.
@@ -594,47 +614,47 @@ export namespace JSX {
594
614
  | "text additions"
595
615
  | "text removals";
596
616
  /** Indicates that user input is required on the element before a form may be submitted. */
597
- "aria-required"?: boolean | "false" | "true";
617
+ "aria-required"?: boolean | "false" | "true" | undefined;
598
618
  /** Defines a human-readable, author-localized description for the role of an element. */
599
- "aria-roledescription"?: string;
619
+ "aria-roledescription"?: string | undefined;
600
620
  /**
601
621
  * Defines the total number of rows in a table, grid, or treegrid.
602
622
  * @see aria-rowindex.
603
623
  */
604
- "aria-rowcount"?: number | string;
624
+ "aria-rowcount"?: number | string | undefined;
605
625
  /**
606
626
  * Defines an element's row index or position with respect to the total number of rows within a table, grid, or treegrid.
607
627
  * @see aria-rowcount @see aria-rowspan.
608
628
  */
609
- "aria-rowindex"?: number | string;
629
+ "aria-rowindex"?: number | string | undefined;
610
630
  /**
611
631
  * Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.
612
632
  * @see aria-rowindex @see aria-colspan.
613
633
  */
614
- "aria-rowspan"?: number | string;
634
+ "aria-rowspan"?: number | string | undefined;
615
635
  /**
616
636
  * Indicates the current "selected" state of various widgets.
617
637
  * @see aria-checked @see aria-pressed.
618
638
  */
619
- "aria-selected"?: boolean | "false" | "true";
639
+ "aria-selected"?: boolean | "false" | "true" | undefined;
620
640
  /**
621
641
  * 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.
622
642
  * @see aria-posinset.
623
643
  */
624
- "aria-setsize"?: number | string;
644
+ "aria-setsize"?: number | string | undefined;
625
645
  /** Indicates if items in a table or grid are sorted in ascending or descending order. */
626
- "aria-sort"?: "none" | "ascending" | "descending" | "other";
646
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined;
627
647
  /** Defines the maximum allowed value for a range widget. */
628
- "aria-valuemax"?: number | string;
648
+ "aria-valuemax"?: number | string | undefined;
629
649
  /** Defines the minimum allowed value for a range widget. */
630
- "aria-valuemin"?: number | string;
650
+ "aria-valuemin"?: number | string | undefined;
631
651
  /**
632
652
  * Defines the current value for a range widget.
633
653
  * @see aria-valuetext.
634
654
  */
635
- "aria-valuenow"?: number | string;
655
+ "aria-valuenow"?: number | string | undefined;
636
656
  /** Defines the human readable text alternative of aria-valuenow for a range widget. */
637
- "aria-valuetext"?: string;
657
+ "aria-valuetext"?: string | undefined;
638
658
  role?:
639
659
  | "alert"
640
660
  | "alertdialog"
@@ -718,447 +738,465 @@ export namespace JSX {
718
738
 
719
739
  interface HTMLAttributes<T> extends AriaAttributes, DOMAttributes<T> {
720
740
  // [key: ClassKeys]: boolean;
721
- accessKey?: string;
741
+ accessKey?: string | undefined;
722
742
  class?: string | undefined;
723
- contenteditable?: boolean | "plaintext-only" | "inherit";
724
- contextmenu?: string;
725
- dir?: HTMLDir;
726
- draggable?: boolean | "false" | "true";
727
- hidden?: boolean | "hidden" | "until-found";
728
- id?: string;
729
- inert?: boolean;
730
- lang?: string;
731
- spellcheck?: boolean;
732
- style?: CSSProperties | string;
733
- tabindex?: number | string;
734
- title?: string;
735
- translate?: "yes" | "no";
736
- about?: string;
737
- datatype?: string;
738
- inlist?: any;
739
- popover?: boolean | "manual" | "auto";
740
- prefix?: string;
741
- property?: string;
742
- resource?: string;
743
- typeof?: string;
744
- vocab?: string;
745
- autocapitalize?: HTMLAutocapitalize;
746
- slot?: string;
747
- color?: string;
748
- itemprop?: string;
749
- itemscope?: boolean;
750
- itemtype?: string;
751
- itemid?: string;
752
- itemref?: string;
753
- part?: string;
754
- exportparts?: string;
755
- inputmode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search";
756
- contentEditable?: boolean | "plaintext-only" | "inherit";
757
- contextMenu?: string;
758
- tabIndex?: number | string;
759
- autoCapitalize?: HTMLAutocapitalize;
760
- itemProp?: string;
761
- itemScope?: boolean;
762
- itemType?: string;
763
- itemId?: string;
764
- itemRef?: string;
765
- exportParts?: string;
766
- inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search";
743
+ contenteditable?: boolean | "plaintext-only" | "inherit" | undefined;
744
+ contextmenu?: string | undefined;
745
+ dir?: HTMLDir | undefined;
746
+ draggable?: boolean | "false" | "true" | undefined;
747
+ hidden?: boolean | "hidden" | "until-found" | undefined;
748
+ id?: string | undefined;
749
+ inert?: boolean | undefined;
750
+ lang?: string | undefined;
751
+ spellcheck?: boolean | undefined;
752
+ style?: CSSProperties | string | undefined;
753
+ tabindex?: number | string | undefined;
754
+ title?: string | undefined;
755
+ translate?: "yes" | "no" | undefined;
756
+ about?: string | undefined;
757
+ datatype?: string | undefined;
758
+ inlist?: any | undefined;
759
+ popover?: boolean | "manual" | "auto" | undefined;
760
+ prefix?: string | undefined;
761
+ property?: string | undefined;
762
+ resource?: string | undefined;
763
+ typeof?: string | undefined;
764
+ vocab?: string | undefined;
765
+ autocapitalize?: HTMLAutocapitalize | undefined;
766
+ slot?: string | undefined;
767
+ color?: string | undefined;
768
+ itemprop?: string | undefined;
769
+ itemscope?: boolean | undefined;
770
+ itemtype?: string | undefined;
771
+ itemid?: string | undefined;
772
+ itemref?: string | undefined;
773
+ part?: string | undefined;
774
+ exportparts?: string | undefined;
775
+ inputmode?:
776
+ | "none"
777
+ | "text"
778
+ | "tel"
779
+ | "url"
780
+ | "email"
781
+ | "numeric"
782
+ | "decimal"
783
+ | "search"
784
+ | undefined;
785
+ contentEditable?: boolean | "plaintext-only" | "inherit" | undefined;
786
+ contextMenu?: string | undefined;
787
+ tabIndex?: number | string | undefined;
788
+ autoCapitalize?: HTMLAutocapitalize | undefined;
789
+ itemProp?: string | undefined;
790
+ itemScope?: boolean | undefined;
791
+ itemType?: string | undefined;
792
+ itemId?: string | undefined;
793
+ itemRef?: string | undefined;
794
+ exportParts?: string | undefined;
795
+ inputMode?:
796
+ | "none"
797
+ | "text"
798
+ | "tel"
799
+ | "url"
800
+ | "email"
801
+ | "numeric"
802
+ | "decimal"
803
+ | "search"
804
+ | undefined;
767
805
  }
768
806
  interface AnchorHTMLAttributes<T> extends HTMLAttributes<T> {
769
- download?: any;
770
- href?: string;
771
- hreflang?: string;
772
- media?: string;
773
- ping?: string;
774
- referrerpolicy?: HTMLReferrerPolicy;
775
- rel?: string;
776
- target?: string;
777
- type?: string;
778
- referrerPolicy?: HTMLReferrerPolicy;
807
+ download?: any | undefined;
808
+ href?: string | undefined;
809
+ hreflang?: string | undefined;
810
+ media?: string | undefined;
811
+ ping?: string | undefined;
812
+ referrerpolicy?: HTMLReferrerPolicy | undefined;
813
+ rel?: string | undefined;
814
+ target?: string | undefined;
815
+ type?: string | undefined;
816
+ referrerPolicy?: HTMLReferrerPolicy | undefined;
779
817
  }
780
818
  interface AudioHTMLAttributes<T> extends MediaHTMLAttributes<T> {}
781
819
  interface AreaHTMLAttributes<T> extends HTMLAttributes<T> {
782
- alt?: string;
783
- coords?: string;
784
- download?: any;
785
- href?: string;
786
- hreflang?: string;
787
- ping?: string;
788
- referrerpolicy?: HTMLReferrerPolicy;
789
- rel?: string;
790
- shape?: "rect" | "circle" | "poly" | "default";
791
- target?: string;
792
- referrerPolicy?: HTMLReferrerPolicy;
820
+ alt?: string | undefined;
821
+ coords?: string | undefined;
822
+ download?: any | undefined;
823
+ href?: string | undefined;
824
+ hreflang?: string | undefined;
825
+ ping?: string | undefined;
826
+ referrerpolicy?: HTMLReferrerPolicy | undefined;
827
+ rel?: string | undefined;
828
+ shape?: "rect" | "circle" | "poly" | "default" | undefined;
829
+ target?: string | undefined;
830
+ referrerPolicy?: HTMLReferrerPolicy | undefined;
793
831
  }
794
832
  interface BaseHTMLAttributes<T> extends HTMLAttributes<T> {
795
- href?: string;
796
- target?: string;
833
+ href?: string | undefined;
834
+ target?: string | undefined;
797
835
  }
798
836
  interface BlockquoteHTMLAttributes<T> extends HTMLAttributes<T> {
799
- cite?: string;
837
+ cite?: string | undefined;
800
838
  }
801
839
  interface ButtonHTMLAttributes<T> extends HTMLAttributes<T> {
802
- autofocus?: boolean;
803
- disabled?: boolean;
804
- form?: string;
805
- formaction?: string | SerializableAttributeValue;
806
- formenctype?: HTMLFormEncType;
807
- formmethod?: HTMLFormMethod;
808
- formnovalidate?: boolean;
809
- formtarget?: string;
810
- popovertarget?: string;
811
- popovertargetaction?: "hide" | "show" | "toggle";
812
- name?: string;
813
- type?: "submit" | "reset" | "button";
814
- value?: string;
815
- formAction?: string | SerializableAttributeValue;
816
- formEnctype?: HTMLFormEncType;
817
- formMethod?: HTMLFormMethod;
818
- formNoValidate?: boolean;
819
- formTarget?: string;
820
- popoverTarget?: string;
821
- popoverTargetAction?: "hide" | "show" | "toggle";
840
+ autofocus?: boolean | undefined;
841
+ disabled?: boolean | undefined;
842
+ form?: string | undefined;
843
+ formaction?: string | SerializableAttributeValue | undefined;
844
+ formenctype?: HTMLFormEncType | undefined;
845
+ formmethod?: HTMLFormMethod | undefined;
846
+ formnovalidate?: boolean | undefined;
847
+ formtarget?: string | undefined;
848
+ popovertarget?: string | undefined;
849
+ popovertargetaction?: "hide" | "show" | "toggle" | undefined;
850
+ name?: string | undefined;
851
+ type?: "submit" | "reset" | "button" | undefined;
852
+ value?: string | undefined;
853
+ formAction?: string | SerializableAttributeValue | undefined;
854
+ formEnctype?: HTMLFormEncType | undefined;
855
+ formMethod?: HTMLFormMethod | undefined;
856
+ formNoValidate?: boolean | undefined;
857
+ formTarget?: string | undefined;
858
+ popoverTarget?: string | undefined;
859
+ popoverTargetAction?: "hide" | "show" | "toggle" | undefined;
822
860
  }
823
861
  interface CanvasHTMLAttributes<T> extends HTMLAttributes<T> {
824
- width?: number | string;
825
- height?: number | string;
862
+ width?: number | string | undefined;
863
+ height?: number | string | undefined;
826
864
  }
827
865
  interface ColHTMLAttributes<T> extends HTMLAttributes<T> {
828
- span?: number | string;
829
- width?: number | string;
866
+ span?: number | string | undefined;
867
+ width?: number | string | undefined;
830
868
  }
831
869
  interface ColgroupHTMLAttributes<T> extends HTMLAttributes<T> {
832
- span?: number | string;
870
+ span?: number | string | undefined;
833
871
  }
834
872
  interface DataHTMLAttributes<T> extends HTMLAttributes<T> {
835
- value?: string | string[] | number;
873
+ value?: string | string[] | number | undefined;
836
874
  }
837
875
  interface DetailsHtmlAttributes<T> extends HTMLAttributes<T> {
838
- open?: boolean;
839
- onToggle?: EventHandlerUnion<T, Event>;
840
- ontoggle?: EventHandlerUnion<T, Event>;
876
+ open?: boolean | undefined;
877
+ onToggle?: EventHandlerUnion<T, Event> | undefined;
878
+ ontoggle?: EventHandlerUnion<T, Event> | undefined;
841
879
  }
842
880
  interface DialogHtmlAttributes<T> extends HTMLAttributes<T> {
843
- open?: boolean;
844
- onClose?: EventHandlerUnion<T, Event>;
845
- onCancel?: EventHandlerUnion<T, Event>;
881
+ open?: boolean | undefined;
882
+ onClose?: EventHandlerUnion<T, Event> | undefined;
883
+ onCancel?: EventHandlerUnion<T, Event> | undefined;
846
884
  }
847
885
  interface EmbedHTMLAttributes<T> extends HTMLAttributes<T> {
848
- height?: number | string;
849
- src?: string;
850
- type?: string;
851
- width?: number | string;
886
+ height?: number | string | undefined;
887
+ src?: string | undefined;
888
+ type?: string | undefined;
889
+ width?: number | string | undefined;
852
890
  }
853
891
  interface FieldsetHTMLAttributes<T> extends HTMLAttributes<T> {
854
- disabled?: boolean;
855
- form?: string;
856
- name?: string;
892
+ disabled?: boolean | undefined;
893
+ form?: string | undefined;
894
+ name?: string | undefined;
857
895
  }
858
896
  interface FormHTMLAttributes<T> extends HTMLAttributes<T> {
859
- "accept-charset"?: string;
860
- action?: string | SerializableAttributeValue;
861
- autocomplete?: string;
862
- encoding?: HTMLFormEncType;
863
- enctype?: HTMLFormEncType;
864
- method?: HTMLFormMethod;
865
- name?: string;
866
- novalidate?: boolean;
867
- target?: string;
868
- noValidate?: boolean;
897
+ "accept-charset"?: string | undefined;
898
+ action?: string | SerializableAttributeValue | undefined;
899
+ autocomplete?: string | undefined;
900
+ encoding?: HTMLFormEncType | undefined;
901
+ enctype?: HTMLFormEncType | undefined;
902
+ method?: HTMLFormMethod | undefined;
903
+ name?: string | undefined;
904
+ novalidate?: boolean | undefined;
905
+ target?: string | undefined;
906
+ noValidate?: boolean | undefined;
869
907
  }
870
908
  interface IframeHTMLAttributes<T> extends HTMLAttributes<T> {
871
- allow?: string;
872
- allowfullscreen?: boolean;
873
- height?: number | string;
874
- loading?: "eager" | "lazy";
875
- name?: string;
876
- referrerpolicy?: HTMLReferrerPolicy;
877
- sandbox?: HTMLIframeSandbox | string;
878
- src?: string;
879
- srcdoc?: string;
880
- width?: number | string;
881
- referrerPolicy?: HTMLReferrerPolicy;
909
+ allow?: string | undefined;
910
+ allowfullscreen?: boolean | undefined;
911
+ height?: number | string | undefined;
912
+ loading?: "eager" | "lazy" | undefined;
913
+ name?: string | undefined;
914
+ referrerpolicy?: HTMLReferrerPolicy | undefined;
915
+ sandbox?: HTMLIframeSandbox | string | undefined;
916
+ src?: string | undefined;
917
+ srcdoc?: string | undefined;
918
+ width?: number | string | undefined;
919
+ referrerPolicy?: HTMLReferrerPolicy | undefined;
882
920
  }
883
921
  interface ImgHTMLAttributes<T> extends HTMLAttributes<T> {
884
- alt?: string;
885
- crossorigin?: HTMLCrossorigin;
886
- decoding?: "sync" | "async" | "auto";
887
- height?: number | string;
888
- ismap?: boolean;
889
- isMap?: boolean;
890
- loading?: "eager" | "lazy";
891
- referrerpolicy?: HTMLReferrerPolicy;
892
- referrerPolicy?: HTMLReferrerPolicy;
893
- sizes?: string;
894
- src?: string;
895
- srcset?: string;
896
- srcSet?: string;
897
- usemap?: string;
898
- useMap?: string;
899
- width?: number | string;
900
- crossOrigin?: HTMLCrossorigin;
901
- elementtiming?: string;
902
- fetchpriority?: "high" | "low" | "auto";
922
+ alt?: string | undefined;
923
+ crossorigin?: HTMLCrossorigin | undefined;
924
+ decoding?: "sync" | "async" | "auto" | undefined;
925
+ height?: number | string | undefined;
926
+ ismap?: boolean | undefined;
927
+ isMap?: boolean | undefined;
928
+ loading?: "eager" | "lazy" | undefined;
929
+ referrerpolicy?: HTMLReferrerPolicy | undefined;
930
+ referrerPolicy?: HTMLReferrerPolicy | undefined;
931
+ sizes?: string | undefined;
932
+ src?: string | undefined;
933
+ srcset?: string | undefined;
934
+ srcSet?: string | undefined;
935
+ usemap?: string | undefined;
936
+ useMap?: string | undefined;
937
+ width?: number | string | undefined;
938
+ crossOrigin?: HTMLCrossorigin | undefined;
939
+ elementtiming?: string | undefined;
940
+ fetchpriority?: "high" | "low" | "auto" | undefined;
903
941
  }
904
942
  interface InputHTMLAttributes<T> extends HTMLAttributes<T> {
905
- accept?: string;
906
- alt?: string;
907
- autocomplete?: string;
908
- autocorrect?: "on" | "off";
909
- autofocus?: boolean;
910
- capture?: boolean | string;
911
- checked?: boolean;
912
- crossorigin?: HTMLCrossorigin;
913
- disabled?: boolean;
914
- enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send";
915
- form?: string;
916
- formaction?: string | SerializableAttributeValue;
917
- formenctype?: HTMLFormEncType;
918
- formmethod?: HTMLFormMethod;
919
- formnovalidate?: boolean;
920
- formtarget?: string;
921
- height?: number | string;
922
- incremental?: boolean;
923
- list?: string;
924
- max?: number | string;
925
- maxlength?: number | string;
926
- min?: number | string;
927
- minlength?: number | string;
928
- multiple?: boolean;
929
- name?: string;
930
- pattern?: string;
931
- placeholder?: string;
932
- readonly?: boolean;
933
- results?: number;
934
- required?: boolean;
935
- size?: number | string;
936
- src?: string;
937
- step?: number | string;
938
- type?: string;
939
- value?: string | string[] | number;
940
- width?: number | string;
941
- crossOrigin?: HTMLCrossorigin;
942
- formAction?: string | SerializableAttributeValue;
943
- formEnctype?: HTMLFormEncType;
944
- formMethod?: HTMLFormMethod;
945
- formNoValidate?: boolean;
946
- formTarget?: string;
947
- maxLength?: number | string;
948
- minLength?: number | string;
949
- readOnly?: boolean;
943
+ accept?: string | undefined;
944
+ alt?: string | undefined;
945
+ autocomplete?: string | undefined;
946
+ autocorrect?: "on" | "off" | undefined;
947
+ autofocus?: boolean | undefined;
948
+ capture?: boolean | string | undefined;
949
+ checked?: boolean | undefined;
950
+ crossorigin?: HTMLCrossorigin | undefined;
951
+ disabled?: boolean | undefined;
952
+ enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
953
+ form?: string | undefined;
954
+ formaction?: string | SerializableAttributeValue | undefined;
955
+ formenctype?: HTMLFormEncType | undefined;
956
+ formmethod?: HTMLFormMethod | undefined;
957
+ formnovalidate?: boolean | undefined;
958
+ formtarget?: string | undefined;
959
+ height?: number | string | undefined;
960
+ incremental?: boolean | undefined;
961
+ list?: string | undefined;
962
+ max?: number | string | undefined;
963
+ maxlength?: number | string | undefined;
964
+ min?: number | string | undefined;
965
+ minlength?: number | string | undefined;
966
+ multiple?: boolean | undefined;
967
+ name?: string | undefined;
968
+ pattern?: string | undefined;
969
+ placeholder?: string | undefined;
970
+ readonly?: boolean | undefined;
971
+ results?: number | undefined;
972
+ required?: boolean | undefined;
973
+ size?: number | string | undefined;
974
+ src?: string | undefined;
975
+ step?: number | string | undefined;
976
+ type?: string | undefined;
977
+ value?: string | string[] | number | undefined;
978
+ width?: number | string | undefined;
979
+ crossOrigin?: HTMLCrossorigin | undefined;
980
+ formAction?: string | SerializableAttributeValue | undefined;
981
+ formEnctype?: HTMLFormEncType | undefined;
982
+ formMethod?: HTMLFormMethod | undefined;
983
+ formNoValidate?: boolean | undefined;
984
+ formTarget?: string | undefined;
985
+ maxLength?: number | string | undefined;
986
+ minLength?: number | string | undefined;
987
+ readOnly?: boolean | undefined;
950
988
  }
951
989
  interface InsHTMLAttributes<T> extends HTMLAttributes<T> {
952
- cite?: string;
953
- dateTime?: string;
990
+ cite?: string | undefined;
991
+ dateTime?: string | undefined;
954
992
  }
955
993
  interface KeygenHTMLAttributes<T> extends HTMLAttributes<T> {
956
- autofocus?: boolean;
957
- challenge?: string;
958
- disabled?: boolean;
959
- form?: string;
960
- keytype?: string;
961
- keyparams?: string;
962
- name?: string;
994
+ autofocus?: boolean | undefined;
995
+ challenge?: string | undefined;
996
+ disabled?: boolean | undefined;
997
+ form?: string | undefined;
998
+ keytype?: string | undefined;
999
+ keyparams?: string | undefined;
1000
+ name?: string | undefined;
963
1001
  }
964
1002
  interface LabelHTMLAttributes<T> extends HTMLAttributes<T> {
965
- for?: string;
966
- form?: string;
1003
+ for?: string | undefined;
1004
+ form?: string | undefined;
967
1005
  }
968
1006
  interface LiHTMLAttributes<T> extends HTMLAttributes<T> {
969
- value?: number | string;
1007
+ value?: number | string | undefined;
970
1008
  }
971
1009
  interface LinkHTMLAttributes<T> extends HTMLAttributes<T> {
972
- as?: HTMLLinkAs;
973
- crossorigin?: HTMLCrossorigin;
974
- disabled?: boolean;
975
- fetchpriority?: "high" | "low" | "auto";
976
- href?: string;
977
- hreflang?: string;
978
- imagesizes?: string;
979
- imagesrcset?: string;
980
- integrity?: string;
981
- media?: string;
982
- referrerpolicy?: HTMLReferrerPolicy;
983
- rel?: string;
984
- sizes?: string;
985
- type?: string;
986
- crossOrigin?: HTMLCrossorigin;
987
- referrerPolicy?: HTMLReferrerPolicy;
1010
+ as?: HTMLLinkAs | undefined;
1011
+ crossorigin?: HTMLCrossorigin | undefined;
1012
+ disabled?: boolean | undefined;
1013
+ fetchpriority?: "high" | "low" | "auto" | undefined;
1014
+ href?: string | undefined;
1015
+ hreflang?: string | undefined;
1016
+ imagesizes?: string | undefined;
1017
+ imagesrcset?: string | undefined;
1018
+ integrity?: string | undefined;
1019
+ media?: string | undefined;
1020
+ referrerpolicy?: HTMLReferrerPolicy | undefined;
1021
+ rel?: string | undefined;
1022
+ sizes?: string | undefined;
1023
+ type?: string | undefined;
1024
+ crossOrigin?: HTMLCrossorigin | undefined;
1025
+ referrerPolicy?: HTMLReferrerPolicy | undefined;
988
1026
  }
989
1027
  interface MapHTMLAttributes<T> extends HTMLAttributes<T> {
990
- name?: string;
1028
+ name?: string | undefined;
991
1029
  }
992
1030
  interface MediaHTMLAttributes<T> extends HTMLAttributes<T> {
993
- autoplay?: boolean;
994
- controls?: boolean;
995
- crossorigin?: HTMLCrossorigin;
996
- loop?: boolean;
997
- mediagroup?: string;
998
- muted?: boolean;
999
- preload?: "none" | "metadata" | "auto" | "";
1000
- src?: string;
1001
- crossOrigin?: HTMLCrossorigin;
1002
- mediaGroup?: string;
1031
+ autoplay?: boolean | undefined;
1032
+ controls?: boolean | undefined;
1033
+ crossorigin?: HTMLCrossorigin | undefined;
1034
+ loop?: boolean | undefined;
1035
+ mediagroup?: string | undefined;
1036
+ muted?: boolean | undefined;
1037
+ preload?: "none" | "metadata" | "auto" | "" | undefined;
1038
+ src?: string | undefined;
1039
+ crossOrigin?: HTMLCrossorigin | undefined;
1040
+ mediaGroup?: string | undefined;
1003
1041
  }
1004
1042
  interface MenuHTMLAttributes<T> extends HTMLAttributes<T> {
1005
- label?: string;
1006
- type?: "context" | "toolbar";
1043
+ label?: string | undefined;
1044
+ type?: "context" | "toolbar" | undefined;
1007
1045
  }
1008
1046
  interface MetaHTMLAttributes<T> extends HTMLAttributes<T> {
1009
- charset?: string;
1010
- content?: string;
1011
- "http-equiv"?: string;
1012
- name?: string;
1013
- media?: string;
1047
+ charset?: string | undefined;
1048
+ content?: string | undefined;
1049
+ "http-equiv"?: string | undefined;
1050
+ name?: string | undefined;
1051
+ media?: string | undefined;
1014
1052
  }
1015
1053
  interface MeterHTMLAttributes<T> extends HTMLAttributes<T> {
1016
- form?: string;
1017
- high?: number | string;
1018
- low?: number | string;
1019
- max?: number | string;
1020
- min?: number | string;
1021
- optimum?: number | string;
1022
- value?: string | string[] | number;
1054
+ form?: string | undefined;
1055
+ high?: number | string | undefined;
1056
+ low?: number | string | undefined;
1057
+ max?: number | string | undefined;
1058
+ min?: number | string | undefined;
1059
+ optimum?: number | string | undefined;
1060
+ value?: string | string[] | number | undefined;
1023
1061
  }
1024
1062
  interface QuoteHTMLAttributes<T> extends HTMLAttributes<T> {
1025
- cite?: string;
1063
+ cite?: string | undefined;
1026
1064
  }
1027
1065
  interface ObjectHTMLAttributes<T> extends HTMLAttributes<T> {
1028
- data?: string;
1029
- form?: string;
1030
- height?: number | string;
1031
- name?: string;
1032
- type?: string;
1033
- usemap?: string;
1034
- width?: number | string;
1035
- useMap?: string;
1066
+ data?: string | undefined;
1067
+ form?: string | undefined;
1068
+ height?: number | string | undefined;
1069
+ name?: string | undefined;
1070
+ type?: string | undefined;
1071
+ usemap?: string | undefined;
1072
+ width?: number | string | undefined;
1073
+ useMap?: string | undefined;
1036
1074
  }
1037
1075
  interface OlHTMLAttributes<T> extends HTMLAttributes<T> {
1038
- reversed?: boolean;
1039
- start?: number | string;
1040
- type?: "1" | "a" | "A" | "i" | "I";
1076
+ reversed?: boolean | undefined;
1077
+ start?: number | string | undefined;
1078
+ type?: "1" | "a" | "A" | "i" | "I" | undefined;
1041
1079
  }
1042
1080
  interface OptgroupHTMLAttributes<T> extends HTMLAttributes<T> {
1043
- disabled?: boolean;
1044
- label?: string;
1081
+ disabled?: boolean | undefined;
1082
+ label?: string | undefined;
1045
1083
  }
1046
1084
  interface OptionHTMLAttributes<T> extends HTMLAttributes<T> {
1047
- disabled?: boolean;
1048
- label?: string;
1049
- selected?: boolean;
1050
- value?: string | string[] | number;
1085
+ disabled?: boolean | undefined;
1086
+ label?: string | undefined;
1087
+ selected?: boolean | undefined;
1088
+ value?: string | string[] | number | undefined;
1051
1089
  }
1052
1090
  interface OutputHTMLAttributes<T> extends HTMLAttributes<T> {
1053
- form?: string;
1054
- for?: string;
1055
- name?: string;
1091
+ form?: string | undefined;
1092
+ for?: string | undefined;
1093
+ name?: string | undefined;
1056
1094
  }
1057
1095
  interface ParamHTMLAttributes<T> extends HTMLAttributes<T> {
1058
- name?: string;
1059
- value?: string | string[] | number;
1096
+ name?: string | undefined;
1097
+ value?: string | string[] | number | undefined;
1060
1098
  }
1061
1099
  interface ProgressHTMLAttributes<T> extends HTMLAttributes<T> {
1062
- max?: number | string;
1063
- value?: string | string[] | number;
1100
+ max?: number | string | undefined;
1101
+ value?: string | string[] | number | undefined;
1064
1102
  }
1065
1103
  interface ScriptHTMLAttributes<T> extends HTMLAttributes<T> {
1066
- async?: boolean;
1067
- charset?: string;
1068
- crossorigin?: HTMLCrossorigin;
1069
- defer?: boolean;
1070
- integrity?: string;
1071
- nomodule?: boolean;
1072
- nonce?: string;
1073
- referrerpolicy?: HTMLReferrerPolicy;
1074
- src?: string;
1075
- type?: string;
1076
- crossOrigin?: HTMLCrossorigin;
1077
- noModule?: boolean;
1078
- referrerPolicy?: HTMLReferrerPolicy;
1104
+ async?: boolean | undefined;
1105
+ charset?: string | undefined;
1106
+ crossorigin?: HTMLCrossorigin | undefined;
1107
+ defer?: boolean | undefined;
1108
+ integrity?: string | undefined;
1109
+ nomodule?: boolean | undefined;
1110
+ nonce?: string | undefined;
1111
+ referrerpolicy?: HTMLReferrerPolicy | undefined;
1112
+ src?: string | undefined;
1113
+ type?: string | undefined;
1114
+ crossOrigin?: HTMLCrossorigin | undefined;
1115
+ noModule?: boolean | undefined;
1116
+ referrerPolicy?: HTMLReferrerPolicy | undefined;
1079
1117
  }
1080
1118
  interface SelectHTMLAttributes<T> extends HTMLAttributes<T> {
1081
- autocomplete?: string;
1082
- autofocus?: boolean;
1083
- disabled?: boolean;
1084
- form?: string;
1085
- multiple?: boolean;
1086
- name?: string;
1087
- required?: boolean;
1088
- size?: number | string;
1089
- value?: string | string[] | number;
1119
+ autocomplete?: string | undefined;
1120
+ autofocus?: boolean | undefined;
1121
+ disabled?: boolean | undefined;
1122
+ form?: string | undefined;
1123
+ multiple?: boolean | undefined;
1124
+ name?: string | undefined;
1125
+ required?: boolean | undefined;
1126
+ size?: number | string | undefined;
1127
+ value?: string | string[] | number | undefined;
1090
1128
  }
1091
1129
  interface HTMLSlotElementAttributes<T = HTMLSlotElement> extends HTMLAttributes<T> {
1092
- name?: string;
1130
+ name?: string | undefined;
1093
1131
  }
1094
1132
  interface SourceHTMLAttributes<T> extends HTMLAttributes<T> {
1095
- media?: string;
1096
- sizes?: string;
1097
- src?: string;
1098
- srcset?: string;
1099
- type?: string;
1133
+ media?: string | undefined;
1134
+ sizes?: string | undefined;
1135
+ src?: string | undefined;
1136
+ srcset?: string | undefined;
1137
+ type?: string | undefined;
1100
1138
  }
1101
1139
  interface StyleHTMLAttributes<T> extends HTMLAttributes<T> {
1102
- media?: string;
1103
- nonce?: string;
1104
- scoped?: boolean;
1105
- type?: string;
1140
+ media?: string | undefined;
1141
+ nonce?: string | undefined;
1142
+ scoped?: boolean | undefined;
1143
+ type?: string | undefined;
1106
1144
  }
1107
1145
  interface TdHTMLAttributes<T> extends HTMLAttributes<T> {
1108
- colspan?: number | string;
1109
- headers?: string;
1110
- rowspan?: number | string;
1111
- colSpan?: number | string;
1112
- rowSpan?: number | string;
1146
+ colspan?: number | string | undefined;
1147
+ headers?: string | undefined;
1148
+ rowspan?: number | string | undefined;
1149
+ colSpan?: number | string | undefined;
1150
+ rowSpan?: number | string | undefined;
1113
1151
  }
1114
1152
  interface TemplateHTMLAttributes<T extends HTMLTemplateElement> extends HTMLAttributes<T> {
1115
- content?: DocumentFragment;
1153
+ content?: DocumentFragment | undefined;
1116
1154
  }
1117
1155
  interface TextareaHTMLAttributes<T> extends HTMLAttributes<T> {
1118
- autocomplete?: string;
1119
- autofocus?: boolean;
1120
- cols?: number | string;
1121
- dirname?: string;
1122
- disabled?: boolean;
1123
- enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send";
1124
- form?: string;
1125
- maxlength?: number | string;
1126
- minlength?: number | string;
1127
- name?: string;
1128
- placeholder?: string;
1129
- readonly?: boolean;
1130
- required?: boolean;
1131
- rows?: number | string;
1132
- value?: string | string[] | number;
1133
- wrap?: "hard" | "soft" | "off";
1134
- maxLength?: number | string;
1135
- minLength?: number | string;
1136
- readOnly?: boolean;
1156
+ autocomplete?: string | undefined;
1157
+ autofocus?: boolean | undefined;
1158
+ cols?: number | string | undefined;
1159
+ dirname?: string | undefined;
1160
+ disabled?: boolean | undefined;
1161
+ enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
1162
+ form?: string | undefined;
1163
+ maxlength?: number | string | undefined;
1164
+ minlength?: number | string | undefined;
1165
+ name?: string | undefined;
1166
+ placeholder?: string | undefined;
1167
+ readonly?: boolean | undefined;
1168
+ required?: boolean | undefined;
1169
+ rows?: number | string | undefined;
1170
+ value?: string | string[] | number | undefined;
1171
+ wrap?: "hard" | "soft" | "off" | undefined;
1172
+ maxLength?: number | string | undefined;
1173
+ minLength?: number | string | undefined;
1174
+ readOnly?: boolean | undefined;
1137
1175
  }
1138
1176
  interface ThHTMLAttributes<T> extends HTMLAttributes<T> {
1139
- colspan?: number | string;
1140
- headers?: string;
1141
- rowspan?: number | string;
1142
- colSpan?: number | string;
1143
- rowSpan?: number | string;
1144
- scope?: "col" | "row" | "rowgroup" | "colgroup";
1177
+ colspan?: number | string | undefined;
1178
+ headers?: string | undefined;
1179
+ rowspan?: number | string | undefined;
1180
+ colSpan?: number | string | undefined;
1181
+ rowSpan?: number | string | undefined;
1182
+ scope?: "col" | "row" | "rowgroup" | "colgroup" | undefined;
1145
1183
  }
1146
1184
  interface TimeHTMLAttributes<T> extends HTMLAttributes<T> {
1147
- datetime?: string;
1148
- dateTime?: string;
1185
+ datetime?: string | undefined;
1186
+ dateTime?: string | undefined;
1149
1187
  }
1150
1188
  interface TrackHTMLAttributes<T> extends HTMLAttributes<T> {
1151
- default?: boolean;
1152
- kind?: "subtitles" | "captions" | "descriptions" | "chapters" | "metadata";
1153
- label?: string;
1154
- src?: string;
1155
- srclang?: string;
1189
+ default?: boolean | undefined;
1190
+ kind?: "subtitles" | "captions" | "descriptions" | "chapters" | "metadata" | undefined;
1191
+ label?: string | undefined;
1192
+ src?: string | undefined;
1193
+ srclang?: string | undefined;
1156
1194
  }
1157
1195
  interface VideoHTMLAttributes<T> extends MediaHTMLAttributes<T> {
1158
- height?: number | string;
1159
- playsinline?: boolean;
1160
- poster?: string;
1161
- width?: number | string;
1196
+ height?: number | string | undefined;
1197
+ playsinline?: boolean | undefined;
1198
+ poster?: string | undefined;
1199
+ width?: number | string | undefined;
1162
1200
  }
1163
1201
  type SVGPreserveAspectRatio =
1164
1202
  | "none"
@@ -1221,54 +1259,54 @@ export namespace JSX {
1221
1259
  | "defer xMaxYMax slice";
1222
1260
  type SVGUnits = "userSpaceOnUse" | "objectBoundingBox";
1223
1261
  interface CoreSVGAttributes<T> extends AriaAttributes, DOMAttributes<T> {
1224
- id?: string;
1225
- lang?: string;
1226
- tabIndex?: number | string;
1227
- tabindex?: number | string;
1262
+ id?: string | undefined;
1263
+ lang?: string | undefined;
1264
+ tabIndex?: number | string | undefined;
1265
+ tabindex?: number | string | undefined;
1228
1266
  }
1229
1267
  interface StylableSVGAttributes {
1230
1268
  class?: string | undefined;
1231
- style?: CSSProperties | string;
1269
+ style?: CSSProperties | string | undefined;
1232
1270
  }
1233
1271
  interface TransformableSVGAttributes {
1234
- transform?: string;
1272
+ transform?: string | undefined;
1235
1273
  }
1236
1274
  interface ConditionalProcessingSVGAttributes {
1237
- requiredExtensions?: string;
1238
- requiredFeatures?: string;
1239
- systemLanguage?: string;
1275
+ requiredExtensions?: string | undefined;
1276
+ requiredFeatures?: string | undefined;
1277
+ systemLanguage?: string | undefined;
1240
1278
  }
1241
1279
  interface ExternalResourceSVGAttributes {
1242
- externalResourcesRequired?: "true" | "false";
1280
+ externalResourcesRequired?: "true" | "false" | undefined;
1243
1281
  }
1244
1282
  interface AnimationTimingSVGAttributes {
1245
- begin?: string;
1246
- dur?: string;
1247
- end?: string;
1248
- min?: string;
1249
- max?: string;
1250
- restart?: "always" | "whenNotActive" | "never";
1251
- repeatCount?: number | "indefinite";
1252
- repeatDur?: string;
1253
- fill?: "freeze" | "remove";
1283
+ begin?: string | undefined;
1284
+ dur?: string | undefined;
1285
+ end?: string | undefined;
1286
+ min?: string | undefined;
1287
+ max?: string | undefined;
1288
+ restart?: "always" | "whenNotActive" | "never" | undefined;
1289
+ repeatCount?: number | "indefinite" | undefined;
1290
+ repeatDur?: string | undefined;
1291
+ fill?: "freeze" | "remove" | undefined;
1254
1292
  }
1255
1293
  interface AnimationValueSVGAttributes {
1256
- calcMode?: "discrete" | "linear" | "paced" | "spline";
1257
- values?: string;
1258
- keyTimes?: string;
1259
- keySplines?: string;
1260
- from?: number | string;
1261
- to?: number | string;
1262
- by?: number | string;
1294
+ calcMode?: "discrete" | "linear" | "paced" | "spline" | undefined;
1295
+ values?: string | undefined;
1296
+ keyTimes?: string | undefined;
1297
+ keySplines?: string | undefined;
1298
+ from?: number | string | undefined;
1299
+ to?: number | string | undefined;
1300
+ by?: number | string | undefined;
1263
1301
  }
1264
1302
  interface AnimationAdditionSVGAttributes {
1265
- attributeName?: string;
1266
- additive?: "replace" | "sum";
1267
- accumulate?: "none" | "sum";
1303
+ attributeName?: string | undefined;
1304
+ additive?: "replace" | "sum" | undefined;
1305
+ accumulate?: "none" | "sum" | undefined;
1268
1306
  }
1269
1307
  interface AnimationAttributeTargetSVGAttributes {
1270
- attributeName?: string;
1271
- attributeType?: "CSS" | "XML" | "auto";
1308
+ attributeName?: string | undefined;
1309
+ attributeType?: "CSS" | "XML" | "auto" | undefined;
1272
1310
  }
1273
1311
  interface PresentationSVGAttributes {
1274
1312
  "alignment-baseline"?:
@@ -1285,18 +1323,18 @@ export namespace JSX {
1285
1323
  | "hanging"
1286
1324
  | "mathematical"
1287
1325
  | "inherit";
1288
- "baseline-shift"?: number | string;
1289
- clip?: string;
1290
- "clip-path"?: string;
1291
- "clip-rule"?: "nonzero" | "evenodd" | "inherit";
1292
- color?: string;
1293
- "color-interpolation"?: "auto" | "sRGB" | "linearRGB" | "inherit";
1294
- "color-interpolation-filters"?: "auto" | "sRGB" | "linearRGB" | "inherit";
1295
- "color-profile"?: string;
1296
- "color-rendering"?: "auto" | "optimizeSpeed" | "optimizeQuality" | "inherit";
1297
- cursor?: string;
1298
- direction?: "ltr" | "rtl" | "inherit";
1299
- display?: string;
1326
+ "baseline-shift"?: number | string | undefined;
1327
+ clip?: string | undefined;
1328
+ "clip-path"?: string | undefined;
1329
+ "clip-rule"?: "nonzero" | "evenodd" | "inherit" | undefined;
1330
+ color?: string | undefined;
1331
+ "color-interpolation"?: "auto" | "sRGB" | "linearRGB" | "inherit" | undefined;
1332
+ "color-interpolation-filters"?: "auto" | "sRGB" | "linearRGB" | "inherit" | undefined;
1333
+ "color-profile"?: string | undefined;
1334
+ "color-rendering"?: "auto" | "optimizeSpeed" | "optimizeQuality" | "inherit" | undefined;
1335
+ cursor?: string | undefined;
1336
+ direction?: "ltr" | "rtl" | "inherit" | undefined;
1337
+ display?: string | undefined;
1300
1338
  "dominant-baseline"?:
1301
1339
  | "auto"
1302
1340
  | "text-bottom"
@@ -1308,33 +1346,33 @@ export namespace JSX {
1308
1346
  | "hanging"
1309
1347
  | "text-top"
1310
1348
  | "inherit";
1311
- "enable-background"?: string;
1312
- fill?: string;
1313
- "fill-opacity"?: number | string | "inherit";
1314
- "fill-rule"?: "nonzero" | "evenodd" | "inherit";
1315
- filter?: string;
1316
- "flood-color"?: string;
1317
- "flood-opacity"?: number | string | "inherit";
1318
- "font-family"?: string;
1319
- "font-size"?: string;
1320
- "font-size-adjust"?: number | string;
1321
- "font-stretch"?: string;
1322
- "font-style"?: "normal" | "italic" | "oblique" | "inherit";
1323
- "font-variant"?: string;
1324
- "font-weight"?: number | string;
1325
- "glyph-orientation-horizontal"?: string;
1326
- "glyph-orientation-vertical"?: string;
1327
- "image-rendering"?: "auto" | "optimizeQuality" | "optimizeSpeed" | "inherit";
1328
- kerning?: string;
1329
- "letter-spacing"?: number | string;
1330
- "lighting-color"?: string;
1331
- "marker-end"?: string;
1332
- "marker-mid"?: string;
1333
- "marker-start"?: string;
1334
- mask?: string;
1335
- opacity?: number | string | "inherit";
1336
- overflow?: "visible" | "hidden" | "scroll" | "auto" | "inherit";
1337
- pathLength?: string | number;
1349
+ "enable-background"?: string | undefined;
1350
+ fill?: string | undefined;
1351
+ "fill-opacity"?: number | string | "inherit" | undefined;
1352
+ "fill-rule"?: "nonzero" | "evenodd" | "inherit" | undefined;
1353
+ filter?: string | undefined;
1354
+ "flood-color"?: string | undefined;
1355
+ "flood-opacity"?: number | string | "inherit" | undefined;
1356
+ "font-family"?: string | undefined;
1357
+ "font-size"?: string | undefined;
1358
+ "font-size-adjust"?: number | string | undefined;
1359
+ "font-stretch"?: string | undefined;
1360
+ "font-style"?: "normal" | "italic" | "oblique" | "inherit" | undefined;
1361
+ "font-variant"?: string | undefined;
1362
+ "font-weight"?: number | string | undefined;
1363
+ "glyph-orientation-horizontal"?: string | undefined;
1364
+ "glyph-orientation-vertical"?: string | undefined;
1365
+ "image-rendering"?: "auto" | "optimizeQuality" | "optimizeSpeed" | "inherit" | undefined;
1366
+ kerning?: string | undefined;
1367
+ "letter-spacing"?: number | string | undefined;
1368
+ "lighting-color"?: string | undefined;
1369
+ "marker-end"?: string | undefined;
1370
+ "marker-mid"?: string | undefined;
1371
+ "marker-start"?: string | undefined;
1372
+ mask?: string | undefined;
1373
+ opacity?: number | string | "inherit" | undefined;
1374
+ overflow?: "visible" | "hidden" | "scroll" | "auto" | "inherit" | undefined;
1375
+ pathLength?: string | number | undefined;
1338
1376
  "pointer-events"?:
1339
1377
  | "bounding-box"
1340
1378
  | "visiblePainted"
@@ -1348,29 +1386,42 @@ export namespace JSX {
1348
1386
  | "all"
1349
1387
  | "none"
1350
1388
  | "inherit";
1351
- "shape-rendering"?: "auto" | "optimizeSpeed" | "crispEdges" | "geometricPrecision" | "inherit";
1352
- "stop-color"?: string;
1353
- "stop-opacity"?: number | string | "inherit";
1354
- stroke?: string;
1355
- "stroke-dasharray"?: string;
1356
- "stroke-dashoffset"?: number | string;
1357
- "stroke-linecap"?: "butt" | "round" | "square" | "inherit";
1358
- "stroke-linejoin"?: "arcs" | "bevel" | "miter" | "miter-clip" | "round" | "inherit";
1359
- "stroke-miterlimit"?: number | string | "inherit";
1360
- "stroke-opacity"?: number | string | "inherit";
1361
- "stroke-width"?: number | string;
1362
- "text-anchor"?: "start" | "middle" | "end" | "inherit";
1363
- "text-decoration"?: "none" | "underline" | "overline" | "line-through" | "blink" | "inherit";
1389
+ "shape-rendering"?:
1390
+ | "auto"
1391
+ | "optimizeSpeed"
1392
+ | "crispEdges"
1393
+ | "geometricPrecision"
1394
+ | "inherit"
1395
+ | undefined;
1396
+ "stop-color"?: string | undefined;
1397
+ "stop-opacity"?: number | string | "inherit" | undefined;
1398
+ stroke?: string | undefined;
1399
+ "stroke-dasharray"?: string | undefined;
1400
+ "stroke-dashoffset"?: number | string | undefined;
1401
+ "stroke-linecap"?: "butt" | "round" | "square" | "inherit" | undefined;
1402
+ "stroke-linejoin"?: "arcs" | "bevel" | "miter" | "miter-clip" | "round" | "inherit" | undefined;
1403
+ "stroke-miterlimit"?: number | string | "inherit" | undefined;
1404
+ "stroke-opacity"?: number | string | "inherit" | undefined;
1405
+ "stroke-width"?: number | string | undefined;
1406
+ "text-anchor"?: "start" | "middle" | "end" | "inherit" | undefined;
1407
+ "text-decoration"?:
1408
+ | "none"
1409
+ | "underline"
1410
+ | "overline"
1411
+ | "line-through"
1412
+ | "blink"
1413
+ | "inherit"
1414
+ | undefined;
1364
1415
  "text-rendering"?:
1365
1416
  | "auto"
1366
1417
  | "optimizeSpeed"
1367
1418
  | "optimizeLegibility"
1368
1419
  | "geometricPrecision"
1369
1420
  | "inherit";
1370
- "unicode-bidi"?: string;
1371
- visibility?: "visible" | "hidden" | "collapse" | "inherit";
1372
- "word-spacing"?: number | string;
1373
- "writing-mode"?: "lr-tb" | "rl-tb" | "tb-rl" | "lr" | "rl" | "tb" | "inherit";
1421
+ "unicode-bidi"?: string | undefined;
1422
+ visibility?: "visible" | "hidden" | "collapse" | "inherit" | undefined;
1423
+ "word-spacing"?: number | string | undefined;
1424
+ "writing-mode"?: "lr-tb" | "rl-tb" | "tb-rl" | "lr" | "rl" | "tb" | "inherit" | undefined;
1374
1425
  }
1375
1426
  interface AnimationElementSVGAttributes<T>
1376
1427
  extends CoreSVGAttributes<T>,
@@ -1393,31 +1444,31 @@ export namespace JSX {
1393
1444
  interface FilterPrimitiveElementSVGAttributes<T>
1394
1445
  extends CoreSVGAttributes<T>,
1395
1446
  Pick<PresentationSVGAttributes, "color-interpolation-filters"> {
1396
- x?: number | string;
1397
- y?: number | string;
1398
- width?: number | string;
1399
- height?: number | string;
1400
- result?: string;
1447
+ x?: number | string | undefined;
1448
+ y?: number | string | undefined;
1449
+ width?: number | string | undefined;
1450
+ height?: number | string | undefined;
1451
+ result?: string | undefined;
1401
1452
  }
1402
1453
  interface SingleInputFilterSVGAttributes {
1403
- in?: string;
1454
+ in?: string | undefined;
1404
1455
  }
1405
1456
  interface DoubleInputFilterSVGAttributes {
1406
- in?: string;
1407
- in2?: string;
1457
+ in?: string | undefined;
1458
+ in2?: string | undefined;
1408
1459
  }
1409
1460
  interface FitToViewBoxSVGAttributes {
1410
- viewBox?: string;
1411
- preserveAspectRatio?: SVGPreserveAspectRatio;
1461
+ viewBox?: string | undefined;
1462
+ preserveAspectRatio?: SVGPreserveAspectRatio | undefined;
1412
1463
  }
1413
1464
  interface GradientElementSVGAttributes<T>
1414
1465
  extends CoreSVGAttributes<T>,
1415
1466
  ExternalResourceSVGAttributes,
1416
1467
  StylableSVGAttributes {
1417
- gradientUnits?: SVGUnits;
1418
- gradientTransform?: string;
1419
- spreadMethod?: "pad" | "reflect" | "repeat";
1420
- href?: string;
1468
+ gradientUnits?: SVGUnits | undefined;
1469
+ gradientTransform?: string | undefined;
1470
+ spreadMethod?: "pad" | "reflect" | "repeat" | undefined;
1471
+ href?: string | undefined;
1421
1472
  }
1422
1473
  interface GraphicsElementSVGAttributes<T>
1423
1474
  extends CoreSVGAttributes<T>,
@@ -1438,7 +1489,7 @@ export namespace JSX {
1438
1489
  interface NewViewportSVGAttributes<T>
1439
1490
  extends CoreSVGAttributes<T>,
1440
1491
  Pick<PresentationSVGAttributes, "overflow" | "clip"> {
1441
- viewBox?: string;
1492
+ viewBox?: string | undefined;
1442
1493
  }
1443
1494
  interface ShapeElementSVGAttributes<T>
1444
1495
  extends CoreSVGAttributes<T>,
@@ -1494,7 +1545,7 @@ export namespace JSX {
1494
1545
  | "stroke-opacity"
1495
1546
  > {}
1496
1547
  interface ZoomAndPanSVGAttributes {
1497
- zoomAndPan?: "disable" | "magnify";
1548
+ zoomAndPan?: "disable" | "magnify" | undefined;
1498
1549
  }
1499
1550
  interface AnimateSVGAttributes<T>
1500
1551
  extends AnimationElementSVGAttributes<T>,
@@ -1508,10 +1559,10 @@ export namespace JSX {
1508
1559
  AnimationTimingSVGAttributes,
1509
1560
  AnimationValueSVGAttributes,
1510
1561
  AnimationAdditionSVGAttributes {
1511
- path?: string;
1512
- keyPoints?: string;
1513
- rotate?: number | string | "auto" | "auto-reverse";
1514
- origin?: "default";
1562
+ path?: string | undefined;
1563
+ keyPoints?: string | undefined;
1564
+ rotate?: number | string | "auto" | "auto-reverse" | undefined;
1565
+ origin?: "default" | undefined;
1515
1566
  }
1516
1567
  interface AnimateTransformSVGAttributes<T>
1517
1568
  extends AnimationElementSVGAttributes<T>,
@@ -1519,7 +1570,7 @@ export namespace JSX {
1519
1570
  AnimationTimingSVGAttributes,
1520
1571
  AnimationValueSVGAttributes,
1521
1572
  AnimationAdditionSVGAttributes {
1522
- type?: "translate" | "scale" | "rotate" | "skewX" | "skewY";
1573
+ type?: "translate" | "scale" | "rotate" | "skewX" | "skewY" | undefined;
1523
1574
  }
1524
1575
  interface CircleSVGAttributes<T>
1525
1576
  extends GraphicsElementSVGAttributes<T>,
@@ -1527,9 +1578,9 @@ export namespace JSX {
1527
1578
  ConditionalProcessingSVGAttributes,
1528
1579
  StylableSVGAttributes,
1529
1580
  TransformableSVGAttributes {
1530
- cx?: number | string;
1531
- cy?: number | string;
1532
- r?: number | string;
1581
+ cx?: number | string | undefined;
1582
+ cy?: number | string | undefined;
1583
+ r?: number | string | undefined;
1533
1584
  }
1534
1585
  interface ClipPathSVGAttributes<T>
1535
1586
  extends CoreSVGAttributes<T>,
@@ -1538,7 +1589,7 @@ export namespace JSX {
1538
1589
  StylableSVGAttributes,
1539
1590
  TransformableSVGAttributes,
1540
1591
  Pick<PresentationSVGAttributes, "clip-path"> {
1541
- clipPathUnits?: SVGUnits;
1592
+ clipPathUnits?: SVGUnits | undefined;
1542
1593
  }
1543
1594
  interface DefsSVGAttributes<T>
1544
1595
  extends ContainerElementSVGAttributes<T>,
@@ -1554,23 +1605,23 @@ export namespace JSX {
1554
1605
  ExternalResourceSVGAttributes,
1555
1606
  StylableSVGAttributes,
1556
1607
  TransformableSVGAttributes {
1557
- cx?: number | string;
1558
- cy?: number | string;
1559
- rx?: number | string;
1560
- ry?: number | string;
1608
+ cx?: number | string | undefined;
1609
+ cy?: number | string | undefined;
1610
+ rx?: number | string | undefined;
1611
+ ry?: number | string | undefined;
1561
1612
  }
1562
1613
  interface FeBlendSVGAttributes<T>
1563
1614
  extends FilterPrimitiveElementSVGAttributes<T>,
1564
1615
  DoubleInputFilterSVGAttributes,
1565
1616
  StylableSVGAttributes {
1566
- mode?: "normal" | "multiply" | "screen" | "darken" | "lighten";
1617
+ mode?: "normal" | "multiply" | "screen" | "darken" | "lighten" | undefined;
1567
1618
  }
1568
1619
  interface FeColorMatrixSVGAttributes<T>
1569
1620
  extends FilterPrimitiveElementSVGAttributes<T>,
1570
1621
  SingleInputFilterSVGAttributes,
1571
1622
  StylableSVGAttributes {
1572
- type?: "matrix" | "saturate" | "hueRotate" | "luminanceToAlpha";
1573
- values?: string;
1623
+ type?: "matrix" | "saturate" | "hueRotate" | "luminanceToAlpha" | undefined;
1624
+ values?: string | undefined;
1574
1625
  }
1575
1626
  interface FeComponentTransferSVGAttributes<T>
1576
1627
  extends FilterPrimitiveElementSVGAttributes<T>,
@@ -1580,81 +1631,81 @@ export namespace JSX {
1580
1631
  extends FilterPrimitiveElementSVGAttributes<T>,
1581
1632
  DoubleInputFilterSVGAttributes,
1582
1633
  StylableSVGAttributes {
1583
- operator?: "over" | "in" | "out" | "atop" | "xor" | "arithmetic";
1584
- k1?: number | string;
1585
- k2?: number | string;
1586
- k3?: number | string;
1587
- k4?: number | string;
1634
+ operator?: "over" | "in" | "out" | "atop" | "xor" | "arithmetic" | undefined;
1635
+ k1?: number | string | undefined;
1636
+ k2?: number | string | undefined;
1637
+ k3?: number | string | undefined;
1638
+ k4?: number | string | undefined;
1588
1639
  }
1589
1640
  interface FeConvolveMatrixSVGAttributes<T>
1590
1641
  extends FilterPrimitiveElementSVGAttributes<T>,
1591
1642
  SingleInputFilterSVGAttributes,
1592
1643
  StylableSVGAttributes {
1593
- order?: number | string;
1594
- kernelMatrix?: string;
1595
- divisor?: number | string;
1596
- bias?: number | string;
1597
- targetX?: number | string;
1598
- targetY?: number | string;
1599
- edgeMode?: "duplicate" | "wrap" | "none";
1600
- kernelUnitLength?: number | string;
1601
- preserveAlpha?: "true" | "false";
1644
+ order?: number | string | undefined;
1645
+ kernelMatrix?: string | undefined;
1646
+ divisor?: number | string | undefined;
1647
+ bias?: number | string | undefined;
1648
+ targetX?: number | string | undefined;
1649
+ targetY?: number | string | undefined;
1650
+ edgeMode?: "duplicate" | "wrap" | "none" | undefined;
1651
+ kernelUnitLength?: number | string | undefined;
1652
+ preserveAlpha?: "true" | "false" | undefined;
1602
1653
  }
1603
1654
  interface FeDiffuseLightingSVGAttributes<T>
1604
1655
  extends FilterPrimitiveElementSVGAttributes<T>,
1605
1656
  SingleInputFilterSVGAttributes,
1606
1657
  StylableSVGAttributes,
1607
1658
  Pick<PresentationSVGAttributes, "color" | "lighting-color"> {
1608
- surfaceScale?: number | string;
1609
- diffuseConstant?: number | string;
1610
- kernelUnitLength?: number | string;
1659
+ surfaceScale?: number | string | undefined;
1660
+ diffuseConstant?: number | string | undefined;
1661
+ kernelUnitLength?: number | string | undefined;
1611
1662
  }
1612
1663
  interface FeDisplacementMapSVGAttributes<T>
1613
1664
  extends FilterPrimitiveElementSVGAttributes<T>,
1614
1665
  DoubleInputFilterSVGAttributes,
1615
1666
  StylableSVGAttributes {
1616
- scale?: number | string;
1617
- xChannelSelector?: "R" | "G" | "B" | "A";
1618
- yChannelSelector?: "R" | "G" | "B" | "A";
1667
+ scale?: number | string | undefined;
1668
+ xChannelSelector?: "R" | "G" | "B" | "A" | undefined;
1669
+ yChannelSelector?: "R" | "G" | "B" | "A" | undefined;
1619
1670
  }
1620
1671
  interface FeDistantLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
1621
- azimuth?: number | string;
1622
- elevation?: number | string;
1672
+ azimuth?: number | string | undefined;
1673
+ elevation?: number | string | undefined;
1623
1674
  }
1624
1675
  interface FeDropShadowSVGAttributes<T>
1625
1676
  extends CoreSVGAttributes<T>,
1626
1677
  FilterPrimitiveElementSVGAttributes<T>,
1627
1678
  StylableSVGAttributes,
1628
1679
  Pick<PresentationSVGAttributes, "color" | "flood-color" | "flood-opacity"> {
1629
- dx?: number | string;
1630
- dy?: number | string;
1631
- stdDeviation?: number | string;
1680
+ dx?: number | string | undefined;
1681
+ dy?: number | string | undefined;
1682
+ stdDeviation?: number | string | undefined;
1632
1683
  }
1633
1684
  interface FeFloodSVGAttributes<T>
1634
1685
  extends FilterPrimitiveElementSVGAttributes<T>,
1635
1686
  StylableSVGAttributes,
1636
1687
  Pick<PresentationSVGAttributes, "color" | "flood-color" | "flood-opacity"> {}
1637
1688
  interface FeFuncSVGAttributes<T> extends CoreSVGAttributes<T> {
1638
- type?: "identity" | "table" | "discrete" | "linear" | "gamma";
1639
- tableValues?: string;
1640
- slope?: number | string;
1641
- intercept?: number | string;
1642
- amplitude?: number | string;
1643
- exponent?: number | string;
1644
- offset?: number | string;
1689
+ type?: "identity" | "table" | "discrete" | "linear" | "gamma" | undefined;
1690
+ tableValues?: string | undefined;
1691
+ slope?: number | string | undefined;
1692
+ intercept?: number | string | undefined;
1693
+ amplitude?: number | string | undefined;
1694
+ exponent?: number | string | undefined;
1695
+ offset?: number | string | undefined;
1645
1696
  }
1646
1697
  interface FeGaussianBlurSVGAttributes<T>
1647
1698
  extends FilterPrimitiveElementSVGAttributes<T>,
1648
1699
  SingleInputFilterSVGAttributes,
1649
1700
  StylableSVGAttributes {
1650
- stdDeviation?: number | string;
1701
+ stdDeviation?: number | string | undefined;
1651
1702
  }
1652
1703
  interface FeImageSVGAttributes<T>
1653
1704
  extends FilterPrimitiveElementSVGAttributes<T>,
1654
1705
  ExternalResourceSVGAttributes,
1655
1706
  StylableSVGAttributes {
1656
- preserveAspectRatio?: SVGPreserveAspectRatio;
1657
- href?: string;
1707
+ preserveAspectRatio?: SVGPreserveAspectRatio | undefined;
1708
+ href?: string | undefined;
1658
1709
  }
1659
1710
  interface FeMergeSVGAttributes<T>
1660
1711
  extends FilterPrimitiveElementSVGAttributes<T>,
@@ -1666,40 +1717,40 @@ export namespace JSX {
1666
1717
  extends FilterPrimitiveElementSVGAttributes<T>,
1667
1718
  SingleInputFilterSVGAttributes,
1668
1719
  StylableSVGAttributes {
1669
- operator?: "erode" | "dilate";
1670
- radius?: number | string;
1720
+ operator?: "erode" | "dilate" | undefined;
1721
+ radius?: number | string | undefined;
1671
1722
  }
1672
1723
  interface FeOffsetSVGAttributes<T>
1673
1724
  extends FilterPrimitiveElementSVGAttributes<T>,
1674
1725
  SingleInputFilterSVGAttributes,
1675
1726
  StylableSVGAttributes {
1676
- dx?: number | string;
1677
- dy?: number | string;
1727
+ dx?: number | string | undefined;
1728
+ dy?: number | string | undefined;
1678
1729
  }
1679
1730
  interface FePointLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
1680
- x?: number | string;
1681
- y?: number | string;
1682
- z?: number | string;
1731
+ x?: number | string | undefined;
1732
+ y?: number | string | undefined;
1733
+ z?: number | string | undefined;
1683
1734
  }
1684
1735
  interface FeSpecularLightingSVGAttributes<T>
1685
1736
  extends FilterPrimitiveElementSVGAttributes<T>,
1686
1737
  SingleInputFilterSVGAttributes,
1687
1738
  StylableSVGAttributes,
1688
1739
  Pick<PresentationSVGAttributes, "color" | "lighting-color"> {
1689
- surfaceScale?: string;
1690
- specularConstant?: string;
1691
- specularExponent?: string;
1692
- kernelUnitLength?: number | string;
1740
+ surfaceScale?: string | undefined;
1741
+ specularConstant?: string | undefined;
1742
+ specularExponent?: string | undefined;
1743
+ kernelUnitLength?: number | string | undefined;
1693
1744
  }
1694
1745
  interface FeSpotLightSVGAttributes<T> extends LightSourceElementSVGAttributes<T> {
1695
- x?: number | string;
1696
- y?: number | string;
1697
- z?: number | string;
1698
- pointsAtX?: number | string;
1699
- pointsAtY?: number | string;
1700
- pointsAtZ?: number | string;
1701
- specularExponent?: number | string;
1702
- limitingConeAngle?: number | string;
1746
+ x?: number | string | undefined;
1747
+ y?: number | string | undefined;
1748
+ z?: number | string | undefined;
1749
+ pointsAtX?: number | string | undefined;
1750
+ pointsAtY?: number | string | undefined;
1751
+ pointsAtZ?: number | string | undefined;
1752
+ specularExponent?: number | string | undefined;
1753
+ limitingConeAngle?: number | string | undefined;
1703
1754
  }
1704
1755
  interface FeTileSVGAttributes<T>
1705
1756
  extends FilterPrimitiveElementSVGAttributes<T>,
@@ -1708,23 +1759,23 @@ export namespace JSX {
1708
1759
  interface FeTurbulanceSVGAttributes<T>
1709
1760
  extends FilterPrimitiveElementSVGAttributes<T>,
1710
1761
  StylableSVGAttributes {
1711
- baseFrequency?: number | string;
1712
- numOctaves?: number | string;
1713
- seed?: number | string;
1714
- stitchTiles?: "stitch" | "noStitch";
1715
- type?: "fractalNoise" | "turbulence";
1762
+ baseFrequency?: number | string | undefined;
1763
+ numOctaves?: number | string | undefined;
1764
+ seed?: number | string | undefined;
1765
+ stitchTiles?: "stitch" | "noStitch" | undefined;
1766
+ type?: "fractalNoise" | "turbulence" | undefined;
1716
1767
  }
1717
1768
  interface FilterSVGAttributes<T>
1718
1769
  extends CoreSVGAttributes<T>,
1719
1770
  ExternalResourceSVGAttributes,
1720
1771
  StylableSVGAttributes {
1721
- filterUnits?: SVGUnits;
1722
- primitiveUnits?: SVGUnits;
1723
- x?: number | string;
1724
- y?: number | string;
1725
- width?: number | string;
1726
- height?: number | string;
1727
- filterRes?: number | string;
1772
+ filterUnits?: SVGUnits | undefined;
1773
+ primitiveUnits?: SVGUnits | undefined;
1774
+ x?: number | string | undefined;
1775
+ y?: number | string | undefined;
1776
+ width?: number | string | undefined;
1777
+ height?: number | string | undefined;
1778
+ filterRes?: number | string | undefined;
1728
1779
  }
1729
1780
  interface ForeignObjectSVGAttributes<T>
1730
1781
  extends NewViewportSVGAttributes<T>,
@@ -1733,10 +1784,10 @@ export namespace JSX {
1733
1784
  StylableSVGAttributes,
1734
1785
  TransformableSVGAttributes,
1735
1786
  Pick<PresentationSVGAttributes, "display" | "visibility"> {
1736
- x?: number | string;
1737
- y?: number | string;
1738
- width?: number | string;
1739
- height?: number | string;
1787
+ x?: number | string | undefined;
1788
+ y?: number | string | undefined;
1789
+ width?: number | string | undefined;
1790
+ height?: number | string | undefined;
1740
1791
  }
1741
1792
  interface GSVGAttributes<T>
1742
1793
  extends ContainerElementSVGAttributes<T>,
@@ -1752,12 +1803,12 @@ export namespace JSX {
1752
1803
  StylableSVGAttributes,
1753
1804
  TransformableSVGAttributes,
1754
1805
  Pick<PresentationSVGAttributes, "color-profile" | "image-rendering"> {
1755
- x?: number | string;
1756
- y?: number | string;
1757
- width?: number | string;
1758
- height?: number | string;
1759
- preserveAspectRatio?: ImagePreserveAspectRatio;
1760
- href?: string;
1806
+ x?: number | string | undefined;
1807
+ y?: number | string | undefined;
1808
+ width?: number | string | undefined;
1809
+ height?: number | string | undefined;
1810
+ preserveAspectRatio?: ImagePreserveAspectRatio | undefined;
1811
+ href?: string | undefined;
1761
1812
  }
1762
1813
  interface LineSVGAttributes<T>
1763
1814
  extends GraphicsElementSVGAttributes<T>,
@@ -1767,16 +1818,16 @@ export namespace JSX {
1767
1818
  StylableSVGAttributes,
1768
1819
  TransformableSVGAttributes,
1769
1820
  Pick<PresentationSVGAttributes, "marker-start" | "marker-mid" | "marker-end"> {
1770
- x1?: number | string;
1771
- y1?: number | string;
1772
- x2?: number | string;
1773
- y2?: number | string;
1821
+ x1?: number | string | undefined;
1822
+ y1?: number | string | undefined;
1823
+ x2?: number | string | undefined;
1824
+ y2?: number | string | undefined;
1774
1825
  }
1775
1826
  interface LinearGradientSVGAttributes<T> extends GradientElementSVGAttributes<T> {
1776
- x1?: number | string;
1777
- x2?: number | string;
1778
- y1?: number | string;
1779
- y2?: number | string;
1827
+ x1?: number | string | undefined;
1828
+ x2?: number | string | undefined;
1829
+ y1?: number | string | undefined;
1830
+ y2?: number | string | undefined;
1780
1831
  }
1781
1832
  interface MarkerSVGAttributes<T>
1782
1833
  extends ContainerElementSVGAttributes<T>,
@@ -1784,24 +1835,24 @@ export namespace JSX {
1784
1835
  StylableSVGAttributes,
1785
1836
  FitToViewBoxSVGAttributes,
1786
1837
  Pick<PresentationSVGAttributes, "overflow" | "clip"> {
1787
- markerUnits?: "strokeWidth" | "userSpaceOnUse";
1788
- refX?: number | string;
1789
- refY?: number | string;
1790
- markerWidth?: number | string;
1791
- markerHeight?: number | string;
1792
- orient?: string;
1838
+ markerUnits?: "strokeWidth" | "userSpaceOnUse" | undefined;
1839
+ refX?: number | string | undefined;
1840
+ refY?: number | string | undefined;
1841
+ markerWidth?: number | string | undefined;
1842
+ markerHeight?: number | string | undefined;
1843
+ orient?: string | undefined;
1793
1844
  }
1794
1845
  interface MaskSVGAttributes<T>
1795
1846
  extends Omit<ContainerElementSVGAttributes<T>, "opacity" | "filter">,
1796
1847
  ConditionalProcessingSVGAttributes,
1797
1848
  ExternalResourceSVGAttributes,
1798
1849
  StylableSVGAttributes {
1799
- maskUnits?: SVGUnits;
1800
- maskContentUnits?: SVGUnits;
1801
- x?: number | string;
1802
- y?: number | string;
1803
- width?: number | string;
1804
- height?: number | string;
1850
+ maskUnits?: SVGUnits | undefined;
1851
+ maskContentUnits?: SVGUnits | undefined;
1852
+ x?: number | string | undefined;
1853
+ y?: number | string | undefined;
1854
+ width?: number | string | undefined;
1855
+ height?: number | string | undefined;
1805
1856
  }
1806
1857
  interface MetadataSVGAttributes<T> extends CoreSVGAttributes<T> {}
1807
1858
  interface MPathSVGAttributes<T> extends CoreSVGAttributes<T> {}
@@ -1813,8 +1864,8 @@ export namespace JSX {
1813
1864
  StylableSVGAttributes,
1814
1865
  TransformableSVGAttributes,
1815
1866
  Pick<PresentationSVGAttributes, "marker-start" | "marker-mid" | "marker-end"> {
1816
- d?: string;
1817
- pathLength?: number | string;
1867
+ d?: string | undefined;
1868
+ pathLength?: number | string | undefined;
1818
1869
  }
1819
1870
  interface PatternSVGAttributes<T>
1820
1871
  extends ContainerElementSVGAttributes<T>,
@@ -1823,14 +1874,14 @@ export namespace JSX {
1823
1874
  StylableSVGAttributes,
1824
1875
  FitToViewBoxSVGAttributes,
1825
1876
  Pick<PresentationSVGAttributes, "overflow" | "clip"> {
1826
- x?: number | string;
1827
- y?: number | string;
1828
- width?: number | string;
1829
- height?: number | string;
1830
- patternUnits?: SVGUnits;
1831
- patternContentUnits?: SVGUnits;
1832
- patternTransform?: string;
1833
- href?: string;
1877
+ x?: number | string | undefined;
1878
+ y?: number | string | undefined;
1879
+ width?: number | string | undefined;
1880
+ height?: number | string | undefined;
1881
+ patternUnits?: SVGUnits | undefined;
1882
+ patternContentUnits?: SVGUnits | undefined;
1883
+ patternTransform?: string | undefined;
1884
+ href?: string | undefined;
1834
1885
  }
1835
1886
  interface PolygonSVGAttributes<T>
1836
1887
  extends GraphicsElementSVGAttributes<T>,
@@ -1840,7 +1891,7 @@ export namespace JSX {
1840
1891
  StylableSVGAttributes,
1841
1892
  TransformableSVGAttributes,
1842
1893
  Pick<PresentationSVGAttributes, "marker-start" | "marker-mid" | "marker-end"> {
1843
- points?: string;
1894
+ points?: string | undefined;
1844
1895
  }
1845
1896
  interface PolylineSVGAttributes<T>
1846
1897
  extends GraphicsElementSVGAttributes<T>,
@@ -1850,14 +1901,14 @@ export namespace JSX {
1850
1901
  StylableSVGAttributes,
1851
1902
  TransformableSVGAttributes,
1852
1903
  Pick<PresentationSVGAttributes, "marker-start" | "marker-mid" | "marker-end"> {
1853
- points?: string;
1904
+ points?: string | undefined;
1854
1905
  }
1855
1906
  interface RadialGradientSVGAttributes<T> extends GradientElementSVGAttributes<T> {
1856
- cx?: number | string;
1857
- cy?: number | string;
1858
- r?: number | string;
1859
- fx?: number | string;
1860
- fy?: number | string;
1907
+ cx?: number | string | undefined;
1908
+ cy?: number | string | undefined;
1909
+ r?: number | string | undefined;
1910
+ fx?: number | string | undefined;
1911
+ fy?: number | string | undefined;
1861
1912
  }
1862
1913
  interface RectSVGAttributes<T>
1863
1914
  extends GraphicsElementSVGAttributes<T>,
@@ -1866,12 +1917,12 @@ export namespace JSX {
1866
1917
  ExternalResourceSVGAttributes,
1867
1918
  StylableSVGAttributes,
1868
1919
  TransformableSVGAttributes {
1869
- x?: number | string;
1870
- y?: number | string;
1871
- width?: number | string;
1872
- height?: number | string;
1873
- rx?: number | string;
1874
- ry?: number | string;
1920
+ x?: number | string | undefined;
1921
+ y?: number | string | undefined;
1922
+ width?: number | string | undefined;
1923
+ height?: number | string | undefined;
1924
+ rx?: number | string | undefined;
1925
+ ry?: number | string | undefined;
1875
1926
  }
1876
1927
  interface SetSVGAttributes<T>
1877
1928
  extends CoreSVGAttributes<T>,
@@ -1881,7 +1932,7 @@ export namespace JSX {
1881
1932
  extends CoreSVGAttributes<T>,
1882
1933
  StylableSVGAttributes,
1883
1934
  Pick<PresentationSVGAttributes, "color" | "stop-color" | "stop-opacity"> {
1884
- offset?: number | string;
1935
+ offset?: number | string | undefined;
1885
1936
  }
1886
1937
  interface SvgSVGAttributes<T>
1887
1938
  extends ContainerElementSVGAttributes<T>,
@@ -1892,16 +1943,16 @@ export namespace JSX {
1892
1943
  FitToViewBoxSVGAttributes,
1893
1944
  ZoomAndPanSVGAttributes,
1894
1945
  PresentationSVGAttributes {
1895
- version?: string;
1896
- baseProfile?: string;
1897
- x?: number | string;
1898
- y?: number | string;
1899
- width?: number | string;
1900
- height?: number | string;
1901
- contentScriptType?: string;
1902
- contentStyleType?: string;
1903
- xmlns?: string;
1904
- "xmlns:xlink"?: string;
1946
+ version?: string | undefined;
1947
+ baseProfile?: string | undefined;
1948
+ x?: number | string | undefined;
1949
+ y?: number | string | undefined;
1950
+ width?: number | string | undefined;
1951
+ height?: number | string | undefined;
1952
+ contentScriptType?: string | undefined;
1953
+ contentStyleType?: string | undefined;
1954
+ xmlns?: string | undefined;
1955
+ "xmlns:xlink"?: string | undefined;
1905
1956
  }
1906
1957
  interface SwitchSVGAttributes<T>
1907
1958
  extends ContainerElementSVGAttributes<T>,
@@ -1916,14 +1967,14 @@ export namespace JSX {
1916
1967
  ExternalResourceSVGAttributes,
1917
1968
  StylableSVGAttributes,
1918
1969
  FitToViewBoxSVGAttributes {
1919
- width?: number | string;
1920
- height?: number | string;
1921
- preserveAspectRatio?: SVGPreserveAspectRatio;
1922
- refX?: number | string;
1923
- refY?: number | string;
1924
- viewBox?: string;
1925
- x?: number | string;
1926
- y?: number | string;
1970
+ width?: number | string | undefined;
1971
+ height?: number | string | undefined;
1972
+ preserveAspectRatio?: SVGPreserveAspectRatio | undefined;
1973
+ refX?: number | string | undefined;
1974
+ refY?: number | string | undefined;
1975
+ viewBox?: string | undefined;
1976
+ x?: number | string | undefined;
1977
+ y?: number | string | undefined;
1927
1978
  }
1928
1979
  interface TextSVGAttributes<T>
1929
1980
  extends TextContentElementSVGAttributes<T>,
@@ -1933,13 +1984,13 @@ export namespace JSX {
1933
1984
  StylableSVGAttributes,
1934
1985
  TransformableSVGAttributes,
1935
1986
  Pick<PresentationSVGAttributes, "writing-mode" | "text-rendering"> {
1936
- x?: number | string;
1937
- y?: number | string;
1938
- dx?: number | string;
1939
- dy?: number | string;
1940
- rotate?: number | string;
1941
- textLength?: number | string;
1942
- lengthAdjust?: "spacing" | "spacingAndGlyphs";
1987
+ x?: number | string | undefined;
1988
+ y?: number | string | undefined;
1989
+ dx?: number | string | undefined;
1990
+ dy?: number | string | undefined;
1991
+ rotate?: number | string | undefined;
1992
+ textLength?: number | string | undefined;
1993
+ lengthAdjust?: "spacing" | "spacingAndGlyphs" | undefined;
1943
1994
  }
1944
1995
  interface TextPathSVGAttributes<T>
1945
1996
  extends TextContentElementSVGAttributes<T>,
@@ -1950,10 +2001,10 @@ export namespace JSX {
1950
2001
  PresentationSVGAttributes,
1951
2002
  "alignment-baseline" | "baseline-shift" | "display" | "visibility"
1952
2003
  > {
1953
- startOffset?: number | string;
1954
- method?: "align" | "stretch";
1955
- spacing?: "auto" | "exact";
1956
- href?: string;
2004
+ startOffset?: number | string | undefined;
2005
+ method?: "align" | "stretch" | undefined;
2006
+ spacing?: "auto" | "exact" | undefined;
2007
+ href?: string | undefined;
1957
2008
  }
1958
2009
  interface TSpanSVGAttributes<T>
1959
2010
  extends TextContentElementSVGAttributes<T>,
@@ -1964,13 +2015,13 @@ export namespace JSX {
1964
2015
  PresentationSVGAttributes,
1965
2016
  "alignment-baseline" | "baseline-shift" | "display" | "visibility"
1966
2017
  > {
1967
- x?: number | string;
1968
- y?: number | string;
1969
- dx?: number | string;
1970
- dy?: number | string;
1971
- rotate?: number | string;
1972
- textLength?: number | string;
1973
- lengthAdjust?: "spacing" | "spacingAndGlyphs";
2018
+ x?: number | string | undefined;
2019
+ y?: number | string | undefined;
2020
+ dx?: number | string | undefined;
2021
+ dy?: number | string | undefined;
2022
+ rotate?: number | string | undefined;
2023
+ textLength?: number | string | undefined;
2024
+ lengthAdjust?: "spacing" | "spacingAndGlyphs" | undefined;
1974
2025
  }
1975
2026
  /**
1976
2027
  * @see https://developer.mozilla.org/en-US/docs/Web/SVG/Element/use
@@ -1983,18 +2034,18 @@ export namespace JSX {
1983
2034
  PresentationSVGAttributes,
1984
2035
  ExternalResourceSVGAttributes,
1985
2036
  TransformableSVGAttributes {
1986
- x?: number | string;
1987
- y?: number | string;
1988
- width?: number | string;
1989
- height?: number | string;
1990
- href?: string;
2037
+ x?: number | string | undefined;
2038
+ y?: number | string | undefined;
2039
+ width?: number | string | undefined;
2040
+ height?: number | string | undefined;
2041
+ href?: string | undefined;
1991
2042
  }
1992
2043
  interface ViewSVGAttributes<T>
1993
2044
  extends CoreSVGAttributes<T>,
1994
2045
  ExternalResourceSVGAttributes,
1995
2046
  FitToViewBoxSVGAttributes,
1996
2047
  ZoomAndPanSVGAttributes {
1997
- viewTarget?: string;
2048
+ viewTarget?: string | undefined;
1998
2049
  }
1999
2050
  /**
2000
2051
  * @type {HTMLElementTagNameMap}