sig
val window : JSOO.obj
val document : JSOO.obj
val body : JSOO.obj
val text : string -> JSOO.obj
val element : string -> JSOO.obj
val get_attribute : string -> JSOO.obj -> string
val set_attribute : string -> string -> JSOO.obj -> unit
val remove_attribute : string -> JSOO.obj -> unit
val get_element_by_id : string -> JSOO.obj -> JSOO.obj
val get_element_by_tag : string -> JSOO.obj -> JSOO.obj
external children : AXOJs.obj -> AXOJs.obj list = "caml_js_node_children"
external n_children : AXOJs.obj -> int = "caml_js_node_n_children"
external child : AXOJs.obj -> int -> AXOJs.obj = "caml_js_node_child"
val child : int -> AXOJs.obj -> AXOJs.obj
val get_parent : JSOO.obj -> JSOO.obj
val copy : bool -> JSOO.obj -> JSOO.obj
val get_value : JSOO.obj -> JSOO.obj
val register_event : string -> ('a -> 'b) -> 'a -> JSOO.obj -> unit
val clear_event : string -> 'a -> JSOO.obj -> unit
val append : JSOO.obj -> JSOO.obj -> unit
val remove : JSOO.obj -> JSOO.obj -> unit
val insert_before : JSOO.obj -> JSOO.obj -> JSOO.obj -> unit
val iter : (AXOJs.obj -> 'a) -> AXOJs.obj -> unit
val iter_rec : (AXOJs.obj -> 'a) -> AXOJs.obj -> unit
val fold_left : ('a -> AXOJs.obj -> 'a) -> 'a -> AXOJs.obj -> 'a
val empty : AXOJs.obj -> unit
val replace_all : AXOJs.obj -> JSOO.obj -> unit
val iter_width : (AXOJs.obj -> 'a) -> AXOJs.obj -> unit
val iter_depth : (AXOJs.obj -> 'a) -> AXOJs.obj -> unit
end