export interface AIQueryOptions { timeout?: number; workingDirectory?: string; additionalArgs?: string[]; taskId?: string; model?: string; securityKey?: string; } export interface AIResponse { content: string; provider: 'claude' | 'gemini' | 'copilot'; command: string; success: boolean; error?: string; taskId?: string; toolCall?: { toolName: string; toolInput: any; toolResult: any; }; } export interface AIProvider { readonly name: 'claude' | 'gemini' | 'copilot'; isAvailable(): Promise; query(prompt: string, options?: AIQueryOptions): Promise; getToolPath(): Promise; } export declare class ProviderNotAvailableError extends Error { constructor(providerName: string); }