Warning: Reason support is experimental. We are looking for beta-tester and contributors.

object ('a)
  method appendChild :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method attributes :
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Dom.namedNodeMap Js_of_ocaml__.Js.t
    Js_of_ocaml__.Js.readonly_prop
  method blur : unit Js_of_ocaml__.Js.meth
  method childNodes :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Dom.nodeList Js_of_ocaml__.Js.t
    Js_of_ocaml__.Js.prop
  method classList :
    Js_of_ocaml.Dom_html.tokenList Js_of_ocaml__.Js.t
    Js_of_ocaml__.Js.readonly_prop
  method className :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.prop
  method click : unit Js_of_ocaml__.Js.meth
  method clientHeight : int Js_of_ocaml__.Js.readonly_prop
  method clientLeft : int Js_of_ocaml__.Js.readonly_prop
  method clientTop : int Js_of_ocaml__.Js.readonly_prop
  method clientWidth : int Js_of_ocaml__.Js.readonly_prop
  method cloneNode :
    bool Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method compareDocumentPosition :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.DocumentPosition.t Js_of_ocaml__.Js.meth
  method dir :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.prop
  method dispatchEvent :
    Js_of_ocaml.Dom_html.event Js_of_ocaml__.Js.t ->
    bool Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method firstChild :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.prop
  method focus : unit Js_of_ocaml__.Js.meth
  method getAttribute :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method getAttributeNS :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method getAttributeNode :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method getAttributeNodeNS :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method getBoundingClientRect :
    Js_of_ocaml.Dom_html.clientRect Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method getClientRects :
    Js_of_ocaml.Dom_html.clientRectList Js_of_ocaml__.Js.t
    Js_of_ocaml__.Js.meth
  method getElementsByTagName :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.element Js_of_ocaml__.Dom.nodeList Js_of_ocaml__.Js.t
    Js_of_ocaml__.Js.meth
  method hasAttribute :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    bool Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method hasAttributeNS :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    bool Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method hasChildNodes : bool Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method id :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.prop
  method innerHTML :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.prop
  method insertBefore :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt ->
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method lang :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.prop
  method lastChild :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.prop
  method lookupNamespaceURI :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method lookupPrefix :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method namespaceURI :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.prop
  method nextSibling :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.prop
  method nodeName :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t
    Js_of_ocaml__.Js.readonly_prop
  method nodeType : Js_of_ocaml__.Dom.nodeType Js_of_ocaml__.Js.readonly_prop
  method nodeValue :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.readonly_prop
  method offsetHeight : int Js_of_ocaml__.Js.readonly_prop
  method offsetLeft : int Js_of_ocaml__.Js.readonly_prop
  method offsetParent :
    Js_of_ocaml.Dom_html.element Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.readonly_prop
  method offsetTop : int Js_of_ocaml__.Js.readonly_prop
  method offsetWidth : int Js_of_ocaml__.Js.readonly_prop
  method onanimationcancel :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.animationEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onanimationend :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.animationEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onanimationiteration :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.animationEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onanimationstart :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.animationEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onclick :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.mouseEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ondblclick :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.mouseEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ondrag :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.dragEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ondragend :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.dragEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ondragenter :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.dragEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ondragleave :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.dragEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ondragover :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.dragEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ondragstart :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.dragEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ondrop :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.dragEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method ongotpointercapture :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onkeydown :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.keyboardEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onkeypress :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.keyboardEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onkeyup :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.keyboardEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onlostpointercapture :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onmousedown :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.mouseEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onmousemove :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.mouseEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onmouseout :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.mouseEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onmouseover :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.mouseEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onmouseup :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.mouseEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onpointercancel :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onpointerdown :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onpointerenter :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onpointerleave :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onpointermove :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onpointerout :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onpointerover :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onpointerup :
    ('a Js_of_ocaml__.Js.t,
     Js_of_ocaml.Dom_html.pointerEvent Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method onscroll :
    ('a Js_of_ocaml__.Js.t, Js_of_ocaml.Dom_html.event Js_of_ocaml__.Js.t)
    Js_of_ocaml.Dom_html.event_listener Js_of_ocaml__.Js.writeonly_prop
  method outerHTML :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.prop
  method parentNode :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.prop
  method previousSibling :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.prop
  method querySelector :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml.Dom_html.element Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method querySelectorAll :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml.Dom_html.element Js_of_ocaml__.Dom.nodeList
    Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method removeAttribute :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    unit Js_of_ocaml__.Js.meth
  method removeAttributeNS :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    unit Js_of_ocaml__.Js.meth
  method removeAttributeNode :
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method removeChild :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method replaceChild :
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.node Js_of_ocaml__.Js.t Js_of_ocaml__.Js.meth
  method scrollHeight : int Js_of_ocaml__.Js.prop
  method scrollIntoView :
    bool Js_of_ocaml__.Js.t -> unit Js_of_ocaml__.Js.meth
  method scrollLeft : int Js_of_ocaml__.Js.prop
  method scrollTop : int Js_of_ocaml__.Js.prop
  method scrollWidth : int Js_of_ocaml__.Js.prop
  method setAttribute :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    unit Js_of_ocaml__.Js.meth
  method setAttributeNS :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t ->
    unit Js_of_ocaml__.Js.meth
  method setAttributeNode :
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method setAttributeNodeNS :
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Js.t ->
    Js_of_ocaml__.Dom.attr Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.meth
  method style :
    Js_of_ocaml.Dom_html.cssStyleDeclaration Js_of_ocaml__.Js.t
    Js_of_ocaml__.Js.prop
  method tabIndex : int Js_of_ocaml.Js.prop
  method tagName :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t
    Js_of_ocaml__.Js.readonly_prop
  method textContent :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.opt
    Js_of_ocaml__.Js.prop
  method title :
    Js_of_ocaml__.Js.js_string Js_of_ocaml__.Js.t Js_of_ocaml__.Js.prop
end