"""
This type stub file was generated by pyright.
"""

from abc import ABC
from typing import Generic, TYPE_CHECKING, TypeVar
from typing_extensions import deprecated
from graph_sitter.core.expressions.expression import Expression
from graph_sitter.core.interfaces.chainable import Chainable
from graph_sitter.core.interfaces.editable import Editable
from graph_sitter.extensions.autocommit import reader
from graph_sitter.writer_decorators import apidoc, noapidoc
from graph_sitter.core.interfaces.importable import Importable
from graph_sitter.core.symbol import Symbol

if TYPE_CHECKING:
    ...
Parent = TypeVar("Parent", bound="Editable")
@apidoc
class Type(Expression[Parent], Chainable, ABC, Generic[Parent]):
    """Abstract representation of a type
    Used to store the types of variables, parameters, or return values in functions, classes, etc.
    """
    @property
    @deprecated("Use resolved_types instead for internal uses")
    @noapidoc
    @reader
    def resolved_symbol(self) -> Symbol | str | None:
        ...
    
    @property
    @noapidoc
    def descendant_symbols(self) -> list[Importable]:
        """Returns the nested symbols of the importable object, including itself."""
        ...
    


