UNPKG

59 kBTypeScriptView Raw
1declare type CustomMethodDecorator<T> = (target: Object, propertyKey: string | symbol, descriptor: TypedPropertyDescriptor<T>) => TypedPropertyDescriptor<T> | void;
2export interface ComponentDecorator {
3 (opts?: ComponentOptions): ClassDecorator;
4}
5export interface ComponentOptions {
6 /**
7 * Tag name of the web component. Ideally, the tag name must be globally unique,
8 * so it's recommended to choose an unique prefix for all your components within the same collection.
9 *
10 * In addition, tag name must contain a '-'
11 */
12 tag: string;
13 /**
14 * If `true`, the component will use scoped stylesheets. Similar to shadow-dom,
15 * but without native isolation. Defaults to `false`.
16 */
17 scoped?: boolean;
18 /**
19 * If `true`, the component will use native shadow-dom encapsulation, it will fallback to
20 * `scoped` if the browser does not support shadow-dom natively. Defaults to `false`.
21 * Additionally, `shadow` can also be given options when attaching the shadow root.
22 */
23 shadow?: boolean | ShadowRootOptions;
24 /**
25 * Relative URL to some external stylesheet file. It should be a `.css` file unless some
26 * external plugin is installed like `@stencil/sass`.
27 */
28 styleUrl?: string;
29 /**
30 * Similar as `styleUrl` but allows to specify different stylesheets for different modes.
31 */
32 styleUrls?: string[] | ModeStyles;
33 /**
34 * String that contains inlined CSS instead of using an external stylesheet.
35 * The performance characteristics of this feature are the same as using an external stylesheet.
36 *
37 * Notice, you can't use sass, or less, only `css` is allowed using `styles`, use `styleUrl` is you need more advanced features.
38 */
39 styles?: string | {
40 [modeName: string]: any;
41 };
42 /**
43 * Array of relative links to folders of assets required by the component.
44 */
45 assetsDirs?: string[];
46}
47export interface ShadowRootOptions {
48 /**
49 * When set to `true`, specifies behavior that mitigates custom element issues
50 * around focusability. When a non-focusable part of the shadow DOM is clicked, the first
51 * focusable part is given focus, and the shadow host is given any available `:focus` styling.
52 */
53 delegatesFocus?: boolean;
54}
55export interface ModeStyles {
56 [modeName: string]: string | string[];
57}
58export interface PropDecorator {
59 (opts?: PropOptions): PropertyDecorator;
60}
61export interface PropOptions {
62 /**
63 * The name of the associated DOM attribute.
64 * Stencil uses different heuristics to determine the default name of the attribute,
65 * but using this property, you can override the default behaviour.
66 */
67 attribute?: string | null;
68 /**
69 * A Prop is _by default_ immutable from inside the component logic.
70 * Once a value is set by a user, the component cannot update it internally.
71 * However, it's possible to explicitly allow a Prop to be mutated from inside the component,
72 * by setting this `mutable` option to `true`.
73 */
74 mutable?: boolean;
75 /**
76 * In some cases it may be useful to keep a Prop in sync with an attribute.
77 * In this case you can set the `reflect` option to `true`, since it defaults to `false`:
78 */
79 reflect?: boolean;
80}
81export interface MethodDecorator {
82 (opts?: MethodOptions): CustomMethodDecorator<any>;
83}
84export interface MethodOptions {
85}
86export interface ElementDecorator {
87 (): PropertyDecorator;
88}
89export interface EventDecorator {
90 (opts?: EventOptions): PropertyDecorator;
91}
92export interface EventOptions {
93 /**
94 * A string custom event name to override the default.
95 */
96 eventName?: string;
97 /**
98 * A Boolean indicating whether the event bubbles up through the DOM or not.
99 */
100 bubbles?: boolean;
101 /**
102 * A Boolean indicating whether the event is cancelable.
103 */
104 cancelable?: boolean;
105 /**
106 * A Boolean value indicating whether or not the event can bubble across the boundary between the shadow DOM and the regular DOM.
107 */
108 composed?: boolean;
109}
110export interface ListenDecorator {
111 (eventName: string, opts?: ListenOptions): CustomMethodDecorator<any>;
112}
113export interface ListenOptions {
114 /**
115 * Handlers can also be registered for an event other than the host itself.
116 * The `target` option can be used to change where the event listener is attached,
117 * this is useful for listening to application-wide events.
118 */
119 target?: ListenTargetOptions;
120 /**
121 * Event listener attached with `@Listen` does not "capture" by default,
122 * When a event listener is set to "capture", means the event will be dispatched
123 * during the "capture phase". Please see
124 * https://www.quirksmode.org/js/events_order.html for further information.
125 */
126 capture?: boolean;
127 /**
128 * By default, Stencil uses several heuristics to determine if
129 * it must attach a `passive` event listener or not.
130 *
131 * Using the `passive` option can be used to change the default behaviour.
132 * Please see https://developers.google.com/web/updates/2016/06/passive-event-listeners for further information.
133 */
134 passive?: boolean;
135}
136export declare type ListenTargetOptions = 'body' | 'document' | 'window';
137export interface StateDecorator {
138 (): PropertyDecorator;
139}
140export interface WatchDecorator {
141 (propName: string): CustomMethodDecorator<any>;
142}
143export interface UserBuildConditionals {
144 isDev: boolean;
145 isBrowser: boolean;
146 isServer: boolean;
147 isTesting: boolean;
148}
149/**
150 * The `Build` object provides many build conditionals that can be used to
151 * include or exclude code depending on the build.
152 */
153export declare const Build: UserBuildConditionals;
154/**
155 * The `Env` object provides access to the "env" object declared in the project's `stencil.config.ts`.
156 */
157export declare const Env: {
158 [prop: string]: string | undefined;
159};
160/**
161 * The `@Component()` decorator is used to provide metadata about the component class.
162 * https://stenciljs.com/docs/component
163 */
164export declare const Component: ComponentDecorator;
165/**
166 * The `@Element()` decorator is a reference to the actual host element
167 * once it has rendered.
168 */
169export declare const Element: ElementDecorator;
170/**
171 * Components can emit data and events using the Event Emitter decorator.
172 * To dispatch Custom DOM events for other components to handle, use the
173 * `@Event()` decorator. The Event decorator also makes it easier for Stencil
174 * to automatically build types and documentation for the event data.
175 * https://stenciljs.com/docs/events
176 */
177export declare const Event: EventDecorator;
178/**
179 * The `Listen()` decorator is for listening DOM events, including the ones
180 * dispatched from `@Events()`.
181 * https://stenciljs.com/docs/events#listen-decorator
182 */
183export declare const Listen: ListenDecorator;
184/**
185 * The `@Method()` decorator is used to expose methods on the public API.
186 * Class methods decorated with the @Method() decorator can be called directly
187 * from the element, meaning they are intended to be callable from the outside.
188 * https://stenciljs.com/docs/methods
189 */
190export declare const Method: MethodDecorator;
191/**
192 * Props are custom attribute/properties exposed publicly on the element
193 * that developers can provide values for. Children components do not need to
194 * know about or reference parent components, so Props can be used to pass
195 * data down from the parent to the child. Components need to explicitly
196 * declare the Props they expect to receive using the `@Prop()` decorator.
197 * Any value changes to a Prop will cause a re-render.
198 * https://stenciljs.com/docs/properties
199 */
200export declare const Prop: PropDecorator;
201/**
202 * The `@State()` decorator can be used to manage internal data for a component.
203 * This means that a user cannot modify this data from outside the component,
204 * but the component can modify it however it sees fit. Any value changes to a
205 * `@State()` property will cause the components render function to be called again.
206 * https://stenciljs.com/docs/state
207 */
208export declare const State: StateDecorator;
209/**
210 * When a property's value has changed, a method decorated with `@Watch()` will be
211 * called and passed the new value of the prop along with the old value. Watch is
212 * useful for validating props or handling side effects. Watch decorator does not
213 * fire when a component initially loads.
214 * https://stenciljs.com/docs/reactive-data#watch-decorator
215 */
216export declare const Watch: WatchDecorator;
217export declare type ResolutionHandler = (elm: HTMLElement) => string | undefined | null;
218export declare type ErrorHandler = (err: any, element?: HTMLElement) => void;
219/**
220 * `setMode()` is used for libraries which provide multiple "modes" for styles.
221 */
222export declare const setMode: (handler: ResolutionHandler) => void;
223/**
224 * getMode
225 */
226export declare function getMode<T = string | undefined>(ref: any): T;
227export declare function setPlatformHelpers(helpers: {
228 jmp?: (c: any) => any;
229 raf?: (c: any) => number;
230 ael?: (el: any, eventName: string, listener: any, options: any) => void;
231 rel?: (el: any, eventName: string, listener: any, options: any) => void;
232 ce?: (eventName: string, opts?: any) => any;
233}): void;
234/**
235 * Get the base path to where the assets can be found. Use `setAssetPath(path)`
236 * if the path needs to be customized.
237 */
238export declare function getAssetPath(path: string): string;
239/**
240 * Used to manually set the base path where assets can be found. For lazy-loaded
241 * builds the asset path is automatically set and assets copied to the correct
242 * build directory. However, for custom elements builds, the `setAssetPath(path)` could
243 * be used to customize the asset path depending on how the script file is consumed.
244 * If the script is used as "module", it's recommended to use "import.meta.url", such
245 * as `setAssetPath(import.meta.url)`. Other options include
246 * `setAssetPath(document.currentScript.src)`, or using a bundler's replace plugin to
247 * dynamically set the path at build time, such as `setAssetPath(process.env.ASSET_PATH)`.
248 * But do note that this configuration depends on how your script is bundled, or lack of
249 * bunding, and where your assets can be loaded from. Additionally custom bundling
250 * will have to ensure the static assets are copied to its build directory.
251 */
252export declare function setAssetPath(path: string): string;
253/**
254 * getElement
255 */
256export declare function getElement(ref: any): HTMLStencilElement;
257/**
258 * Schedules a new render of the given instance or element even if no state changed.
259 *
260 * Notice `forceUpdate()` is not syncronous and might perform the DOM render in the next frame.
261 */
262export declare function forceUpdate(ref: any): void;
263/**
264 * getRenderingRef
265 */
266export declare function getRenderingRef(): any;
267export interface HTMLStencilElement extends HTMLElement {
268 componentOnReady(): Promise<this>;
269}
270/**
271 * Schedules a DOM-write task. The provided callback will be executed
272 * in the best moment to perform DOM mutation without causing layout thrashing.
273 *
274 * For further information: https://developers.google.com/web/fundamentals/performance/rendering/avoid-large-complex-layouts-and-layout-thrashing
275 */
276export declare function writeTask(task: RafCallback): void;
277/**
278 * Schedules a DOM-read task. The provided callback will be executed
279 * in the best moment to perform DOM reads without causing layout thrashing.
280 *
281 * For further information: https://developers.google.com/web/fundamentals/performance/rendering/avoid-large-complex-layouts-and-layout-thrashing
282 */
283export declare function readTask(task: RafCallback): void;
284/**
285 * `setErrorHandler()` can be used to inject a custom global error handler.
286 * Unhandled exception raised while rendering, during event handling, or lifecycles will trigger the custom event handler.
287 */
288export declare const setErrorHandler: (handler: ErrorHandler) => void;
289/**
290 * This file gets copied to all distributions of stencil component collections.
291 * - no imports
292 */
293export interface ComponentWillLoad {
294 /**
295 * The component is about to load and it has not
296 * rendered yet.
297 *
298 * This is the best place to make any data updates
299 * before the first render.
300 *
301 * componentWillLoad will only be called once.
302 */
303 componentWillLoad(): Promise<void> | void;
304}
305export interface ComponentDidLoad {
306 /**
307 * The component has loaded and has already rendered.
308 *
309 * Updating data in this method will cause the
310 * component to re-render.
311 *
312 * componentDidLoad will only be called once.
313 */
314 componentDidLoad(): void;
315}
316export interface ComponentWillUpdate {
317 /**
318 * The component is about to update and re-render.
319 *
320 * Called multiple times throughout the life of
321 * the component as it updates.
322 *
323 * componentWillUpdate is not called on the first render.
324 */
325 componentWillUpdate(): Promise<void> | void;
326}
327export interface ComponentDidUpdate {
328 /**
329 * The component has just re-rendered.
330 *
331 * Called multiple times throughout the life of
332 * the component as it updates.
333 *
334 * componentWillUpdate is not called on the
335 * first render.
336 */
337 componentDidUpdate(): void;
338}
339export interface ComponentInterface {
340 connectedCallback?(): void;
341 disconnectedCallback?(): void;
342 componentWillRender?(): Promise<void> | void;
343 componentDidRender?(): void;
344 /**
345 * The component is about to load and it has not
346 * rendered yet.
347 *
348 * This is the best place to make any data updates
349 * before the first render.
350 *
351 * componentWillLoad will only be called once.
352 */
353 componentWillLoad?(): Promise<void> | void;
354 /**
355 * The component has loaded and has already rendered.
356 *
357 * Updating data in this method will cause the
358 * component to re-render.
359 *
360 * componentDidLoad will only be called once.
361 */
362 componentDidLoad?(): void;
363 /**
364 * A `@Prop` or `@State` property changed and a rerender is about to be requested.
365 *
366 * Called multiple times throughout the life of
367 * the component as its properties change.
368 *
369 * componentShouldUpdate is not called on the first render.
370 */
371 componentShouldUpdate?(newVal: any, oldVal: any, propName: string): boolean | void;
372 /**
373 * The component is about to update and re-render.
374 *
375 * Called multiple times throughout the life of
376 * the component as it updates.
377 *
378 * componentWillUpdate is not called on the first render.
379 */
380 componentWillUpdate?(): Promise<void> | void;
381 /**
382 * The component has just re-rendered.
383 *
384 * Called multiple times throughout the life of
385 * the component as it updates.
386 *
387 * componentWillUpdate is not called on the
388 * first render.
389 */
390 componentDidUpdate?(): void;
391 render?(): any;
392 [memberName: string]: any;
393}
394export interface EventEmitter<T = any> {
395 emit: (data?: T) => CustomEvent<T>;
396}
397export interface RafCallback {
398 (timeStamp: number): void;
399}
400export interface QueueApi {
401 tick: (cb: RafCallback) => void;
402 read: (cb: RafCallback) => void;
403 write: (cb: RafCallback) => void;
404 clear?: () => void;
405 flush?: (cb?: () => void) => void;
406}
407/**
408 * Host
409 */
410interface HostAttributes {
411 class?: string | {
412 [className: string]: boolean;
413 };
414 style?: {
415 [key: string]: string | undefined;
416 };
417 ref?: (el: HTMLElement | null) => void;
418 [prop: string]: any;
419}
420export interface FunctionalUtilities {
421 forEach: (children: VNode[], cb: (vnode: ChildNode, index: number, array: ChildNode[]) => void) => void;
422 map: (children: VNode[], cb: (vnode: ChildNode, index: number, array: ChildNode[]) => ChildNode) => VNode[];
423}
424export interface FunctionalComponent<T = {}> {
425 (props: T, children: VNode[], utils: FunctionalUtilities): VNode | VNode[];
426}
427export interface ChildNode {
428 vtag?: string | number | Function;
429 vkey?: string | number;
430 vtext?: string;
431 vchildren?: VNode[];
432 vattrs?: any;
433 vname?: string;
434}
435/**
436 * Host is a functional component can be used at the root of the render function
437 * to set attributes and event listeners to the host element itself.
438 *
439 * For further information: https://stenciljs.com/docs/host-element
440 */
441export declare const Host: FunctionalComponent<HostAttributes>;
442/**
443 * Fragment
444 */
445export declare const Fragment: FunctionalComponent<{}>;
446/**
447 * The "h" namespace is used to import JSX types for elements and attributes.
448 * It is imported in order to avoid conflicting global JSX issues.
449 */
450export declare namespace h {
451 function h(sel: any): VNode;
452 function h(sel: Node, data: VNodeData | null): VNode;
453 function h(sel: any, data: VNodeData | null): VNode;
454 function h(sel: any, text: string): VNode;
455 function h(sel: any, children: Array<VNode | undefined | null>): VNode;
456 function h(sel: any, data: VNodeData | null, text: string): VNode;
457 function h(sel: any, data: VNodeData | null, children: Array<VNode | undefined | null>): VNode;
458 function h(sel: any, data: VNodeData | null, children: VNode): VNode;
459 namespace JSX {
460 interface IntrinsicElements extends LocalJSX.IntrinsicElements, JSXBase.IntrinsicElements {
461 [tagName: string]: any;
462 }
463 }
464}
465export declare function h(sel: any): VNode;
466export declare function h(sel: Node, data: VNodeData | null): VNode;
467export declare function h(sel: any, data: VNodeData | null): VNode;
468export declare function h(sel: any, text: string): VNode;
469export declare function h(sel: any, children: Array<VNode | undefined | null>): VNode;
470export declare function h(sel: any, data: VNodeData | null, text: string): VNode;
471export declare function h(sel: any, data: VNodeData | null, children: Array<VNode | undefined | null>): VNode;
472export declare function h(sel: any, data: VNodeData | null, children: VNode): VNode;
473export interface VNode {
474 $flags$: number;
475 $tag$: string | number | Function;
476 $elm$: any;
477 $text$: string;
478 $children$: VNode[];
479 $attrs$?: any;
480 $name$?: string;
481 $key$?: string | number;
482}
483export interface VNodeData {
484 class?: {
485 [className: string]: boolean;
486 };
487 style?: any;
488 [attrName: string]: any;
489}
490declare namespace LocalJSX {
491 interface Element {
492 }
493 interface IntrinsicElements {
494 }
495}
496export { LocalJSX as JSX };
497export declare namespace JSXBase {
498 interface IntrinsicElements {
499 slot: JSXBase.SlotAttributes;
500 a: JSXBase.AnchorHTMLAttributes<HTMLAnchorElement>;
501 abbr: JSXBase.HTMLAttributes;
502 address: JSXBase.HTMLAttributes;
503 area: JSXBase.AreaHTMLAttributes<HTMLAreaElement>;
504 article: JSXBase.HTMLAttributes;
505 aside: JSXBase.HTMLAttributes;
506 audio: JSXBase.AudioHTMLAttributes<HTMLAudioElement>;
507 b: JSXBase.HTMLAttributes;
508 base: JSXBase.BaseHTMLAttributes<HTMLBaseElement>;
509 bdi: JSXBase.HTMLAttributes;
510 bdo: JSXBase.HTMLAttributes;
511 big: JSXBase.HTMLAttributes;
512 blockquote: JSXBase.BlockquoteHTMLAttributes<HTMLQuoteElement>;
513 body: JSXBase.HTMLAttributes<HTMLBodyElement>;
514 br: JSXBase.HTMLAttributes<HTMLBRElement>;
515 button: JSXBase.ButtonHTMLAttributes<HTMLButtonElement>;
516 canvas: JSXBase.CanvasHTMLAttributes<HTMLCanvasElement>;
517 caption: JSXBase.HTMLAttributes<HTMLTableCaptionElement>;
518 cite: JSXBase.HTMLAttributes;
519 code: JSXBase.HTMLAttributes;
520 col: JSXBase.ColHTMLAttributes<HTMLTableColElement>;
521 colgroup: JSXBase.ColgroupHTMLAttributes<HTMLTableColElement>;
522 data: JSXBase.HTMLAttributes<HTMLDataElement>;
523 datalist: JSXBase.HTMLAttributes<HTMLDataListElement>;
524 dd: JSXBase.HTMLAttributes;
525 del: JSXBase.DelHTMLAttributes<HTMLModElement>;
526 details: JSXBase.DetailsHTMLAttributes<HTMLElement>;
527 dfn: JSXBase.HTMLAttributes;
528 dialog: JSXBase.DialogHTMLAttributes<HTMLDialogElement>;
529 div: JSXBase.HTMLAttributes<HTMLDivElement>;
530 dl: JSXBase.HTMLAttributes<HTMLDListElement>;
531 dt: JSXBase.HTMLAttributes;
532 em: JSXBase.HTMLAttributes;
533 embed: JSXBase.EmbedHTMLAttributes<HTMLEmbedElement>;
534 fieldset: JSXBase.FieldsetHTMLAttributes<HTMLFieldSetElement>;
535 figcaption: JSXBase.HTMLAttributes;
536 figure: JSXBase.HTMLAttributes;
537 footer: JSXBase.HTMLAttributes;
538 form: JSXBase.FormHTMLAttributes<HTMLFormElement>;
539 h1: JSXBase.HTMLAttributes<HTMLHeadingElement>;
540 h2: JSXBase.HTMLAttributes<HTMLHeadingElement>;
541 h3: JSXBase.HTMLAttributes<HTMLHeadingElement>;
542 h4: JSXBase.HTMLAttributes<HTMLHeadingElement>;
543 h5: JSXBase.HTMLAttributes<HTMLHeadingElement>;
544 h6: JSXBase.HTMLAttributes<HTMLHeadingElement>;
545 head: JSXBase.HTMLAttributes<HTMLHeadElement>;
546 header: JSXBase.HTMLAttributes;
547 hgroup: JSXBase.HTMLAttributes;
548 hr: JSXBase.HTMLAttributes<HTMLHRElement>;
549 html: JSXBase.HTMLAttributes<HTMLHtmlElement>;
550 i: JSXBase.HTMLAttributes;
551 iframe: JSXBase.IframeHTMLAttributes<HTMLIFrameElement>;
552 img: JSXBase.ImgHTMLAttributes<HTMLImageElement>;
553 input: JSXBase.InputHTMLAttributes<HTMLInputElement>;
554 ins: JSXBase.InsHTMLAttributes<HTMLModElement>;
555 kbd: JSXBase.HTMLAttributes;
556 keygen: JSXBase.KeygenHTMLAttributes<HTMLElement>;
557 label: JSXBase.LabelHTMLAttributes<HTMLLabelElement>;
558 legend: JSXBase.HTMLAttributes<HTMLLegendElement>;
559 li: JSXBase.LiHTMLAttributes<HTMLLIElement>;
560 link: JSXBase.LinkHTMLAttributes<HTMLLinkElement>;
561 main: JSXBase.HTMLAttributes;
562 map: JSXBase.MapHTMLAttributes<HTMLMapElement>;
563 mark: JSXBase.HTMLAttributes;
564 menu: JSXBase.MenuHTMLAttributes<HTMLMenuElement>;
565 menuitem: JSXBase.HTMLAttributes;
566 meta: JSXBase.MetaHTMLAttributes<HTMLMetaElement>;
567 meter: JSXBase.MeterHTMLAttributes<HTMLMeterElement>;
568 nav: JSXBase.HTMLAttributes;
569 noscript: JSXBase.HTMLAttributes;
570 object: JSXBase.ObjectHTMLAttributes<HTMLObjectElement>;
571 ol: JSXBase.OlHTMLAttributes<HTMLOListElement>;
572 optgroup: JSXBase.OptgroupHTMLAttributes<HTMLOptGroupElement>;
573 option: JSXBase.OptionHTMLAttributes<HTMLOptionElement>;
574 output: JSXBase.OutputHTMLAttributes<HTMLOutputElement>;
575 p: JSXBase.HTMLAttributes<HTMLParagraphElement>;
576 param: JSXBase.ParamHTMLAttributes<HTMLParamElement>;
577 picture: JSXBase.HTMLAttributes<HTMLPictureElement>;
578 pre: JSXBase.HTMLAttributes<HTMLPreElement>;
579 progress: JSXBase.ProgressHTMLAttributes<HTMLProgressElement>;
580 q: JSXBase.QuoteHTMLAttributes<HTMLQuoteElement>;
581 rp: JSXBase.HTMLAttributes;
582 rt: JSXBase.HTMLAttributes;
583 ruby: JSXBase.HTMLAttributes;
584 s: JSXBase.HTMLAttributes;
585 samp: JSXBase.HTMLAttributes;
586 script: JSXBase.ScriptHTMLAttributes<HTMLScriptElement>;
587 section: JSXBase.HTMLAttributes;
588 select: JSXBase.SelectHTMLAttributes<HTMLSelectElement>;
589 small: JSXBase.HTMLAttributes;
590 source: JSXBase.SourceHTMLAttributes<HTMLSourceElement>;
591 span: JSXBase.HTMLAttributes<HTMLSpanElement>;
592 strong: JSXBase.HTMLAttributes;
593 style: JSXBase.StyleHTMLAttributes<HTMLStyleElement>;
594 sub: JSXBase.HTMLAttributes;
595 summary: JSXBase.HTMLAttributes;
596 sup: JSXBase.HTMLAttributes;
597 table: JSXBase.TableHTMLAttributes<HTMLTableElement>;
598 tbody: JSXBase.HTMLAttributes<HTMLTableSectionElement>;
599 td: JSXBase.TdHTMLAttributes<HTMLTableDataCellElement>;
600 textarea: JSXBase.TextareaHTMLAttributes<HTMLTextAreaElement>;
601 tfoot: JSXBase.HTMLAttributes<HTMLTableSectionElement>;
602 th: JSXBase.ThHTMLAttributes<HTMLTableHeaderCellElement>;
603 thead: JSXBase.HTMLAttributes<HTMLTableSectionElement>;
604 time: JSXBase.TimeHTMLAttributes<HTMLTimeElement>;
605 title: JSXBase.HTMLAttributes<HTMLTitleElement>;
606 tr: JSXBase.HTMLAttributes<HTMLTableRowElement>;
607 track: JSXBase.TrackHTMLAttributes<HTMLTrackElement>;
608 u: JSXBase.HTMLAttributes;
609 ul: JSXBase.HTMLAttributes<HTMLUListElement>;
610 var: JSXBase.HTMLAttributes;
611 video: JSXBase.VideoHTMLAttributes<HTMLVideoElement>;
612 wbr: JSXBase.HTMLAttributes;
613 animate: JSXBase.SVGAttributes;
614 circle: JSXBase.SVGAttributes;
615 clipPath: JSXBase.SVGAttributes;
616 defs: JSXBase.SVGAttributes;
617 desc: JSXBase.SVGAttributes;
618 ellipse: JSXBase.SVGAttributes;
619 feBlend: JSXBase.SVGAttributes;
620 feColorMatrix: JSXBase.SVGAttributes;
621 feComponentTransfer: JSXBase.SVGAttributes;
622 feComposite: JSXBase.SVGAttributes;
623 feConvolveMatrix: JSXBase.SVGAttributes;
624 feDiffuseLighting: JSXBase.SVGAttributes;
625 feDisplacementMap: JSXBase.SVGAttributes;
626 feDistantLight: JSXBase.SVGAttributes;
627 feDropShadow: JSXBase.SVGAttributes;
628 feFlood: JSXBase.SVGAttributes;
629 feFuncA: JSXBase.SVGAttributes;
630 feFuncB: JSXBase.SVGAttributes;
631 feFuncG: JSXBase.SVGAttributes;
632 feFuncR: JSXBase.SVGAttributes;
633 feGaussianBlur: JSXBase.SVGAttributes;
634 feImage: JSXBase.SVGAttributes;
635 feMerge: JSXBase.SVGAttributes;
636 feMergeNode: JSXBase.SVGAttributes;
637 feMorphology: JSXBase.SVGAttributes;
638 feOffset: JSXBase.SVGAttributes;
639 fePointLight: JSXBase.SVGAttributes;
640 feSpecularLighting: JSXBase.SVGAttributes;
641 feSpotLight: JSXBase.SVGAttributes;
642 feTile: JSXBase.SVGAttributes;
643 feTurbulence: JSXBase.SVGAttributes;
644 filter: JSXBase.SVGAttributes;
645 foreignObject: JSXBase.SVGAttributes;
646 g: JSXBase.SVGAttributes;
647 image: JSXBase.SVGAttributes;
648 line: JSXBase.SVGAttributes;
649 linearGradient: JSXBase.SVGAttributes;
650 marker: JSXBase.SVGAttributes;
651 mask: JSXBase.SVGAttributes;
652 metadata: JSXBase.SVGAttributes;
653 path: JSXBase.SVGAttributes;
654 pattern: JSXBase.SVGAttributes;
655 polygon: JSXBase.SVGAttributes;
656 polyline: JSXBase.SVGAttributes;
657 radialGradient: JSXBase.SVGAttributes;
658 rect: JSXBase.SVGAttributes;
659 stop: JSXBase.SVGAttributes;
660 svg: JSXBase.SVGAttributes;
661 switch: JSXBase.SVGAttributes;
662 symbol: JSXBase.SVGAttributes;
663 text: JSXBase.SVGAttributes;
664 textPath: JSXBase.SVGAttributes;
665 tspan: JSXBase.SVGAttributes;
666 use: JSXBase.SVGAttributes;
667 view: JSXBase.SVGAttributes;
668 }
669 interface SlotAttributes {
670 name?: string;
671 slot?: string;
672 onSlotchange?: (event: Event) => void;
673 }
674 interface AnchorHTMLAttributes<T> extends HTMLAttributes<T> {
675 download?: any;
676 href?: string;
677 hrefLang?: string;
678 hreflang?: string;
679 media?: string;
680 rel?: string;
681 target?: string;
682 referrerPolicy?: ReferrerPolicy;
683 }
684 interface AudioHTMLAttributes<T> extends MediaHTMLAttributes<T> {
685 }
686 interface AreaHTMLAttributes<T> extends HTMLAttributes<T> {
687 alt?: string;
688 coords?: string;
689 download?: any;
690 href?: string;
691 hrefLang?: string;
692 hreflang?: string;
693 media?: string;
694 rel?: string;
695 shape?: string;
696 target?: string;
697 }
698 interface BaseHTMLAttributes<T> extends HTMLAttributes<T> {
699 href?: string;
700 target?: string;
701 }
702 interface BlockquoteHTMLAttributes<T> extends HTMLAttributes<T> {
703 cite?: string;
704 }
705 interface ButtonHTMLAttributes<T> extends HTMLAttributes<T> {
706 autoFocus?: boolean;
707 disabled?: boolean;
708 form?: string;
709 formAction?: string;
710 formaction?: string;
711 formEncType?: string;
712 formenctype?: string;
713 formMethod?: string;
714 formmethod?: string;
715 formNoValidate?: boolean;
716 formnovalidate?: boolean;
717 formTarget?: string;
718 formtarget?: string;
719 name?: string;
720 type?: string;
721 value?: string | string[] | number;
722 }
723 interface CanvasHTMLAttributes<T> extends HTMLAttributes<T> {
724 height?: number | string;
725 width?: number | string;
726 }
727 interface ColHTMLAttributes<T> extends HTMLAttributes<T> {
728 span?: number;
729 }
730 interface ColgroupHTMLAttributes<T> extends HTMLAttributes<T> {
731 span?: number;
732 }
733 interface DetailsHTMLAttributes<T> extends HTMLAttributes<T> {
734 open?: boolean;
735 onToggle?: (event: Event) => void;
736 }
737 interface DelHTMLAttributes<T> extends HTMLAttributes<T> {
738 cite?: string;
739 dateTime?: string;
740 datetime?: string;
741 }
742 interface DialogHTMLAttributes<T> extends HTMLAttributes<T> {
743 onClose?: (event: Event) => void;
744 open?: boolean;
745 returnValue?: string;
746 }
747 interface EmbedHTMLAttributes<T> extends HTMLAttributes<T> {
748 height?: number | string;
749 src?: string;
750 type?: string;
751 width?: number | string;
752 }
753 interface FieldsetHTMLAttributes<T> extends HTMLAttributes<T> {
754 disabled?: boolean;
755 form?: string;
756 name?: string;
757 }
758 interface FormHTMLAttributes<T> extends HTMLAttributes<T> {
759 acceptCharset?: string;
760 acceptcharset?: string;
761 action?: string;
762 autoComplete?: string;
763 autocomplete?: string;
764 encType?: string;
765 enctype?: string;
766 method?: string;
767 name?: string;
768 noValidate?: boolean;
769 novalidate?: boolean | string;
770 target?: string;
771 }
772 interface HtmlHTMLAttributes<T> extends HTMLAttributes<T> {
773 manifest?: string;
774 }
775 interface IframeHTMLAttributes<T> extends HTMLAttributes<T> {
776 allow?: string;
777 allowFullScreen?: boolean;
778 allowfullScreen?: string | boolean;
779 allowTransparency?: boolean;
780 allowtransparency?: string | boolean;
781 frameBorder?: number | string;
782 frameborder?: number | string;
783 importance?: 'low' | 'auto' | 'high';
784 height?: number | string;
785 loading?: 'lazy' | 'auto' | 'eager';
786 marginHeight?: number;
787 marginheight?: string | number;
788 marginWidth?: number;
789 marginwidth?: string | number;
790 name?: string;
791 referrerPolicy?: ReferrerPolicy;
792 sandbox?: string;
793 scrolling?: string;
794 seamless?: boolean;
795 src?: string;
796 srcDoc?: string;
797 srcdoc?: string;
798 width?: number | string;
799 }
800 interface ImgHTMLAttributes<T> extends HTMLAttributes<T> {
801 alt?: string;
802 decoding?: 'async' | 'auto' | 'sync';
803 importance?: 'low' | 'auto' | 'high';
804 height?: number | string;
805 loading?: 'lazy' | 'auto' | 'eager';
806 sizes?: string;
807 src?: string;
808 srcSet?: string;
809 srcset?: string;
810 useMap?: string;
811 usemap?: string;
812 width?: number | string;
813 }
814 interface InsHTMLAttributes<T> extends HTMLAttributes<T> {
815 cite?: string;
816 dateTime?: string;
817 datetime?: string;
818 }
819 interface InputHTMLAttributes<T> extends HTMLAttributes<T> {
820 accept?: string;
821 allowdirs?: boolean;
822 alt?: string;
823 autoCapitalize?: any;
824 autocapitalize?: any;
825 autoComplete?: string;
826 autocomplete?: string;
827 autoFocus?: boolean;
828 autofocus?: boolean | string;
829 capture?: string;
830 checked?: boolean;
831 crossOrigin?: string;
832 crossorigin?: string;
833 defaultChecked?: boolean;
834 defaultValue?: string;
835 dirName?: string;
836 disabled?: boolean;
837 files?: any;
838 form?: string;
839 formAction?: string;
840 formaction?: string;
841 formEncType?: string;
842 formenctype?: string;
843 formMethod?: string;
844 formmethod?: string;
845 formNoValidate?: boolean;
846 formnovalidate?: boolean;
847 formTarget?: string;
848 formtarget?: string;
849 height?: number | string;
850 indeterminate?: boolean;
851 list?: string;
852 max?: number | string;
853 maxLength?: number;
854 maxlength?: number | string;
855 min?: number | string;
856 minLength?: number;
857 minlength?: number | string;
858 multiple?: boolean;
859 name?: string;
860 pattern?: string;
861 placeholder?: string;
862 readOnly?: boolean;
863 readonly?: boolean | string;
864 required?: boolean;
865 selectionStart?: number | string;
866 selectionEnd?: number | string;
867 selectionDirection?: string;
868 size?: number;
869 src?: string;
870 step?: number | string;
871 type?: string;
872 value?: string | string[] | number;
873 valueAsDate?: any;
874 valueAsNumber?: any;
875 webkitdirectory?: boolean;
876 webkitEntries?: any;
877 width?: number | string;
878 }
879 interface KeygenHTMLAttributes<T> extends HTMLAttributes<T> {
880 autoFocus?: boolean;
881 autofocus?: boolean | string;
882 challenge?: string;
883 disabled?: boolean;
884 form?: string;
885 keyType?: string;
886 keytype?: string;
887 keyParams?: string;
888 keyparams?: string;
889 name?: string;
890 }
891 interface LabelHTMLAttributes<T> extends HTMLAttributes<T> {
892 form?: string;
893 htmlFor?: string;
894 htmlfor?: string;
895 }
896 interface LiHTMLAttributes<T> extends HTMLAttributes<T> {
897 value?: string | string[] | number;
898 }
899 interface LinkHTMLAttributes<T> extends HTMLAttributes<T> {
900 as?: string;
901 href?: string;
902 hrefLang?: string;
903 hreflang?: string;
904 importance?: 'low' | 'auto' | 'high';
905 integrity?: string;
906 media?: string;
907 rel?: string;
908 sizes?: string;
909 type?: string;
910 }
911 interface MapHTMLAttributes<T> extends HTMLAttributes<T> {
912 name?: string;
913 }
914 interface MenuHTMLAttributes<T> extends HTMLAttributes<T> {
915 type?: string;
916 }
917 interface MediaHTMLAttributes<T> extends HTMLAttributes<T> {
918 autoPlay?: boolean;
919 autoplay?: boolean | string;
920 controls?: boolean;
921 crossOrigin?: string;
922 crossorigin?: string;
923 loop?: boolean;
924 mediaGroup?: string;
925 mediagroup?: string;
926 muted?: boolean;
927 preload?: string;
928 src?: string;
929 onAbort?: (event: Event) => void;
930 onCanPlay?: (event: Event) => void;
931 onCanPlayThrough?: (event: Event) => void;
932 onDurationChange?: (event: Event) => void;
933 onEmptied?: (event: Event) => void;
934 onEnded?: (event: Event) => void;
935 onError?: (event: Event) => void;
936 onInterruptBegin?: (event: Event) => void;
937 onInterruptEnd?: (event: Event) => void;
938 onLoadedData?: (event: Event) => void;
939 onLoadedMetaData?: (event: Event) => void;
940 onLoadStart?: (event: Event) => void;
941 onMozAudioAvailable?: (event: Event) => void;
942 onPause?: (event: Event) => void;
943 onPlay?: (event: Event) => void;
944 onPlaying?: (event: Event) => void;
945 onProgress?: (event: Event) => void;
946 onRateChange?: (event: Event) => void;
947 onSeeked?: (event: Event) => void;
948 onSeeking?: (event: Event) => void;
949 onStalled?: (event: Event) => void;
950 onSuspend?: (event: Event) => void;
951 onTimeUpdate?: (event: Event) => void;
952 onVolumeChange?: (event: Event) => void;
953 onWaiting?: (event: Event) => void;
954 }
955 interface MetaHTMLAttributes<T> extends HTMLAttributes<T> {
956 charSet?: string;
957 charset?: string;
958 content?: string;
959 httpEquiv?: string;
960 httpequiv?: string;
961 name?: string;
962 }
963 interface MeterHTMLAttributes<T> extends HTMLAttributes<T> {
964 form?: string;
965 high?: number;
966 low?: number;
967 max?: number | string;
968 min?: number | string;
969 optimum?: number;
970 value?: string | string[] | number;
971 }
972 interface QuoteHTMLAttributes<T> extends HTMLAttributes<T> {
973 cite?: string;
974 }
975 interface ObjectHTMLAttributes<T> extends HTMLAttributes<T> {
976 classID?: string;
977 classid?: string;
978 data?: string;
979 form?: string;
980 height?: number | string;
981 name?: string;
982 type?: string;
983 useMap?: string;
984 usemap?: string;
985 width?: number | string;
986 wmode?: string;
987 }
988 interface OlHTMLAttributes<T> extends HTMLAttributes<T> {
989 reversed?: boolean;
990 start?: number;
991 }
992 interface OptgroupHTMLAttributes<T> extends HTMLAttributes<T> {
993 disabled?: boolean;
994 label?: string;
995 }
996 interface OptionHTMLAttributes<T> extends HTMLAttributes<T> {
997 disabled?: boolean;
998 label?: string;
999 selected?: boolean;
1000 value?: string | string[] | number;
1001 }
1002 interface OutputHTMLAttributes<T> extends HTMLAttributes<T> {
1003 form?: string;
1004 htmlFor?: string;
1005 htmlfor?: string;
1006 name?: string;
1007 }
1008 interface ParamHTMLAttributes<T> extends HTMLAttributes<T> {
1009 name?: string;
1010 value?: string | string[] | number;
1011 }
1012 interface ProgressHTMLAttributes<T> extends HTMLAttributes<T> {
1013 max?: number | string;
1014 value?: string | string[] | number;
1015 }
1016 interface ScriptHTMLAttributes<T> extends HTMLAttributes<T> {
1017 async?: boolean;
1018 charSet?: string;
1019 charset?: string;
1020 crossOrigin?: string;
1021 crossorigin?: string;
1022 defer?: boolean;
1023 importance?: 'low' | 'auto' | 'high';
1024 integrity?: string;
1025 nonce?: string;
1026 src?: string;
1027 type?: string;
1028 }
1029 interface SelectHTMLAttributes<T> extends HTMLAttributes<T> {
1030 autoFocus?: boolean;
1031 disabled?: boolean;
1032 form?: string;
1033 multiple?: boolean;
1034 name?: string;
1035 required?: boolean;
1036 size?: number;
1037 autoComplete?: string;
1038 autocomplete?: string;
1039 }
1040 interface SourceHTMLAttributes<T> extends HTMLAttributes<T> {
1041 media?: string;
1042 sizes?: string;
1043 src?: string;
1044 srcSet?: string;
1045 type?: string;
1046 }
1047 interface StyleHTMLAttributes<T> extends HTMLAttributes<T> {
1048 media?: string;
1049 nonce?: string;
1050 scoped?: boolean;
1051 type?: string;
1052 }
1053 interface TableHTMLAttributes<T> extends HTMLAttributes<T> {
1054 cellPadding?: number | string;
1055 cellpadding?: number | string;
1056 cellSpacing?: number | string;
1057 cellspacing?: number | string;
1058 summary?: string;
1059 }
1060 interface TextareaHTMLAttributes<T> extends HTMLAttributes<T> {
1061 autoFocus?: boolean;
1062 autofocus?: boolean | string;
1063 cols?: number;
1064 disabled?: boolean;
1065 form?: string;
1066 maxLength?: number;
1067 maxlength?: number | string;
1068 minLength?: number;
1069 minlength?: number | string;
1070 name?: string;
1071 placeholder?: string;
1072 readOnly?: boolean;
1073 readonly?: boolean | string;
1074 required?: boolean;
1075 rows?: number;
1076 value?: string | string[] | number;
1077 wrap?: string;
1078 }
1079 interface TdHTMLAttributes<T> extends HTMLAttributes<T> {
1080 colSpan?: number;
1081 headers?: string;
1082 rowSpan?: number;
1083 }
1084 interface ThHTMLAttributes<T> extends HTMLAttributes<T> {
1085 abbr?: string;
1086 colSpan?: number;
1087 headers?: string;
1088 rowSpan?: number;
1089 rowspan?: number | string;
1090 scope?: string;
1091 }
1092 interface TimeHTMLAttributes<T> extends HTMLAttributes<T> {
1093 dateTime?: string;
1094 }
1095 interface TrackHTMLAttributes<T> extends HTMLAttributes<T> {
1096 default?: boolean;
1097 kind?: string;
1098 label?: string;
1099 src?: string;
1100 srcLang?: string;
1101 srclang?: string;
1102 }
1103 interface VideoHTMLAttributes<T> extends MediaHTMLAttributes<T> {
1104 height?: number | string;
1105 playsInline?: boolean;
1106 playsinline?: boolean | string;
1107 poster?: string;
1108 width?: number | string;
1109 }
1110 interface HTMLAttributes<T = HTMLElement> extends DOMAttributes<T> {
1111 innerHTML?: string;
1112 accessKey?: string;
1113 class?: string | {
1114 [className: string]: boolean;
1115 };
1116 contentEditable?: boolean | string;
1117 contenteditable?: boolean | string;
1118 contextMenu?: string;
1119 contextmenu?: string;
1120 dir?: string;
1121 draggable?: boolean;
1122 hidden?: boolean;
1123 id?: string;
1124 lang?: string;
1125 spellcheck?: 'true' | 'false' | any;
1126 style?: {
1127 [key: string]: string | undefined;
1128 };
1129 tabIndex?: number;
1130 tabindex?: number | string;
1131 title?: string;
1132 inputMode?: string;
1133 inputmode?: string;
1134 enterKeyHint?: string;
1135 enterkeyhint?: string;
1136 is?: string;
1137 radioGroup?: string;
1138 radiogroup?: string;
1139 role?: string;
1140 about?: string;
1141 datatype?: string;
1142 inlist?: any;
1143 prefix?: string;
1144 property?: string;
1145 resource?: string;
1146 typeof?: string;
1147 vocab?: string;
1148 autoCapitalize?: any;
1149 autocapitalize?: any;
1150 autoCorrect?: string;
1151 autocorrect?: string;
1152 autoSave?: string;
1153 autosave?: string;
1154 color?: string;
1155 itemProp?: string;
1156 itemprop?: string;
1157 itemScope?: boolean;
1158 itemscope?: boolean;
1159 itemType?: string;
1160 itemtype?: string;
1161 itemID?: string;
1162 itemid?: string;
1163 itemRef?: string;
1164 itemref?: string;
1165 results?: number;
1166 security?: string;
1167 unselectable?: boolean;
1168 }
1169 interface SVGAttributes<T = SVGElement> extends DOMAttributes<T> {
1170 class?: string | {
1171 [className: string]: boolean;
1172 };
1173 color?: string;
1174 height?: number | string;
1175 id?: string;
1176 lang?: string;
1177 max?: number | string;
1178 media?: string;
1179 method?: string;
1180 min?: number | string;
1181 name?: string;
1182 style?: {
1183 [key: string]: string | undefined;
1184 };
1185 target?: string;
1186 type?: string;
1187 width?: number | string;
1188 role?: string;
1189 tabindex?: number;
1190 'accent-height'?: number | string;
1191 accumulate?: 'none' | 'sum';
1192 additive?: 'replace' | 'sum';
1193 'alignment-baseline'?: 'auto' | 'baseline' | 'before-edge' | 'text-before-edge' | 'middle' | 'central' | 'after-edge' | 'text-after-edge' | 'ideographic' | 'alphabetic' | 'hanging' | 'mathematical' | 'inherit';
1194 allowReorder?: 'no' | 'yes';
1195 alphabetic?: number | string;
1196 amplitude?: number | string;
1197 'arabic-form'?: 'initial' | 'medial' | 'terminal' | 'isolated';
1198 ascent?: number | string;
1199 attributeName?: string;
1200 attributeType?: string;
1201 autoReverse?: number | string;
1202 azimuth?: number | string;
1203 baseFrequency?: number | string;
1204 'baseline-shift'?: number | string;
1205 baseProfile?: number | string;
1206 bbox?: number | string;
1207 begin?: number | string;
1208 bias?: number | string;
1209 by?: number | string;
1210 calcMode?: number | string;
1211 'cap-height'?: number | string;
1212 clip?: number | string;
1213 'clip-path'?: string;
1214 clipPathUnits?: number | string;
1215 'clip-rule'?: number | string;
1216 'color-interpolation'?: number | string;
1217 'color-interpolation-filters'?: 'auto' | 's-rGB' | 'linear-rGB' | 'inherit';
1218 'color-profile'?: number | string;
1219 'color-rendering'?: number | string;
1220 contentScriptType?: number | string;
1221 contentStyleType?: number | string;
1222 cursor?: number | string;
1223 cx?: number | string;
1224 cy?: number | string;
1225 d?: string;
1226 decelerate?: number | string;
1227 descent?: number | string;
1228 diffuseConstant?: number | string;
1229 direction?: number | string;
1230 display?: number | string;
1231 divisor?: number | string;
1232 'dominant-baseline'?: number | string;
1233 dur?: number | string;
1234 dx?: number | string;
1235 dy?: number | string;
1236 'edge-mode'?: number | string;
1237 elevation?: number | string;
1238 'enable-background'?: number | string;
1239 end?: number | string;
1240 exponent?: number | string;
1241 externalResourcesRequired?: number | string;
1242 fill?: string;
1243 'fill-opacity'?: number | string;
1244 'fill-rule'?: 'nonzero' | 'evenodd' | 'inherit';
1245 filter?: string;
1246 filterRes?: number | string;
1247 filterUnits?: number | string;
1248 'flood-color'?: number | string;
1249 'flood-opacity'?: number | string;
1250 focusable?: number | string;
1251 'font-family'?: string;
1252 'font-size'?: number | string;
1253 'font-size-adjust'?: number | string;
1254 'font-stretch'?: number | string;
1255 'font-style'?: number | string;
1256 'font-variant'?: number | string;
1257 'font-weight'?: number | string;
1258 format?: number | string;
1259 from?: number | string;
1260 fx?: number | string;
1261 fy?: number | string;
1262 g1?: number | string;
1263 g2?: number | string;
1264 'glyph-name'?: number | string;
1265 'glyph-orientation-horizontal'?: number | string;
1266 'glyph-orientation-vertical'?: number | string;
1267 glyphRef?: number | string;
1268 gradientTransform?: string;
1269 gradientUnits?: string;
1270 hanging?: number | string;
1271 'horiz-adv-x'?: number | string;
1272 'horiz-origin-x'?: number | string;
1273 href?: string;
1274 ideographic?: number | string;
1275 'image-rendering'?: number | string;
1276 in2?: number | string;
1277 in?: string;
1278 intercept?: number | string;
1279 k1?: number | string;
1280 k2?: number | string;
1281 k3?: number | string;
1282 k4?: number | string;
1283 k?: number | string;
1284 kernelMatrix?: number | string;
1285 kernelUnitLength?: number | string;
1286 kerning?: number | string;
1287 keyPoints?: number | string;
1288 keySplines?: number | string;
1289 keyTimes?: number | string;
1290 lengthAdjust?: number | string;
1291 'letter-spacing'?: number | string;
1292 'lighting-color'?: number | string;
1293 limitingConeAngle?: number | string;
1294 local?: number | string;
1295 'marker-end'?: string;
1296 markerHeight?: number | string;
1297 'marker-mid'?: string;
1298 'marker-start'?: string;
1299 markerUnits?: number | string;
1300 markerWidth?: number | string;
1301 mask?: string;
1302 maskContentUnits?: number | string;
1303 maskUnits?: number | string;
1304 mathematical?: number | string;
1305 mode?: number | string;
1306 numOctaves?: number | string;
1307 offset?: number | string;
1308 opacity?: number | string;
1309 operator?: number | string;
1310 order?: number | string;
1311 orient?: number | string;
1312 orientation?: number | string;
1313 origin?: number | string;
1314 overflow?: number | string;
1315 'overline-position'?: number | string;
1316 'overline-thickness'?: number | string;
1317 'paint-order'?: number | string;
1318 panose1?: number | string;
1319 pathLength?: number | string;
1320 patternContentUnits?: string;
1321 patternTransform?: number | string;
1322 patternUnits?: string;
1323 'pointer-events'?: number | string;
1324 points?: string;
1325 pointsAtX?: number | string;
1326 pointsAtY?: number | string;
1327 pointsAtZ?: number | string;
1328 preserveAlpha?: number | string;
1329 preserveAspectRatio?: string;
1330 primitiveUnits?: number | string;
1331 r?: number | string;
1332 radius?: number | string;
1333 refX?: number | string;
1334 refY?: number | string;
1335 'rendering-intent'?: number | string;
1336 repeatCount?: number | string;
1337 repeatDur?: number | string;
1338 requiredextensions?: number | string;
1339 requiredFeatures?: number | string;
1340 restart?: number | string;
1341 result?: string;
1342 rotate?: number | string;
1343 rx?: number | string;
1344 ry?: number | string;
1345 scale?: number | string;
1346 seed?: number | string;
1347 'shape-rendering'?: number | string;
1348 slope?: number | string;
1349 spacing?: number | string;
1350 specularConstant?: number | string;
1351 specularExponent?: number | string;
1352 speed?: number | string;
1353 spreadMethod?: string;
1354 startOffset?: number | string;
1355 stdDeviation?: number | string;
1356 stemh?: number | string;
1357 stemv?: number | string;
1358 stitchTiles?: number | string;
1359 'stop-color'?: string;
1360 'stop-opacity'?: number | string;
1361 'strikethrough-position'?: number | string;
1362 'strikethrough-thickness'?: number | string;
1363 string?: number | string;
1364 stroke?: string;
1365 'stroke-dasharray'?: string | number;
1366 'stroke-dashoffset'?: string | number;
1367 'stroke-linecap'?: 'butt' | 'round' | 'square' | 'inherit';
1368 'stroke-linejoin'?: 'miter' | 'round' | 'bevel' | 'inherit';
1369 'stroke-miterlimit'?: string;
1370 'stroke-opacity'?: number | string;
1371 'stroke-width'?: number | string;
1372 surfaceScale?: number | string;
1373 systemLanguage?: number | string;
1374 tableValues?: number | string;
1375 targetX?: number | string;
1376 targetY?: number | string;
1377 'text-anchor'?: string;
1378 'text-decoration'?: number | string;
1379 textLength?: number | string;
1380 'text-rendering'?: number | string;
1381 to?: number | string;
1382 transform?: string;
1383 u1?: number | string;
1384 u2?: number | string;
1385 'underline-position'?: number | string;
1386 'underline-thickness'?: number | string;
1387 unicode?: number | string;
1388 'unicode-bidi'?: number | string;
1389 'unicode-range'?: number | string;
1390 'units-per-em'?: number | string;
1391 'v-alphabetic'?: number | string;
1392 values?: string;
1393 'vector-effect'?: number | string;
1394 version?: string;
1395 'vert-adv-y'?: number | string;
1396 'vert-origin-x'?: number | string;
1397 'vert-origin-y'?: number | string;
1398 'v-hanging'?: number | string;
1399 'v-ideographic'?: number | string;
1400 viewBox?: string;
1401 viewTarget?: number | string;
1402 visibility?: number | string;
1403 'v-mathematical'?: number | string;
1404 widths?: number | string;
1405 'word-spacing'?: number | string;
1406 'writing-mode'?: number | string;
1407 x1?: number | string;
1408 x2?: number | string;
1409 x?: number | string;
1410 'x-channel-selector'?: string;
1411 'x-height'?: number | string;
1412 xlinkActuate?: string;
1413 xlinkArcrole?: string;
1414 xlinkHref?: string;
1415 xlinkRole?: string;
1416 xlinkShow?: string;
1417 xlinkTitle?: string;
1418 xlinkType?: string;
1419 xmlBase?: string;
1420 xmlLang?: string;
1421 xmlns?: string;
1422 xmlSpace?: string;
1423 y1?: number | string;
1424 y2?: number | string;
1425 y?: number | string;
1426 yChannelSelector?: string;
1427 z?: number | string;
1428 zoomAndPan?: string;
1429 }
1430 interface DOMAttributes<T = Element> {
1431 key?: string | number;
1432 ref?: (elm?: T) => void;
1433 slot?: string;
1434 part?: string;
1435 exportparts?: string;
1436 onCopy?: (event: ClipboardEvent) => void;
1437 onCopyCapture?: (event: ClipboardEvent) => void;
1438 onCut?: (event: ClipboardEvent) => void;
1439 onCutCapture?: (event: ClipboardEvent) => void;
1440 onPaste?: (event: ClipboardEvent) => void;
1441 onPasteCapture?: (event: ClipboardEvent) => void;
1442 onCompositionEnd?: (event: CompositionEvent) => void;
1443 onCompositionEndCapture?: (event: CompositionEvent) => void;
1444 onCompositionStart?: (event: CompositionEvent) => void;
1445 onCompositionStartCapture?: (event: CompositionEvent) => void;
1446 onCompositionUpdate?: (event: CompositionEvent) => void;
1447 onCompositionUpdateCapture?: (event: CompositionEvent) => void;
1448 onFocus?: (event: FocusEvent) => void;
1449 onFocusCapture?: (event: FocusEvent) => void;
1450 onFocusin?: (event: FocusEvent) => void;
1451 onFocusinCapture?: (event: FocusEvent) => void;
1452 onFocusout?: (event: FocusEvent) => void;
1453 onFocusoutCapture?: (event: FocusEvent) => void;
1454 onBlur?: (event: FocusEvent) => void;
1455 onBlurCapture?: (event: FocusEvent) => void;
1456 onChange?: (event: Event) => void;
1457 onChangeCapture?: (event: Event) => void;
1458 onInput?: (event: Event) => void;
1459 onInputCapture?: (event: Event) => void;
1460 onReset?: (event: Event) => void;
1461 onResetCapture?: (event: Event) => void;
1462 onSubmit?: (event: Event) => void;
1463 onSubmitCapture?: (event: Event) => void;
1464 onInvalid?: (event: Event) => void;
1465 onInvalidCapture?: (event: Event) => void;
1466 onLoad?: (event: Event) => void;
1467 onLoadCapture?: (event: Event) => void;
1468 onError?: (event: Event) => void;
1469 onErrorCapture?: (event: Event) => void;
1470 onKeyDown?: (event: KeyboardEvent) => void;
1471 onKeyDownCapture?: (event: KeyboardEvent) => void;
1472 onKeyPress?: (event: KeyboardEvent) => void;
1473 onKeyPressCapture?: (event: KeyboardEvent) => void;
1474 onKeyUp?: (event: KeyboardEvent) => void;
1475 onKeyUpCapture?: (event: KeyboardEvent) => void;
1476 onAuxClick?: (event: MouseEvent) => void;
1477 onClick?: (event: MouseEvent) => void;
1478 onClickCapture?: (event: MouseEvent) => void;
1479 onContextMenu?: (event: MouseEvent) => void;
1480 onContextMenuCapture?: (event: MouseEvent) => void;
1481 onDblClick?: (event: MouseEvent) => void;
1482 onDblClickCapture?: (event: MouseEvent) => void;
1483 onDrag?: (event: DragEvent) => void;
1484 onDragCapture?: (event: DragEvent) => void;
1485 onDragEnd?: (event: DragEvent) => void;
1486 onDragEndCapture?: (event: DragEvent) => void;
1487 onDragEnter?: (event: DragEvent) => void;
1488 onDragEnterCapture?: (event: DragEvent) => void;
1489 onDragExit?: (event: DragEvent) => void;
1490 onDragExitCapture?: (event: DragEvent) => void;
1491 onDragLeave?: (event: DragEvent) => void;
1492 onDragLeaveCapture?: (event: DragEvent) => void;
1493 onDragOver?: (event: DragEvent) => void;
1494 onDragOverCapture?: (event: DragEvent) => void;
1495 onDragStart?: (event: DragEvent) => void;
1496 onDragStartCapture?: (event: DragEvent) => void;
1497 onDrop?: (event: DragEvent) => void;
1498 onDropCapture?: (event: DragEvent) => void;
1499 onMouseDown?: (event: MouseEvent) => void;
1500 onMouseDownCapture?: (event: MouseEvent) => void;
1501 onMouseEnter?: (event: MouseEvent) => void;
1502 onMouseLeave?: (event: MouseEvent) => void;
1503 onMouseMove?: (event: MouseEvent) => void;
1504 onMouseMoveCapture?: (event: MouseEvent) => void;
1505 onMouseOut?: (event: MouseEvent) => void;
1506 onMouseOutCapture?: (event: MouseEvent) => void;
1507 onMouseOver?: (event: MouseEvent) => void;
1508 onMouseOverCapture?: (event: MouseEvent) => void;
1509 onMouseUp?: (event: MouseEvent) => void;
1510 onMouseUpCapture?: (event: MouseEvent) => void;
1511 onTouchCancel?: (event: TouchEvent) => void;
1512 onTouchCancelCapture?: (event: TouchEvent) => void;
1513 onTouchEnd?: (event: TouchEvent) => void;
1514 onTouchEndCapture?: (event: TouchEvent) => void;
1515 onTouchMove?: (event: TouchEvent) => void;
1516 onTouchMoveCapture?: (event: TouchEvent) => void;
1517 onTouchStart?: (event: TouchEvent) => void;
1518 onTouchStartCapture?: (event: TouchEvent) => void;
1519 onPointerDown?: (event: PointerEvent) => void;
1520 onPointerDownCapture?: (event: PointerEvent) => void;
1521 onPointerMove?: (event: PointerEvent) => void;
1522 onPointerMoveCapture?: (event: PointerEvent) => void;
1523 onPointerUp?: (event: PointerEvent) => void;
1524 onPointerUpCapture?: (event: PointerEvent) => void;
1525 onPointerCancel?: (event: PointerEvent) => void;
1526 onPointerCancelCapture?: (event: PointerEvent) => void;
1527 onPointerEnter?: (event: PointerEvent) => void;
1528 onPointerEnterCapture?: (event: PointerEvent) => void;
1529 onPointerLeave?: (event: PointerEvent) => void;
1530 onPointerLeaveCapture?: (event: PointerEvent) => void;
1531 onPointerOver?: (event: PointerEvent) => void;
1532 onPointerOverCapture?: (event: PointerEvent) => void;
1533 onPointerOut?: (event: PointerEvent) => void;
1534 onPointerOutCapture?: (event: PointerEvent) => void;
1535 onGotPointerCapture?: (event: PointerEvent) => void;
1536 onGotPointerCaptureCapture?: (event: PointerEvent) => void;
1537 onLostPointerCapture?: (event: PointerEvent) => void;
1538 onLostPointerCaptureCapture?: (event: PointerEvent) => void;
1539 onScroll?: (event: UIEvent) => void;
1540 onScrollCapture?: (event: UIEvent) => void;
1541 onWheel?: (event: WheelEvent) => void;
1542 onWheelCapture?: (event: WheelEvent) => void;
1543 onAnimationStart?: (event: AnimationEvent) => void;
1544 onAnimationStartCapture?: (event: AnimationEvent) => void;
1545 onAnimationEnd?: (event: AnimationEvent) => void;
1546 onAnimationEndCapture?: (event: AnimationEvent) => void;
1547 onAnimationIteration?: (event: AnimationEvent) => void;
1548 onAnimationIterationCapture?: (event: AnimationEvent) => void;
1549 onTransitionEnd?: (event: TransitionEvent) => void;
1550 onTransitionEndCapture?: (event: TransitionEvent) => void;
1551 }
1552}
1553export interface CustomElementsDefineOptions {
1554 exclude?: string[];
1555 resourcesUrl?: string;
1556 syncQueue?: boolean;
1557 transformTagName?: (tagName: string) => string;
1558 jmp?: (c: Function) => any;
1559 raf?: (c: FrameRequestCallback) => number;
1560 ael?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
1561 rel?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
1562 ce?: (eventName: string, opts?: any) => CustomEvent;
1563}