happy-dom
Version:
Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. It includes many web standards from WHATWG DOM and HTML.
153 lines (150 loc) • 4.81 kB
text/typescript
import HTMLAnchorElement from '../nodes/html-anchor-element/HTMLAnchorElement.js';
import HTMLElement from '../nodes/html-element/HTMLElement.js';
import HTMLAudioElement from '../nodes/html-audio-element/HTMLAudioElement.js';
import HTMLBaseElement from '../nodes/html-base-element/HTMLBaseElement.js';
import HTMLTemplateElement from '../nodes/html-template-element/HTMLTemplateElement.js';
import HTMLFormElement from '../nodes/html-form-element/HTMLFormElement.js';
import HTMLInputElement from '../nodes/html-input-element/HTMLInputElement.js';
import HTMLTextAreaElement from '../nodes/html-text-area-element/HTMLTextAreaElement.js';
import HTMLScriptElement from '../nodes/html-script-element/HTMLScriptElement.js';
import HTMLImageElement from '../nodes/html-image-element/HTMLImageElement.js';
import HTMLLinkElement from '../nodes/html-link-element/HTMLLinkElement.js';
import HTMLStyleElement from '../nodes/html-style-element/HTMLStyleElement.js';
import HTMLLabelElement from '../nodes/html-label-element/HTMLLabelElement.js';
import HTMLSlotElement from '../nodes/html-slot-element/HTMLSlotElement.js';
import HTMLMetaElement from '../nodes/html-meta-element/HTMLMetaElement.js';
import HTMLButtonElement from '../nodes/html-button-element/HTMLButtonElement.js';
import HTMLDialogElement from '../nodes/html-dialog-element/HTMLDialogElement.js';
import HTMLIFrameElement from '../nodes/html-iframe-element/HTMLIFrameElement.js';
import HTMLOptGroupElement from '../nodes/html-opt-group-element/HTMLOptGroupElement.js';
import HTMLOptionElement from '../nodes/html-option-element/HTMLOptionElement.js';
import HTMLSelectElement from '../nodes/html-select-element/HTMLSelectElement.js';
import HTMLTimeElement from '../nodes/html-time-element/HTMLTimeElement.js';
import HTMLVideoElement from '../nodes/html-video-element/HTMLVideoElement.js';
// Makes it work with custom elements when they declare their own interface.
declare global {
/* eslint-disable @typescript-eslint/naming-convention */
/* eslint-disable @typescript-eslint/no-empty-interface */
interface HTMLElementTagNameMap {}
/* eslint-enable @typescript-eslint/naming-convention */
/* eslint-enable @typescript-eslint/no-empty-interface */
}
export default interface IHTMLElementTagNameMap extends HTMLElementTagNameMap {
a: HTMLAnchorElement;
abbr: HTMLElement;
address: HTMLElement;
area: HTMLElement;
article: HTMLElement;
aside: HTMLElement;
audio: HTMLAudioElement;
b: HTMLElement;
base: HTMLBaseElement;
bdi: HTMLElement;
bdo: HTMLElement;
blockquaote: HTMLElement;
body: HTMLElement;
template: HTMLTemplateElement;
form: HTMLFormElement;
input: HTMLInputElement;
textarea: HTMLTextAreaElement;
script: HTMLScriptElement;
img: HTMLImageElement;
link: HTMLLinkElement;
style: HTMLStyleElement;
label: HTMLLabelElement;
slot: HTMLSlotElement;
meta: HTMLMetaElement;
blockquote: HTMLElement;
br: HTMLElement;
button: HTMLButtonElement;
canvas: HTMLElement;
caption: HTMLElement;
cite: HTMLElement;
code: HTMLElement;
col: HTMLElement;
colgroup: HTMLElement;
data: HTMLElement;
datalist: HTMLElement;
dd: HTMLElement;
del: HTMLElement;
details: HTMLElement;
dfn: HTMLElement;
dialog: HTMLDialogElement;
div: HTMLElement;
dl: HTMLElement;
dt: HTMLElement;
em: HTMLElement;
embed: HTMLElement;
fieldset: HTMLElement;
figcaption: HTMLElement;
figure: HTMLElement;
footer: HTMLElement;
h1: HTMLElement;
h2: HTMLElement;
h3: HTMLElement;
h4: HTMLElement;
h5: HTMLElement;
h6: HTMLElement;
head: HTMLElement;
header: HTMLElement;
hgroup: HTMLElement;
hr: HTMLElement;
html: HTMLElement;
i: HTMLElement;
iframe: HTMLIFrameElement;
ins: HTMLElement;
kbd: HTMLElement;
legend: HTMLElement;
li: HTMLElement;
main: HTMLElement;
map: HTMLElement;
mark: HTMLElement;
math: HTMLElement;
menu: HTMLElement;
menuitem: HTMLElement;
meter: HTMLElement;
nav: HTMLElement;
noscript: HTMLElement;
object: HTMLElement;
ol: HTMLElement;
optgroup: HTMLOptGroupElement;
option: HTMLOptionElement;
output: HTMLElement;
p: HTMLElement;
param: HTMLElement;
picture: HTMLElement;
pre: HTMLElement;
progress: HTMLElement;
q: HTMLElement;
rb: HTMLElement;
rp: HTMLElement;
rt: HTMLElement;
rtc: HTMLElement;
ruby: HTMLElement;
s: HTMLElement;
samp: HTMLElement;
section: HTMLElement;
select: HTMLSelectElement;
small: HTMLElement;
source: HTMLElement;
span: HTMLElement;
strong: HTMLElement;
sub: HTMLElement;
summary: HTMLElement;
sup: HTMLElement;
table: HTMLElement;
tbody: HTMLElement;
td: HTMLElement;
tfoot: HTMLElement;
th: HTMLElement;
thead: HTMLElement;
time: HTMLTimeElement;
title: HTMLElement;
tr: HTMLElement;
track: HTMLElement;
u: HTMLElement;
ul: HTMLElement;
var: HTMLElement;
video: HTMLVideoElement;
wbr: HTMLElement;
}