sig
  module Remove = Biokepi_run_environment.Workflow_utilities.Remove
  val sam_to_bam :
    run_with:Biokepi_run_environment.Machine.t ->
    reference_build:string ->
    < is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; .. >
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < host : Biokepi_run_environment.Common.KEDSL.Host.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; reference_build : string;
      sorting : [ `Coordinate | `Read_name ] option >
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val faidx :
    run_with:Biokepi_run_environment.Machine.t ->
    < is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; .. >
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < exists : Ketrew_pure.Target.Condition.t;
      is_bigger_than : int -> Ketrew_pure.Target.Condition.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string >
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val flagstat :
    run_with:Biokepi_run_environment.Machine.t ->
    < is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; .. >
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < exists : Ketrew_pure.Target.Condition.t;
      is_bigger_than : int -> Ketrew_pure.Target.Condition.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string >
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val bgzip :
    run_with:Biokepi_run_environment.Machine.t ->
    < is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; .. >
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    string ->
    < exists : Ketrew_pure.Target.Condition.t;
      is_bigger_than : int -> Ketrew_pure.Target.Condition.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string >
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val tabix :
    run_with:Biokepi_run_environment.Machine.t ->
    tabular_format:[< `Bed | `Gff | `Psltab | `Sam | `Vcf ] ->
    < is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; .. >
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < exists : Ketrew_pure.Target.Condition.t;
      is_bigger_than : int -> Ketrew_pure.Target.Condition.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string >
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val do_on_bam :
    run_with:Biokepi_run_environment.Machine.t ->
    ?more_depends_on:Biokepi_run_environment.Common.KEDSL.workflow_edge list ->
    name:string ->
    ?more_requirements:Biokepi_run_environment.Machine.Make_fun.Requirement.t
                       list ->
    < is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : 'a; .. >
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    product:(< is_done : Biokepi_run_environment.Common.KEDSL.Condition.t
                         option;
               path : string; .. >
             as 'b)
            Biokepi_run_environment.Common.KEDSL.product ->
    make_command:('-> string -> string list) ->
    'Biokepi_run_environment.Common.KEDSL.workflow_node
  val sort_bam_no_check :
    run_with:Biokepi_run_environment.Machine.t ->
    by:[ `Coordinate | `Read_name ] ->
    < host : Biokepi_run_environment.Common.KEDSL.Host.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; reference_build : string;
      sorting : [ `Coordinate | `Read_name ] option >
    Biokepi_run_environment.Common.KEDSL.product
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < host : Biokepi_run_environment.Common.KEDSL.Host.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; reference_build : string;
      sorting : [ `Coordinate | `Read_name ] option >
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val sort_bam_if_necessary :
    run_with:Biokepi_run_environment.Machine.t ->
    by:[ `Coordinate | `Read_name ] ->
    Biokepi_run_environment.Common.KEDSL.bam_file
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    Biokepi_run_environment.Common.KEDSL.bam_file
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val index_to_bai :
    run_with:Biokepi_run_environment.Machine.t ->
    ?check_sorted:bool ->
    < is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; sorting : [> `Read_name ] option; .. >
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < exists : Ketrew_pure.Target.Condition.t;
      is_bigger_than : int -> Ketrew_pure.Target.Condition.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string >
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val mpileup :
    run_with:Biokepi_run_environment.Machine.t ->
    ?adjust_mapq:int ->
    region:[< `Chromosome of string
            | `Chromosome_interval of string * int * int
            | `Full ] ->
    Biokepi_run_environment.Common.KEDSL.bam_file
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < exists : Ketrew_pure.Target.Condition.t;
      is_bigger_than : int -> Ketrew_pure.Target.Condition.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string >
    Biokepi_run_environment.Common.KEDSL.workflow_node
  val merge_bams :
    run_with:Biokepi_run_environment.Machine.t ->
    ?delete_input_on_success:bool ->
    ?attach_rg_tag:bool ->
    ?uncompressed_bam_output:bool ->
    ?compress_level_one:bool ->
    ?combine_rg_headers:bool ->
    ?combine_pg_headers:bool ->
    Biokepi_run_environment.Common.KEDSL.bam_file
    Biokepi_run_environment.Common.KEDSL.workflow_node list ->
    string ->
    < host : Biokepi_run_environment.Common.KEDSL.Host.t;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      path : string; reference_build : string;
      sorting : [ `Coordinate | `Read_name ] option >
    Biokepi_run_environment.Common.KEDSL.workflow_node
end