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

import UI4.Widgets.SceneGraphView.SceneGraphViewIconManager as SceneGraphViewIconManager
import UI4.Util.ScenegraphIconManager as ScenegraphIconManager
import typing
from UI4.Widgets.SceneGraphView.SceneGraphViewColumn import SceneGraphColumnSet as SceneGraphColumnSet
from _typeshed import Incomplete
from typing import Set, Tuple

class ColumnManager:
    def __init__(self, columnChangedCallback: typing.Callable | None, columnPresetManager: Incomplete | None = ...) -> None: ...
    def addColumn(self, columnName): ...
    def addColumnSet(self, columnSetName): ...
    def applyColumnVisibilitySettings(self, columnVisibility): ...
    def applyColumnWidthsSettings(self, columnWidths): ...
    def getColumnAttributeName(self, columnIndex: int, visibleOnly: bool = ...) -> str: ...
    def getColumnAttributeNames(self, columnIndex: int, visibleOnly: bool = ...) -> list[str]: ...
    def getColumnByIndex(self, columnIndex, visibleOnly: bool = ...): ...
    def getColumnByName(self, columnName): ...
    def getColumnCount(self, visibleOnly: bool = ...): ...
    def getColumnTitleText(self, columnIndex, visibleOnly: bool = ...): ...
    def getColumnTitles(self, visibleOnly: bool = ...): ...
    def getColumnVisibilitySettings(self): ...
    def getColumnWidths(self, visibleOnly: bool = ...): ...
    def getColumnWidthsSettings(self): ...
    def getDataType(self, columnIndex: int) -> int: ...
    def getRootColumnSet(self): ...
    def hideColumnSet(self, columnSetName): ...
    def isEditable(self, columnIndex, visibleOnly: bool = ...): ...
    def isLocationNameColumn(self, columnIndex, visibleOnly: bool = ...): ...
    def moveColumn(self, columnIndex, newColumnIndex, visibleOnly: bool = ...): ...
    def setColumnChangedCallback(self, callback): ...
    def setColumnSetVisible(self, columnSetName, visible): ...
    def showColumnSet(self, columnSetName): ...
