UNPKG

@cocalc/project

Version:
91 lines (90 loc) 1.81 kB
export declare type State = "R" | "S" | "D" | "Z" | "T" | "W"; export interface Mem { rss: number; } export interface Stat { ppid: number; state: State; utime: number; stime: number; cutime: number; cstime: number; starttime: number; nice: number; num_threads: number; mem: Mem; } export interface Cpu { pct: number; secs: number; } interface ProcProject { type: "project"; } interface ProcTerminal { type: "terminal"; path: string; } interface ProcJupyter { type: "jupyter"; path: string; } interface ProcX11 { type: "x11"; path: string; } interface ProcSSHD { type: "sshd"; } export declare type CoCalcInfo = ProcTerminal | ProcJupyter | ProcProject | ProcSSHD | ProcX11; export interface Process { pid: number; ppid: number; exe: string; cmdline: string[]; stat: Stat; cpu: Cpu; uptime: number; cocalc?: CoCalcInfo; } export interface CGroup { mem_stat: { [key: string]: number; }; cpu_usage: number; cpu_usage_rate: number; oom_kills: number; cpu_cores_limit: number; } export interface DiskUsageInfo { available: number; free: number; total: number; usage: number; } export declare type DiskUsage = Record<"tmp" | "project", DiskUsageInfo>; export declare type Processes = { [pid: string]: Process; }; export interface ProjectInfo { timestamp: number; processes?: Processes; cgroup?: CGroup; disk_usage: DiskUsage; uptime: number; boottime: Date; } export declare enum Signal { Kill = 9, Interrupt = 2, Terminate = 15, Pause = 19, Resume = 18 } interface SignalCmd { cmd: "signal"; signal?: Signal; pids: number[]; } export declare type ProjectInfoCmds = SignalCmd; export {};