from typing import Any, ClassVar

from celery.bootsteps import Step
from typing_extensions import override

__all__ = ("Mingle",)

class Mingle(Step):
    name: ClassVar[str]  # pyright: ignore[reportIncompatibleVariableOverride]
    compatible_transports: set[str]

    def __init__(self, c: Any, without_mingle: bool = False, **kwargs: Any) -> None: ...
    @override
    def create(self, parent: Any) -> Any: ...
    def start(self, c: Any) -> None: ...
    def stop(self, parent: Any) -> None: ...
    @override
    def include_if(self, parent: Any) -> bool: ...
    @override
    def info(self, obj: Any) -> dict[str, Any]: ...  # type: ignore[override]  # pyright: ignore[reportIncompatibleMethodOverride]
    def compatible_transport(self, app: Any) -> bool: ...
    def on_clock_event(self, c: Any, clock: Any) -> None: ...
    def on_node_reply(self, c: Any, nodename: str, reply: Any) -> None: ...
    def on_revoked_received(self, c: Any, revoked: Any) -> None: ...
    def send_hello(self, c: Any) -> None: ...
    def sync(self, c: Any) -> None: ...
    def sync_with_node(
        self, c: Any, clock: Any = None, revoked: Any = None, **kwargs: Any
    ) -> None: ...
