import type { SerializerOption } from './serializer'; type BuiltInSerializerOption = 'json' | 'v8' | 'auto'; export type AsyncSerializerMode = 'yield' | 'worker'; export declare class WorkerAsyncSerializer { private readonly _serializer; private _nextId; private readonly _slots; private _WorkerCtor; readonly workerCount: number; constructor(_serializer: BuiltInSerializerOption, workers?: number | 'auto'); serialize(value: unknown): Promise; deserialize(data: string | Buffer): Promise; private _request; private _getSlot; private _createSlot; private _getWorkerConstructor; private _handleMessage; private _rejectAll; private _scheduleIdleShutdown; private _clearIdleTimer; private _removeSlot; /** * Terminates every worker immediately. Pending requests are rejected. * The serializer must not be used after disposal. */ dispose(): void; } export declare function createWorkerAsyncSerializer(option: SerializerOption | undefined, workers?: number | 'auto'): WorkerAsyncSerializer | null; export {}; //# sourceMappingURL=asyncSerializer.d.ts.map