diff --git a/src/jsx.d.ts b/src/jsx.d.ts index 25c18aa549..d11df5de0c 100644 --- a/src/jsx.d.ts +++ b/src/jsx.d.ts @@ -1239,60 +1239,257 @@ export namespace JSXInternal { export type AriaRole = WAIAriaRole | DPubAriaRole; export interface AllHTMLAttributes - extends AnchorHTMLAttributes, - AreaHTMLAttributes, - AudioHTMLAttributes, - BaseHTMLAttributes, - BlockquoteHTMLAttributes, - ButtonHTMLAttributes, - CanvasHTMLAttributes, - ColHTMLAttributes, - ColgroupHTMLAttributes, - DataHTMLAttributes, - DelHTMLAttributes, - DetailsHTMLAttributes, - DialogHTMLAttributes, - EmbedHTMLAttributes, - FieldsetHTMLAttributes, - FormHTMLAttributes, - IframeHTMLAttributes, - ImgHTMLAttributes, - InputHTMLAttributes, - InsHTMLAttributes, - KeygenHTMLAttributes, - LabelHTMLAttributes, - LiHTMLAttributes, - LinkHTMLAttributes, - MapHTMLAttributes, - MarqueeHTMLAttributes, - MediaHTMLAttributes, - MenuHTMLAttributes, - MetaHTMLAttributes, - MeterHTMLAttributes, - ObjectHTMLAttributes, - OlHTMLAttributes, - OptgroupHTMLAttributes, - OptionHTMLAttributes, - OutputHTMLAttributes, - ParamHTMLAttributes, - ProgressHTMLAttributes, - QuoteHTMLAttributes, - ScriptHTMLAttributes, - SelectHTMLAttributes, - SlotHTMLAttributes, - SourceHTMLAttributes, - StyleHTMLAttributes, - TableHTMLAttributes, - TdHTMLAttributes, - TextareaHTMLAttributes, - ThHTMLAttributes, - TimeHTMLAttributes, - TrackHTMLAttributes, - VideoHTMLAttributes { - /* Properties that are incompatible between elements */ - loop?: Signalish; - target?: Signalish; - type?: Signalish; + extends ClassAttributes, + DOMAttributes, + AriaAttributes { + // Standard HTML Attributes + accept?: Signalish; + acceptCharset?: Signalish; + 'accept-charset'?: Signalish; + accessKey?: Signalish; + accesskey?: Signalish; + action?: Signalish; + allow?: Signalish; + allowFullScreen?: Signalish; + allowTransparency?: Signalish; + alt?: Signalish; + as?: Signalish; + async?: Signalish; + autocomplete?: Signalish; + autoComplete?: Signalish; + autocorrect?: Signalish; + autoCorrect?: Signalish; + autofocus?: Signalish; + autoFocus?: Signalish; + autoPlay?: Signalish; + autoplay?: Signalish; + capture?: Signalish; + cellPadding?: Signalish; + cellSpacing?: Signalish; + charSet?: Signalish; + charset?: Signalish; + challenge?: Signalish; + checked?: Signalish; + cite?: Signalish; + class?: Signalish; + className?: Signalish; + cols?: Signalish; + colSpan?: Signalish; + colspan?: Signalish; + content?: Signalish; + contentEditable?: Signalish< + Booleanish | '' | 'plaintext-only' | 'inherit' | undefined + >; + contenteditable?: Signalish; + /** @deprecated See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/contextmenu */ + contextMenu?: Signalish; + /** @deprecated See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/contextmenu */ + contextmenu?: Signalish; + controls?: Signalish; + controlslist?: Signalish<'nodownload' | 'nofullscreen' | 'noremoteplayback' | undefined>; + controlsList?: Signalish<'nodownload' | 'nofullscreen' | 'noremoteplayback' | undefined>; + coords?: Signalish; + crossOrigin?: Signalish; + crossorigin?: Signalish; + currentTime?: Signalish; + data?: Signalish; + dateTime?: Signalish; + datetime?: Signalish; + default?: Signalish; + defaultChecked?: Signalish; + defaultMuted?: Signalish; + defaultPlaybackRate?: Signalish; + defaultValue?: Signalish; + defer?: Signalish; + dir?: Signalish<'auto' | 'rtl' | 'ltr' | undefined>; + disabled?: Signalish; + disableremoteplayback?: Signalish; + disableRemotePlayback?: Signalish; + download?: Signalish; + decoding?: Signalish<'sync' | 'async' | 'auto' | undefined>; + draggable?: Signalish; + encType?: Signalish; + enctype?: Signalish; + enterkeyhint?: Signalish< + | 'enter' + | 'done' + | 'go' + | 'next' + | 'previous' + | 'search' + | 'send' + | undefined + >; + elementTiming?: Signalish; + elementtiming?: Signalish; + exportparts?: Signalish; + for?: Signalish; + form?: Signalish; + formAction?: Signalish; + formaction?: Signalish; + formEncType?: Signalish; + formenctype?: Signalish; + formMethod?: Signalish; + formmethod?: Signalish; + formNoValidate?: Signalish; + formnovalidate?: Signalish; + formTarget?: Signalish; + formtarget?: Signalish; + frameBorder?: Signalish; + frameborder?: Signalish; + headers?: Signalish; + height?: Signalish; + hidden?: Signalish; + high?: Signalish; + href?: Signalish; + hrefLang?: Signalish; + hreflang?: Signalish; + htmlFor?: Signalish; + httpEquiv?: Signalish; + 'http-equiv'?: Signalish; + icon?: Signalish; + id?: Signalish; + indeterminate?: Signalish; + inert?: Signalish; + inputMode?: Signalish; + inputmode?: Signalish; + integrity?: Signalish; + is?: Signalish; + keyParams?: Signalish; + keyType?: Signalish; + kind?: Signalish; + label?: Signalish; + lang?: Signalish; + list?: Signalish; + loading?: Signalish<'eager' | 'lazy' | undefined>; + loop?: Signalish; + low?: Signalish; + manifest?: Signalish; + marginHeight?: Signalish; + marginWidth?: Signalish; + max?: Signalish; + maxLength?: Signalish; + maxlength?: Signalish; + media?: Signalish; + mediaGroup?: Signalish; + method?: Signalish; + min?: Signalish; + minLength?: Signalish; + minlength?: Signalish; + multiple?: Signalish; + muted?: Signalish; + name?: Signalish; + nomodule?: Signalish; + nonce?: Signalish; + noValidate?: Signalish; + novalidate?: Signalish; + open?: Signalish; + optimum?: Signalish; + part?: Signalish; + pattern?: Signalish; + ping?: Signalish; + placeholder?: Signalish; + playsInline?: Signalish; + playsinline?: Signalish; + playbackRate?: Signalish; + popover?: Signalish<'auto' | 'hint' | 'manual' | boolean | undefined>; + popovertarget?: Signalish; + popoverTarget?: Signalish; + popovertargetaction?: Signalish<'hide' | 'show' | 'toggle' | undefined>; + popoverTargetAction?: Signalish<'hide' | 'show' | 'toggle' | undefined>; + poster?: Signalish; + preload?: Signalish<'auto' | 'metadata' | 'none' | undefined>; + preservesPitch?: Signalish; + radioGroup?: Signalish; + readonly?: Signalish; + readOnly?: Signalish; + referrerpolicy?: Signalish< + | 'no-referrer' + | 'no-referrer-when-downgrade' + | 'origin' + | 'origin-when-cross-origin' + | 'same-origin' + | 'strict-origin' + | 'strict-origin-when-cross-origin' + | 'unsafe-url' + | undefined + >; + rel?: Signalish; + required?: Signalish; + reversed?: Signalish; + role?: Signalish; + rows?: Signalish; + rowSpan?: Signalish; + rowspan?: Signalish; + sandbox?: Signalish; + scope?: Signalish; + scoped?: Signalish; + scrolling?: Signalish; + seamless?: Signalish; + selected?: Signalish; + shape?: Signalish; + size?: Signalish; + sizes?: Signalish; + slot?: Signalish; + span?: Signalish; + spellcheck?: Signalish; + src?: Signalish; + srcDoc?: Signalish; + srcdoc?: Signalish; + srcLang?: Signalish; + srclang?: Signalish; + srcSet?: Signalish; + srcset?: Signalish; + srcObject?: Signalish; + start?: Signalish; + step?: Signalish; + style?: Signalish; + summary?: Signalish; + tabIndex?: Signalish; + tabindex?: Signalish; + target?: Signalish; + title?: Signalish; + type?: Signalish; + useMap?: Signalish; + usemap?: Signalish; + value?: Signalish; + volume?: Signalish; + width?: Signalish; + wmode?: Signalish; + wrap?: Signalish; + + // Non-standard Attributes + autocapitalize?: Signalish< + 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters' | undefined + >; + autoCapitalize?: Signalish< + 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters' | undefined + >; + disablePictureInPicture?: Signalish; + results?: Signalish; + translate?: Signalish; + + // RDFa Attributes + about?: Signalish; + datatype?: Signalish; + inlist?: Signalish; + prefix?: Signalish; + property?: Signalish; + resource?: Signalish; + typeof?: Signalish; + vocab?: Signalish; + + // Microdata Attributes + itemProp?: Signalish; + itemprop?: Signalish; + itemScope?: Signalish; + itemscope?: Signalish; + itemType?: Signalish; + itemtype?: Signalish; + itemID?: Signalish; + itemid?: Signalish; + itemRef?: Signalish; + itemref?: Signalish; } export interface HTMLAttributes