sig
  type move
  val move :
    ?maybe:bool ->
    ?dst:Assemblage.Path.t ->
    Assemblage.Path.t -> Assemblage_tools.Opam.Install.move
  type field_elt =
      [ `Bin of Assemblage_tools.Opam.Install.move
      | `Doc of Assemblage_tools.Opam.Install.move
      | `Etc of Assemblage_tools.Opam.Install.move
      | `Lib of Assemblage_tools.Opam.Install.move
      | `Man of Assemblage_tools.Opam.Install.move
      | `Misc of Assemblage_tools.Opam.Install.move
      | `Sbin of Assemblage_tools.Opam.Install.move
      | `Share of Assemblage_tools.Opam.Install.move
      | `Share_root of Assemblage_tools.Opam.Install.move
      | `Stublibs of Assemblage_tools.Opam.Install.move
      | `Toplevel of Assemblage_tools.Opam.Install.move ]
  type t =
      [ `Header of string option ] *
      Assemblage_tools.Opam.Install.field_elt list
  val to_string : Assemblage_tools.Opam.Install.t -> string
  val of_project :
    ?add:Assemblage_tools.Opam.Install.field_elt list ->
    Assemblage.project -> Assemblage_tools.Opam.Install.t
end