sig
  exception Bad of string
  type record_type_code = string
  type header_line =
    Biocaml_sam.header_line =
      Comment of string
    | NonComment of record_type_code * (string * string) list
  type header = header_line list
  type alignment =
    Biocaml_sam.alignment = {
    qname : string;
    flag : int;
    rname : string;
    pos : int;
    mapq : int;
    cigar : string;
    rnext : string;
    pnext : int;
    tlen : int;
    seq : string;
    qual : string;
    optional : (string * char * string) list;
  }
  val record_type_code_of_header_line : header_line -> string
  val enum_file : string -> header * alignment Batteries.Enum.t
  val header_line_to_string : header_line -> string
  val header_to_string : header -> string
  val alignment_to_string : alignment -> string
end