@callback handle_job(data :: any(), state :: any()) ::
{:noreply, state :: any()}
| {:push, any(), any(), state :: any()}
| {:reply, reply :: any(), state :: any()}
| {:stop, reason :: any(), state :: any()}
| {:exit, reason :: any(), state :: any()}