sig
  type tables
  type extramap = (string * (string * Cudf_types.typedecl1)) list
  type options = {
    extras_opt : Debian.Debcudf.extramap;
    native : string option;
    foreign : string list;
    host : string option;
    ignore_essential : bool;
    builds_from : bool;
    drop_bd_indep : bool;
    drop_bd_arch : bool;
    profiles : string list;
  }
  val default_options : Debian.Debcudf.options
  val init_tables :
    ?options:Debian.Debcudf.options ->
    ?step:int ->
    ?versionlist:Pef.Packages_types.version list ->
    Debian.Packages.package list -> Debian.Debcudf.tables
  val clear : Debian.Debcudf.tables -> unit
  val get_cudf_version :
    Debian.Debcudf.tables ->
    Pef.Packages_types.name * Pef.Packages_types.version -> int
  val get_real_name : Cudf_types.pkgname -> string * string option
  val get_real_version :
    Debian.Debcudf.tables ->
    Cudf_types.pkgname * Cudf_types.version ->
    Pef.Packages_types.name * Pef.Packages_types.architecture option *
    Pef.Packages_types.version
  val get_essential :
    ?options:Debian.Debcudf.options ->
    Debian.Debcudf.tables -> (Cudf_types.vpkglist * Cudf.package list) list
  val tocudf :
    Debian.Debcudf.tables ->
    ?options:Debian.Debcudf.options ->
    ?inst:bool -> Debian.Packages.package -> Cudf.package
  val preamble : Cudf.preamble
  val load_universe :
    ?options:Debian.Debcudf.options ->
    Debian.Packages.package list -> Cudf.universe
  val load_list :
    ?options:Debian.Debcudf.options ->
    Debian.Packages.package list -> Cudf.package list
end