module Impl: (T: { ... }) => { ... };
type t
= Dom.htmlFormElement
;
include { ... };
let asEventTarget: t => Dom.eventTarget;
let addEventListener: string => (Dom.event => unit) => t => unit;
let addEventListenerWithOptions: string => (Dom.event => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addEventListenerUseCapture: string => (Dom.event => unit) => t => unit;
let removeEventListener: string => (Dom.event => unit) => t => unit;
let removeEventListenerWithOptions: string => (Dom.event => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeEventListenerUseCapture: string => (Dom.event => unit) => t => unit;
let dispatchEvent: Dom.event_like('a) => t => bool;
let addLoadEventListener: (Dom.event => unit) => t => unit;
let addLoadEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addLoadEventListenerUseCapture: (Dom.event => unit) => t => unit;
let removeLoadEventListener: (Dom.event => unit) => t => unit;
let removeLoadEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeLoadEventListenerUseCapture: (Dom.event => unit) => t => unit;
let addUnloadEventListener: (Dom.event => unit) => t => unit;
let addUnloadEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addUnloadEventListenerUseCapture: (Dom.event => unit) => t => unit;
let removeUnloadEventListener: (Dom.event => unit) => t => unit;
let removeUnloadEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeUnloadEventListenerUseCapture: (Dom.event => unit) => t => unit;
let addAbortEventListener: (Dom.event => unit) => t => unit;
let addAbortEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addAbortEventListenerUseCapture: (Dom.event => unit) => t => unit;
let removeAbortEventListener: (Dom.event => unit) => t => unit;
let removeAbortEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeAbortEventListenerUseCapture: (Dom.event => unit) => t => unit;
let addErrorEventListener: (Dom.event => unit) => t => unit;
let addErrorEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addErrorEventListenerUseCapture: (Dom.event => unit) => t => unit;
let removeErrorEventListener: (Dom.event => unit) => t => unit;
let removeErrorEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeErrorEventListenerUseCapture: (Dom.event => unit) => t => unit;
let addSelectEventListener: (Dom.event => unit) => t => unit;
let addSelectEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addSelectEventListenerUseCapture: (Dom.event => unit) => t => unit;
let removeSelectEventListener: (Dom.event => unit) => t => unit;
let removeSelectEventListenerWithOptions: (Dom.event => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeSelectEventListenerUseCapture: (Dom.event => unit) => t => unit;
let addBlurEventListener: (Dom.focusEvent => unit) => t => unit;
let addBlurEventListenerWithOptions: (Dom.focusEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addBlurEventListenerUseCapture: (Dom.focusEvent => unit) => t => unit;
let removeBlurEventListener: (Dom.focusEvent => unit) => t => unit;
let removeBlurEventListenerWithOptions: (Dom.focusEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeBlurEventListenerUseCapture: (Dom.focusEvent => unit) => t => unit;
let addFocusEventListener: (Dom.focusEvent => unit) => t => unit;
let addFocusEventListenerWithOptions: (Dom.focusEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addFocusEventListenerUseCapture: (Dom.focusEvent => unit) => t => unit;
let removeFocusEventListener: (Dom.focusEvent => unit) => t => unit;
let removeFocusEventListenerWithOptions: (Dom.focusEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeFocusEventListenerUseCapture: (Dom.focusEvent => unit) => t => unit;
let addFocusInEventListener: (Dom.focusEvent => unit) => t => unit;
let addFocusInEventListenerWithOptions: (Dom.focusEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addFocusInEventListenerUseCapture: (Dom.focusEvent => unit) => t => unit;
let removeFocusInEventListener: (Dom.focusEvent => unit) => t => unit;
let removeFocusInEventListenerWithOptions: (Dom.focusEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeFocusInEventListenerUseCapture: (Dom.focusEvent => unit) => t => unit;
let addFocusOutEventListener: (Dom.focusEvent => unit) => t => unit;
let addFocusOutEventListenerWithOptions: (Dom.focusEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addFocusOutEventListenerUseCapture: (Dom.focusEvent => unit) => t => unit;
let removeFocusOutEventListener: (Dom.focusEvent => unit) => t => unit;
let removeFocusOutEventListenerWithOptions: (Dom.focusEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeFocusOutEventListenerUseCapture: (Dom.focusEvent => unit) => t => unit;
let addClickEventListener: (Dom.mouseEvent => unit) => t => unit;
let addClickEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addClickEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let removeClickEventListener: (Dom.mouseEvent => unit) => t => unit;
let removeClickEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeClickEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let addDblClickEventListener: (Dom.mouseEvent => unit) => t => unit;
let addDblClickEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDblClickEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let removeDblClickEventListener: (Dom.mouseEvent => unit) => t => unit;
let removeDblClickEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDblClickEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let addMouseDownEventListener: (Dom.mouseEvent => unit) => t => unit;
let addMouseDownEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addMouseDownEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let removeMouseDownEventListener: (Dom.mouseEvent => unit) => t => unit;
let removeMouseDownEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeMouseDownEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let addMouseEnterEventListener: (Dom.mouseEvent => unit) => t => unit;
let addMouseEnterEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addMouseEnterEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let removeMouseEnterEventListener: (Dom.mouseEvent => unit) => t => unit;
let removeMouseEnterEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeMouseEnterEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let addMouseMoveEventListener: (Dom.mouseEvent => unit) => t => unit;
let addMouseMoveEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addMouseMoveEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let removeMouseMoveEventListener: (Dom.mouseEvent => unit) => t => unit;
let removeMouseMoveEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeMouseMoveEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let addMouseOutEventListener: (Dom.mouseEvent => unit) => t => unit;
let addMouseOutEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addMouseOutEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let removeMouseOutEventListener: (Dom.mouseEvent => unit) => t => unit;
let removeMouseOutEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeMouseOutEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let addMouseOverEventListener: (Dom.mouseEvent => unit) => t => unit;
let addMouseOverEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addMouseOverEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let removeMouseOverEventListener: (Dom.mouseEvent => unit) => t => unit;
let removeMouseOverEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeMouseOverEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let addMouseUpEventListener: (Dom.mouseEvent => unit) => t => unit;
let addMouseUpEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addMouseUpEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let removeMouseUpEventListener: (Dom.mouseEvent => unit) => t => unit;
let removeMouseUpEventListenerWithOptions: (Dom.mouseEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeMouseUpEventListenerUseCapture: (Dom.mouseEvent => unit) => t => unit;
let addWheelEventListener: (Dom.wheelEvent => unit) => t => unit;
let addWheelEventListenerWithOptions: (Dom.wheelEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addWheelEventListenerUseCapture: (Dom.wheelEvent => unit) => t => unit;
let removeWheelEventListener: (Dom.wheelEvent => unit) => t => unit;
let removeWheelEventListenerWithOptions: (Dom.wheelEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeWheelEventListenerUseCapture: (Dom.wheelEvent => unit) => t => unit;
let addBeforeInputEventListener: (Dom.inputEvent => unit) => t => unit;
let addBeforeInputEventListenerWithOptions: (Dom.inputEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addBeforeInputEventListenerUseCapture: (Dom.inputEvent => unit) => t => unit;
let removeBeforeInputEventListener: (Dom.inputEvent => unit) => t => unit;
let removeBeforeInputEventListenerWithOptions: (Dom.inputEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeBeforeInputEventListenerUseCapture: (Dom.inputEvent => unit) => t => unit;
let addInputEventListener: (Dom.inputEvent => unit) => t => unit;
let addInputEventListenerWithOptions: (Dom.inputEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addInputEventListenerUseCapture: (Dom.inputEvent => unit) => t => unit;
let removeInputEventListener: (Dom.inputEvent => unit) => t => unit;
let removeInputEventListenerWithOptions: (Dom.inputEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeInputEventListenerUseCapture: (Dom.inputEvent => unit) => t => unit;
let addKeyDownEventListener: (Dom.keyboardEvent => unit) => t => unit;
let addKeyDownEventListenerWithOptions: (Dom.keyboardEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addKeyDownEventListenerUseCapture: (Dom.keyboardEvent => unit) => t => unit;
let removeKeyDownEventListener: (Dom.keyboardEvent => unit) => t => unit;
let removeKeyDownEventListenerWithOptions: (Dom.keyboardEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeKeyDownEventListenerUseCapture: (Dom.keyboardEvent => unit) => t => unit;
let addKeyUpEventListener: (Dom.keyboardEvent => unit) => t => unit;
let addKeyUpEventListenerWithOptions: (Dom.keyboardEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addKeyUpEventListenerUseCapture: (Dom.keyboardEvent => unit) => t => unit;
let removeKeyUpEventListener: (Dom.keyboardEvent => unit) => t => unit;
let removeKeyUpEventListenerWithOptions: (Dom.keyboardEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeKeyUpEventListenerUseCapture: (Dom.keyboardEvent => unit) => t => unit;
let addKeyPressEventListener: (Dom.keyboardEvent => unit) => t => unit;
let addKeyPressEventListenerWithOptions: (Dom.keyboardEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addKeyPressEventListenerUseCapture: (Dom.keyboardEvent => unit) => t => unit;
let removeKeyPressEventListener: (Dom.keyboardEvent => unit) => t => unit;
let removeKeyPressEventListenerWithOptions: (Dom.keyboardEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeKeyPressEventListenerUseCapture: (Dom.keyboardEvent => unit) => t => unit;
let addCompositionStartEventListener: (Dom.compositionEvent => unit) => t => unit;
let addCompositionStartEventListenerWithOptions: (Dom.compositionEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addCompositionStartEventListenerUseCapture: (Dom.compositionEvent => unit) => t => unit;
let removeCompositionStartEventListener: (Dom.compositionEvent => unit) => t => unit;
let removeCompositionStartEventListenerWithOptions: (Dom.compositionEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeCompositionStartEventListenerUseCapture: (Dom.compositionEvent => unit) => t => unit;
let addCompositionUpdateEventListener: (Dom.compositionEvent => unit) => t => unit;
let addCompositionUpdateEventListenerWithOptions: (Dom.compositionEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addCompositionUpdateEventListenerUseCapture: (Dom.compositionEvent => unit) => t => unit;
let removeCompositionUpdateEventListener: (Dom.compositionEvent => unit) => t => unit;
let removeCompositionUpdateEventListenerWithOptions: (Dom.compositionEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeCompositionUpdateEventListenerUseCapture: (Dom.compositionEvent => unit) => t => unit;
let addCompositionEndEventListener: (Dom.compositionEvent => unit) => t => unit;
let addCompositionEndEventListenerWithOptions: (Dom.compositionEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addCompositionEndEventListenerUseCapture: (Dom.compositionEvent => unit) => t => unit;
let removeCompositionEndEventListener: (Dom.compositionEvent => unit) => t => unit;
let removeCompositionEndEventListenerWithOptions: (Dom.compositionEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeCompositionEndEventListenerUseCapture: (Dom.compositionEvent => unit) => t => unit;
let addDragEventListener: (Dom.dragEvent => unit) => t => unit;
let addDragEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDragEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let removeDragEventListener: (Dom.dragEvent => unit) => t => unit;
let removeDragEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDragEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let addDragEndEventListener: (Dom.dragEvent => unit) => t => unit;
let addDragEndEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDragEndEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let removeDragEndEventListener: (Dom.dragEvent => unit) => t => unit;
let removeDragEndEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDragEndEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let addDragEnterEventListener: (Dom.dragEvent => unit) => t => unit;
let addDragEnterEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDragEnterEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let removeDragEnterEventListener: (Dom.dragEvent => unit) => t => unit;
let removeDragEnterEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDragEnterEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let addDragExitEventListener: (Dom.dragEvent => unit) => t => unit;
let addDragExitEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDragExitEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let removeDragExitEventListener: (Dom.dragEvent => unit) => t => unit;
let removeDragExitEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDragExitEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let addDragLeaveEventListener: (Dom.dragEvent => unit) => t => unit;
let addDragLeaveEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDragLeaveEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let removeDragLeaveEventListener: (Dom.dragEvent => unit) => t => unit;
let removeDragLeaveEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDragLeaveEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let addDragOverEventListener: (Dom.dragEvent => unit) => t => unit;
let addDragOverEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDragOverEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let removeDragOverEventListener: (Dom.dragEvent => unit) => t => unit;
let removeDragOverEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDragOverEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let addDragStartEventListener: (Dom.dragEvent => unit) => t => unit;
let addDragStartEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDragStartEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let removeDragStartEventListener: (Dom.dragEvent => unit) => t => unit;
let removeDragStartEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDragStartEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let addDropEventListener: (Dom.dragEvent => unit) => t => unit;
let addDropEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addDropEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let removeDropEventListener: (Dom.dragEvent => unit) => t => unit;
let removeDropEventListenerWithOptions: (Dom.dragEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeDropEventListenerUseCapture: (Dom.dragEvent => unit) => t => unit;
let addTouchCancelEventListener: (Dom.touchEvent => unit) => t => unit;
let addTouchCancelEventListenerWithOptions: (Dom.touchEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addTouchCancelEventListenerUseCapture: (Dom.touchEvent => unit) => t => unit;
let removeTouchCancelEventListener: (Dom.touchEvent => unit) => t => unit;
let removeTouchCancelEventListenerWithOptions: (Dom.touchEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeTouchCancelEventListenerUseCapture: (Dom.touchEvent => unit) => t => unit;
let addTouchEndEventListener: (Dom.touchEvent => unit) => t => unit;
let addTouchEndEventListenerWithOptions: (Dom.touchEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addTouchEndEventListenerUseCapture: (Dom.touchEvent => unit) => t => unit;
let removeTouchEndEventListener: (Dom.touchEvent => unit) => t => unit;
let removeTouchEndEventListenerWithOptions: (Dom.touchEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeTouchEndEventListenerUseCapture: (Dom.touchEvent => unit) => t => unit;
let addTouchMoveEventListener: (Dom.touchEvent => unit) => t => unit;
let addTouchMoveEventListenerWithOptions: (Dom.touchEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addTouchMoveEventListenerUseCapture: (Dom.touchEvent => unit) => t => unit;
let removeTouchMoveEventListener: (Dom.touchEvent => unit) => t => unit;
let removeTouchMoveEventListenerWithOptions: (Dom.touchEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeTouchMoveEventListenerUseCapture: (Dom.touchEvent => unit) => t => unit;
let addTouchStartEventListener: (Dom.touchEvent => unit) => t => unit;
let addTouchStartEventListenerWithOptions: (Dom.touchEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addTouchStartEventListenerUseCapture: (Dom.touchEvent => unit) => t => unit;
let removeTouchStartEventListener: (Dom.touchEvent => unit) => t => unit;
let removeTouchStartEventListenerWithOptions: (Dom.touchEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeTouchStartEventListenerUseCapture: (Dom.touchEvent => unit) => t => unit;
let addAnimationCancelEventListener: (Dom.animationEvent => unit) => t => unit;
let addAnimationCancelEventListenerWithOptions: (Dom.animationEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addAnimationCancelEventListenerUseCapture: (Dom.animationEvent => unit) => t => unit;
let removeAnimationCancelEventListener: (Dom.animationEvent => unit) => t => unit;
let removeAnimationCancelEventListenerWithOptions: (Dom.animationEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeAnimationCancelEventListenerUseCapture: (Dom.animationEvent => unit) => t => unit;
let addAnimationEndEventListener: (Dom.animationEvent => unit) => t => unit;
let addAnimationEndEventListenerWithOptions: (Dom.animationEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addAnimationEndEventListenerUseCapture: (Dom.animationEvent => unit) => t => unit;
let removeAnimationEndEventListener: (Dom.animationEvent => unit) => t => unit;
let removeAnimationEndEventListenerWithOptions: (Dom.animationEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeAnimationEndEventListenerUseCapture: (Dom.animationEvent => unit) => t => unit;
let addAnimationIterationEventListener: (Dom.animationEvent => unit) => t => unit;
let addAnimationIterationEventListenerWithOptions: (Dom.animationEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addAnimationIterationEventListenerUseCapture: (Dom.animationEvent => unit) => t => unit;
let removeAnimationIterationEventListener: (Dom.animationEvent => unit) => t => unit;
let removeAnimationIterationEventListenerWithOptions: (Dom.animationEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeAnimationIterationEventListenerUseCapture: (Dom.animationEvent => unit) => t => unit;
let addAnimationStartEventListener: (Dom.animationEvent => unit) => t => unit;
let addAnimationStartEventListenerWithOptions: (Dom.animationEvent => unit) => Js.t({. capture: bool, once: bool, passive: bool, }) => t => unit;
let addAnimationStartEventListenerUseCapture: (Dom.animationEvent => unit) => t => unit;
let removeAnimationStartEventListener: (Dom.animationEvent => unit) => t => unit;
let removeAnimationStartEventListenerWithOptions: (Dom.animationEvent => unit) => Js.t({. capture: bool, passive: bool, }) => t => unit;
let removeAnimationStartEventListenerUseCapture: (Dom.animationEvent => unit) => t => unit;
include { ... };
let asNode: t => Dom.node;
let childNodes: t => Dom.nodeList;
let firstChild: t => option(Dom.node);
let innerText: t => string;
let setInnerText: t => string => unit;
let lastChild: t => option(Dom.node);
let nextSibling: t => option(Dom.node);
let nodeName: t => string;
let nodeType: t => Webapi__Dom__Types.nodeType;
let nodeValue: t => option(string);
let setNodeValue: t => Js.null(string) => unit;
let ownerDocument: t => Dom.document;
let parentElement: t => option(Dom.element);
let parentNode: t => option(Dom.node);
let previousSibling: t => option(Dom.node);
let rootNode: t => Dom.node;
let textContent: t => string;
let setTextContent: t => string => unit;
let appendChild: Dom.node_like('a) => t => unit;
let cloneNode: t => t;
let cloneNodeDeep: t => t;
let compareDocumentPosition: Dom.node_like('a) => t => int;
let contains: Dom.node_like('a) => t => bool;
let getRootNode: t => Dom.node;
let getRootNodeComposed: t => Dom.node;
let hasChildNodes: t => bool;
let insertBefore: Dom.node_like('a) => Dom.node_like('b) => t => Dom.node_like('a);
let isDefaultNamespace: string => t => bool;
let isEqualNode: Dom.node_like('a) => t => bool;
let isSameNode: Dom.node_like('a) => t => bool;
let lookupNamespaceURI: string => t => option(string);
let lookupDefaultNamespaceURI: t => option(string);
let lookupPrefix: t => string;
let normalize: t => unit;
let removeChild: Dom.node_like('a) => t => Dom.node_like('a);
let replaceChild: Dom.node_like('a) => Dom.node_like('b) => t => Dom.node_like('b);
include { ... };
let asHtmlElement: t => option(Dom.htmlElement);
let unsafeAsHtmlElement: t => Dom.htmlElement;
let ofNode: Dom.node => option(t);
let attributes: t => Dom.namedNodeMap;
let classList: t => Dom.domTokenList;
let className: t => string;
let setClassName: t => string => unit;
let clientHeight: t => int;
let clientLeft: t => int;
let clientTop: t => int;
let clientWidth: t => int;
let id: t => string;
let setId: t => string => unit;
let innerHTML: t => string;
let setInnerHTML: t => string => unit;
let localName: t => string;
let namespaceURI: t => option(string);
let outerHTML: t => string;
let setOuterHTML: t => string => unit;
let prefix: t => option(string);
let scrollHeight: t => int;
let scrollLeft: t => float;
let setScrollLeft: t => float => unit;
let scrollTop: t => float;
let setScrollTop: t => float => unit;
let scrollWidth: t => int;
let shadowRoot: t => Dom.element;
let slot: t => string;
let setSlot: t => string => unit;
let tagName: t => string;
let attachShadow: Js.t({. mode: string, }) => t => Dom.shadowRoot;
let attachShadowOpen: t => Dom.shadowRoot;
let attachShadowClosed: t => Dom.shadowRoot;
let animate: Js.t({.. }) => Js.t({.. }) => t => Dom.animation;
let closest: string => t => option(Dom.element);
let createShadowRoot: t => Dom.shadowRoot;
let getAttribute: string => t => option(string);
let getAttributeNS: string => string => t => option(string);
let getBoundingClientRect: t => Dom.domRect;
let getClientRects: t => array(Dom.domRect);
let getElementsByClassName: string => t => Dom.htmlCollection;
let getElementsByTagName: string => t => Dom.htmlCollection;
let getElementsByTagNameNS: string => string => t => Dom.htmlCollection;
let hasAttribute: string => t => bool;
let hasAttributeNS: string => string => t => bool;
let hasAttributes: t => bool;
let insertAdjacentElement: Webapi__Dom__Types.insertPosition => Dom.element_like('a) => t => unit;
let insertAdjacentHTML: Webapi__Dom__Types.insertPosition => string => t => unit;
let insertAdjacentText: Webapi__Dom__Types.insertPosition => string => t => unit;
let matches: string => t => bool;
let releasePointerCapture: Dom.eventPointerId => t => unit;
let removeAttribute: string => t => unit;
let removeAttributeNS: string => string => t => unit;
let requestFullscreen: t => unit;
let requestPointerLock: t => unit;
let scrollIntoView: t => unit;
let scrollIntoViewNoAlignToTop: t => unit;
let scrollIntoViewWithOptions: Js.t({. behavior: string, block: string, }) => t => unit;
let scrollBy: float => float => t => unit;
let scrollByWithOptions: Js.t({. behavior: string, left: float, top: float, }) => t => unit;
let scrollTo: float => float => t => unit;
let scrollToWithOptions: Js.t({. behavior: string, left: float, top: float, }) => t => unit;
let setAttribute: string => string => t => unit;
let setAttributeNS: string => string => string => t => unit;
let setPointerCapture: Dom.eventPointerId => t => unit;
let setOnClick: t => (Dom.mouseEvent => unit) => unit;