UNPKG

list-open-files

Version:
76 lines (75 loc) 2.58 kB
import { RawType, Access, Lock, Size, INode, LinkCount, FileDescriptor, MajorMinorDeviceNumber, RawFileFlags, Offset, FileStructureShareCount, CharacterCode, FileStructureAddress, LoginName, Node, ProtocolName, DeviceNumber, StreamIdentification, TcpTpiInformation, SolarisZoneName, SELinuxSecurityContext } from "./backends/lsof/types"; export declare type Type = Exclude<RawType, 'IPv4' | 'IPv6'> | 'IP'; export interface FileBase { type: Type; access: Access | void; lock: Lock | void; size: Size | void; iNode: INode | void; linkCount: LinkCount | void; name: string | void; } export interface FileDescriptorBase extends FileBase { fd: number; } export declare type InternalFileType = Exclude<FileDescriptor, number>; export interface InternalFile extends FileBase { fd: InternalFileType; } export interface IP { address: string; port: number; } export interface FileDescriptorIP extends FileDescriptorBase { type: 'IP'; protocol: 'TCP' | 'UDP'; version: 4 | 6; from: IP | void; to: IP | void; } export interface File extends FileDescriptorBase { majorMinorDeviceNumber: MajorMinorDeviceNumber | void; flags: RawFileFlags | void; offset: Offset | void; } export interface UnknownFile extends FileDescriptorBase { cmd: string | undefined; fileStructureShareCount: FileStructureShareCount | undefined; charCode: CharacterCode | undefined; majorMinorDeviceNumber: MajorMinorDeviceNumber | undefined; fileStructureAddress: FileStructureAddress | undefined; flags: RawFileFlags | undefined; loginName: LoginName | undefined; node: Node | undefined; offset: Offset | undefined; protocolName: ProtocolName | undefined; deviceNumber: DeviceNumber | undefined; streamIdentification: StreamIdentification | undefined; tcpTpiInformation: TcpTpiInformation | undefined; solarisZoneName: SolarisZoneName | undefined; seLinuxSecurityContext: SELinuxSecurityContext | undefined; 1: any | undefined; 2: any | undefined; 3: any | undefined; 4: any | undefined; 5: any | undefined; 6: any | undefined; 7: any | undefined; 8: any | undefined; 9: any | undefined; } export interface Process { pid: number; gpid?: number; ppid?: number; tid?: number; user?: string; name?: string; cwd?: InternalFile; } export declare type ProcessFile = File | FileDescriptorIP | UnknownFile; export interface ProcessInfo { process: Process; files: Array<ProcessFile>; texts: Array<InternalFile>; }