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

import ConditionalStateGrammar as ConditionalStateGrammar
import Nodes3DAPI.DynamicParameterUtil as DynamicParameterUtil
import PyFnAttribute as FnAttribute
import PyFnGeolib as FnGeolib
import PyFnGeolibServices as FnGeolibServices
import NodegraphAPI as NodegraphAPI
import PyFnAttribute
import PyXmlIO as PyXmlIO
import Naming as UniqueName
import Utils as Utils
from ConditionalStateGrammar.Parser import ParseCSG as ParseCSG
from Nodes3DAPI.Node3D import Node3D as Node3D
from Nodes3DAPI_cmodule import BuildAttrListFromDynamicParameterGroup as BuildAttrListFromDynamicParameterGroup
from _typeshed import Incomplete
from typing import ClassVar, Set, Tuple

_ExtraHints: dict
_Parameter_XML: str

class RendererProceduralArgs(Node3D):
    _RendererProceduralArgs__incomingCookKey: ClassVar[str] = ...
    _RendererProceduralArgs__rootHints: ClassVar[dict] = ...
    def __init__(self) -> None: ...
    def _RendererProceduralArgs__appendTemplateGroupChildrenOp(self, interface, location, locationCEL): ...
    def _RendererProceduralArgs__checkDynamicParametersInternal(self, universalAttr: Incomplete | None = ..., forceUpdate: bool = ...): ...
    def _getIncomingSceneOpAndLocation(self, port: NodegraphAPI.Port, graphState: NodegraphAPI.GraphState, transaction): ...
    def _getOpChain(self, interface): ...
    def _getStaticAttrHintsForIncomingSceneQuery(self, attrPath): ...
    def _updateParameters(self, groupAttr, force: bool = ..., defaultAttr: Incomplete | None = ...): ...
    def addAttributeEntry(self, attr: PyFnAttribute.Attribute, path: str, hints: dict): ...
    def addParameterHints(self, attrName, inputDict): ...
    def addTemplateGroup(self, param, templateName): ...
    def checkDynamicParameters(self, *args, **kwds): ...
    def clearParamHistory(self): ...
    def deleteAttributeEntry(self, index: int): ...
    def forceRebuildParameters(self): ...
    def getAttributeEntries(self) -> NodegraphAPI.Parameter: ...
    def getFixedCELStatement(self): ...
    def getInfoString(self): ...
    def getProceduralScenegraphLocation(self, sourceTime: int = ...): ...
    def getScenegraphLocation(self): ...
    def initializeFromRendererProceduralAttr(self, attr): ...
    def reorderAttributeEntries(self, oldPos: int, oldPosCount: int, newPos: int, newPosCount: int): ...
    def reorderAttributeEntry(self, oldPos: int, newPos: int): ...
    def setRendererProceduralArgValue(self, paramName, newValue): ...
