sig
  type 'a t = 'Arg_type.t
  val create :
    ?complete:(Core_kernel.Std.Univ_map.t -> part:string -> string list) ->
    ?key:'Core_kernel.Std.Univ_map.Multi.Key.t -> (string -> 'a) -> 'a t
  val of_map :
    ?key:'Core_kernel.Std.Univ_map.Multi.Key.t ->
    'Core_kernel.Std.String.Map.t -> 'a t
  val of_alist_exn :
    ?key:'Core_kernel.Std.Univ_map.Multi.Key.t ->
    (string * 'a) list -> 'a t
  val file :
    ?key:'Core_kernel.Std.Univ_map.Multi.Key.t -> (string -> 'a) -> 'a t
  module Export :
    sig
      val string : string t
      val int : int t
      val char : char t
      val float : float t
      val bool : bool t
      val date : Date.t t
      val time : Time.t t
      val time_ofday : Time.Ofday.Zoned.t t
      val time_ofday_unzoned : Time.Ofday.t t
      val time_span : Time.Span.t t
      val file : string t
    end
end