sig
  type 'a t = 'a option
  val map :
    ('-> 'b) ->
    'Ocsigen_lib_base.Option.t -> 'Ocsigen_lib_base.Option.t
  val get : (unit -> 'a) -> 'Ocsigen_lib_base.Option.t -> 'a
  val get' : '-> 'Ocsigen_lib_base.Option.t -> 'a
  val iter : ('-> unit) -> 'Ocsigen_lib_base.Option.t -> unit
  val return : '-> 'Ocsigen_lib_base.Option.t
  val bind :
    'Ocsigen_lib_base.Option.t ->
    ('-> 'Ocsigen_lib_base.Option.t) -> 'Ocsigen_lib_base.Option.t
  val to_list : 'Ocsigen_lib_base.Option.t -> 'a list
  module Lwt :
    sig
      val map :
        ('-> 'Lwt.t) ->
        'Ocsigen_lib_base.Option.t -> 'Ocsigen_lib_base.Option.t Lwt.t
      val get :
        (unit -> 'Lwt.t) -> 'Ocsigen_lib_base.Option.t -> 'Lwt.t
      val get' : 'Lwt.t -> 'Ocsigen_lib_base.Option.t -> 'Lwt.t
      val iter :
        ('-> unit Lwt.t) -> 'Ocsigen_lib_base.Option.t -> unit Lwt.t
      val bind :
        'Ocsigen_lib_base.Option.t ->
        ('-> 'Ocsigen_lib_base.Option.t Lwt.t) ->
        'Ocsigen_lib_base.Option.t Lwt.t
    end
end