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

import UI4.Tabs.DopeSheet.DopeSheetTree as DopeSheetTree
import UI4.Tabs.DopeSheet.KeyLayerStack as KeyLayerStack
import NodegraphAPI as NodegraphAPI
import PyQt5.QtCore as QtCore
import PyQt5.QtWidgets as QtWidgets
import UI4 as UI4
import UI4.FormMaster.ParameterCurveEditSet
import Utils as Utils
from UI4.FormMaster.ParameterCurveEditSet import ParameterCurveEditWatcher as ParameterCurveEditWatcher
from UI4.Tabs.BaseTab import BaseTab as BaseTab
from typing import Set, Tuple

class DopeSheetPanel(BaseTab, UI4.FormMaster.ParameterCurveEditSet.ParameterCurveEditWatcher):
    def __init__(self, parent) -> None: ...
    def _DopeSheetPanel__buildTreeItemContextMenu(self, menu): ...
    def _DopeSheetPanel__checkCurvable(self, vp): ...
    def _DopeSheetPanel__expandOrCollapseCB(self, item): ...
    def _DopeSheetPanel__extractParams(self, event): ...
    def _DopeSheetPanel__getEntry(self, paramFullName, create: bool = ...): ...
    def _DopeSheetPanel__getParamFromName(self, paramFullName, excludeExpressions: bool = ...): ...
    def _DopeSheetPanel__getParamKeys(self, paramFullName): ...
    def _DopeSheetPanel__getParamNamesForItems(self, items): ...
    def _DopeSheetPanel__getParamNamesFromSelection(self): ...
    def _DopeSheetPanel__getParamsFromSelection(self): ...
    def _DopeSheetPanel__makeSelectedConstant(self): ...
    def _DopeSheetPanel__selectKeysForSelectedItems(self): ...
    def _DopeSheetPanel__setDisplayUpdatesEnabled(self, enableRaw, updateOnEnable: bool = ...): ...
    def _DopeSheetPanel__unCurvafySelectedItems(self): ...
    def _DopeSheetPanel__updateDisplay(self, *args): ...
    def _DopeSheetPanel__updateScroll(self, *args): ...
    def _DopeSheetPanel__viewCurves(self, vp): ...
    def _initializeSet(self, curveEditSetCopy): ...
    def _keysChanged(self, paramFullName): ...
    def _nameChanged(self, oldParamFullName, newParamFullName, newParamLocalName): ...
    def _nodeNameChanged(self, oldNodeName, newNodeName): ...
    def _showKeys(self, paramFullName, show): ...
    def dragEnterEvent(self, event): ...
    def dropEvent(self, event): ...
