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

import PyFnAttribute as FnAttribute
import PyFnGeolib as FnGeolib
import PyFnGeolibProducers as FnGeolibProducers
import UI4.Util.IconManager as IconManager
import NodegraphAPI as NodegraphAPI
import Nodes3DAPI as Nodes3DAPI
import PyFnGeolibProducers
import PyQt5.QtCore
import PyQt5.QtGui
import QT4Widgets as QT4Widgets
import PyQt5.QtCore as QtCore
import PyQt5.QtGui as QtGui
import PyQt5.QtWidgets as QtWidgets
import UI4.Util.ScenegraphIconManager as ScenegraphIconManager
import Nodes3DAPI.ScenegraphManager as ScenegraphManager
import PyUtilModule.ScenegraphUtils as ScenegraphUtils
import Utils as Utils
from QT4Widgets.FilterablePopupButton import FilterablePopupButton
from _typeshed import Incomplete
from typing import ClassVar, Set, Tuple

class CameraPickerButton(FilterablePopupButton):
    DISPLAY_CAMERAS: ClassVar[int] = ...
    DISPLAY_LIGHTS: ClassVar[int] = ...
    lookThrough: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, parent: Incomplete | None = ..., flat: bool = ..., showIcon: bool = ..., specialItems: Incomplete | None = ..., showBuiltIns: bool = ..., abbreviateNames: bool = ...) -> None: ...
    def _CameraPickerButton__asyncGetProducerAtLocation(self, location: str): ...
    def _CameraPickerButton__getCameraLocations(self): ...
    def _CameraPickerButton__getLightLocations(self): ...
    def _CameraPickerButton__getLocationType(self, locationPath): ...
    def _CameraPickerButton__getProducerAtLocation(self, location: str) -> PyFnGeolibProducers.GeometryProducer | None: ...
    def _CameraPickerButton__getRenderCameraPath(self): ...
    def _CameraPickerButton__on_event_idle(self, *args, **kwargs): ...
    def _CameraPickerButton__setupClient(self): ...
    def _CameraPickerButton__validateLocation(self, locationPath): ...
    def _CameraPickerButton__validateLocationExists(self, locationPath): ...
    def _shouldValidateLocation(self) -> bool: ...
    def addBuiltin(self, name: str): ...
    def clearBuiltins(self): ...
    def dragEnterEvent(self, event: PyQt5.QtGui.QDragEnterEvent): ...
    def dropEvent(self, event: PyQt5.QtGui.QDropEvent): ...
    def getBuiltInCameraPath(self, cameraName): ...
    def getBuiltInNameFromPath(self, cameraPath): ...
    def getBuiltIns(self): ...
    def on_aboutToShow(self): ...
    def on_checkbox_stateChanged(self, state: PyQt5.QtCore.Qt.CheckState): ...
    def on_itemChosen(self, value: str, meta: tuple): ...
    def on_validateLocationsCheckbox_stateChanged(self, state: PyQt5.QtCore.Qt.CheckState): ...
    def populate(self): ...
    def setCameraPath(self, path: str): ...
    def setDisplayMode(self, displayMode: int): ...
    def setScenegraphPixmap(self, pixmap: PyQt5.QtGui.QPixmap | None): ...
