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