import { z } from "zod";
import { Tool } from "ai";

//#region src/internal/agents/callEmbeddedAgent.d.ts
type ToolCall = {
  toolName: string;
  args: unknown;
};
interface EmbeddedAgentResult<T> {
  result: T;
  toolCalls: ToolCall[];
}
/**
 * Call an embedded agent with tool call capture
 * This is the standard way to call embedded AI agents within MCP tools
 *
 * Error handling:
 * - Errors are re-thrown for the calling agent to handle
 * - Each agent can implement its own error handling strategy
 */
declare function callEmbeddedAgent<T>({
  system,
  prompt,
  tools,
  schema
}: {
  system: string;
  prompt: string;
  tools: Record<string, Tool>;
  schema: z.ZodSchema<T>;
}): Promise<EmbeddedAgentResult<T>>;
//#endregion
export { ToolCall, callEmbeddedAgent };
//# sourceMappingURL=callEmbeddedAgent-RskCqVav.d.ts.map