export declare class SimpleWorker { worker: Worker; status: 'buzy' | 'ready' | 'error'; error: Error | null; constructor(workerInfo: WorkerInfo); call(message: T): Promise; callTransfer(message: T, transfers: ArrayBuffer[]): Promise; } export declare class WorkerInfo { worker: Worker; createFunc: () => Worker; constructor(worker: Worker, createFunc: () => Worker); } export declare class WorkerPool { readyPool: SimpleWorker[]; errorPool: SimpleWorker[]; size: number; promises: Promise[]; allTaskNum: number; completedTaskNum: number; constructor(size: number, workerInfos: WorkerInfo[]); submit(message: T): Promise; submitTimeout(message: T, timeout: number): Promise; submitTransfer(message: T, transfers: ArrayBuffer[]): Promise; submitTransferTimeout(message: T, transfers: ArrayBuffer[], timeout: number): Promise; wait(): Promise; }