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

@runtime_checkable
class XRegion(XInterface, Protocol):
    def getBounds(self) -> Rectangle: ...
    def clear(self) -> None: ...
    def move(self, nHorzMove: int, nVertMove: int) -> None: ...
    def unionRectangle(self, Rect: Rectangle) -> None: ...
    def intersectRectangle(self, Region: Rectangle) -> None: ...
    def excludeRectangle(self, Rect: Rectangle) -> None: ...
    def xOrRectangle(self, Rect: Rectangle) -> None: ...
    def unionRegion(self, Region: XRegion) -> None: ...
    def intersectRegion(self, Region: XRegion) -> None: ...
    def excludeRegion(self, Region: XRegion) -> None: ...
    def xOrRegion(self, Region: XRegion) -> None: ...
    def getRectangles(self) -> list[Rectangle]: ...
