UNPKG

59.4 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 }
683 interface AudioHTMLAttributes<T> extends MediaHTMLAttributes<T> {
684 }
685 interface AreaHTMLAttributes<T> extends HTMLAttributes<T> {
686 alt?: string;
687 coords?: string;
688 download?: any;
689 href?: string;
690 hrefLang?: string;
691 hreflang?: string;
692 media?: string;
693 rel?: string;
694 shape?: string;
695 target?: string;
696 }
697 interface BaseHTMLAttributes<T> extends HTMLAttributes<T> {
698 href?: string;
699 target?: string;
700 }
701 interface BlockquoteHTMLAttributes<T> extends HTMLAttributes<T> {
702 cite?: string;
703 }
704 interface ButtonHTMLAttributes<T> extends HTMLAttributes<T> {
705 autoFocus?: boolean;
706 disabled?: boolean;
707 form?: string;
708 formAction?: string;
709 formaction?: string;
710 formEncType?: string;
711 formenctype?: string;
712 formMethod?: string;
713 formmethod?: string;
714 formNoValidate?: boolean;
715 formnovalidate?: boolean;
716 formTarget?: string;
717 formtarget?: string;
718 name?: string;
719 type?: string;
720 value?: string | string[] | number;
721 }
722 interface CanvasHTMLAttributes<T> extends HTMLAttributes<T> {
723 height?: number | string;
724 width?: number | string;
725 }
726 interface ColHTMLAttributes<T> extends HTMLAttributes<T> {
727 span?: number;
728 }
729 interface ColgroupHTMLAttributes<T> extends HTMLAttributes<T> {
730 span?: number;
731 }
732 interface DetailsHTMLAttributes<T> extends HTMLAttributes<T> {
733 open?: boolean;
734 onToggle?: (event: Event) => void;
735 }
736 interface DelHTMLAttributes<T> extends HTMLAttributes<T> {
737 cite?: string;
738 dateTime?: string;
739 datetime?: string;
740 }
741 interface DialogHTMLAttributes<T> extends HTMLAttributes<T> {
742 onClose?: (event: Event) => void;
743 open?: boolean;
744 returnValue?: string;
745 }
746 interface EmbedHTMLAttributes<T> extends HTMLAttributes<T> {
747 height?: number | string;
748 src?: string;
749 type?: string;
750 width?: number | string;
751 }
752 interface FieldsetHTMLAttributes<T> extends HTMLAttributes<T> {
753 disabled?: boolean;
754 form?: string;
755 name?: string;
756 }
757 interface FormHTMLAttributes<T> extends HTMLAttributes<T> {
758 acceptCharset?: string;
759 acceptcharset?: string;
760 action?: string;
761 autoComplete?: string;
762 autocomplete?: string;
763 encType?: string;
764 enctype?: string;
765 method?: string;
766 name?: string;
767 noValidate?: boolean;
768 novalidate?: boolean | string;
769 target?: string;
770 }
771 interface HtmlHTMLAttributes<T> extends HTMLAttributes<T> {
772 manifest?: string;
773 }
774 interface IframeHTMLAttributes<T> extends HTMLAttributes<T> {
775 allow?: string;
776 allowFullScreen?: boolean;
777 allowfullScreen?: string | boolean;
778 allowTransparency?: boolean;
779 allowtransparency?: string | boolean;
780 frameBorder?: number | string;
781 frameborder?: number | string;
782 importance?: 'low' | 'auto' | 'high';
783 height?: number | string;
784 loading?: 'lazy' | 'auto' | 'eager';
785 marginHeight?: number;
786 marginheight?: string | number;
787 marginWidth?: number;
788 marginwidth?: string | number;
789 name?: string;
790 referrerPolicy?: ReferrerPolicy;
791 sandbox?: string;
792 scrolling?: string;
793 seamless?: boolean;
794 src?: string;
795 srcDoc?: string;
796 srcdoc?: string;
797 width?: number | string;
798 }
799 interface ImgHTMLAttributes<T> extends HTMLAttributes<T> {
800 alt?: string;
801 decoding?: 'async' | 'auto' | 'sync';
802 importance?: 'low' | 'auto' | 'high';
803 height?: number | string;
804 loading?: 'lazy' | 'auto' | 'eager';
805 sizes?: string;
806 src?: string;
807 srcSet?: string;
808 srcset?: string;
809 useMap?: string;
810 usemap?: string;
811 width?: number | string;
812 }
813 interface InsHTMLAttributes<T> extends HTMLAttributes<T> {
814 cite?: string;
815 dateTime?: string;
816 datetime?: string;
817 }
818 interface InputHTMLAttributes<T> extends HTMLAttributes<T> {
819 accept?: string;
820 allowdirs?: boolean;
821 alt?: string;
822 autoCapitalize?: any;
823 autocapitalize?: any;
824 autoComplete?: string;
825 autocomplete?: string;
826 autoFocus?: boolean;
827 autofocus?: boolean | string;
828 capture?: string;
829 checked?: boolean;
830 crossOrigin?: string;
831 crossorigin?: string;
832 defaultChecked?: boolean;
833 defaultValue?: string;
834 dirName?: string;
835 disabled?: boolean;
836 files?: any;
837 form?: string;
838 formAction?: string;
839 formaction?: string;
840 formEncType?: string;
841 formenctype?: string;
842 formMethod?: string;
843 formmethod?: string;
844 formNoValidate?: boolean;
845 formnovalidate?: boolean;
846 formTarget?: string;
847 formtarget?: string;
848 height?: number | string;
849 indeterminate?: boolean;
850 list?: string;
851 max?: number | string;
852 maxLength?: number;
853 maxlength?: number | string;
854 min?: number | string;
855 minLength?: number;
856 minlength?: number | string;
857 multiple?: boolean;
858 name?: string;
859 pattern?: string;
860 placeholder?: string;
861 readOnly?: boolean;
862 readonly?: boolean | string;
863 required?: boolean;
864 selectionStart?: number | string;
865 selectionEnd?: number | string;
866 selectionDirection?: string;
867 size?: number;
868 src?: string;
869 step?: number | string;
870 type?: string;
871 value?: string | string[] | number;
872 valueAsDate?: any;
873 valueAsNumber?: any;
874 webkitdirectory?: boolean;
875 webkitEntries?: any;
876 width?: number | string;
877 }
878 interface KeygenHTMLAttributes<T> extends HTMLAttributes<T> {
879 autoFocus?: boolean;
880 autofocus?: boolean | string;
881 challenge?: string;
882 disabled?: boolean;
883 form?: string;
884 keyType?: string;
885 keytype?: string;
886 keyParams?: string;
887 keyparams?: string;
888 name?: string;
889 }
890 interface LabelHTMLAttributes<T> extends HTMLAttributes<T> {
891 form?: string;
892 htmlFor?: string;
893 htmlfor?: string;
894 }
895 interface LiHTMLAttributes<T> extends HTMLAttributes<T> {
896 value?: string | string[] | number;
897 }
898 interface LinkHTMLAttributes<T> extends HTMLAttributes<T> {
899 as?: string;
900 href?: string;
901 hrefLang?: string;
902 hreflang?: string;
903 importance?: 'low' | 'auto' | 'high';
904 integrity?: string;
905 media?: string;
906 rel?: string;
907 sizes?: string;
908 type?: string;
909 }
910 interface MapHTMLAttributes<T> extends HTMLAttributes<T> {
911 name?: string;
912 }
913 interface MenuHTMLAttributes<T> extends HTMLAttributes<T> {
914 type?: string;
915 }
916 interface MediaHTMLAttributes<T> extends HTMLAttributes<T> {
917 autoPlay?: boolean;
918 autoplay?: boolean | string;
919 controls?: boolean;
920 crossOrigin?: string;
921 crossorigin?: string;
922 loop?: boolean;
923 mediaGroup?: string;
924 mediagroup?: string;
925 muted?: boolean;
926 preload?: string;
927 src?: string;
928 onAbort?: (event: Event) => void;
929 onCanPlay?: (event: Event) => void;
930 onCanPlayThrough?: (event: Event) => void;
931 onDurationChange?: (event: Event) => void;
932 onEmptied?: (event: Event) => void;
933 onEnded?: (event: Event) => void;
934 onError?: (event: Event) => void;
935 onInterruptBegin?: (event: Event) => void;
936 onInterruptEnd?: (event: Event) => void;
937 onLoadedData?: (event: Event) => void;
938 onLoadedMetaData?: (event: Event) => void;
939 onLoadStart?: (event: Event) => void;
940 onMozAudioAvailable?: (event: Event) => void;
941 onPause?: (event: Event) => void;
942 onPlay?: (event: Event) => void;
943 onPlaying?: (event: Event) => void;
944 onProgress?: (event: Event) => void;
945 onRateChange?: (event: Event) => void;
946 onSeeked?: (event: Event) => void;
947 onSeeking?: (event: Event) => void;
948 onStalled?: (event: Event) => void;
949 onSuspend?: (event: Event) => void;
950 onTimeUpdate?: (event: Event) => void;
951 onVolumeChange?: (event: Event) => void;
952 onWaiting?: (event: Event) => void;
953 }
954 interface MetaHTMLAttributes<T> extends HTMLAttributes<T> {
955 charSet?: string;
956 charset?: string;
957 content?: string;
958 httpEquiv?: string;
959 httpequiv?: string;
960 name?: string;
961 }
962 interface MeterHTMLAttributes<T> extends HTMLAttributes<T> {
963 form?: string;
964 high?: number;
965 low?: number;
966 max?: number | string;
967 min?: number | string;
968 optimum?: number;
969 value?: string | string[] | number;
970 }
971 interface QuoteHTMLAttributes<T> extends HTMLAttributes<T> {
972 cite?: string;
973 }
974 interface ObjectHTMLAttributes<T> extends HTMLAttributes<T> {
975 classID?: string;
976 classid?: string;
977 data?: string;
978 form?: string;
979 height?: number | string;
980 name?: string;
981 type?: string;
982 useMap?: string;
983 usemap?: string;
984 width?: number | string;
985 wmode?: string;
986 }
987 interface OlHTMLAttributes<T> extends HTMLAttributes<T> {
988 reversed?: boolean;
989 start?: number;
990 }
991 interface OptgroupHTMLAttributes<T> extends HTMLAttributes<T> {
992 disabled?: boolean;
993 label?: string;
994 }
995 interface OptionHTMLAttributes<T> extends HTMLAttributes<T> {
996 disabled?: boolean;
997 label?: string;
998 selected?: boolean;
999 value?: string | string[] | number;
1000 }
1001 interface OutputHTMLAttributes<T> extends HTMLAttributes<T> {
1002 form?: string;
1003 htmlFor?: string;
1004 htmlfor?: string;
1005 name?: string;
1006 }
1007 interface ParamHTMLAttributes<T> extends HTMLAttributes<T> {
1008 name?: string;
1009 value?: string | string[] | number;
1010 }
1011 interface ProgressHTMLAttributes<T> extends HTMLAttributes<T> {
1012 max?: number | string;
1013 value?: string | string[] | number;
1014 }
1015 interface ScriptHTMLAttributes<T> extends HTMLAttributes<T> {
1016 async?: boolean;
1017 charSet?: string;
1018 charset?: string;
1019 crossOrigin?: string;
1020 crossorigin?: string;
1021 defer?: boolean;
1022 importance?: 'low' | 'auto' | 'high';
1023 integrity?: string;
1024 nonce?: string;
1025 src?: string;
1026 type?: string;
1027 }
1028 interface SelectHTMLAttributes<T> extends HTMLAttributes<T> {
1029 autoFocus?: boolean;
1030 disabled?: boolean;
1031 form?: string;
1032 multiple?: boolean;
1033 name?: string;
1034 required?: boolean;
1035 size?: number;
1036 autoComplete?: string;
1037 autocomplete?: string;
1038 }
1039 interface SourceHTMLAttributes<T> extends HTMLAttributes<T> {
1040 media?: string;
1041 sizes?: string;
1042 src?: string;
1043 srcSet?: string;
1044 type?: string;
1045 }
1046 interface StyleHTMLAttributes<T> extends HTMLAttributes<T> {
1047 media?: string;
1048 nonce?: string;
1049 scoped?: boolean;
1050 type?: string;
1051 }
1052 interface TableHTMLAttributes<T> extends HTMLAttributes<T> {
1053 cellPadding?: number | string;
1054 cellpadding?: number | string;
1055 cellSpacing?: number | string;
1056 cellspacing?: number | string;
1057 summary?: string;
1058 }
1059 interface TextareaHTMLAttributes<T> extends HTMLAttributes<T> {
1060 autoFocus?: boolean;
1061 autofocus?: boolean | string;
1062 cols?: number;
1063 disabled?: boolean;
1064 form?: string;
1065 maxLength?: number;
1066 maxlength?: number | string;
1067 minLength?: number;
1068 minlength?: number | string;
1069 name?: string;
1070 placeholder?: string;
1071 readOnly?: boolean;
1072 readonly?: boolean | string;
1073 required?: boolean;
1074 rows?: number;
1075 value?: string | string[] | number;
1076 wrap?: string;
1077 }
1078 interface TdHTMLAttributes<T> extends HTMLAttributes<T> {
1079 colSpan?: number;
1080 headers?: string;
1081 rowSpan?: number;
1082 }
1083 interface ThHTMLAttributes<T> extends HTMLAttributes<T> {
1084 abbr?: string;
1085 colSpan?: number;
1086 headers?: string;
1087 rowSpan?: number;
1088 rowspan?: number | string;
1089 scope?: string;
1090 }
1091 interface TimeHTMLAttributes<T> extends HTMLAttributes<T> {
1092 dateTime?: string;
1093 }
1094 interface TrackHTMLAttributes<T> extends HTMLAttributes<T> {
1095 default?: boolean;
1096 kind?: string;
1097 label?: string;
1098 src?: string;
1099 srcLang?: string;
1100 srclang?: string;
1101 }
1102 interface VideoHTMLAttributes<T> extends MediaHTMLAttributes<T> {
1103 height?: number | string;
1104 playsInline?: boolean;
1105 playsinline?: boolean | string;
1106 poster?: string;
1107 width?: number | string;
1108 }
1109 interface HTMLAttributes<T = HTMLElement> extends DOMAttributes<T> {
1110 innerHTML?: string;
1111 accessKey?: string;
1112 class?: string | {
1113 [className: string]: boolean;
1114 };
1115 contentEditable?: boolean | string;
1116 contenteditable?: boolean | string;
1117 contextMenu?: string;
1118 contextmenu?: string;
1119 dir?: string;
1120 draggable?: boolean;
1121 hidden?: boolean;
1122 id?: string;
1123 lang?: string;
1124 spellcheck?: 'true' | 'false' | any;
1125 style?: {
1126 [key: string]: string | undefined;
1127 };
1128 tabIndex?: number;
1129 tabindex?: number | string;
1130 title?: string;
1131 inputMode?: string;
1132 inputmode?: string;
1133 enterKeyHint?: string;
1134 enterkeyhint?: string;
1135 is?: string;
1136 radioGroup?: string;
1137 radiogroup?: string;
1138 role?: string;
1139 about?: string;
1140 datatype?: string;
1141 inlist?: any;
1142 prefix?: string;
1143 property?: string;
1144 resource?: string;
1145 typeof?: string;
1146 vocab?: string;
1147 autoCapitalize?: any;
1148 autocapitalize?: any;
1149 autoCorrect?: string;
1150 autocorrect?: string;
1151 autoSave?: string;
1152 autosave?: string;
1153 color?: string;
1154 itemProp?: string;
1155 itemprop?: string;
1156 itemScope?: boolean;
1157 itemscope?: boolean;
1158 itemType?: string;
1159 itemtype?: string;
1160 itemID?: string;
1161 itemid?: string;
1162 itemRef?: string;
1163 itemref?: string;
1164 results?: number;
1165 security?: string;
1166 unselectable?: boolean;
1167 }
1168 interface SVGAttributes<T = SVGElement> extends DOMAttributes<T> {
1169 'class'?: string | {
1170 [className: string]: boolean;
1171 };
1172 'color'?: string;
1173 'height'?: number | string;
1174 'id'?: string;
1175 'lang'?: string;
1176 'max'?: number | string;
1177 'media'?: string;
1178 'method'?: string;
1179 'min'?: number | string;
1180 'name'?: string;
1181 'style'?: {
1182 [key: string]: string | undefined;
1183 };
1184 'target'?: string;
1185 'type'?: string;
1186 'width'?: number | string;
1187 'role'?: string;
1188 'tabindex'?: number;
1189 'accent-height'?: number | string;
1190 'accumulate'?: 'none' | 'sum';
1191 'additive'?: 'replace' | 'sum';
1192 'alignment-baseline'?: 'auto' | 'baseline' | 'before-edge' | 'text-before-edge' | 'middle' | 'central' | 'after-edge' | 'text-after-edge' | 'ideographic' | 'alphabetic' | 'hanging' | 'mathematical' | 'inherit';
1193 'allowReorder'?: 'no' | 'yes';
1194 'alphabetic'?: number | string;
1195 'amplitude'?: number | string;
1196 'arabic-form'?: 'initial' | 'medial' | 'terminal' | 'isolated';
1197 'ascent'?: number | string;
1198 'attributeName'?: string;
1199 'attributeType'?: string;
1200 'autoReverse'?: number | string;
1201 'azimuth'?: number | string;
1202 'baseFrequency'?: number | string;
1203 'baseline-shift'?: number | string;
1204 'baseProfile'?: number | string;
1205 'bbox'?: number | string;
1206 'begin'?: number | string;
1207 'bias'?: number | string;
1208 'by'?: number | string;
1209 'calcMode'?: number | string;
1210 'cap-height'?: number | string;
1211 'clip'?: number | string;
1212 'clip-path'?: string;
1213 'clipPathUnits'?: number | string;
1214 'clip-rule'?: number | string;
1215 'color-interpolation'?: number | string;
1216 'color-interpolation-filters'?: 'auto' | 's-rGB' | 'linear-rGB' | 'inherit';
1217 'color-profile'?: number | string;
1218 'color-rendering'?: number | string;
1219 'contentScriptType'?: number | string;
1220 'contentStyleType'?: number | string;
1221 'cursor'?: number | string;
1222 'cx'?: number | string;
1223 'cy'?: number | string;
1224 'd'?: string;
1225 'decelerate'?: number | string;
1226 'descent'?: number | string;
1227 'diffuseConstant'?: number | string;
1228 'direction'?: number | string;
1229 'display'?: number | string;
1230 'divisor'?: number | string;
1231 'dominant-baseline'?: number | string;
1232 'dur'?: number | string;
1233 'dx'?: number | string;
1234 'dy'?: number | string;
1235 'edge-mode'?: number | string;
1236 'elevation'?: number | string;
1237 'enable-background'?: number | string;
1238 'end'?: number | string;
1239 'exponent'?: number | string;
1240 'externalResourcesRequired'?: number | string;
1241 'fill'?: string;
1242 'fill-opacity'?: number | string;
1243 'fill-rule'?: 'nonzero' | 'evenodd' | 'inherit';
1244 'filter'?: string;
1245 'filterRes'?: number | string;
1246 'filterUnits'?: number | string;
1247 'flood-color'?: number | string;
1248 'flood-opacity'?: number | string;
1249 'focusable'?: number | string;
1250 'font-family'?: string;
1251 'font-size'?: number | string;
1252 'font-size-adjust'?: number | string;
1253 'font-stretch'?: number | string;
1254 'font-style'?: number | string;
1255 'font-variant'?: number | string;
1256 'font-weight'?: number | string;
1257 'format'?: number | string;
1258 'from'?: number | string;
1259 'fx'?: number | string;
1260 'fy'?: number | string;
1261 'g1'?: number | string;
1262 'g2'?: number | string;
1263 'glyph-name'?: number | string;
1264 'glyph-orientation-horizontal'?: number | string;
1265 'glyph-orientation-vertical'?: number | string;
1266 'glyphRef'?: number | string;
1267 'gradientTransform'?: string;
1268 'gradientUnits'?: string;
1269 'hanging'?: number | string;
1270 'horiz-adv-x'?: number | string;
1271 'horiz-origin-x'?: number | string;
1272 'href'?: string;
1273 'ideographic'?: number | string;
1274 'image-rendering'?: number | string;
1275 'in2'?: number | string;
1276 'in'?: string;
1277 'intercept'?: number | string;
1278 'k1'?: number | string;
1279 'k2'?: number | string;
1280 'k3'?: number | string;
1281 'k4'?: number | string;
1282 'k'?: number | string;
1283 'kernelMatrix'?: number | string;
1284 'kernelUnitLength'?: number | string;
1285 'kerning'?: number | string;
1286 'keyPoints'?: number | string;
1287 'keySplines'?: number | string;
1288 'keyTimes'?: number | string;
1289 'lengthAdjust'?: number | string;
1290 'letter-spacing'?: number | string;
1291 'lighting-color'?: number | string;
1292 'limitingConeAngle'?: number | string;
1293 'local'?: number | string;
1294 'marker-end'?: string;
1295 'markerHeight'?: number | string;
1296 'marker-mid'?: string;
1297 'marker-start'?: string;
1298 'markerUnits'?: number | string;
1299 'markerWidth'?: number | string;
1300 'mask'?: string;
1301 'maskContentUnits'?: number | string;
1302 'maskUnits'?: number | string;
1303 'mathematical'?: number | string;
1304 'mode'?: number | string;
1305 'numOctaves'?: number | string;
1306 'offset'?: number | string;
1307 'opacity'?: number | string;
1308 'operator'?: number | string;
1309 'order'?: number | string;
1310 'orient'?: number | string;
1311 'orientation'?: number | string;
1312 'origin'?: number | string;
1313 'overflow'?: number | string;
1314 'overline-position'?: number | string;
1315 'overline-thickness'?: number | string;
1316 'paint-order'?: number | string;
1317 'panose1'?: number | string;
1318 'pathLength'?: number | string;
1319 'patternContentUnits'?: string;
1320 'patternTransform'?: number | string;
1321 'patternUnits'?: string;
1322 'pointer-events'?: number | string;
1323 'points'?: string;
1324 'pointsAtX'?: number | string;
1325 'pointsAtY'?: number | string;
1326 'pointsAtZ'?: number | string;
1327 'preserveAlpha'?: number | string;
1328 'preserveAspectRatio'?: string;
1329 'primitiveUnits'?: number | string;
1330 'r'?: number | string;
1331 'radius'?: number | string;
1332 'refX'?: number | string;
1333 'refY'?: number | string;
1334 'rendering-intent'?: number | string;
1335 'repeatCount'?: number | string;
1336 'repeatDur'?: number | string;
1337 'requiredextensions'?: number | string;
1338 'requiredFeatures'?: number | string;
1339 'restart'?: number | string;
1340 'result'?: string;
1341 'rotate'?: number | string;
1342 'rx'?: number | string;
1343 'ry'?: number | string;
1344 'scale'?: number | string;
1345 'seed'?: number | string;
1346 'shape-rendering'?: number | string;
1347 'slope'?: number | string;
1348 'spacing'?: number | string;
1349 'specularConstant'?: number | string;
1350 'specularExponent'?: number | string;
1351 'speed'?: number | string;
1352 'spreadMethod'?: string;
1353 'startOffset'?: number | string;
1354 'stdDeviation'?: number | string;
1355 'stemh'?: number | string;
1356 'stemv'?: number | string;
1357 'stitchTiles'?: number | string;
1358 'stop-color'?: string;
1359 'stop-opacity'?: number | string;
1360 'strikethrough-position'?: number | string;
1361 'strikethrough-thickness'?: number | string;
1362 'string'?: number | string;
1363 'stroke'?: string;
1364 'stroke-dasharray'?: string | number;
1365 'stroke-dashoffset'?: string | number;
1366 'stroke-linecap'?: 'butt' | 'round' | 'square' | 'inherit';
1367 'stroke-linejoin'?: 'miter' | 'round' | 'bevel' | 'inherit';
1368 'stroke-miterlimit'?: string;
1369 'stroke-opacity'?: number | string;
1370 'stroke-width'?: number | string;
1371 'surfaceScale'?: number | string;
1372 'systemLanguage'?: number | string;
1373 'tableValues'?: number | string;
1374 'targetX'?: number | string;
1375 'targetY'?: number | string;
1376 'text-anchor'?: string;
1377 'text-decoration'?: number | string;
1378 'textLength'?: number | string;
1379 'text-rendering'?: number | string;
1380 'to'?: number | string;
1381 'transform'?: string;
1382 'u1'?: number | string;
1383 'u2'?: number | string;
1384 'underline-position'?: number | string;
1385 'underline-thickness'?: number | string;
1386 'unicode'?: number | string;
1387 'unicode-bidi'?: number | string;
1388 'unicode-range'?: number | string;
1389 'units-per-em'?: number | string;
1390 'v-alphabetic'?: number | string;
1391 'values'?: string;
1392 'vector-effect'?: number | string;
1393 'version'?: string;
1394 'vert-adv-y'?: number | string;
1395 'vert-origin-x'?: number | string;
1396 'vert-origin-y'?: number | string;
1397 'v-hanging'?: number | string;
1398 'v-ideographic'?: number | string;
1399 'viewBox'?: string;
1400 'viewTarget'?: number | string;
1401 'visibility'?: number | string;
1402 'v-mathematical'?: number | string;
1403 'widths'?: number | string;
1404 'word-spacing'?: number | string;
1405 'writing-mode'?: number | string;
1406 'x1'?: number | string;
1407 'x2'?: number | string;
1408 'x'?: number | string;
1409 'x-channel-selector'?: string;
1410 'x-height'?: number | string;
1411 'xlinkActuate'?: string;
1412 'xlinkArcrole'?: string;
1413 'xlinkHref'?: string;
1414 'xlinkRole'?: string;
1415 'xlinkShow'?: string;
1416 'xlinkTitle'?: string;
1417 'xlinkType'?: string;
1418 'xmlBase'?: string;
1419 'xmlLang'?: string;
1420 'xmlns'?: string;
1421 'xmlSpace'?: string;
1422 'y1'?: number | string;
1423 'y2'?: number | string;
1424 'y'?: number | string;
1425 'yChannelSelector'?: string;
1426 'z'?: number | string;
1427 'zoomAndPan'?: string;
1428 }
1429 interface DOMAttributes<T = Element> {
1430 key?: string | number;
1431 ref?: (elm?: T) => void;
1432 slot?: string;
1433 part?: string;
1434 exportparts?: string;
1435 onCopy?: (event: ClipboardEvent) => void;
1436 onCopyCapture?: (event: ClipboardEvent) => void;
1437 onCut?: (event: ClipboardEvent) => void;
1438 onCutCapture?: (event: ClipboardEvent) => void;
1439 onPaste?: (event: ClipboardEvent) => void;
1440 onPasteCapture?: (event: ClipboardEvent) => void;
1441 onCompositionEnd?: (event: CompositionEvent) => void;
1442 onCompositionEndCapture?: (event: CompositionEvent) => void;
1443 onCompositionStart?: (event: CompositionEvent) => void;
1444 onCompositionStartCapture?: (event: CompositionEvent) => void;
1445 onCompositionUpdate?: (event: CompositionEvent) => void;
1446 onCompositionUpdateCapture?: (event: CompositionEvent) => void;
1447 onFocus?: (event: FocusEvent) => void;
1448 onFocusCapture?: (event: FocusEvent) => void;
1449 onFocusin?: (event: FocusEvent) => void;
1450 onFocusinCapture?: (event: FocusEvent) => void;
1451 onFocusout?: (event: FocusEvent) => void;
1452 onFocusoutCapture?: (event: FocusEvent) => void;
1453 onBlur?: (event: FocusEvent) => void;
1454 onBlurCapture?: (event: FocusEvent) => void;
1455 onChange?: (event: Event) => void;
1456 onChangeCapture?: (event: Event) => void;
1457 onInput?: (event: Event) => void;
1458 onInputCapture?: (event: Event) => void;
1459 onReset?: (event: Event) => void;
1460 onResetCapture?: (event: Event) => void;
1461 onSubmit?: (event: Event) => void;
1462 onSubmitCapture?: (event: Event) => void;
1463 onInvalid?: (event: Event) => void;
1464 onInvalidCapture?: (event: Event) => void;
1465 onLoad?: (event: Event) => void;
1466 onLoadCapture?: (event: Event) => void;
1467 onError?: (event: Event) => void;
1468 onErrorCapture?: (event: Event) => void;
1469 onKeyDown?: (event: KeyboardEvent) => void;
1470 onKeyDownCapture?: (event: KeyboardEvent) => void;
1471 onKeyPress?: (event: KeyboardEvent) => void;
1472 onKeyPressCapture?: (event: KeyboardEvent) => void;
1473 onKeyUp?: (event: KeyboardEvent) => void;
1474 onKeyUpCapture?: (event: KeyboardEvent) => void;
1475 onAuxClick?: (event: MouseEvent) => void;
1476 onClick?: (event: MouseEvent) => void;
1477 onClickCapture?: (event: MouseEvent) => void;
1478 onContextMenu?: (event: MouseEvent) => void;
1479 onContextMenuCapture?: (event: MouseEvent) => void;
1480 onDblClick?: (event: MouseEvent) => void;
1481 onDblClickCapture?: (event: MouseEvent) => void;
1482 onDrag?: (event: DragEvent) => void;
1483 onDragCapture?: (event: DragEvent) => void;
1484 onDragEnd?: (event: DragEvent) => void;
1485 onDragEndCapture?: (event: DragEvent) => void;
1486 onDragEnter?: (event: DragEvent) => void;
1487 onDragEnterCapture?: (event: DragEvent) => void;
1488 onDragExit?: (event: DragEvent) => void;
1489 onDragExitCapture?: (event: DragEvent) => void;
1490 onDragLeave?: (event: DragEvent) => void;
1491 onDragLeaveCapture?: (event: DragEvent) => void;
1492 onDragOver?: (event: DragEvent) => void;
1493 onDragOverCapture?: (event: DragEvent) => void;
1494 onDragStart?: (event: DragEvent) => void;
1495 onDragStartCapture?: (event: DragEvent) => void;
1496 onDrop?: (event: DragEvent) => void;
1497 onDropCapture?: (event: DragEvent) => void;
1498 onMouseDown?: (event: MouseEvent) => void;
1499 onMouseDownCapture?: (event: MouseEvent) => void;
1500 onMouseEnter?: (event: MouseEvent) => void;
1501 onMouseLeave?: (event: MouseEvent) => void;
1502 onMouseMove?: (event: MouseEvent) => void;
1503 onMouseMoveCapture?: (event: MouseEvent) => void;
1504 onMouseOut?: (event: MouseEvent) => void;
1505 onMouseOutCapture?: (event: MouseEvent) => void;
1506 onMouseOver?: (event: MouseEvent) => void;
1507 onMouseOverCapture?: (event: MouseEvent) => void;
1508 onMouseUp?: (event: MouseEvent) => void;
1509 onMouseUpCapture?: (event: MouseEvent) => void;
1510 onTouchCancel?: (event: TouchEvent) => void;
1511 onTouchCancelCapture?: (event: TouchEvent) => void;
1512 onTouchEnd?: (event: TouchEvent) => void;
1513 onTouchEndCapture?: (event: TouchEvent) => void;
1514 onTouchMove?: (event: TouchEvent) => void;
1515 onTouchMoveCapture?: (event: TouchEvent) => void;
1516 onTouchStart?: (event: TouchEvent) => void;
1517 onTouchStartCapture?: (event: TouchEvent) => void;
1518 onPointerDown?: (event: PointerEvent) => void;
1519 onPointerDownCapture?: (event: PointerEvent) => void;
1520 onPointerMove?: (event: PointerEvent) => void;
1521 onPointerMoveCapture?: (event: PointerEvent) => void;
1522 onPointerUp?: (event: PointerEvent) => void;
1523 onPointerUpCapture?: (event: PointerEvent) => void;
1524 onPointerCancel?: (event: PointerEvent) => void;
1525 onPointerCancelCapture?: (event: PointerEvent) => void;
1526 onPointerEnter?: (event: PointerEvent) => void;
1527 onPointerEnterCapture?: (event: PointerEvent) => void;
1528 onPointerLeave?: (event: PointerEvent) => void;
1529 onPointerLeaveCapture?: (event: PointerEvent) => void;
1530 onPointerOver?: (event: PointerEvent) => void;
1531 onPointerOverCapture?: (event: PointerEvent) => void;
1532 onPointerOut?: (event: PointerEvent) => void;
1533 onPointerOutCapture?: (event: PointerEvent) => void;
1534 onGotPointerCapture?: (event: PointerEvent) => void;
1535 onGotPointerCaptureCapture?: (event: PointerEvent) => void;
1536 onLostPointerCapture?: (event: PointerEvent) => void;
1537 onLostPointerCaptureCapture?: (event: PointerEvent) => void;
1538 onScroll?: (event: UIEvent) => void;
1539 onScrollCapture?: (event: UIEvent) => void;
1540 onWheel?: (event: WheelEvent) => void;
1541 onWheelCapture?: (event: WheelEvent) => void;
1542 onAnimationStart?: (event: AnimationEvent) => void;
1543 onAnimationStartCapture?: (event: AnimationEvent) => void;
1544 onAnimationEnd?: (event: AnimationEvent) => void;
1545 onAnimationEndCapture?: (event: AnimationEvent) => void;
1546 onAnimationIteration?: (event: AnimationEvent) => void;
1547 onAnimationIterationCapture?: (event: AnimationEvent) => void;
1548 onTransitionEnd?: (event: TransitionEvent) => void;
1549 onTransitionEndCapture?: (event: TransitionEvent) => void;
1550 }
1551}
1552export interface CustomElementsDefineOptions {
1553 exclude?: string[];
1554 resourcesUrl?: string;
1555 syncQueue?: boolean;
1556 transformTagName?: (tagName: string) => string;
1557 jmp?: (c: Function) => any;
1558 raf?: (c: FrameRequestCallback) => number;
1559 ael?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
1560 rel?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
1561 ce?: (eventName: string, opts?: any) => CustomEvent;
1562}