/**
 * Class serialization utilities.
 *
 * This module is separate from private.ts to avoid pulling in Node.js-only
 * dependencies (like async_hooks via get-closure-vars.ts) when used in
 * workflow bundles.
 */
/**
 * Register a class constructor for serialization.
 * This allows class constructors to be deserialized by looking up the classId.
 *
 * Note: The SWC plugin now inlines equivalent registration logic as a
 * self-contained IIFE (using the same globalThis Symbol-keyed registry),
 * so this function is no longer imported by generated code. It is retained
 * for programmatic use and testing.
 *
 * Also sets the `classId` property on the class so the serializer can find it
 * when serializing instances (e.g., step return values).
 */
export declare function registerSerializationClass(classId: string, cls: Function): void;
/**
 * Find a registered class constructor by ID (used during deserialization)
 *
 * @param classId - The class ID to look up
 * @param global - The global object to check. This ensures workflow code running
 *                 in a VM only accesses classes registered on the VM's global,
 *                 matching production serverless behavior where workflow code
 *                 runs in isolation.
 */
export declare function getSerializationClass(classId: string, global: Record<string, any>): Function | undefined;
//# sourceMappingURL=class-serialization.d.ts.map