# 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 AbstractFileTableModel(PyQt5.QtCore.QAbstractTableModel):
    _headers: ClassVar[list] = ...
    layoutAboutToBeChanged: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    layoutChanged: ClassVar[PyQt5.QtCore.pyqtSignal] = ...
    def __init__(self, parent: Incomplete | None = ...) -> None: ...
    def columnCount(self, parent): ...
    def data(self, index, role): ...
    def headerData(self, section, orientation, role): ...
    def rowCount(self, parent): ...
    def sort(self, column, order): ...

class FileInfoDisplay(PyQt5.QtWidgets.QFrame):
    def __init__(self, *args) -> None: ...
    def setFile(self, file): ...

class FileInfoItem:
    DIRECTORY: ClassVar[int] = ...
    FILE: ClassVar[int] = ...
    LINK: ClassVar[int] = ...
    SEQUENCE: ClassVar[int] = ...
    _DIRECTORY_ICON_DATA: ClassVar[bytes] = ...
    _FILE_ICON_DATA: ClassVar[bytes] = ...
    _SEQUENCE_ICON_DATA: ClassVar[bytes] = ...
    _UID_CACHE: ClassVar[dict] = ...
    _iconmap: ClassVar[dict] = ...
    def __init__(self, name, *args) -> None: ...
    def icon(self): ...
    def isVisible(self): ...
    def mtime(self): ...
    def mtimeString(self): ...
    def name(self): ...
    def nameKey(self): ...
    def owner(self): ...
    def setVisible(self, flag): ...
    def text(self): ...
    def type(self): ...

class FileTableView(PyQt5.QtWidgets.QTableView):
    def __init__(self, parent: Incomplete | None = ...) -> None: ...
    def _FileTableView__restoreSelectedText(self): ...
    def _FileTableView__saveSelectedText(self): ...
    def _modelReset(self): ...
    def _resizeColumns(self): ...
    def getSelectedText(self): ...
    def setModel(self, model): ...
    def setSelectedText(self, text): ...

def IsDir(path): ...
