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

import PyQt5.QtCore
import PyQt5.QtWidgets
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 GammaWidget(PyQt5.QtWidgets.QFrame):
    valueChanged: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, *args) -> None: ...
    def _GammaWidget__gainGroup_slider_CB(self, meta): ...
    def _GammaWidget__gainGroup_text_CB(self, meta): ...
    def _GammaWidget__gammaDownAction_CB(self): ...
    def _GammaWidget__gammaGroup_slider_CB(self, meta): ...
    def _GammaWidget__gammaGroup_text_CB(self, meta): ...
    def _GammaWidget__gammaResetAction_CB(self): ...
    def _GammaWidget__gammaUpAction_CB(self): ...
    def _GammaWidget__idle_CB(self): ...
    def _GammaWidget__layoutMode_CB(self, index): ...
    def _GammaWidget__muteAll_CB(self): ...
    def _GammaWidget__offsetGroup_slider_CB(self, meta): ...
    def _GammaWidget__offsetGroup_text_CB(self, meta): ...
    def _GammaWidget__queueEmitChange(self): ...
    def _GammaWidget__resetAll_CB(self): ...
    def getGammaGainOffset(self): ...
    def getGraphWidget(self): ...
    def recomputeGraphWidget(self, gamma, gain, offset): ...
    def setGain(self, gain, index: Incomplete | None = ...): ...
    def setGamma(self, gamma, index: Incomplete | None = ...): ...
    def setLayoutFull(self): ...
    def setLayoutMini(self): ...
    def setLayoutNormal(self): ...
    def setOffset(self, offset, index: Incomplete | None = ...): ...

class GraphWidget(PyQt5.QtWidgets.QOpenGLWidget):
    def __init__(self, *args) -> None: ...
    def paintGL(self): ...
    def resizeGL(self, width, height): ...
    def setGammaTable(self, rLut, gLut, bLut): ...

class SliderGroup(PyQt5.QtWidgets.QFrame):
    sliderMoved: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    textChanged: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, labelName, meta, sliderFGColor, defaultValue, defaultText, *args) -> None: ...
    def _SliderGroup__lineEdit_CB(self): ...
    def _SliderGroup__muteButton_CB(self): ...
    def _SliderGroup__slider_CB(self, sliderValue): ...
    def decrement(self): ...
    def getText(self): ...
    def getValue(self): ...
    def increment(self): ...
    def isMuted(self): ...
    def reset(self): ...
    def setMuted(self, isMuted): ...
    def setText(self, text): ...
    def setValue(self, signedValue): ...
