/// /// import { Debugger } from "debug"; import { EventEmitter } from "stream"; import { MessagePort, WorkerOptions } from "worker_threads"; import { CallableStore } from "./components/callable-store"; import { ThreadId, ThreadMethodKey } from "./types/general"; export interface QueuedCall { key: ThreadMethodKey; args: Array; resolve: (result: any) => void; reject: (error: Error) => void; } export declare class WorkerThread extends EventEmitter { private debug; readonly id: ThreadId; connected: boolean; private worker; readonly port: MessagePort; error: Error | boolean; callQueue: QueuedCall[]; private busy; private isTerminated; callableStore: CallableStore; constructor(id: ThreadId, parentId: ThreadId, debug: Debugger, workerString: string, resolvedWorkerPath: string, workerOptions: WorkerOptions); terminate(): void; onReady(): void; callOnThread(key: ThreadMethodKey, args: any[], resolve: (result: any) => void, reject: (error: Error) => void): void; }