job() :: Honeydew.Job.t()
name() :: Honeydew.queue_name()
private() :: any()
ack(job(), private()) :: private()
cancel(job(), private()) :: {:ok | {:error, :in_progress | :not_found}, private()}
handle_info(msg :: :timeout | term(), state :: private()) :: {:noreply, new_state} | {:noreply, new_state, timeout() | :hibernate} | {:stop, reason :: term(), new_state} when new_state: private()
init(name(), arg :: any()) :: {:ok, private()}
nack(job(), private()) :: private()
reserve(private()) :: {job(), private()}
status(private()) :: %{ :count => number(), :in_progress => number(), optional(atom()) => any() }