/** * Generic worker pool with round-robin dispatch and sync fallback. * @module workers/pool */ export interface WorkerPoolOptions { /** Number of workers (default: 2) */ poolSize?: number; /** Run tasks on main thread when Worker is unavailable */ syncFallback?: boolean; /** * If a worker never answers (common with broken Vite worker URLs in docs), * fall back to syncHandler after this many ms (default: 250). * Set 0 to disable. */ timeoutMs?: number; } export declare class WorkerPool { private workers; private pending; private nextWorker; private readonly poolSize; private readonly syncFallback; private readonly timeoutMs; private readonly workerFactory; private readonly syncHandler?; private destroyed; constructor(workerFactory: () => Worker, options?: WorkerPoolOptions & { syncHandler?: (task: TMessage) => TResult | Promise; }); private removeWorker; private workerErrorMessage; private rejectPendingWithSyncFallback; private clearTaskTimer; private settleWithSync; private spawnWorker; /** Dispatch a task to the pool. Falls back to syncHandler when no workers exist. */ run(task: TMessage): Promise; size(): number; pendingCount(): number; destroy(): void; } /** Generate a unique task id */ export declare function nextTaskId(prefix?: string): string;