import type { HookCallbackMatcher, SDKResultMessage, SDKSession, SDKSessionOptions } from '@anthropic-ai/claude-agent-sdk'; import type { EventBus } from '../events/bus'; import type { EmitContext } from '../events/emit'; export type ClaudeRunOptions = { message: string; model: string; session?: ClaudeSession; mcpServers?: Record; permissionMode?: SDKSessionOptions['permissionMode']; allowedTools?: string[]; disallowedTools?: string[]; canUseTool?: SDKSessionOptions['canUseTool']; hooks?: SDKSessionOptions['hooks']; maxTurns?: number; maxBudgetUsd?: number; maxThinkingTokens?: number; }; export type ClaudeSession = SDKSession; export type ClaudeSessionOptions = SDKSessionOptions & { mcpServers?: Record; maxTurns?: number; maxBudgetUsd?: number; maxThinkingTokens?: number; }; export declare function createClaudeSession(options: ClaudeSessionOptions): ClaudeSession; export declare function runClaudePrompt(options: ClaudeRunOptions): Promise; export declare function createToolHooks(options: { bus?: EventBus; context: EmitContext; onHeartbeat?: () => Promise; onToolCall?: (entry: { toolCallId: string; toolName: string; argsDigest: string; resultDigest?: string; ok: boolean; }) => void; }): Partial>;