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

import PyQt5.QtCore
import PyQt5.QtWidgets
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 SortableListWidget(PyQt5.QtWidgets.QListWidget):
    aboutToDrag: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    contextMenuEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    dragEnterEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    dragMoveEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    dropEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    focusInEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    itemHitTest: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    keyPressEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    mouseMoveEventSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    reorderItemSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    reorderItemsSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    selectionChangedSignal: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, parent) -> None: ...
    def _SortableListWidget__findToIndex(self, event): ...
    def _SortableListWidget__startDrag(self): ...
    def _SortableListWidget__updateDragHilightBar(self, event): ...
    def contextMenuEvent(self, event): ...
    def customEvent(self, event): ...
    def dragEnterEvent(self, event): ...
    def dragLeaveEvent(self, event): ...
    def dragMoveEvent(self, event): ...
    def dropEvent(self, event): ...
    def focusInEvent(self, event): ...
    def getFullHeight(self): ...
    def getFullWidth(self): ...
    def isDraggable(self): ...
    def isItemDraggable(self, item): ...
    def isSorting(self): ...
    def keyPressEvent(self, event): ...
    def mouseMoveEvent(self, event): ...
    def mousePressEvent(self, event): ...
    def setDraggable(self, state): ...
    def setMultipleDragEnabled(self, state): ...
    def setPixmapHitTestEnabled(self, state): ...
    def sizeHint(self): ...
    def sort(self, ascending: bool = ...): ...

class SortableListWidgetItem(PyQt5.QtWidgets.QListWidgetItem):
    def __init__(self, listbox, text, pixmap: Incomplete | None = ..., data: Incomplete | None = ...) -> None: ...
    def _SortableListWidgetItem__measurePixmaps(self): ...
    def calcSizeHint(self): ...
    def getHiliteColor(self): ...
    def getItemData(self): ...
    def getLabelColor(self): ...
    def getPixmapSize(self): ...
    def getPixmaps(self): ...
    def hitTest(self, x, y): ...
    def setHiliteColor(self, color): ...
    def setItemData(self, data): ...
    def setLabelColor(self, color): ...
    def setPixmap(self, pixmap): ...
    def setPixmaps(self, pixmaps): ...

class SortableListWidgetItemDelegate(PyQt5.QtWidgets.QItemDelegate):
    def paint(self, painter, option, index): ...
    def sizeHint(self, option, index): ...
