# AUTOGENERATED! DO NOT EDIT! File to edit: ../nbs/00_types.ipynb.

# %% auto 0
__all__ = ['Sig', 'Param', 'ObjQ', 'StrQ', 'AttrKeysLike', 'AttrKeysLikeQ', 'AttrDefaults', 'ClassLevel']

# %% ../nbs/00_types.ipynb 4
from typing import (
    Type, TypeAlias, TypeGuard, Optional, Union, 
    Mapping, Callable, Any, Tuple, List, Dict
)
from inspect import Parameter, Signature

Sig: TypeAlias = Signature
Param: TypeAlias = Parameter

ObjQ: TypeAlias = Optional[object]
StrQ: TypeAlias = Optional[str]

AttrKeysLike: TypeAlias = Union[List[str], Dict[str, Any]]
AttrKeysLikeQ: TypeAlias = Optional[AttrKeysLike]

AttrDefaults: TypeAlias = Optional[list]

ClassLevel: TypeAlias = Union[int, Type]
