from _typeshed import Incomplete
from typing import Any

from . import base

fullTree: bool
tag_regexp: Any
comment_type: Any

class DocumentType:
    name: Any
    publicId: Any
    systemId: Any
    def __init__(self, name, publicId, systemId) -> None: ...

class Document:
    def __init__(self) -> None: ...
    def appendChild(self, element) -> None: ...
    @property
    def childNodes(self): ...

def testSerializer(element): ...
def tostring(element): ...

class TreeBuilder(base.TreeBuilder):
    documentClass: Any
    doctypeClass: Any
    elementClass: Any
    commentClass: Any
    fragmentClass: Any
    implementation: Any
    namespaceHTMLElements: Any
    def __init__(self, namespaceHTMLElements, fullTree: bool = False): ...
    insertComment: Any
    initial_comments: Any
    doctype: Any
    def reset(self) -> None: ...
    def testSerializer(self, element): ...
    def getDocument(self): ...
    def getFragment(self): ...
    def insertDoctype(self, token) -> None: ...
    def insertCommentInitial(self, data, parent: Incomplete | None = None) -> None: ...
    def insertCommentMain(self, data, parent: Incomplete | None = None) -> None: ...
    document: Any
    def insertRoot(self, token) -> None: ...
