import type { ScriptRegion } from "../../compiler/source-scan.js"; import type { HelperDeclaration } from "./types.js"; export interface EffectCallbackRewriteContext { /** Local names imported as the Effect object, such as `Effect` or `E`. */ effect_object_names: ReadonlySet; /** Namespace names imported from `effect/Effect`, such as `E.flatMap`. */ effect_module_names: ReadonlySet; /** Package namespace names imported from `effect`, such as `Fx.Effect`. */ effect_package_names: ReadonlySet; /** Direct `effect/Effect` imports mapped from local name to exported name. */ direct_members: ReadonlyMap; /** Expression used for generated `gen`, `sync`, and upgraded direct calls. */ wrapper_expression: string; /** Import inserted when generated code needs a fresh Effect binding. */ wrapper_import: HelperDeclaration | undefined; } export declare function collect_effect_callback_bindings(scripts: readonly ScriptRegion[]): EffectCallbackRewriteContext;