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

from typing import TYPE_CHECKING
from graph_sitter.core.symbol_groups.comment_group import CommentGroup
from graph_sitter.typescript.statements.comment import TSComment
from graph_sitter.writer_decorators import noapidoc, ts_apidoc
from graph_sitter.typescript.symbol import TSSymbol

if TYPE_CHECKING:
    ...
@ts_apidoc
class TSCommentGroup(CommentGroup):
    """A group of related symbols that represent a comment or docstring in TypeScript

    For example:
    ```
    // Comment 1
    // Comment 2
    // Comment 3
    ```
    would be 3 individual comments (accessible via `symbols`), but together they form a `CommentGroup` (accessible via `self).
    """
    @classmethod
    @noapidoc
    def from_symbol_comments(cls, symbol: TSSymbol): # -> Self | None:
        ...
    
    @classmethod
    @noapidoc
    def from_symbol_inline_comments(cls, symbol: TSSymbol): # -> Self | None:
        ...
    
    @classmethod
    @noapidoc
    def from_docstring(cls, symbol: TSSymbol) -> TSCommentGroup | None:
        """Returns the docstring of the function"""
        ...
    
    @classmethod
    @noapidoc
    def from_comment_nodes(cls, comment_nodes: list[TSComment], symbol: TSSymbol): # -> Self | None:
        ...
    


