sig
  type 'a process
  val delegate :
    ('a, 'b) Procord_task.delegated_task -> '-> 'Procord_process.process
  val delegate_task_create_process :
    ?stderr:Unix.file_descr ->
    string ->
    string array ->
    ('a, 'b) Procord_task.delegated_task -> '-> 'Procord_process.process
  val delegate_task_socket :
    string ->
    int ->
    ('a, 'b) Procord_task.delegated_task -> '-> 'Procord_process.process
  type execution_error =
      Worker_unknown_exception of string
    | Worker_killed
    | Worker_disconnected of exn
    | No_worker_available of string
  exception Execution_error of Procord_process.execution_error
  val error_message : Procord_process.execution_error -> string
  type 'a status =
      Working
    | Success of 'a
    | Exception of exn
    | Error of Procord_process.execution_error
  val waiter : 'Procord_process.process -> Procord_connection.waiter
  val update : 'Procord_process.process -> unit
  val status : 'Procord_process.process -> 'Procord_process.status
  val run : 'Procord_process.process -> 'a
  val kill : 'Procord_process.process -> unit
end