export type TypedPool<TArgs extends unknown[], TResult> = {
    run(...args: TArgs): Promise<TResult>;
    destroy(): Promise<void>;
};
export type WorkerPool<TFn extends (...args: never[]) => unknown> = TypedPool<Parameters<TFn>, Awaited<ReturnType<TFn>>>;
export declare const createWorkerPool: <TFn extends (...args: never[]) => unknown>(workerBasePath: string, baseUrl: string, poolSize: number) => WorkerPool<TFn>;
