from typing import Any, List

from java.lang import Enum, Object, Thread
from java.time.temporal import ChronoUnit

class TimeUnit(Enum):
    DAYS: TimeUnit
    HOURS: TimeUnit
    MICROSECONDS: TimeUnit
    MILLISECONDS: TimeUnit
    MINUTES: TimeUnit
    NANOSECONDS: TimeUnit
    SECONDS: TimeUnit
    def convert(self, *args: Any) -> long: ...
    @staticmethod
    def of(chronoUnit: ChronoUnit) -> TimeUnit: ...
    def sleep(self, timeout: long) -> None: ...
    def timedJoin(self, thread: Thread, timeout: long) -> None: ...
    def timedWait(self, obj: Object, timeout: long) -> None: ...
    def toChronoUnit(self) -> ChronoUnit: ...
    def toDays(self, duration: long) -> long: ...
    def toHours(self, duration: long) -> long: ...
    def toMicros(self, duration: long) -> long: ...
    def toMillis(self, duration: long) -> long: ...
    def toMinutes(self, duration: long) -> long: ...
    def toNanos(self, duration: long) -> long: ...
    def toSeconds(self, duration: long) -> long: ...
    @staticmethod
    def values() -> List[TimeUnit]: ...
