from celery.five import UserList
from kombu.utils.functional import LRUCache as LRUCache, dictfilter as dictfilter, is_list as is_list, lazy as lazy, maybe_evaluate as maybe_evaluate, maybe_list as maybe_list, memoize as memoize
from typing import Any, Optional

class DummyContext:
    def __enter__(self): ...
    def __exit__(self, *exc_info: Any) -> None: ...

class mlazy(lazy):
    evaluated: bool = ...
    def evaluate(self): ...

def noop(*args: Any, **kwargs: Any) -> None: ...
def first(predicate: Any, it: Any): ...
def firstmethod(method: Any, on_call: Optional[Any] = ...): ...
def chunks(it: Any, n: Any) -> None: ...
def padlist(container: Any, size: Any, default: Optional[Any] = ...): ...
def mattrgetter(*attrs: Any): ...
def uniq(it: Any): ...
def regen(it: Any): ...

class _regen(UserList, list):
    def __init__(self, it: Any) -> None: ...
    def __reduce__(self): ...
    def __length_hint__(self): ...
    def __iter__(self) -> Any: ...
    def __getitem__(self, index: Any): ...
    @property
    def data(self): ...

def head_from_fun(fun: Any, bound: bool = ..., debug: bool = ...): ...
def fun_accepts_kwargs(fun: Any): ...
def maybe(typ: Any, val: Any): ...
