from _typeshed import Incomplete

core: Incomplete
gui: Incomplete
widgets: Incomplete
modo_session: Incomplete
UserRole: int
ModoBakeValueRole = UserRole
ModoBakeTextureLayerRole: Incomplete
ModoBakeNameRole: Incomplete
ModoBakeTypeRole: Incomplete
ModoBakeSubTypeRole: Incomplete
PathTypes: Incomplete

class ProgressObject:
    progressDialog: Incomplete
    def __init__(self, label) -> None: ...
    def __enter__(self): ...
    def __exit__(self, type, value, traceback) -> None: ...
    def setMaximum(self, maximum) -> None: ...
    def tick(self) -> None: ...
    def wasCanceled(self): ...

class ResolutionCombobox(widgets.QComboBox):
    def __init__(self, parent: Incomplete | None = ...) -> None: ...
    def reset(self) -> None: ...
    def width(self): ...
    def height(self): ...

class DepthCombobox(widgets.QComboBox):
    def __init__(self, parent: Incomplete | None = ...) -> None: ...
    def reset(self) -> None: ...
    def depth(self): ...

class FileLookupWidget(widgets.QWidget):
    filePathChanged: Incomplete
    dialogText: Incomplete
    dialogFilter: Incomplete
    dialogSaveMode: Incomplete
    lineEdit: Incomplete
    fileLookupButton: Incomplete
    def __init__(self, dialogText, dialogFilter, dialogSaveMode: bool = ..., parent: Incomplete | None = ...) -> None: ...
    def text(self): ...
    def setText(self, text) -> None: ...

class ModoPreviewWidget(widgets.QWidget):
    previewControlLayout: Incomplete
    def __init__(self) -> None: ...
    def setPausePreview(self, checked) -> None: ...

def convertToReadableDistance(value): ...
def isInteger(text): ...
def validate(): ...

class ModoBakeSettingsWidgetItemDelegate(widgets.QStyledItemDelegate):
    def __init__(self, parent) -> None: ...
    def createEditor(self, parent, option, index): ...
    def setModelData(self, editor, model, index) -> None: ...

class ModoBakeSettingsWidget(widgets.QWidget):
    modoPreviewWidget: Incomplete
    propertiesCache: Incomplete
    combobox: Incomplete
    modoBakesDirWatcher: Incomplete
    modoBakeParameterTable: Incomplete
    modoPreviewParentLayout: Incomplete
    resolutionBox: Incomplete
    depthBox: Incomplete
    bakeToChannelCheckBox: Incomplete
    bakeToGeoChannelCheckBox: Incomplete
    bakeButton: Incomplete
    fileChangeTimer: Incomplete
    def __init__(self, modoPreviewWidget) -> None: ...
    def setVisible(self, visible) -> None: ...
    def reset(self) -> None: ...
    def refreshCombobox(self) -> None: ...
    def onFileChanged(self, path) -> None: ...
    def selectedPath(self): ...
    def analyze(self) -> None: ...
    def bakeByModo(self) -> None: ...
    def onCellChanged(self) -> None: ...
    def closeModo(self) -> None: ...

class ChannelAssignmentAddDialog(widgets.QDialog):
    channelBox: Incomplete
    modoRole: Incomplete
    def __init__(self) -> None: ...
    def currentPair(self): ...

class ChannelAssignmentWidget(widgets.QWidget):
    tableWidget: Incomplete
    def __init__(self) -> None: ...
    def addChannelAssignment(self) -> None: ...
    def removeChannelAssignment(self) -> None: ...
    def saveChannelAssignments(self) -> None: ...
    def loadChannelAssignments(self, geoEntity) -> None: ...
    def channelAssignments(self): ...

class ModoRenderSettingsWidget(widgets.QWidget):
    modoPreviewWidget: Incomplete
    combobox: Incomplete
    modoRendersDirWatcher: Incomplete
    channelAssignmentWidget: Incomplete
    previewGroupBoxLayout: Incomplete
    previewButton: Incomplete
    previewFlattenBox: Incomplete
    widthBox: Incomplete
    heightBox: Incomplete
    flattenBox: Incomplete
    saveRenderBox: Incomplete
    saveLXOBox: Incomplete
    def __init__(self, modoPreviewWidget) -> None: ...
    def setVisible(self, visible) -> None: ...
    def reset(self) -> None: ...
    def sendResources(self) -> None: ...
    def renderByModo(self) -> None: ...
    def selectedPath(self): ...
    def renderWidth(self): ...
    def renderHeight(self): ...
    def renderSavePath(self): ...
    def lxoSavePath(self): ...
    def saveSettings(self) -> None: ...
    def loadSettings(self, geoEntity) -> None: ...
    def refreshCombobox(self) -> None: ...

class ModoSettingsWidget(widgets.QWidget):
    modoModeComboBox: Incomplete
    modoBinLoc: Incomplete
    modoNetworkAddress: Incomplete
    commandPort: Incomplete
    previewPort: Incomplete
    def __init__(self) -> None: ...

class ModoControlWidget(widgets.QWidget):
    widgets: Incomplete
    renderWidget: Incomplete
    bakeWidget: Incomplete
    def __init__(self) -> None: ...
    def reset(self) -> None: ...
