import PySide2.QtCore
import _typeshed
import collections.abc
import shiboken2
import typing
T = typing.TypeVar('T')
import typing_extensions

class QX11Info(shiboken2.Object):
    class PeekOption:
        PeekDefault: typing.ClassVar[QX11Info.PeekOption] = ...
        PeekFromCachedIndex: typing.ClassVar[QX11Info.PeekOption] = ...
        values: typing.ClassVar[dict] = ...
        name: _typeshed.Incomplete
        @classmethod
        def __init__(cls, *args, **kwargs) -> None: ...
        def __and__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __bool__(self) -> bool: ...
        def __eq__(self, other: object) -> bool: ...
        def __ge__(self, other: object) -> bool: ...
        def __gt__(self, other: object) -> bool: ...
        def __hash__(self) -> int: ...
        def __index__(self) -> int: ...
        def __int__(self) -> int: ...
        def __invert__(self) -> QX11Info.PeekOptions: ...
        def __le__(self, other: object) -> bool: ...
        def __lt__(self, other: object) -> bool: ...
        def __ne__(self, other: object) -> bool: ...
        def __or__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __rand__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __ror__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __rxor__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __xor__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...

    class PeekOptions:
        @classmethod
        def __init__(cls, *args, **kwargs) -> None: ...
        def __and__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __bool__(self) -> bool: ...
        def __eq__(self, other: object) -> bool: ...
        def __ge__(self, other: object) -> bool: ...
        def __gt__(self, other: object) -> bool: ...
        def __index__(self) -> int: ...
        def __int__(self) -> int: ...
        def __invert__(self) -> QX11Info.PeekOptions: ...
        def __le__(self, other: object) -> bool: ...
        def __lt__(self, other: object) -> bool: ...
        def __ne__(self, other: object) -> bool: ...
        def __or__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __rand__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __ror__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __rxor__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
        def __xor__(self, other: typing.SupportsInt) -> QX11Info.PeekOptions: ...
    PeekDefault: typing.ClassVar[QX11Info.PeekOption] = ...
    PeekFromCachedIndex: typing.ClassVar[QX11Info.PeekOption] = ...
    @classmethod
    def __init__(cls, *args, **kwargs) -> None: ...
    @classmethod
    def appDpiX(cls, screen: int = ...) -> int: ...
    @classmethod
    def appDpiY(cls, screen: int = ...) -> int: ...
    @classmethod
    def appRootWindow(cls, screen: int = ...) -> int: ...
    @classmethod
    def appScreen(cls) -> int: ...
    @classmethod
    def appTime(cls) -> int: ...
    @classmethod
    def appUserTime(cls) -> int: ...
    @classmethod
    def generatePeekerId(cls) -> int: ...
    @classmethod
    def getTimestamp(cls) -> int: ...
    @classmethod
    def isCompositingManagerRunning(cls, screen: int = ...) -> bool: ...
    @classmethod
    def isPlatformX11(cls) -> bool: ...
    @classmethod
    def nextStartupId(cls) -> PySide2.QtCore.QByteArray: ...
    @classmethod
    def removePeekerId(cls, peekerId: int) -> bool: ...
    @classmethod
    def setAppTime(cls, time: int) -> None: ...
    @classmethod
    def setAppUserTime(cls, time: int) -> None: ...
    @classmethod
    def setNextStartupId(cls, id: typing.Union[PySide2.QtCore.QByteArray, bytes]) -> None: ...
