Files
detector/ts/detector.interfaces.ts

45 lines
834 B
TypeScript
Raw Permalink Normal View History

export enum ServiceType {
HTTP = 'http',
HTTPS = 'https',
SSH = 'ssh',
FTP = 'ftp',
SMTP = 'smtp',
POP3 = 'pop3',
IMAP = 'imap',
MYSQL = 'mysql',
POSTGRESQL = 'postgresql',
MONGODB = 'mongodb',
REDIS = 'redis',
UNKNOWN = 'unknown',
}
export interface IDetectorResult {
isActive: boolean;
serviceType?: ServiceType;
protocol?: 'tcp' | 'udp';
responseTime?: number;
tlsVersion?: string;
serviceBanner?: string;
error?: string;
}
export interface INetworkDiagnostics {
ping?: {
reachable: boolean;
averageLatency: number;
packetLoss: number;
};
traceroute?: Array<{
hop: number;
hostname: string;
ip: string;
latency: number;
}>;
}
export interface IDetectorOptions {
timeout?: number;
includeNetworkDiagnostics?: boolean;
detectServiceType?: boolean;
}