import type { AgentKnowledgeRef } from '@contractspec/lib.contracts-spec/agent';
import type { KnowledgeRetriever } from '@contractspec/lib.knowledge/retriever';
/**
 * Inject static knowledge into agent instructions.
 *
 * This function handles the "required" knowledge that should be
 * injected into the system prompt at agent initialization time.
 * Optional knowledge is handled by the knowledge query tool.
 *
 * @param instructions - Base agent instructions
 * @param knowledgeRefs - Knowledge references from the agent spec
 * @param retriever - Optional knowledge retriever
 * @returns Instructions with injected knowledge
 */
export declare function injectStaticKnowledge(instructions: string, knowledgeRefs: AgentKnowledgeRef[], retriever?: KnowledgeRetriever, locale?: string): Promise<string>;
/**
 * Create a knowledge injector instance for reuse.
 */
export declare function createKnowledgeInjector(retriever?: KnowledgeRetriever, locale?: string): {
    /**
     * Inject static knowledge into instructions.
     */
    inject: (instructions: string, knowledgeRefs: AgentKnowledgeRef[]) => Promise<string>;
    /**
     * Check if a knowledge space is available.
     */
    hasSpace: (spaceKey: string) => boolean;
    /**
     * List available knowledge spaces.
     */
    listSpaces: () => string[];
};
