import { AniraWeb } from '../AniraWeb';
import { AniraWasmConfig } from '../factory';
import { JSBackendBase } from '../backends';
/**
 * Map from class name to class constructor.
 * The handler uses this to instantiate the correct subclass when
 * `className` is provided in a `registerProcessor` message.
 */
type ProcessorClassMap = Record<string, typeof JSBackendBase>;
type AniraCreateFn = (config?: AniraWasmConfig & Record<string, unknown>, memory?: WebAssembly.Memory) => Promise<AniraWeb>;
/**
 * Set up the inference worker message handler.
 *
 * Call this at the top level of your worker file, passing any custom
 * processor subclasses the worker should know about:
 *
 * ```ts
 * // my-inference-worker.ts
 * import { setupInferenceWorker } from './inferenceWorkerHandler'
 * import { CustomJSBackend } from '../custom-js-backend'
 *
 * setupInferenceWorker({ CustomJSBackend })
 * ```
 */
export declare const setupInferenceWorker: (customProcessorClasses?: ProcessorClassMap, createAnira?: AniraCreateFn) => void;
export {};
//# sourceMappingURL=inferenceWorkerHandler.d.ts.map