from __future__ import annotations
from typing import Any, Protocol, runtime_checkable
from com.sun.star.uno import XInterface

@runtime_checkable
class XXMLDocumentWrapper(XInterface, Protocol):
    def getCurrentElement(self) -> XXMLElementWrapper: ...
    def setCurrentElement(self, element: XXMLElementWrapper) -> None: ...
    def removeCurrentElement(self) -> None: ...
    def isCurrent(self, node: XXMLElementWrapper) -> bool: ...
    def isCurrentElementEmpty(self) -> bool: ...
    def getNodeName(self, node: XXMLElementWrapper) -> str: ...
    def clearUselessData(self, node: XXMLElementWrapper, reservedDescendants: sequence< XXMLElementWrapper >, stopAtNode: XXMLElementWrapper) -> None: ...
    def collapse(self, node: XXMLElementWrapper) -> None: ...
    def rebuildIDLink(self, node: XXMLElementWrapper) -> None: ...
