from __future__ import annotations
from typing import Any, Protocol, runtime_checkable
from com.sun.star.uno import XInterface

@runtime_checkable
class XConsolidationDescriptor(XInterface, Protocol):
    def getFunction(self) -> GeneralFunction: ...
    def setFunction(self, nFunction: GeneralFunction) -> None: ...
    def getSources(self) -> list[CellRangeAddress]: ...
    def setSources(self, aSources: CellRangeAddress >) -> None: ...
    def getStartOutputPosition(self) -> CellAddress: ...
    def setStartOutputPosition(self, aStartOutputPosition: CellAddress) -> None: ...
    def getUseColumnHeaders(self) -> bool: ...
    def setUseColumnHeaders(self, bUseColumnHeaders: bool) -> None: ...
    def getUseRowHeaders(self) -> bool: ...
    def setUseRowHeaders(self, bUseRowHeaders: bool) -> None: ...
    def getInsertLinks(self) -> bool: ...
    def setInsertLinks(self, bInsertLinks: bool) -> None: ...
