# 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 SliderBase:
    def __init__(self, range: Incomplete | None = ..., center: Incomplete | None = ..., axisExponent: Incomplete | None = ..., gradient: Incomplete | None = ..., integer: Incomplete | None = ...) -> None: ...
    def _SliderBase__computeAutoAxisExponent(self): ...
    def _SliderBase__drawLabelText(self, painter, value, text, centerLine_y, textPen, labelBounds): ...
    def _SliderBase__measureLabelBounds(self, value, text): ...
    def _clearLabelsCache(self): ...
    def _doDrag(self, windowLocalX): ...
    def _doPaint(self, p, palette): ...
    def _endDrag(self, windowLocalX): ...
    def _getToggleComponentEnabled(self): ...
    def _isInDrag(self): ...
    def _toggleComponent(self): ...
    def getReadOnly(self): ...
    def getValue(self): ...
    def isPreselectionActive(self): ...
    def normalizedValueToValue(self, normValue): ...
    def normalizedValueToWindowPosition(self, normValue): ...
    def setAxisExponent(self, exponent): ...
    def setCenter(self, centerVal): ...
    def setColor(self, c): ...
    def setGradient(self, gradientName): ...
    def setHasFocus(self, hasFocus): ...
    def setInteger(self, isInt): ...
    def setRange(self, val1, val2): ...
    def setReadOnly(self, readOnly, disableComponentToggle: Incomplete | None = ...): ...
    def setValue(self, value): ...
    def valueToNormalizedValue(self, value): ...
    def valueToWindowPosition(self, value): ...
    def windowPositionToNormalizedValue(self, pos): ...
    def windowPositionToValue(self, pos, applyLabelSnapping: bool = ...): ...

class SliderWidget(PyQt5.QtWidgets.QWidget, SliderBase):
    toggleComponent: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    valueChanged: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, parent, fontScale: Incomplete | None = ..., **kwargs) -> None: ...
    def _displayChanged(self): ...
    def _toggleComponent(self): ...
    def _valueChanged(self, value, final): ...
    def enterEvent(self, ev): ...
    def leaveEvent(self, ev): ...
    def mouseMoveEvent(self, ev): ...
    def mousePressEvent(self, ev): ...
    def mouseReleaseEvent(self, ev): ...
    def paintEvent(self, ev): ...
    def resizeEvent(self, ev): ...
    def sizeHint(self): ...
    def sizePolicy(self): ...
