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

class QMacPasteboardMime(shiboken2.Object):
    class QMacPasteboardMimeType:
        MIME_ALL: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
        MIME_CLIP: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
        MIME_DND: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
        MIME_QT3_CONVERTOR: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
        MIME_QT_CONVERTOR: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
        values: typing.ClassVar[dict] = ...
        name: _typeshed.Incomplete
        @classmethod
        def __init__(cls, *args, **kwargs) -> None: ...
        def __add__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __and__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        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 __le__(self, other: object) -> bool: ...
        def __lt__(self, other: object) -> bool: ...
        def __mul__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __ne__(self, other: object) -> bool: ...
        def __or__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __pos__(self): ...
        def __radd__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __rand__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __rmul__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __ror__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __rsub__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __rxor__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __sub__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
        def __xor__(self, other: typing.SupportsInt) -> QMacPasteboardMime.QMacPasteboardMimeType: ...
    MIME_ALL: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
    MIME_CLIP: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
    MIME_DND: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
    MIME_QT3_CONVERTOR: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
    MIME_QT_CONVERTOR: typing.ClassVar[QMacPasteboardMime.QMacPasteboardMimeType] = ...
    def __init__(self, arg__1: int) -> None: ...
    def canConvert(self, mime: str, flav: str) -> bool: ...
    def convertFromMime(self, mime: str, data: typing.Any, flav: str) -> typing.List[PySide2.QtCore.QByteArray]: ...
    def convertToMime(self, mime: str, data: typing.Iterable[PySide2.QtCore.QByteArray], flav: str) -> typing.Any: ...
    def convertorName(self) -> str: ...
    def count(self, mimeData: PySide2.QtCore.QMimeData) -> int: ...
    def flavorFor(self, mime: str) -> str: ...
    def mimeFor(self, flav: str) -> str: ...

class QMacToolBar(PySide2.QtCore.QObject):
    staticMetaObject: typing.ClassVar[PySide2.QtCore.QMetaObject] = ...
    @typing.overload
    def __init__(self, identifier: str, parent: typing.Union[PySide2.QtCore.QObject, None] = ..., destroyed: typing.Callable = ..., objectName: str = ..., objectNameChanged: typing.Callable = ...) -> None: ...
    @typing.overload
    def __init__(self, parent: typing.Union[PySide2.QtCore.QObject, None] = ..., destroyed: typing.Callable = ..., objectName: str = ..., objectNameChanged: typing.Callable = ...) -> None: ...
    def addAllowedItem(self, icon: PySide2.QtGui.QIcon, text: str) -> QMacToolBarItem: ...
    def addAllowedStandardItem(self, standardItem: QMacToolBarItem.StandardItem) -> QMacToolBarItem: ...
    def addItem(self, icon: PySide2.QtGui.QIcon, text: str) -> QMacToolBarItem: ...
    def addSeparator(self) -> None: ...
    def addStandardItem(self, standardItem: QMacToolBarItem.StandardItem) -> QMacToolBarItem: ...
    def allowedItems(self) -> typing.List[QMacToolBarItem]: ...
    def attachToWindow(self, window: PySide2.QtGui.QWindow) -> None: ...
    def detachFromWindow(self) -> None: ...
    def items(self) -> typing.List[QMacToolBarItem]: ...
    def setAllowedItems(self, allowedItems: typing.Iterable[QMacToolBarItem]) -> None: ...
    def setItems(self, items: typing.Iterable[QMacToolBarItem]) -> None: ...

class QMacToolBarItem(PySide2.QtCore.QObject):
    class StandardItem:
        FlexibleSpace: typing.ClassVar[QMacToolBarItem.StandardItem] = ...
        NoStandardItem: typing.ClassVar[QMacToolBarItem.StandardItem] = ...
        Space: typing.ClassVar[QMacToolBarItem.StandardItem] = ...
        values: typing.ClassVar[dict] = ...
        name: _typeshed.Incomplete
        @classmethod
        def __init__(cls, *args, **kwargs) -> None: ...
        def __add__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __and__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        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 __le__(self, other: object) -> bool: ...
        def __lt__(self, other: object) -> bool: ...
        def __mul__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __ne__(self, other: object) -> bool: ...
        def __or__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __pos__(self): ...
        def __radd__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __rand__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __rmul__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __ror__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __rsub__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __rxor__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __sub__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
        def __xor__(self, other: typing.SupportsInt) -> QMacToolBarItem.StandardItem: ...
    FlexibleSpace: typing.ClassVar[QMacToolBarItem.StandardItem] = ...
    NoStandardItem: typing.ClassVar[QMacToolBarItem.StandardItem] = ...
    Space: typing.ClassVar[QMacToolBarItem.StandardItem] = ...
    activated: typing.ClassVar[PySide2.QtCore.Signal] = ...
    staticMetaObject: typing.ClassVar[PySide2.QtCore.QMetaObject] = ...
    def __init__(self, parent: typing.Union[PySide2.QtCore.QObject, None] = ..., activated: typing.Callable = ..., destroyed: typing.Callable = ..., icon: PySide2.QtGui.QIcon = ..., objectName: str = ..., objectNameChanged: typing.Callable = ..., selectable: bool = ..., standardItem: QMacToolBarItem.StandardItem = ..., text: str = ...) -> None: ...
    def icon(self) -> PySide2.QtGui.QIcon: ...
    def selectable(self) -> bool: ...
    def setIcon(self, icon: PySide2.QtGui.QIcon) -> None: ...
    def setSelectable(self, selectable: bool) -> None: ...
    def setStandardItem(self, standardItem: QMacToolBarItem.StandardItem) -> None: ...
    def setText(self, text: str) -> None: ...
    def standardItem(self) -> QMacToolBarItem.StandardItem: ...
    def text(self) -> str: ...

def qRegisterDraggedTypes(types: typing.Iterable[str]) -> None: ...
