sig
  type 'a value
  val const : '-> 'Assemblage.Conf.value
  val app :
    ('-> 'b) Assemblage.Conf.value ->
    'Assemblage.Conf.value -> 'Assemblage.Conf.value
  val ( $ ) :
    ('-> 'b) Assemblage.Conf.value ->
    'Assemblage.Conf.value -> 'Assemblage.Conf.value
  val true_ : bool Assemblage.Conf.value
  val false_ : bool Assemblage.Conf.value
  val neg : bool Assemblage.Conf.value -> bool Assemblage.Conf.value
  val ( &&& ) :
    bool Assemblage.Conf.value ->
    bool Assemblage.Conf.value -> bool Assemblage.Conf.value
  val ( ||| ) :
    bool Assemblage.Conf.value ->
    bool Assemblage.Conf.value -> bool Assemblage.Conf.value
  val pick_if :
    bool Assemblage.Conf.value ->
    'Assemblage.Conf.value ->
    'Assemblage.Conf.value -> 'Assemblage.Conf.value
  module Option :
    sig
      val wrap :
        'Assemblage.Conf.value option -> 'a option Assemblage.Conf.value
      val some : 'Assemblage.Conf.value -> 'a option Assemblage.Conf.value
      val get :
        ?none:'Assemblage.Conf.value ->
        'a option Assemblage.Conf.value -> 'Assemblage.Conf.value
    end
  type 'parser = string -> [ `Error of string | `Ok of 'a ]
  type 'a printer = Format.formatter -> '-> unit
  type 'a converter = 'Assemblage.Conf.parser * 'Assemblage.Conf.printer
  val parser : 'Assemblage.Conf.converter -> 'Assemblage.Conf.parser
  val printer : 'Assemblage.Conf.converter -> 'Assemblage.Conf.printer
  type 'a key
  val key :
    ?public:bool ->
    ?docs:string ->
    ?docv:string ->
    ?doc:string ->
    string ->
    'Assemblage.Conf.converter ->
    'Assemblage.Conf.value -> 'Assemblage.Conf.key
  val value : 'Assemblage.Conf.key -> 'Assemblage.Conf.value
  type scheme
  type def
  val def : 'Assemblage.Conf.key -> '-> Assemblage.Conf.def
  val defv :
    'Assemblage.Conf.key -> 'Assemblage.Conf.value -> Assemblage.Conf.def
  val scheme :
    ?doc:string ->
    ?base:Assemblage.Conf.scheme ->
    string -> Assemblage.Conf.def list -> Assemblage.Conf.scheme
  val project_version : string Assemblage.Conf.key
  val docs_project : string
  val debug : bool Assemblage.Conf.key
  val profile : bool Assemblage.Conf.key
  val warn_error : bool Assemblage.Conf.key
  val test : bool Assemblage.Conf.key
  val doc : bool Assemblage.Conf.key
  val jobs : int Assemblage.Conf.key
  val docs_build_properties : string
  val root_dir : Assemblage.Path.t Assemblage.Conf.key
  val build_dir : Assemblage.Path.rel Assemblage.Conf.key
  val docs_build_directories : string
  val ocaml_native_tools : bool Assemblage.Conf.key
  val ocaml_version : (int * int * int * string option) Assemblage.Conf.key
  val ocaml_byte : bool Assemblage.Conf.key
  val ocaml_native : bool Assemblage.Conf.key
  val ocaml_native_dynlink : bool Assemblage.Conf.key
  val ocaml_js : bool Assemblage.Conf.key
  val ocaml_annot : bool Assemblage.Conf.key
  val ocaml_build_ast : bool Assemblage.Conf.key
  val ocaml_dumpast : string Assemblage.Conf.key
  val ocamlc : string Assemblage.Conf.key
  val ocamlopt : string Assemblage.Conf.key
  val js_of_ocaml : string Assemblage.Conf.key
  val ocamlmklib : string Assemblage.Conf.key
  val ocamldep : string Assemblage.Conf.key
  val ocamllex : string Assemblage.Conf.key
  val ocamlyacc : string Assemblage.Conf.key
  val ocaml : string Assemblage.Conf.key
  val ocamlrun : string Assemblage.Conf.key
  val ocamldebug : string Assemblage.Conf.key
  val ocamlprof : string Assemblage.Conf.key
  val ocamlfind : string Assemblage.Conf.key
  val opam : string Assemblage.Conf.key
  val opam_installer : string Assemblage.Conf.key
  val opam_admin : string Assemblage.Conf.key
  val docs_ocaml_system : string
  val c_dynlink : bool Assemblage.Conf.key
  val c_js : bool Assemblage.Conf.key
  val cc : string Assemblage.Conf.key
  val pkg_config : string Assemblage.Conf.key
  val docs_c_system : string
  val uname : string Assemblage.Conf.key
  val host_os : string Assemblage.Conf.key
  val host_arch : string Assemblage.Conf.key
  val host_word_size : int Assemblage.Conf.key
  val target_os : string Assemblage.Conf.key
  val target_arch : string Assemblage.Conf.key
  val target_word_size : int Assemblage.Conf.key
  val docs_machine_information : string
  val echo : string Assemblage.Conf.key
  val cd : string Assemblage.Conf.key
  val ln : string Assemblage.Conf.key
  val cp : string Assemblage.Conf.key
  val mv : string Assemblage.Conf.key
  val rm : string Assemblage.Conf.key
  val rmdir : string Assemblage.Conf.key
  val mkdir : string Assemblage.Conf.key
  val cat : string Assemblage.Conf.key
  val make : string Assemblage.Conf.key
  val docs_system_utilities : string
  val bool : bool Assemblage.Conf.converter
  val int : int Assemblage.Conf.converter
  val string : string Assemblage.Conf.converter
  val path : Assemblage.Path.t Assemblage.Conf.converter
  val abs_path : Assemblage.Path.abs Assemblage.Conf.converter
  val rel_path : Assemblage.Path.rel Assemblage.Conf.converter
  val enum : (string * 'a) list -> 'Assemblage.Conf.converter
  val version : (int * int * int * string option) Assemblage.Conf.converter
end