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

import AssetAPI as AssetAPI
import AssetBrowser as AssetBrowser
import AssetBrowser.Browser
import UI4.Util.AssetWidgetDelegatePlugins as AssetWidgetDelegatePlugins
import CatalogAPI as CatalogAPI
import UI4.Util.ExternalTools as ExternalTools
import UI4.Util.KatanaMediaCache as KatanaMediaCache
import MediaCacheHandler as MediaCacheHandler
import NodegraphAPI as NodegraphAPI
import Nodes2DAPI as Nodes2DAPI
import PyQt5.QtCore
import PyQt5.QtWidgets
import QT4FormWidgets as QT4FormWidgets
import QT4Widgets as QT4Widgets
import PyQt5.QtCore as QtCore
import PyQt5.QtGui as QtGui
import PyQt5.QtWidgets as QtWidgets
from _typeshed import Incomplete
from typing import ClassVar, Set, Tuple

class AssetIdHelper(PyQt5.QtCore.QObject):
    extraImageInfo: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    showExtendedInfo: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, policy) -> None: ...
    def _AssetIdHelper__chooseAsset(self): ...
    def _AssetIdHelper__extraMenuHookAction(self, action): ...
    def _AssetIdHelper__imageInfoThreadResult(self, filename: str, info: dict): ...
    def _AssetIdHelper__launchImageViewer(self): ...
    def _AssetIdHelper__mediaCacheCallback(self): ...
    def _AssetIdHelper__presetActionTriggered(self, action): ...
    def _AssetIdHelper__setNodeNameFromPath(self): ...
    def fillMenu(self, menu, locked): ...
    def getValuePolicy(self): ...
    def requestExtraImageInfo(self): ...
    def setAssetWidgetDelegate(self, assetWidgetDelegate): ...
    def setSaveMode(self, saveMode): ...

class BrowseForAssetDialog(AssetBrowser.Browser.BrowserDialog):
    def __init__(self, assetOrFile, label: Incomplete | None = ..., saveMode: bool = ..., hints: Incomplete | None = ...) -> None: ...

class ImageInfoThread(PyQt5.QtCore.QThread):
    imageInfo: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, filename) -> None: ...
    def run(self): ...

class _SelfTriggerAction(PyQt5.QtWidgets.QAction):
    trigger: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, message, parent) -> None: ...
    def _SelfTriggerAction__go(self): ...

def BrowseForAsset(assetOrFile, label, saveMode, hints, extraOptions: Incomplete | None = ...): ...
def GetExtraImageInfo(fileName): ...
def LaunchImageViewer(filename, processName: Incomplete | None = ...): ...
