sig   class type field =     object ('a)       method appendChild : Dom.node Js.t -> Dom.node Js.t Js.meth       method attributes : Dom.attr Dom.namedNodeMap Js.t Js.readonly_prop       method childNodes : Dom.node Dom.nodeList Js.t Js.prop       method classList : Dom_html.tokenList Js.t Js.readonly_prop       method className : Js.js_string Js.t Js.prop       method click : unit Js.meth       method clientHeight : int Js.readonly_prop       method clientLeft : int Js.readonly_prop       method clientTop : int Js.readonly_prop       method clientWidth : int Js.readonly_prop       method cloneNode : bool Js.t -> Dom.node Js.t Js.meth       method compareDocumentPosition :         Dom.node Js.t -> Dom.DocumentPosition.t Js.meth       method dir : Js.js_string Js.t Js.prop       method firstChild : Dom.node Js.t Js.opt Js.prop       method getAttribute :         Js.js_string Js.t -> Js.js_string Js.t Js.opt Js.meth       method getAttributeNS :         Js.js_string Js.t ->         Js.js_string Js.t -> Js.js_string Js.t Js.opt Js.meth       method getAttributeNode :         Js.js_string Js.t -> Dom.attr Js.t Js.opt Js.meth       method getAttributeNodeNS :         Js.js_string Js.t ->         Js.js_string Js.t -> Dom.attr Js.t Js.opt Js.meth       method getBoundingClientRect : Dom_html.clientRect Js.t Js.meth       method getClientRects : Dom_html.clientRectList Js.t Js.meth       method getElementsByTagName :         Js.js_string Js.t -> Dom.element Dom.nodeList Js.t Js.meth       method hasAttribute : Js.js_string Js.t -> bool Js.t Js.meth       method hasAttributeNS :         Js.js_string Js.t -> Js.js_string Js.t -> bool Js.t Js.meth       method hasChildNodes : bool Js.t Js.meth       method id : Js.js_string Js.t Js.prop       method innerHTML : Js.js_string Js.t Js.prop       method insertBefore :         Dom.node Js.t -> Dom.node Js.t Js.opt -> Dom.node Js.t Js.meth       method lang : Js.js_string Js.t Js.prop       method lastChild : Dom.node Js.t Js.opt Js.prop       method lookupNamespaceURI :         Js.js_string Js.t -> Js.js_string Js.t Js.opt Js.meth       method lookupPrefix :         Js.js_string Js.t -> Js.js_string Js.t Js.opt Js.meth       method namespaceURI : Js.js_string Js.t Js.opt Js.prop       method nextSibling : Dom.node Js.t Js.opt Js.prop       method nodeName : Js.js_string Js.t Js.readonly_prop       method nodeType : Dom.nodeType Js.readonly_prop       method nodeValue : Js.js_string Js.t Js.opt Js.readonly_prop       method offsetHeight : int Js.readonly_prop       method offsetLeft : int Js.readonly_prop       method offsetParent : Dom_html.element Js.t Js.opt Js.readonly_prop       method offsetTop : int Js.readonly_prop       method offsetWidth : int Js.readonly_prop       method onclick :         ('Js.t, Dom_html.mouseEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method ondblclick :         ('Js.t, Dom_html.mouseEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method ondrag :         ('Js.t, Dom_html.dragEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method ondragend :         ('Js.t, Dom_html.dragEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method ondragenter :         ('Js.t, Dom_html.dragEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method ondragleave :         ('Js.t, Dom_html.dragEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method ondragover :         ('Js.t, Dom_html.dragEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method ondragstart :         ('Js.t, Dom_html.dragEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method ondrop :         ('Js.t, Dom_html.dragEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onkeydown :         ('Js.t, Dom_html.keyboardEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onkeypress :         ('Js.t, Dom_html.keyboardEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onkeyup :         ('Js.t, Dom_html.keyboardEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onmousedown :         ('Js.t, Dom_html.mouseEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onmousemove :         ('Js.t, Dom_html.mouseEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onmouseout :         ('Js.t, Dom_html.mouseEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onmouseover :         ('Js.t, Dom_html.mouseEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onmouseup :         ('Js.t, Dom_html.mouseEvent Js.t) Dom_html.event_listener         Js.writeonly_prop       method onscroll :         ('Js.t, Dom_html.event Js.t) Dom_html.event_listener         Js.writeonly_prop       method outerHTML : Js.js_string Js.t Js.prop       method parentNode : Dom.node Js.t Js.opt Js.prop       method previousSibling : Dom.node Js.t Js.opt Js.prop       method querySelector :         Js.js_string Js.t -> Dom_html.element Js.t Js.opt Js.meth       method querySelectorAll :         Js.js_string Js.t -> Dom_html.element Dom.nodeList Js.t Js.meth       method removeAttribute : Js.js_string Js.t -> unit Js.meth       method removeAttributeNS :         Js.js_string Js.t -> Js.js_string Js.t -> unit Js.meth       method removeAttributeNode : Dom.attr Js.t -> Dom.attr Js.t Js.meth       method removeChild : Dom.node Js.t -> Dom.node Js.t Js.meth       method replaceChild :         Dom.node Js.t -> Dom.node Js.t -> Dom.node Js.t Js.meth       method scrollHeight : int Js.prop       method scrollIntoView : bool Js.t -> unit Js.meth       method scrollLeft : int Js.prop       method scrollTop : int Js.prop       method scrollWidth : int Js.prop       method setAttribute :         Js.js_string Js.t -> Js.js_string Js.t -> unit Js.meth       method setAttributeNS :         Js.js_string Js.t ->         Js.js_string Js.t -> Js.js_string Js.t -> unit Js.meth       method setAttributeNode : Dom.attr Js.t -> Dom.attr Js.t Js.opt Js.meth       method setAttributeNodeNS :         Dom.attr Js.t -> Dom.attr Js.t Js.opt Js.meth       method style : Dom_html.cssStyleDeclaration Js.t Js.prop       method tagName : Js.js_string Js.t Js.readonly_prop       method textContent : Js.js_string Js.t Js.opt Js.prop       method title : Js.js_string Js.t Js.prop       method value : Js.js_string Js.t Js.prop     end   val text_field :     #Sharp_form.field Js.t -> string Sharp_core.t * (unit -> unit)   val with_dom_error :     ((#Dom_html.element as 'a) Js.t -> 'Sharp_core.t * (unit -> unit)) ->     'Js.t -> ('b, string) Pervasives.result Sharp_core.t * (unit -> unit) end