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

import Naming as Naming
import NodegraphAPI
import PyQt5.QtCore
import QT4FormWidgets as QT4FormWidgets
import QT4Widgets.SortableTreeWidget
import PyQt5.QtCore as QtCore
import PyQt5.QtGui as QtGui
import PyQt5.QtWidgets as QtWidgets
import UI4 as UI4
import Naming as UniqueName
import Utils as Utils
from QT4FormWidgets.FormWidget import FormWidget
from UI4.Util.UndoGrouping import UndoGrouping as UndoGrouping
from _typeshed import Incomplete
from typing import ClassVar, Set, Tuple

class HierarchyCreateFormWidget(FormWidget):
    mousePressEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, parent, policy, factory) -> None: ...
    def _HierarchyCreateFormWidget__aboutToDragCallback(self, items, dragObject): ...
    def _HierarchyCreateFormWidget__actionMenuAboutToShow(self): ...
    def _HierarchyCreateFormWidget__addChildLocation(self): ...
    def _HierarchyCreateFormWidget__buildLocation(self, entry, parent, openState, selectedState): ...
    def _HierarchyCreateFormWidget__callLocationRenamedCallback(self, path, newPath): ...
    def _HierarchyCreateFormWidget__dragMoveEventCallback(self, event, parent, index, callbackRecord): ...
    def _HierarchyCreateFormWidget__dropEventCallback(self, event, parent, index): ...
    def _HierarchyCreateFormWidget__fillMenu(self, menu): ...
    def _HierarchyCreateFormWidget__itemEdited(self, item, column, value: Incomplete | None = ...): ...
    def _HierarchyCreateFormWidget__itemExpanded(self, item): ...
    def _HierarchyCreateFormWidget__keyPressEvent(self, event): ...
    def _HierarchyCreateFormWidget__parameterEvents(self, args): ...
    def _HierarchyCreateFormWidget__reduceDragItems(self): ...
    def _HierarchyCreateFormWidget__reduceSelection(self, selectedItems: Incomplete | None = ...): ...
    def _HierarchyCreateFormWidget__selectionChanged(self): ...
    def _HierarchyCreateFormWidget__setupEventHandlers(self, active): ...
    def _HierarchyCreateFormWidget__treeMousePressEvent(self, event): ...
    def _HierarchyCreateFormWidget__updateList(self, startingAt: Incomplete | None = ...): ...
    def _buildTopAreaLayout(self, layout): ...
    def _freeze(self): ...
    def _thaw(self): ...
    def addPreselectedPaths(self, path): ...
    def getActiveItems(self): ...
    def getDelegate(self): ...
    def getNode(self) -> NodegraphAPI.Node: ...
    def getToolbar(self): ...
    def getToolbarCenterLayout(self): ...
    def getToolbarLeftLayout(self): ...
    def getToolbarRightLayout(self): ...
    def getTree(self): ...
    def isItemColumnEditable(self, item, column): ...
    def setDelegate(self, delegate): ...
    def setLocationRenamedCallback(self, callback): ...
    def updateList(self): ...

class HierarchyCreateListItemDelegate(QT4Widgets.SortableTreeWidget.SortableTreeWidgetItemDelegate):
    itemEdited: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def createEditor(self, parent, option, index): ...
    def getFormWidgetDelegate(self): ...
    def getFormWidgetParent(self): ...
    def paint(self, painter, option, index): ...
    def setModelData(self, editor, model, index): ...
