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

import NodegraphAPI
import PyQt5.QtCore
import PyQt5.QtGui
import PyQt5.QtWidgets
import UI4.Widgets.SceneGraphView.SceneGraphViewIconManager as SceneGraphViewIconManager
import UI4.FormMaster.States as States
import UI4.Widgets.SceneGraphView.Bridge
import UI4.Widgets.SceneGraphView.ItemDelegates.StateItemDelegate
from UI4.Widgets.SceneGraphView.ColumnDataType import RegisterDataType as RegisterDataType
from UI4.Widgets.SceneGraphView.ItemDelegates.BaseItemDelegate import BaseItemDelegate as BaseItemDelegate
from UI4.Widgets.SceneGraphView.ItemDelegates.ParameterItemDelegate import ParameterItemDelegate as ParameterItemDelegate
from UI4.Widgets.SceneGraphView.ItemDelegates.StateItemDelegate import StateItemDelegateMixin as StateItemDelegateMixin
from _typeshed import Incomplete
from typing import ClassVar, Set, Tuple

class MuteItemDelegate(UI4.Widgets.SceneGraphView.ItemDelegates.StateItemDelegate.StateItemDelegateMixin, ParameterItemDelegate):
    FixedColumnWidth: ClassVar[int] = ...
    def __init__(self, bridge: Bridge[UI4.Widgets.SceneGraphView.Bridge.Bridge], treeWidget: PyQt5.QtWidgets.QTreeWidget, parent: Incomplete | None = ...) -> None: ...
    def calculateItemState(self, option: QStyleOptionViewItem, index: PyQt5.QtCore.QModelIndex) -> str: ...
    def initStyleOption(self, option: PyQt5.QtWidgets.QStyleOptionViewItem, index: PyQt5.QtCore.QModelIndex): ...
    def modifyItemState(self, item: PyQt5.QtWidgets.QTreeWidgetItem, index: PyQt5.QtCore.QModelIndex, event: PyQt5.QtGui.QMouseEvent) -> bool: ...
    def setGafferNode(self, gafferNode: NodegraphAPI.Node): ...
    def toolTipEvent(self, index): ...

class SoloItemDelegate(UI4.Widgets.SceneGraphView.ItemDelegates.StateItemDelegate.StateItemDelegateMixin, ParameterItemDelegate):
    FixedColumnWidth: ClassVar[int] = ...
    def __init__(self, bridge: Bridge[UI4.Widgets.SceneGraphView.Bridge.Bridge], treeWidget: PyQt5.QtWidgets.QTreeWidget, parent: Incomplete | None = ...) -> None: ...
    def calculateItemState(self, option: QStyleOptionViewItem, index: PyQt5.QtCore.QModelIndex) -> str: ...
    def initStyleOption(self, option: PyQt5.QtWidgets.QStyleOptionViewItem, index: PyQt5.QtCore.QModelIndex): ...
    def modifyItemState(self, item: PyQt5.QtWidgets.QTreeWidgetItem, index: PyQt5.QtCore.QModelIndex, event: PyQt5.QtGui.QMouseEvent) -> bool: ...
    def setGafferNode(self, gafferNode: NodegraphAPI.Node): ...
    def toolTipEvent(self, index): ...
