import Command from '../../command.js';
/**
 * usage: ps [-AadefLlnwZ] [-gG GROUP,] [-k FIELD,] [-o FIELD,] [-p PID,] [-t TTY,] [-uU USER,]
 *
 * List processes.
 *
 * Which processes to show (-gGuUpPt selections may be comma separated lists):
 *
 * -A  All                                 -a  Has terminal not session leader
 * -d  All but session leaders             -e  Synonym for -A
 * -g  In GROUPs                           -G  In real GROUPs (before sgid)
 * -p  PIDs (--pid)                        -P  Parent PIDs (--ppid)
 * -s  In session IDs                      -t  Attached to selected TTYs
 * -T  Show threads also                   -u  Owned by selected USERs
 * -U  Real USERs (before suid)
 *
 * Output modifiers:
 *
 * -k  Sort FIELDs (-FIELD to reverse)     -M  Measure/pad future field widths
 * -n  Show numeric USER and GROUP         -w  Wide output (don't truncate fields)
 *
 * Which FIELDs to show. (-o HELP for list, default = -o PID,TTY,TIME,CMD)
 *
 * -f  Full listing (-o USER:12=UID,PID,PPID,C,STIME,TTY,TIME,ARGS=CMD)
 * -l  Long listing (-o F,S,UID,PID,PPID,C,PRI,NI,ADDR,SZ,WCHAN,TTY,TIME,CMD)
 * -o  Output FIELDs instead of defaults, each with optional :size and =title
 * -O  Add FIELDS to defaults
 * -Z  Include LABEL
 */
export default class PsCommand extends Command<Array<Partial<PsEntry>>> {
    execute(...args: string[]): Promise<Array<Partial<PsEntry>>>;
    private _parsePs;
}
/**
 * R (running) S (sleeping) D (device I/O) T (stopped)  t (trace stop)
 * X (dead)    Z (zombie)   P (parked)     I (idle)
 * Also between Linux 2.6.33 and 3.13:
 * x (dead)    K (wakekill) W (waking)
 */
export type ProcessState = 'R' | 'S' | 'D' | 'T' | 't' | 'X' | 'Z' | 'P' | 'I' | 'x' | 'K' | 'W';
/**
 * contains PS command line
 */
export interface PsEntry {
    ARGS: string;
    CMD: string;
    CMDLINE: string;
    COMM: string;
    COMMAND: string;
    NAME: string;
    S: ProcessState;
    SCH: '0' | '1' | '2' | '3' | '4' | '5';
    STAT: string;
    '%CPU': string;
    '%MEM': string;
    '%VSZ': string;
    ADDR: string;
    BIT: string;
    C: string;
    CPU: string;
    DIO: string;
    DREAD: string;
    DWRITE: string;
    ELAPSED: string;
    F: string;
    GID: string;
    GROUP: string;
    IO: string;
    LABEL: string;
    MAJFL: string;
    MINFL: string;
    NI: string;
    PCY: string;
    PGID: string;
    PID: string;
    PPID: string;
    PR: string;
    PRI: string;
    PSR: string;
    READ: string;
    RES: string;
    RGID: string;
    RGROUP: string;
    RSS: string;
    RTPRIO: string;
    RUID: string;
    RUSER: string;
    SHR: string;
    STIME: string;
    SWAP: string;
    SZ: string;
    TCNT: string;
    TID: string;
    TIME: string;
    'TIME+': string;
    TTY: string;
    UID: string;
    USER: string;
    VIRT: string;
    VSZ: string;
    WCHAN: string;
    WRITE: string;
}
//# sourceMappingURL=ps.d.ts.map