sig
  val make_string_uri :
    service:('a, unit, [< Eliomservices.get_service_kind ],
             [< Eliomservices.suff ], 'b, unit,
             [< Eliomservices.registrable ])
            Eliomservices.service ->
    sp:Eliomsessions.server_params -> ?fragment:string -> '-> string
  val a :
    ?a:Xhtmltypes.a_attrib XHTML.M.attrib list ->
    service:('a, unit, [< Eliomservices.get_service_kind ],
             [< Eliomservices.suff ], 'b, 'c, [< Eliomservices.registrable ])
            Eliomservices.service ->
    sp:Eliomsessions.server_params ->
    ?fragment:string ->
    Xhtmltypes.a_content XHTML.M.elt list ->
    '-> [> Xhtmltypes.a ] XHTML.M.elt
  val css_link :
    ?a:Xhtmltypes.link_attrib XHTML.M.attrib list ->
    uri:XHTML.M.uri -> unit -> [> Xhtmltypes.link ] XHTML.M.elt
  val js_script :
    ?a:Xhtmltypes.script_attrib XHTML.M.attrib list ->
    uri:XHTML.M.uri -> unit -> [> Xhtmltypes.script ] XHTML.M.elt
  val make_uri :
    service:('a, unit, [< Eliomservices.get_service_kind ],
             [< Eliomservices.suff ], 'b, unit,
             [< Eliomservices.registrable ])
            Eliomservices.service ->
    sp:Eliomsessions.server_params -> ?fragment:string -> '-> XHTML.M.uri
  val get_form :
    ?a:Xhtmltypes.form_attrib XHTML.M.attrib list ->
    service:('a, unit, [< Eliomservices.get_service_kind ],
             [< Eliomservices.suff ], 'b, 'c, [< Eliomservices.registrable ])
            Eliomservices.service ->
    sp:Eliomsessions.server_params ->
    ?fragment:string ->
    ('-> Xhtmltypes.form_content XHTML.M.elt list) ->
    [> Xhtmltypes.form ] XHTML.M.elt
  val post_form :
    ?a:Xhtmltypes.form_attrib XHTML.M.attrib list ->
    service:('a, 'b, [< Eliomservices.post_service_kind ],
             [< Eliomservices.suff ], 'c, 'd, [< Eliomservices.registrable ])
            Eliomservices.service ->
    sp:Eliomsessions.server_params ->
    ?fragment:string ->
    ('-> Xhtmltypes.form_content XHTML.M.elt list) ->
    '-> [> Xhtmltypes.form ] XHTML.M.elt
  type basic_input_type = [ `Hidden | `Password | `Submit | `Text ]
  val int_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    input_type:[< Eliompredefmod.XHTMLFORMSSIG.basic_input_type ] ->
    ?name:[< int Eliomparameters.setoneopt ] Eliomparameters.param_name ->
    ?value:int -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val float_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    input_type:[< Eliompredefmod.XHTMLFORMSSIG.basic_input_type ] ->
    ?name:[< float Eliomparameters.setoneopt ] Eliomparameters.param_name ->
    ?value:float -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val string_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    input_type:[< Eliompredefmod.XHTMLFORMSSIG.basic_input_type ] ->
    ?name:[< string Eliomparameters.setoneopt ] Eliomparameters.param_name ->
    ?value:string -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val user_type_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    input_type:[< Eliompredefmod.XHTMLFORMSSIG.basic_input_type ] ->
    ?name:[< 'Eliomparameters.setoneopt ] Eliomparameters.param_name ->
    ?value:'-> ('-> string) -> [> Xhtmltypes.input ] XHTML.M.elt
  val raw_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    input_type:[< `Button | `Hidden | `Password | `Reset | `Submit | `Text ] ->
    ?name:string ->
    ?value:string -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val file_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    name:[< Extensions.file_info Eliomparameters.setoneopt ]
         Eliomparameters.param_name ->
    unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val image_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    name:[< Eliomparameters.coordinates Eliomparameters.oneopt ]
         Eliomparameters.param_name ->
    ?src:XHTML.M.uri -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val int_image_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    name:[< (int * Eliomparameters.coordinates) Eliomparameters.oneopt ]
         Eliomparameters.param_name ->
    value:int ->
    ?src:XHTML.M.uri -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val float_image_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    name:[< (float * Eliomparameters.coordinates) Eliomparameters.oneopt ]
         Eliomparameters.param_name ->
    value:float ->
    ?src:XHTML.M.uri -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val string_image_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    name:[< (string * Eliomparameters.coordinates) Eliomparameters.oneopt ]
         Eliomparameters.param_name ->
    value:string ->
    ?src:XHTML.M.uri -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val user_type_image_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    name:[< ('a * Eliomparameters.coordinates) Eliomparameters.oneopt ]
         Eliomparameters.param_name ->
    value:'->
    ?src:XHTML.M.uri -> ('-> string) -> [> Xhtmltypes.input ] XHTML.M.elt
  val raw_image_input :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    name:string ->
    value:string ->
    ?src:XHTML.M.uri -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val bool_checkbox :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `One of bool ] Eliomparameters.param_name ->
    unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val int_checkbox :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `Set of int ] Eliomparameters.param_name ->
    value:int -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val float_checkbox :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `Set of float ] Eliomparameters.param_name ->
    value:float -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val string_checkbox :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `Set of string ] Eliomparameters.param_name ->
    value:string -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val user_type_checkbox :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `Set of 'a ] Eliomparameters.param_name ->
    value:'-> ('-> string) -> [> Xhtmltypes.input ] XHTML.M.elt
  val raw_checkbox :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:string -> value:string -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val string_radio :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `Opt of string ] Eliomparameters.param_name ->
    value:string -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val int_radio :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `Opt of int ] Eliomparameters.param_name ->
    value:int -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val float_radio :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `Opt of float ] Eliomparameters.param_name ->
    value:float -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  val user_type_radio :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:[ `Opt of 'a ] Eliomparameters.param_name ->
    value:'-> ('-> string) -> [> Xhtmltypes.input ] XHTML.M.elt
  val raw_radio :
    ?a:Xhtmltypes.input_attrib XHTML.M.attrib list ->
    ?checked:bool ->
    name:string -> value:string -> unit -> [> Xhtmltypes.input ] XHTML.M.elt
  type button_type = [ `Button | `Reset | `Submit ]
  val string_button :
    ?a:Xhtmltypes.button_attrib XHTML.M.attrib list ->
    name:[< string Eliomparameters.setone ] Eliomparameters.param_name ->
    value:string ->
    Xhtmltypes.button_content XHTML.M.elt list ->
    [> Xhtmltypes.button ] XHTML.M.elt
  val int_button :
    ?a:Xhtmltypes.button_attrib XHTML.M.attrib list ->
    name:[< int Eliomparameters.setone ] Eliomparameters.param_name ->
    value:int ->
    Xhtmltypes.button_content XHTML.M.elt list ->
    [> Xhtmltypes.button ] XHTML.M.elt
  val float_button :
    ?a:Xhtmltypes.button_attrib XHTML.M.attrib list ->
    name:[< float Eliomparameters.setone ] Eliomparameters.param_name ->
    value:float ->
    Xhtmltypes.button_content XHTML.M.elt list ->
    [> Xhtmltypes.button ] XHTML.M.elt
  val user_type_button :
    ?a:Xhtmltypes.button_attrib XHTML.M.attrib list ->
    name:[< 'Eliomparameters.setone ] Eliomparameters.param_name ->
    value:'->
    ('-> string) ->
    Xhtmltypes.button_content XHTML.M.elt list ->
    [> Xhtmltypes.button ] XHTML.M.elt
  val raw_button :
    ?a:Xhtmltypes.button_attrib XHTML.M.attrib list ->
    button_type:[< Eliompredefmod.XHTMLFORMSSIG.button_type ] ->
    name:string ->
    value:string ->
    Xhtmltypes.button_content XHTML.M.elt list ->
    [> Xhtmltypes.button ] XHTML.M.elt
  val button :
    ?a:Xhtmltypes.button_attrib XHTML.M.attrib list ->
    button_type:[< Eliompredefmod.XHTMLFORMSSIG.button_type ] ->
    Xhtmltypes.button_content XHTML.M.elt list ->
    [> Xhtmltypes.button ] XHTML.M.elt
  val textarea :
    ?a:Xhtmltypes.textarea_attrib XHTML.M.attrib list ->
    name:[< string Eliomparameters.setoneopt ] Eliomparameters.param_name ->
    ?value:Xhtmltypes.pcdata XHTML.M.elt ->
    rows:int -> cols:int -> unit -> [> Xhtmltypes.textarea ] XHTML.M.elt
  val raw_textarea :
    ?a:Xhtmltypes.textarea_attrib XHTML.M.attrib list ->
    name:string ->
    ?value:Xhtmltypes.pcdata XHTML.M.elt ->
    rows:int -> cols:int -> unit -> [> Xhtmltypes.textarea ] XHTML.M.elt
  type 'a soption =
      Xhtmltypes.option_attrib XHTML.M.attrib list * 'a *
      Xhtmltypes.pcdata XHTML.M.elt option * bool
  type 'a select_opt =
      Optgroup of
        [ `Class | `Disabled | `Id | `Title | `XML_lang ] XHTML.M.attrib list *
        string * 'Eliompredefmod.XHTMLFORMSSIG.soption *
        'Eliompredefmod.XHTMLFORMSSIG.soption list
    | Option of 'Eliompredefmod.XHTMLFORMSSIG.soption
  val int_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:[< `One of int ] Eliomparameters.param_name ->
    int Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    int Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    [> Xhtmltypes.select ] XHTML.M.elt
  val float_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:[< `One of float ] Eliomparameters.param_name ->
    float Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    float Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    [> Xhtmltypes.select ] XHTML.M.elt
  val string_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:[< `One of string ] Eliomparameters.param_name ->
    string Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    string Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    [> Xhtmltypes.select ] XHTML.M.elt
  val user_type_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:[< `One of 'a ] Eliomparameters.param_name ->
    'Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    'Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    ('-> string) -> [> Xhtmltypes.select ] XHTML.M.elt
  val raw_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:string ->
    string Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    string Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    [> Xhtmltypes.select ] XHTML.M.elt
  val int_multiple_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:[< `Set of int ] Eliomparameters.param_name ->
    int Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    int Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    [> Xhtmltypes.select ] XHTML.M.elt
  val float_multiple_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:[< `Set of float ] Eliomparameters.param_name ->
    float Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    float Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    [> Xhtmltypes.select ] XHTML.M.elt
  val string_multiple_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:[< `Set of string ] Eliomparameters.param_name ->
    string Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    string Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    [> Xhtmltypes.select ] XHTML.M.elt
  val user_type_multiple_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:[< `Set of 'a ] Eliomparameters.param_name ->
    'Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    'Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    ('-> string) -> [> Xhtmltypes.select ] XHTML.M.elt
  val raw_multiple_select :
    ?a:Xhtmltypes.select_attrib XHTML.M.attrib list ->
    name:string ->
    string Eliompredefmod.XHTMLFORMSSIG.select_opt ->
    string Eliompredefmod.XHTMLFORMSSIG.select_opt list ->
    [> Xhtmltypes.select ] XHTML.M.elt
end