sig   val disable_main : unit -> unit   module Codec :     sig       type error = Corrupted of (string * string) | Version of int * int       val pp_error : Format.formatter -> Topkg.Private.Codec.error -> unit       exception Error of Topkg.Private.Codec.error       type 'a t       val v :         kind:string ->         enc:('-> string) -> dec:(string -> 'a) -> 'Topkg.Private.Codec.t       val kind : 'Topkg.Private.Codec.t -> string       val enc : 'Topkg.Private.Codec.t -> '-> string       val dec : 'Topkg.Private.Codec.t -> string -> 'a       val dec_result : 'Topkg.Private.Codec.t -> string -> 'Topkg.result       val with_kind :         string -> 'Topkg.Private.Codec.t -> 'Topkg.Private.Codec.t       val write :         Topkg.fpath -> 'Topkg.Private.Codec.t -> '-> unit Topkg.result       val read : Topkg.fpath -> 'Topkg.Private.Codec.t -> 'Topkg.result       val unit : unit Topkg.Private.Codec.t       val const : '-> 'Topkg.Private.Codec.t       val bool : bool Topkg.Private.Codec.t       val int : int Topkg.Private.Codec.t       val string : string Topkg.Private.Codec.t       val option :         'Topkg.Private.Codec.t -> 'a option Topkg.Private.Codec.t       val result :         ok:'Topkg.Private.Codec.t ->         error:'Topkg.Private.Codec.t ->         ('a, 'b) Result.result Topkg.Private.Codec.t       val list : 'Topkg.Private.Codec.t -> 'a list Topkg.Private.Codec.t       val pair :         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t -> ('a * 'b) Topkg.Private.Codec.t       val t3 :         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t -> ('a * 'b * 'c) Topkg.Private.Codec.t       val t4 :         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t -> ('a * 'b * 'c * 'd) Topkg.Private.Codec.t       val t5 :         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t ->         'Topkg.Private.Codec.t ->         ('a * 'b * 'c * 'd * 'e) Topkg.Private.Codec.t       val alt :         kind:string ->         ('-> int) ->         'Topkg.Private.Codec.t array -> 'Topkg.Private.Codec.t       val version :         int -> 'Topkg.Private.Codec.t -> 'Topkg.Private.Codec.t       val view :         ?kind:string ->         ('-> 'b) * ('-> 'a) ->         'Topkg.Private.Codec.t -> 'Topkg.Private.Codec.t       val msg : [ `Msg of string ] Topkg.Private.Codec.t       val result_error_msg :         'Topkg.Private.Codec.t -> 'Topkg.result Topkg.Private.Codec.t       val fpath : Topkg.Fpath.t Topkg.Private.Codec.t       val cmd : Topkg.Cmd.t Topkg.Private.Codec.t     end   module Pkg :     sig       type t       val empty : Topkg.Private.Pkg.t       val name : Topkg.Private.Pkg.t -> string       val delegate : Topkg.Private.Pkg.t -> Topkg.Cmd.t option       val build_dir : Topkg.Private.Pkg.t -> Topkg.fpath       val readmes : Topkg.Private.Pkg.t -> Topkg.fpath list       val change_logs : Topkg.Private.Pkg.t -> Topkg.fpath list       val licenses : Topkg.Private.Pkg.t -> Topkg.fpath list       val opam : name:string -> Topkg.Private.Pkg.t -> Topkg.fpath       val distrib_uri : Topkg.Private.Pkg.t -> string option       val publish_artefacts :         Topkg.Private.Pkg.t -> [ `Alt of string | `Distrib | `Doc ] list       val lint_custom :         Topkg.Private.Pkg.t -> (unit -> Topkg.R.msg Topkg.result list) option       val lint_files : Topkg.Private.Pkg.t -> Topkg.fpath list option       val lint_metas : Topkg.Private.Pkg.t -> (Topkg.fpath * bool) list       val lint_opams :         Topkg.Private.Pkg.t -> (Topkg.fpath * bool * string list option) list       val codec : Topkg.Private.Pkg.t Topkg.Private.Codec.t     end   module Ipc :     sig       type 'a t       val cmd : 'Topkg.Private.Ipc.t -> Topkg.Cmd.t       val codec : 'Topkg.Private.Ipc.t -> 'Topkg.Private.Codec.t       val answer : 'Topkg.Private.Ipc.t -> Topkg.fpath       val pkg : unit -> Topkg.Private.Pkg.t Topkg.Private.Ipc.t       val lint_custom :         unit -> Topkg.R.msg Topkg.result list option Topkg.Private.Ipc.t       val distrib_prepare :         dist_build_dir:Topkg.fpath ->         name:string ->         version:string ->         opam:Topkg.fpath -> Topkg.fpath list Topkg.result Topkg.Private.Ipc.t     end   module Opam :     sig       module File :         sig           type t = (string * string list) list           val codec : Topkg.Private.Opam.File.t Topkg.Private.Codec.t           val fields :             Topkg.fpath -> (string * string list) list Topkg.result         end     end end