from typing import Any, Iterable, Optional, Union

from dev.thecesrom.helper.types import AnyStr

class Logger:
    ROOT_LOGGER_NAME: str
    def debug(self, *args: Any) -> None: ...
    def error(self, *args: Any) -> None: ...
    def getName(self) -> AnyStr: ...
    def info(self, *args: Any) -> None: ...
    def isErrorEnabled(self, marker: Optional[Marker] = ...) -> bool: ...
    def isInfoEnabled(self, marker: Optional[Marker] = ...) -> bool: ...
    def isTraceEnabled(self, marker: Optional[Marker] = ...) -> bool: ...
    def isWarnEnabled(self, marker: Optional[Marker] = ...) -> bool: ...
    def trace(self, *args: Any) -> None: ...
    def warn(self, *args: Any) -> None: ...

class Marker:
    ANY_MARKER: str
    ANY_NON_NULL_MARKER: str
    def add(self, reference: Marker) -> None: ...
    def contains(self, arg: Union[Marker, AnyStr]) -> bool: ...
    def equals(self, o: Any) -> bool: ...
    def getName(self) -> AnyStr: ...
    def hashCode(self) -> int: ...
    def hasReferences(self) -> bool: ...
    def iterator(self) -> Iterable[Marker]: ...
    def remove(self, reference: Marker) -> bool: ...
