sig
  module Remove = Biokepi_run_environment.Workflow_utilities.Remove
  val create_dict :
    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 sort_vcf :
    run_with:Biokepi_run_environment.Machine.t ->
    ?sequence_dict:< is_done : Biokepi_run_environment.Common.KEDSL.Condition.t
                               option;
                     path : string; .. >
                   Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < 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
  module Mark_duplicates_settings :
    sig
      type t = {
        name : string;
        tmpdir : string;
        max_sequences_for_disk_read_ends_map : int;
        max_file_handles_for_read_ends_map : int;
        sorting_collection_size_ratio : float;
        mem_param : string option;
      }
      val factory : Biokepi_bfx_tools.Picard.Mark_duplicates_settings.t
      val default : Biokepi_bfx_tools.Picard.Mark_duplicates_settings.t
      val to_java_shell_call :
        Biokepi_bfx_tools.Picard.Mark_duplicates_settings.t -> string
    end
  val mark_duplicates :
    ?settings:Biokepi_bfx_tools.Picard.Mark_duplicates_settings.t ->
    run_with:Biokepi_run_environment.Machine.t ->
    input_bam:Biokepi_run_environment.Common.KEDSL.bam_file
              Biokepi_run_environment.Common.KEDSL.workflow_node ->
    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
  val bam_to_fastq :
    ?sample_name:string ->
    run_with:Biokepi_run_environment.Machine.t ->
    sample_type:[< `Paired_end | `Single_end ] ->
    output_prefix:string ->
    Biokepi_run_environment.Common.KEDSL.bam_file
    Biokepi_run_environment.Common.KEDSL.workflow_node ->
    < escaped_sample_name : string; fragment_id : string option;
      fragment_id_forced : string;
      is_done : Biokepi_run_environment.Common.KEDSL.Condition.t option;
      paths : string * string option;
      r1 : Biokepi_run_environment.Common.KEDSL.single_file
           Biokepi_run_environment.Common.KEDSL.workflow_node;
      r2 : Biokepi_run_environment.Common.KEDSL.single_file
           Biokepi_run_environment.Common.KEDSL.workflow_node option;
      sample_name : string >
    Biokepi_run_environment.Common.KEDSL.workflow_node
end