sig
  type input_error =
      [ `bam of Biocaml_bam.Error.raw_bam
      | `bam_to_item of Biocaml_bam.Error.raw_to_item
      | `bed of Biocaml_bed.Error.parsing
      | `fasta of Biocaml_fasta.Error.t
      | `fasta_lengths_mismatch
      | `fastq of Biocaml_fastq.Error.t
      | `gff of Biocaml_gff.Error.parsing
      | `sam of Biocaml_sam.Error.string_to_raw
      | `sam_to_item of Biocaml_sam.Error.raw_to_item
      | `table_row of Biocaml_table.Row.Error.t
      | `unzip of Biocaml_zip.Error.unzip
      | `wig of Biocaml_wig.Error.parsing ]
  type tags = Biocaml_tags.t
  type t =
      [ `file_to_bed of
          (string,
           (Biocaml_bed.item, Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t
      | `file_to_char_fasta of
          (string,
           (Biocaml_fasta.char_seq Biocaml_fasta.raw_item,
            Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t
      | `file_to_fastq of
          (string,
           (Biocaml_fastq.item, Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t
      | `file_to_gff of
          (string,
           (Biocaml_gff.item, Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t
      | `file_to_int_fasta of
          (string,
           (Biocaml_fasta.int_seq Biocaml_fasta.raw_item,
            Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t
      | `file_to_sam_item of
          (string,
           (Biocaml_sam.item, Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t
      | `file_to_table of
          (string,
           (Biocaml_table.Row.t, Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t
      | `file_to_wig of
          (string,
           (Biocaml_wig.item, Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t
      | `two_files_to_fastq of
          (string * string,
           (Biocaml_fastq.item, Biocaml_tags.Input_transform.input_error)
           Core.Result.t)
          Biocaml_transform.t ]
  val name : Biocaml_tags.Input_transform.t -> string
  val from_tags :
    ?zlib_buffer_size:int ->
    Biocaml_tags.Input_transform.tags ->
    (Biocaml_tags.Input_transform.t, [> `not_implemented of string ])
    Core.Result.t
  val sexp_of_input_error :
    Biocaml_tags.Input_transform.input_error -> Sexplib.Sexp.t
end