import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements'; import type { ChatPrompt, Prompt } from '../../types/Prompt'; import type { string_title } from '../../types/string_title'; /** * Agent model requirements stripped of prompt-only bookkeeping before forwarding to runtime tools. */ type SanitizedAgentModelRequirements = Omit; /** * Resolves runtime prompts into the fully enriched prompt shape forwarded by `AgentLlmExecutionTools`. * * @private internal utility of `AgentLlmExecutionTools` */ export declare class AgentLlmExecutionToolsPromptPreparer { private readonly context; constructor(context: { readonly getModelRequirements: () => Promise; readonly getTitle: () => string_title; readonly isVerbose?: boolean; readonly hasPrecomputedModelRequirements: () => boolean; }); /** * Resolves agent requirements, attachments, and runtime overrides into one forwarded chat prompt. */ prepareChatPrompt(prompt: Prompt): Promise<{ readonly forwardedPrompt: ChatPrompt; readonly sanitizedRequirements: SanitizedAgentModelRequirements; readonly mergedTools: Array[number]>; readonly knowledgeSourcesForAgent?: Array; readonly hasAttachmentSources: boolean; readonly hasRuntimePromptTools: boolean; }>; /** * Removes bookkeeping-only properties from compiled agent requirements before forwarding them. */ private getSanitizedAgentModelRequirements; /** * Ensures the agent wrapper only processes chat prompts. */ private requireChatPrompt; } export {};