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

@runtime_checkable
class XDictionaryList(XInterface, Protocol):
    def getCount(self) -> int: ...
    def getDictionaries(self) -> list[XDictionary]: ...
    def getDictionaryByName(self, aDictionaryName: str) -> XDictionary: ...
    def addDictionary(self, xDictionary: XDictionary) -> bool: ...
    def removeDictionary(self, xDictionary: XDictionary) -> bool: ...
    def addDictionaryListEventListener(self, xListener: XDictionaryListEventListener, bReceiveVerbose: bool) -> bool: ...
    def removeDictionaryListEventListener(self, xListener: XDictionaryListEventListener) -> bool: ...
    def beginCollectEvents(self) -> int: ...
    def endCollectEvents(self) -> int: ...
    def flushEvents(self) -> int: ...
    def createDictionary(self, aName: str, aLocale: Locale, eDicType: DictionaryType, aURL: str) -> XDictionary: ...
