from _typeshed import Incomplete

# TODO: Add POSIX constants and check their aviability (see psutil_posix_add_constants)
AF_LINK: Incomplete

def getpagesize() -> int: ...
def net_if_addrs(): ...
def net_if_flags(nic_name: str, /) -> list[str]: ...
def net_if_is_running(nic_name: str, /) -> bool: ...
def net_if_mtu(nic_name: str, /) -> int: ...
def proc_priority_get(pid: int, /) -> int: ...
def proc_priority_set(pid: int, priority: int, /) -> None: ...
def users() -> list[tuple[Incomplete, ...]]: ...

version: Incomplete
SSLEEP: Incomplete
SRUN: Incomplete
SZOMB: Incomplete
SSTOP: Incomplete
SIDL: Incomplete
SONPROC: Incomplete
SWAIT: Incomplete
PRNODEV: Incomplete
TCPS_CLOSED: Incomplete
TCPS_CLOSING: Incomplete
TCPS_CLOSE_WAIT: Incomplete
TCPS_LISTEN: Incomplete
TCPS_ESTABLISHED: Incomplete
TCPS_SYN_SENT: Incomplete
TCPS_SYN_RCVD: Incomplete
TCPS_FIN_WAIT_1: Incomplete
TCPS_FIN_WAIT_2: Incomplete
TCPS_LAST_ACK: Incomplete
TCPS_TIME_WAIT: Incomplete
TCPS_IDLE: Incomplete
TCPS_BOUND: Incomplete
PSUTIL_CONN_NONE: Incomplete

def proc_basic_info(pid: int, procfs_path: str, /) -> tuple[Incomplete, ...]: ...
def proc_cpu_num(pid: int, procfs_path: str, /): ...
def proc_cpu_times(pid: int, procfs_path: str, /): ...
def proc_cred(pid: int, procfs_path: str, /): ...
def proc_environ(pid: int, procfs_path: str, /): ...
def proc_memory_maps(pid: int, procfs_path: str, /): ...
def proc_name_and_args(pid: int, procfs_path: str, /): ...
def proc_num_ctx_switches(pid: int, procfs_path: str, /): ...
def query_process_thread(pid: int, tid: int, procfs_path: str, /): ...
def boot_time(): ...
def cpu_count_cores(): ...
def cpu_stats(): ...
def disk_io_counters(): ...
def disk_partitions(): ...
def net_connections(pid: int, /): ...
def net_if_stats(): ...
def net_io_counters(): ...
def per_cpu_times(): ...
def swap_mem(): ...
def check_pid_range(pid: int, /): ...
def set_debug(value: bool, /) -> None: ...
