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

import Utils.EventModule as EventModule
import NodegraphAPI
import NodegraphAPI_cmodule as NodegraphAPI_cmodule
import Utils as Utils
import typing
from typing import Set, Tuple

def DeleteNodeShapeAttr(node: NodegraphAPI.Node, attrName): ...
def GetAllActiveAttributeEditorNodes(): ...
def GetAllEditedNodes() -> list[NodegraphAPI.Node]: ...
def GetAllFloatingNodes() -> list[NodegraphAPI.Node]: ...
def GetAllSelectedNodes() -> list[NodegraphAPI.Node]: ...
def GetAllSelectedNodesAndParent(): ...
def GetAllThumbnailEnabledNodes(): ...
def GetMenuPath(nodeType): ...
def GetNodeComment(node: NodegraphAPI.Node) -> str: ...
def GetNodeModTime(node: NodegraphAPI.Node) -> int: ...
def GetNodeParameter(node: NodegraphAPI.Node, param): ...
def GetNodePosition(node: NodegraphAPI.Node) -> Tuple[int, int]: ...
def GetNodeShapeAttr(node: NodegraphAPI.Node, attrName): ...
def GetNodeShapeAttrs(node: NodegraphAPI.Node): ...
def GetViewNode() -> NodegraphAPI.Node | None: ...
def GetViewNodes() -> NodegraphAPI.Node | None: ...
def GetViewPortPosition(node: NodegraphAPI.GroupNode) -> Tuple[Tuple[int, int, int], Tuple[float, float, float]]: ...
def IsAttributeEditorNodeActive(node: NodegraphAPI.Node): ...
def IsNodeEdited(node: NodegraphAPI.Node) -> bool: ...
def IsNodeFloating(node: NodegraphAPI.Node) -> bool: ...
def IsNodeHidden(node: NodegraphAPI.Node): ...
def IsNodeLockedByParents(node: NodegraphAPI.Node | None) -> bool: ...
def IsNodeSelected(node: NodegraphAPI.Node) -> bool: ...
def IsNodeThumbnailEnabled(node: NodegraphAPI.Node): ...
def IsNodeViewed(node: NodegraphAPI.Node) -> bool: ...
def Register_NewNode_CB(fcn): ...
def SetAllSelectedNodes(nodelist: typing.Sequence[NodegraphAPI.Node]): ...
def SetAttributeEditorNodeActive(node: NodegraphAPI.Node, active): ...
def SetMenuPath(nodeType, path): ...
def SetNodeComment(node: NodegraphAPI.Node, comment): ...
def SetNodeEdited(node: NodegraphAPI.Node, edited: bool, exclusive: bool = ...): ...
def SetNodeFloating(node: NodegraphAPI.Node, flag: bool): ...
def SetNodeHidden(node: NodegraphAPI.Node, hide): ...
def SetNodeModTime(node: NodegraphAPI.Node, modTime: int): ...
def SetNodeParameter(node: NodegraphAPI.Node, param, value): ...
def SetNodePosition(node: NodegraphAPI.Node, xy: Tuple[int, int]): ...
def SetNodeSelected(node: NodegraphAPI.Node, selected: bool): ...
def SetNodeShapeAttr(node: NodegraphAPI.Node, attrName, attrValue): ...
def SetNodeShapeNodeAttrs(node: NodegraphAPI.Node, attrDict): ...
def SetNodeThumbnailEnabled(node: NodegraphAPI.Node, enabled): ...
def SetNodeViewed(node: NodegraphAPI.Node, viewed: bool, exclusive: bool = ...): ...
def SetViewPortPosition(node: NodegraphAPI.GroupNode, eyepoint: Tuple[int, int, int], viewscale: Tuple[float, float, float]): ...
