from typing import Type
from typing import Dict
from typing import get_type_hints


def get_self_type_hints(cls: Type) -> Dict[str, Type]:
    """
    Returns type hints declared in current class without inherited once
    """
    # use __dict__ to fix if __annotations__ is inherited
    annotations = cls.__dict__.get("__annotations__", {})
    return {
        field: type_
        for field, type_ in get_type_hints(cls).items()
        if field in annotations
    }