sig
  module Exit :
    sig
      type code = int
      val ok : Cmdliner.Cmd.Exit.code
      val some_error : Cmdliner.Cmd.Exit.code
      val cli_error : Cmdliner.Cmd.Exit.code
      val internal_error : Cmdliner.Cmd.Exit.code
      type info
      val info :
        ?docs:string ->
        ?doc:string ->
        ?max:Cmdliner.Cmd.Exit.code ->
        Cmdliner.Cmd.Exit.code -> Cmdliner.Cmd.Exit.info
      val info_code : Cmdliner.Cmd.Exit.info -> Cmdliner.Cmd.Exit.code
      val defaults : Cmdliner.Cmd.Exit.info list
    end
  module Env :
    sig
      type var = string
      type info = Cmdliner.Term.env_info
      val info :
        ?deprecated:string ->
        ?docs:string ->
        ?doc:string -> Cmdliner.Cmd.Env.var -> Cmdliner.Cmd.Env.info
    end
  type info
  val info :
    ?deprecated:string ->
    ?man_xrefs:Cmdliner.Manpage.xref list ->
    ?man:Cmdliner.Manpage.block list ->
    ?envs:Cmdliner.Cmd.Env.info list ->
    ?exits:Cmdliner.Cmd.Exit.info list ->
    ?sdocs:string ->
    ?docs:string ->
    ?doc:string -> ?version:string -> string -> Cmdliner.Cmd.info
  type 'a t
  val v : Cmdliner.Cmd.info -> 'Cmdliner.Term.t -> 'Cmdliner.Cmd.t
  val group :
    ?default:'Cmdliner.Term.t ->
    Cmdliner.Cmd.info -> 'Cmdliner.Cmd.t list -> 'Cmdliner.Cmd.t
  val name : 'Cmdliner.Cmd.t -> string
  val eval :
    ?help:Stdlib.Format.formatter ->
    ?err:Stdlib.Format.formatter ->
    ?catch:bool ->
    ?env:(string -> string option) ->
    ?argv:string array ->
    ?term_err:Cmdliner.Cmd.Exit.code ->
    unit Cmdliner.Cmd.t -> Cmdliner.Cmd.Exit.code
  val eval' :
    ?help:Stdlib.Format.formatter ->
    ?err:Stdlib.Format.formatter ->
    ?catch:bool ->
    ?env:(string -> string option) ->
    ?argv:string array ->
    ?term_err:Cmdliner.Cmd.Exit.code ->
    Cmdliner.Cmd.Exit.code Cmdliner.Cmd.t -> Cmdliner.Cmd.Exit.code
  val eval_result :
    ?help:Stdlib.Format.formatter ->
    ?err:Stdlib.Format.formatter ->
    ?catch:bool ->
    ?env:(string -> string option) ->
    ?argv:string array ->
    ?term_err:Cmdliner.Cmd.Exit.code ->
    (unit, string) Stdlib.result Cmdliner.Cmd.t -> Cmdliner.Cmd.Exit.code
  val eval_result' :
    ?help:Stdlib.Format.formatter ->
    ?err:Stdlib.Format.formatter ->
    ?catch:bool ->
    ?env:(string -> string option) ->
    ?argv:string array ->
    ?term_err:Cmdliner.Cmd.Exit.code ->
    (Cmdliner.Cmd.Exit.code, string) Stdlib.result Cmdliner.Cmd.t ->
    Cmdliner.Cmd.Exit.code
  type 'a eval_ok = [ `Help | `Ok of '| `Version ]
  type eval_error = [ `Exn | `Parse | `Term ]
  type 'a eval_exit = [ `Exit of Cmdliner.Cmd.Exit.code | `Ok of 'a ]
  val eval_value :
    ?help:Stdlib.Format.formatter ->
    ?err:Stdlib.Format.formatter ->
    ?catch:bool ->
    ?env:(string -> string option) ->
    ?argv:string array ->
    'Cmdliner.Cmd.t ->
    ('Cmdliner.Cmd.eval_ok, Cmdliner.Cmd.eval_error) Stdlib.result
  val eval_value' :
    ?help:Stdlib.Format.formatter ->
    ?err:Stdlib.Format.formatter ->
    ?catch:bool ->
    ?env:(string -> string option) ->
    ?argv:string array ->
    ?term_err:int -> 'Cmdliner.Cmd.t -> 'Cmdliner.Cmd.eval_exit
  val eval_peek_opts :
    ?version_opt:bool ->
    ?env:(string -> string option) ->
    ?argv:string array ->
    'Cmdliner.Term.t ->
    'a option *
    ('Cmdliner.Cmd.eval_ok, Cmdliner.Cmd.eval_error) Stdlib.result
end