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

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

class StatefulAction(PyQt5.QtWidgets.QAction):
    def __init__(self, name, parent, data, extraSettings: dict = ...) -> None: ...
    def _StatefulAction__triggered(self, checked): ...
    def getData(self): ...
    def updateState(self): ...

class StatefulMenu(PyQt5.QtWidgets.QMenu):
    def __init__(self, title, parent: Incomplete | None = ...) -> None: ...
    def _StatefulMenu__update(self): ...
    def build(self, data, extraSettings: dict = ...): ...
    def setUpdateOnShow(self, updateOnShow): ...

def MergeStatefulMenuData(original, update): ...
