import { z } from "#compiled/zod/index.js";
import type { ModuleSourceRef } from "#shared/source-ref.js";
import type { CompiledAgentManifest, CompiledAgentNodeManifest } from "#compiler/manifest.js";
/**
 * Compiled module ownership for one runtime graph node.
 */
export type CompiledModuleNodeScope = z.infer<typeof compiledModuleNodeScopeSchema>;
/**
 * Flattened compiled authored module map keyed by stable node ids.
 */
export type CompiledModuleMap = z.infer<typeof compiledModuleMapSchema>;
declare const compiledModuleNodeScopeSchema: z.ZodObject<{
    modules: z.ZodRecord<z.ZodString, z.ZodObject<{}, z.core.$loose>>;
}, z.core.$strict>;
/**
 * Zod schema for the flattened compiled authored module map.
 */
export declare const compiledModuleMapSchema: z.ZodObject<{
    nodes: z.ZodRecord<z.ZodString, z.ZodObject<{
        modules: z.ZodRecord<z.ZodString, z.ZodObject<{}, z.core.$loose>>;
    }, z.core.$strict>>;
}, z.core.$strict>;
/**
 * Input for generating the compiled authored module map artifact.
 */
export interface CreateCompiledModuleMapSourceInput {
    /**
     * Controls how generated authored-module imports are written. Relative
     * specifiers are the compiler default; absolute specifiers are useful when a
     * bundler consumes the module map from a virtual module id.
     */
    importSpecifierStyle?: "absolute" | "relative";
    manifest: CompiledAgentManifest;
    moduleMapPath: string;
}
/**
 * Generates the compiler-owned module map artifact that statically imports
 * every module-backed authored source.
 */
export declare function createCompiledModuleMapSource(input: CreateCompiledModuleMapSourceInput): string;
/**
 * Collects every module-backed source reference from a single compiled
 * agent node manifest. Used by both the compiler (to generate the static
 * module-map artifact) and the runtime loader (to hydrate a module map
 * from the manifest when the pre-built artifact is unavailable).
 */
export declare function collectModuleRefsForManifest(manifest: CompiledAgentNodeManifest): ModuleSourceRef[];
export {};
