from typing import NamedTuple

def worst(states: list[ServiceState]) -> ServiceState: ...

class ServiceState(NamedTuple("ServiceState", [("code", int), ("text", str)])):
    def __int__(self) -> int: ...
    def __str__(self) -> str: ...

class Ok(ServiceState):
    def __new__(cls) -> Ok: ...

class Warn(ServiceState):
    def __new__(cls) -> Warn: ...

class Critical(ServiceState):
    def __new__(cls) -> Critical: ...

class Unknown(ServiceState):
    def __new__(cls) -> Unknown: ...
