export interface ToolDefinition { name: string; description: string; parameters: Record; } export interface LlmToolCall { id: string; name: string; arguments: Record; } export interface ToolExecutionResult { success: boolean; message: string; } export interface IToolProvider { getType(): string; getToolDefinitions(): ToolDefinition[]; executeTool(toolCall: LlmToolCall): Promise; }