sig
  type subformat = PDFUA1 | PDFUA2
  val subformat_of_string : string -> Cpdfua.subformat
  val test_matterhorn_print : Pdf.t -> string -> unit
  val test_matterhorn_json : Pdf.t -> string -> Cpdfyojson.Safe.t
  val mark : Pdf.t -> unit
  val mark2 : int -> Pdf.t -> unit
  val remove_mark : Pdf.t -> unit
  val print_struct_tree : Pdf.t -> unit
  val extract_struct_tree : Pdf.t -> Cpdfyojson.Safe.t
  val replace_struct_tree : Pdf.t -> Cpdfyojson.Safe.t -> unit
  val create_pdfua1 : string -> Pdfpaper.t -> int -> Pdf.t
  val create_pdfua2 : string -> Pdfpaper.t -> int -> Pdf.t
end