from typing import Any

from dev.coatl.helper.types import AnyStr
from java.lang import Object

class ProgressListener:
    def setIndeterminate(self, arg: bool) -> None: ...
    def setNote(self, note: AnyStr) -> None: ...
    def setProgress(self, val: int) -> None: ...
    def setProgressMax(self, max_: int) -> None: ...

class TaskProgressListener(ProgressListener):
    def isCanceled(self) -> bool: ...
    def setIndeterminate(self, arg: bool) -> None: ...
    def setNote(self, note: AnyStr) -> None: ...
    def setProgress(self, val: int) -> None: ...
    def setProgressMax(self, max_: int) -> None: ...

class TaskProgressState(Object, ProgressListener):
    def __init__(self, *args: Any) -> None: ...
    def applyTo(self, listener: ProgressListener) -> None: ...
    def getNote(self) -> AnyStr: ...
    def getProgress(self) -> int: ...
    def getProgressMax(self) -> int: ...
    def getResult(self) -> Object: ...
    def getTaskUID(self) -> AnyStr: ...
    def isFinished(self) -> bool: ...
    def isIndeterminant(self) -> bool: ...
    def setFinished(self, finished: bool) -> None: ...
    def setIndeterminate(self, arg: bool) -> None: ...
    def setNote(self, note: AnyStr) -> None: ...
    def setProgress(self, val: int) -> None: ...
    def setProgressMax(self, max_: int) -> None: ...
    def setResult(self, result: Object) -> None: ...
