import { EventEmitter } from 'events'; import type { ILogger } from '@omnitron-dev/titan/module/logger'; import type { IProcessSpawner, ISpawnOptions, IWorkerHandle, IProcessManagerConfig } from '@omnitron-dev/titan-pm'; import { ProcessStatus } from '@omnitron-dev/titan-pm'; export declare class MockWorker extends EventEmitter { readonly id: string; private readonly options; readonly threadId: number; readonly pid: number; private instance; private publicMethods; private _status; private metrics; constructor(id: string, ProcessClass: new (...args: any[]) => any, options?: ISpawnOptions); notifyReady(): void; get status(): ProcessStatus; private extractPublicMethods; private setupInternalMethods; callMethod(methodName: string, args: unknown[]): unknown; postMessage(message: any): void; terminate(): Promise; } export declare class MockNetronClient { readonly processId: string; readonly logger: ILogger; private connected; private worker; constructor(processId: string, logger: ILogger, worker: MockWorker); start(): Promise; connect(url: string): Promise; disconnect(): Promise; stop(): Promise; isConnected(): boolean; call(service: string, method: string, args: any[]): Promise; mockCall(method: string, args: any[]): Promise; } export declare class MockWorkerHandle implements IWorkerHandle { readonly id: string; readonly transportUrl: string; readonly serviceName: string; readonly serviceVersion: string; private readonly logger; readonly proxy: any; readonly netronClient: MockNetronClient; readonly worker: MockWorker; constructor(id: string, worker: MockWorker, transportUrl: string, serviceName: string, serviceVersion: string, logger: ILogger); get status(): ProcessStatus; terminate(): Promise; isAlive(): boolean; send(message: any): Promise; onMessage(handler: (data: any) => void): void; } export declare class MockProcessSpawner implements IProcessSpawner { private readonly logger; private readonly config; private workers; constructor(logger: ILogger, config?: IProcessManagerConfig); spawn(processPathOrClass: string | (new (...args: any[]) => T), options?: ISpawnOptions): Promise; cleanup(): Promise; } export { MockProcessSpawner as SimpleMockProcessSpawner };