from celery import bootsteps
from typing import Any, Optional

class Timer(bootsteps.Step):
    def create(self, w: Any) -> None: ...
    def on_timer_error(self, exc: Any) -> None: ...
    def on_timer_tick(self, delay: Any) -> None: ...

class Hub(bootsteps.StartStopStep):
    requires: Any = ...
    def __init__(self, w: Any, **kwargs: Any) -> None: ...
    def include_if(self, w: Any): ...
    def create(self, w: Any): ...
    def start(self, w: Any) -> None: ...
    def stop(self, w: Any) -> None: ...
    def terminate(self, w: Any) -> None: ...

class Pool(bootsteps.StartStopStep):
    requires: Any = ...
    optimization: Any = ...
    def __init__(self, w: Any, autoscale: Optional[Any] = ..., **kwargs: Any) -> None: ...
    def close(self, w: Any) -> None: ...
    def terminate(self, w: Any) -> None: ...
    def create(self, w: Any): ...
    def info(self, w: Any): ...
    def register_with_event_loop(self, w: Any, hub: Any) -> None: ...

class Beat(bootsteps.StartStopStep):
    label: str = ...
    conditional: bool = ...
    enabled: Any = ...
    def __init__(self, w: Any, beat: bool = ..., **kwargs: Any) -> None: ...
    def create(self, w: Any): ...

class StateDB(bootsteps.Step):
    enabled: Any = ...
    def __init__(self, w: Any, **kwargs: Any) -> None: ...
    def create(self, w: Any) -> None: ...

class Consumer(bootsteps.StartStopStep):
    last: bool = ...
    def create(self, w: Any): ...
