/**
 * Claude Agent SDK Provider
 *
 * Enables ContractSpec agents to leverage Claude's agentic capabilities:
 * - Computer use (file editing, bash execution)
 * - Extended thinking for complex reasoning
 * - Agentic search and subagents
 * - MCP server integration
 *
 * This adapter wraps @anthropic-ai/claude-agent-sdk to work as a backend
 * for ContractSpec agents.
 */
import { type AgentSpec } from '@contractspec/lib.contracts-spec/agent';
import type { ClaudeAgentSDKConfig, ExternalAgentContext, ExternalAgentProvider, ExternalExecuteParams, ExternalExecuteResult, ExternalStreamChunk } from '../types';
/**
 * Claude Agent SDK Provider implementation.
 */
export declare class ClaudeAgentSDKProvider implements ExternalAgentProvider {
    readonly name = "claude-agent-sdk";
    readonly version = "1.0.0";
    private config;
    private sdkAvailable;
    constructor(config?: ClaudeAgentSDKConfig);
    /**
     * Check if Claude Agent SDK is available.
     */
    isAvailable(): boolean;
    /**
     * Create an execution context from an AgentSpec.
     */
    createContext(spec: AgentSpec): Promise<ExternalAgentContext>;
    /**
     * Execute a prompt using Claude Agent SDK.
     */
    execute(context: ExternalAgentContext, params: ExternalExecuteParams): Promise<ExternalExecuteResult>;
    /**
     * Stream execution with real-time updates.
     */
    stream(context: ExternalAgentContext, params: ExternalExecuteParams): AsyncIterable<ExternalStreamChunk>;
    /**
     * Load the Claude Agent SDK dynamically.
     */
    private loadSDK;
    /**
     * Prepare tools for Claude Agent SDK format.
     */
    private prepareToolsForSDK;
    private mcpToolToExternalTool;
    private normalizeExternalInputSchema;
    private normalizeToolSchemaForClaude;
    private isRecord;
    /**
     * Execute a single tool.
     */
    private executeTool;
    /**
     * Execute multiple tools.
     */
    private executeTools;
    /**
     * Extract text content from response.
     */
    private extractTextContent;
    /**
     * Map Claude Agent SDK stop reason to ContractSpec finish reason.
     */
    private mapStopReason;
}
