UNPKG

organ-ai-zer

Version:

AI-powered file organizer CLI tool

42 lines 1.44 kB
import { ZodSchema } from 'zod'; import { ConversationContext } from '../conversation-context'; import { FileInfo } from '../../types'; export interface AIAnalysisRequest { files: FileInfo[]; baseDirectory: string; existingStructure?: string[]; userPreferences?: any; } export interface AIAnalysisResponse { suggestions: Array<{ file: FileInfo | null; suggestedPath: string; reason: string; confidence: number; category?: string; metadata?: any; }>; reasoning: string; } export declare abstract class BaseAIProvider { protected apiKey: string; protected model: string; protected maxTokens: number; protected temperature: number; protected timeout: number; constructor(config: { apiKey: string; model?: string; maxTokens?: number; temperature?: number; timeout?: number; }); abstract getDefaultModel(): string; abstract generateResponse(context: ConversationContext, schema: ZodSchema): Promise<AIAnalysisResponse>; abstract analyzeFiles(request: AIAnalysisRequest): Promise<AIAnalysisResponse>; protected buildPrompt(request: AIAnalysisRequest): string; protected buildConversationalPrompt(request: AIAnalysisRequest): string; private formatFileSize; protected parseAIResponse(response: string): AIAnalysisResponse; } //# sourceMappingURL=base-ai-provider.d.ts.map