sig
  type version = [ `html4 | `html5 | `xhtml1 | `xhtml5 | `xml ]
  val bool_of_checkbox : string -> bool
  type text_context
  val open_text :
    Web__HTML.version ->
    ?space:[ `nbsp | `nbsp_boundary ] ->
    ?newline:[ `br ] ->
    (string -> int -> int -> unit) -> Web__HTML.text_context
  val close_text : Web__HTML.text_context -> unit
  val text_output_substring :
    Web__HTML.text_context -> string -> int -> int -> unit
  val text_output_string : Web__HTML.text_context -> string -> unit
  val output_closing_empty_element :
    Web__HTML.version ->
    (string -> int -> int -> unit) -> ?endline:bool -> unit -> unit
  type attribute_context
  val open_attribute :
    Web__HTML.version ->
    (string -> int -> int -> unit) -> string -> Web__HTML.attribute_context
  val close_attribute : Web__HTML.attribute_context -> unit
  val attribute_output_substring :
    Web__HTML.attribute_context -> string -> int -> int -> unit
  val attribute_output_string : Web__HTML.attribute_context -> string -> unit
  module Input = Web__HTML__Input
end