# mypy: disable-error-code="misc, override, attr-defined, no-redef, assignment"

import PyQt5.QtCore
import PyQt5.QtGui
import PyQt5.QtWidgets
import QT4Widgets as QT4Widgets
import PyQt5.QtCore as QtCore
import PyQt5.QtGui as QtGui
import PyQt5.QtWidgets as QtWidgets
import QT4Widgets.WidgetUtils as WidgetUtils
from _typeshed import Incomplete
from typing import ClassVar, Set, Tuple

class LabeledToolbarButton(PyQt5.QtWidgets.QWidget):
    class _ClickLabel(PyQt5.QtWidgets.QLabel):
        clicked: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
        def mousePressEvent(self, mouseEvent: PyQt5.QtGui.QMouseEvent): ...
    toggled: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, label: str, parent: PyQt5.QtWidgets.QWidget | None, normalPixmap: PyQt5.QtGui.QPixmap, disabledPixmap: Incomplete | None = ..., rolloverPixmap: Incomplete | None = ..., onPixmap: Incomplete | None = ..., sizeFromPixmap: bool = ..., isToggle: bool = ..., disabledRolloverPixmap: Incomplete | None = ..., onRolloverPixmap: Incomplete | None = ..., errorPixmap: Incomplete | None = ..., errorRolloverPixmap: Incomplete | None = ..., clickAction: Incomplete | None = ..., buttonType: str = ...) -> None: ...
    def isOn(self) -> bool: ...
    def setOn(self, on: bool): ...

class ToolbarButton(PyQt5.QtWidgets.QPushButton):
    mousePressEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    rightClicked: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, toolTip: str, parent: PyQt5.QtWidgets.QWidget | None, normalPixmap: PyQt5.QtGui.QPixmap, disabledPixmap: Incomplete | None = ..., rolloverPixmap: Incomplete | None = ..., onPixmap: Incomplete | None = ..., sizeFromPixmap: bool = ..., isToggle: bool = ..., disabledRolloverPixmap: Incomplete | None = ..., onRolloverPixmap: Incomplete | None = ..., errorPixmap: Incomplete | None = ..., errorRolloverPixmap: Incomplete | None = ..., clickAction: Incomplete | None = ..., buttonType: str = ...) -> None: ...
    def _ToolbarButton__actionToggled(self): ...
    def disabledPixmap(self) -> PyQt5.QtGui.QPixmap | None: ...
    def disabledRolloverPixmap(self) -> PyQt5.QtGui.QPixmap | None: ...
    def enterEvent(self, event: PyQt5.QtCore.QEvent): ...
    def errorPixmap(self) -> PyQt5.QtGui.QPixmap | None: ...
    def errorRolloverPixmap(self) -> PyQt5.QtGui.QPixmap | None: ...
    def getButtonType(self) -> str: ...
    def isEnabled(self) -> bool: ...
    def isError(self) -> bool: ...
    def isOn(self) -> bool: ...
    def leaveEvent(self, event: PyQt5.QtCore.QEvent): ...
    def mousePressEvent(self, mouseEvent: PyQt5.QtGui.QMouseEvent): ...
    def normalPixmap(self) -> PyQt5.QtGui.QPixmap: ...
    def onPixmap(self) -> PyQt5.QtGui.QPixmap | None: ...
    def onRolloverPixmap(self) -> PyQt5.QtGui.QPixmap | None: ...
    def press(self): ...
    def release(self): ...
    def rolloverPixmap(self) -> PyQt5.QtGui.QPixmap | None: ...
    def setButtonType(self, buttonType: str): ...
    def setDisabled(self, disabled: bool): ...
    def setDisabledPixmap(self, p: PyQt5.QtGui.QPixmap | None): ...
    def setDisabledRolloverPixmap(self, p: PyQt5.QtGui.QPixmap | None): ...
    def setEnabled(self, enabled: bool): ...
    def setError(self, error: bool, toolTip: Incomplete | None = ...): ...
    def setErrorPixmap(self, p: PyQt5.QtGui.QPixmap | None): ...
    def setErrorRolloverPixmap(self, p: PyQt5.QtGui.QPixmap | None): ...
    def setMenu(self, menu): ...
    def setNormalPixmap(self, p: PyQt5.QtGui.QPixmap): ...
    def setOn(self, on: bool): ...
    def setOnPixmap(self, p: PyQt5.QtGui.QPixmap | None): ...
    def setOnRolloverPixmap(self, p: PyQt5.QtGui.QPixmap | None): ...
    def setRolloverPixmap(self, p: PyQt5.QtGui.QPixmap | None): ...
    def toggle(self): ...
    def triggerAction(self): ...
    def update(self): ...
