import sys
from _typeshed import structseq
from typing import Any
from typing_extensions import final

if sys.platform != "win32":
    @final
    class struct_spwd(structseq[Any], tuple[str, str, int, int, int, int, int, int, int]):
        @property
        def sp_namp(self) -> str: ...
        @property
        def sp_pwdp(self) -> str: ...
        @property
        def sp_lstchg(self) -> int: ...
        @property
        def sp_min(self) -> int: ...
        @property
        def sp_max(self) -> int: ...
        @property
        def sp_warn(self) -> int: ...
        @property
        def sp_inact(self) -> int: ...
        @property
        def sp_expire(self) -> int: ...
        @property
        def sp_flag(self) -> int: ...

    def getspall() -> list[struct_spwd]: ...
    def getspnam(__arg: str) -> struct_spwd: ...
