from __future__ import annotations
from typing import Any, Protocol, runtime_checkable

@runtime_checkable
class XMouseEvent(XUIEvent, Protocol):
    def getScreenX(self) -> int: ...
    def getScreenY(self) -> int: ...
    def getClientX(self) -> int: ...
    def getClientY(self) -> int: ...
    def getCtrlKey(self) -> bool: ...
    def getShiftKey(self) -> bool: ...
    def getAltKey(self) -> bool: ...
    def getMetaKey(self) -> bool: ...
    def getButton(self) -> int: ...
    def getRelatedTarget(self) -> XEventTarget: ...
    def initMouseEvent(self, typeArg: str, canBubbleArg: bool, cancelableArg: bool, viewArg: XAbstractView, detailArg: int, screenXArg: int, screenYArg: int, clientXArg: int, clientYArg: int, ctrlKeyArg: bool, altKeyArg: bool, shiftKeyArg: bool, metaKeyArg: bool, buttonArg: int, relatedTargetArg: XEventTarget) -> None: ...
