///
///
import { NetworkInterfaceInfo } from 'os';
import { AgentConfig } from './config-process/config';
export interface IEnvironmentDataService {
getEnvDataForSubmission(): IEnvironmentData;
setLastError(message: string): void;
}
export interface IEnvironmentData {
agentId: string;
agentType: 'nodejs' | 'browser';
agentVersion: string;
environmentName?: string;
labId?: string;
testStage?: string;
lastError: string | null;
}
export interface INodeEnvironmentData extends IEnvironmentData {
machineName: string;
platform: string;
processArgv: string[];
os: string;
osVersion: string;
arch: string;
processId: number;
ipAddress: {
[index: string]: NetworkInterfaceInfo[];
};
dependencies: NodeJS.ProcessVersions;
runtime: string;
memory?: {
process: NodeJS.MemoryUsage;
machine: {
freemem: number;
totalmem: number;
};
};
}
/**
* The service is used to get environmental data for submission (process id, machine data, etc.)
*/
export declare class EnvironmentDataService implements IEnvironmentDataService {
private envData;
constructor(cfg: AgentConfig);
getEnvDataForSubmission(): INodeEnvironmentData;
setLastError(message: string): void;
}