sig
  type timeout = TGlobal | TNone | TSome of float
  type service_session
  type data_session
  type persistent_session
  val close_service_session :
    session:Eliomsessions.Session_admin.service_session -> unit
  val close_volatile_data_session :
    session:Eliomsessions.Session_admin.data_session -> unit
  val close_persistent_data_session :
    session:Eliomsessions.Session_admin.persistent_session -> unit Lwt.t
  val get_volatile_session_data :
    session:Eliomsessions.Session_admin.data_session ->
    table:'Eliomsessions.volatile_table -> 'a
  val get_persistent_session_data :
    session:Eliomsessions.Session_admin.persistent_session ->
    table:'Eliomsessions.persistent_table -> 'Lwt.t
  val remove_volatile_session_data :
    session:Eliomsessions.Session_admin.data_session ->
    table:'Eliomsessions.volatile_table -> unit
  val remove_persistent_session_data :
    session:Eliomsessions.Session_admin.persistent_session ->
    table:'Eliomsessions.persistent_table -> unit Lwt.t
  val get_service_session_name :
    session:Eliomsessions.Session_admin.service_session -> string option
  val get_volatile_data_session_name :
    session:Eliomsessions.Session_admin.data_session -> string option
  val get_persistent_data_session_name :
    session:Eliomsessions.Session_admin.persistent_session -> string option
  val set_service_session_timeout :
    session:Eliomsessions.Session_admin.service_session ->
    float option -> unit
  val set_volatile_data_session_timeout :
    session:Eliomsessions.Session_admin.data_session -> float option -> unit
  val set_persistent_data_session_timeout :
    session:Eliomsessions.Session_admin.persistent_session ->
    float option -> unit Lwt.t
  val get_service_session_timeout :
    session:Eliomsessions.Session_admin.service_session ->
    Eliomsessions.Session_admin.timeout
  val get_volatile_data_session_timeout :
    session:Eliomsessions.Session_admin.data_session ->
    Eliomsessions.Session_admin.timeout
  val get_persistent_data_session_timeout :
    session:Eliomsessions.Session_admin.persistent_session ->
    Eliomsessions.Session_admin.timeout
  val unset_service_session_timeout :
    session:Eliomsessions.Session_admin.service_session -> unit
  val unset_volatile_data_session_timeout :
    session:Eliomsessions.Session_admin.data_session -> unit
  val unset_persistent_data_session_timeout :
    session:Eliomsessions.Session_admin.persistent_session -> unit Lwt.t
  val iter_service_sessions :
    ?sp:Eliomsessions.server_params ->
    (Eliomsessions.Session_admin.service_session -> unit Lwt.t) -> unit Lwt.t
  val iter_volatile_data_sessions :
    ?sp:Eliomsessions.server_params ->
    (Eliomsessions.Session_admin.data_session -> unit Lwt.t) -> unit Lwt.t
  val iter_persistent_data_sessions :
    (Eliomsessions.Session_admin.persistent_session -> unit Lwt.t) ->
    unit Lwt.t
  val fold_service_sessions :
    ?sp:Eliomsessions.server_params ->
    (Eliomsessions.Session_admin.service_session -> '-> 'Lwt.t) ->
    '-> 'Lwt.t
  val fold_volatile_data_sessions :
    ?sp:Eliomsessions.server_params ->
    (Eliomsessions.Session_admin.data_session -> '-> 'Lwt.t) ->
    '-> 'Lwt.t
  val fold_persistent_data_sessions :
    (Eliomsessions.Session_admin.persistent_session -> '-> 'Lwt.t) ->
    '-> 'Lwt.t
end