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

import NodegraphAPI as NodegraphAPI
import Nodes3DAPI as Nodes3DAPI
import PyXmlIO as PyXmlIO
import QT4FormWidgets as QT4FormWidgets
import PyQt5.QtCore as QtCore
import PyQt5.QtGui as QtGui
import PyQt5.QtWidgets as QtWidgets
import UI4.Widgets.SortablePanel as SortablePanel
import UI4 as UI4
import UI4.Widgets.SortablePanel
from QT4FormWidgets.StringFormWidget import StringFormWidget
from typing import Set, Tuple

class NodeNameArrayEditor(UI4.Widgets.SortablePanel.SortablePanelFormWidget):
    def __init__(self, parent, valuePolicy, widgetFactory) -> None: ...
    def _NodeNameArrayEditor__addNodeChildren(self, replace: bool = ...): ...
    def _NodeNameArrayEditor__appendEntry(self): ...
    def _NodeNameArrayEditor__appendNodegraphSelection(self): ...
    def _NodeNameArrayEditor__findAllNodes(self): ...
    def _NodeNameArrayEditor__replaceNodegraphSelection(self): ...
    def buildAddMenu(self, menu): ...
    def panelDeleted(self, index): ...
    def panelReordered(self, oldPos, newPos): ...
    def updatePanels(self): ...

class NodeNameFormWidget(StringFormWidget):
    def __init__(self, parent, policy, factory) -> None: ...
    def _NodeNameFormWidget__fillMenu(self, menu): ...
    def _NodeNameFormWidget__getNodeFromEvent(self, event): ...
    def _NodeNameFormWidget__setFromText(self, text): ...
    def _buildControlWidget(self, layout): ...
    def _checkControlWidget(self): ...
    def _filterNodes(self, unfilteredNodes): ...
    def _updateControlWidget(self): ...
    def dragEnterEvent(self, event): ...
    def dropEvent(self, event): ...
    def getEditWidget(self): ...
    def keyPressEvent(self, event): ...
    def setReadOnly(self, value): ...

class NodeNameIndexFormWidget(NodeNameFormWidget):
    def __init__(self, parent, parentPolicy, index, factory) -> None: ...
    def setPolicyIndex(self, index): ...

class NodeNamePanel(UI4.Widgets.SortablePanel.SortablePanelBase):
    def __init__(self, parent, policy, index, widgetFactory) -> None: ...
    def setPolicyIndex(self, index): ...
