/** * EffectRef Interning * * Maintains a module-level intern map so that `getEffectRef('llm.complete')` * always returns the exact same `EffectRef` object. This guarantees reference * equality (`===`) for effect values created with the same name, which is * important for handler matching in `try/with` blocks. * * EffectRef values are serializable — they are stored as just their name string. * When a continuation is restored, the name is used to look up (or recreate) * the unique EffectRef in the new runtime. */ import type { EffectRef } from '../parser/types'; /** * Returns the unique EffectRef for the given name. * Calling with the same name always returns the same reference. * * @example * const a = getEffectRef('llm.complete') * const b = getEffectRef('llm.complete') * a === b // true */ export declare function getEffectRef(name: string): EffectRef; /** * Clears the intern map. Primarily for testing. */ export declare function clearEffectRefInternMap(): void;