import type { LLMConfig, DocumentMetadata } from './types'; interface Directory { name: string; path: string; } declare global { interface Window { electron: { // File System Operations startWatching: (dirPath: string) => Promise; stopWatching: (dirPath: string) => Promise; addExcludedPath: (path: string) => Promise; // LLM Operations queryLLM: (question: string) => Promise<{ answer: string; sources: DocumentMetadata[]; }>; updateLLMConfig: (config: LLMConfig) => Promise; getLLMConfig: () => Promise; getOllamaModels: () => Promise<{ success: boolean; data?: string[]; error?: string }>; // Vector Store Operations getDocuments: () => Promise<{ success: boolean; data?: DocumentMetadata[]; error?: string }>; addDocument: (content: string, metadata: DocumentMetadata) => Promise; deleteDocument: (path: string) => Promise; updateDocument: (content: string, metadata: DocumentMetadata) => Promise; // File Processing processFile: (filePath: string) => Promise; // System Paths getUserHome: () => Promise<{ success: boolean; data?: string; error?: string }>; getAppPath: () => Promise; // Directory Operations listDirectories: (dirPath: string) => Promise<{ success: boolean; data?: Directory[]; error?: string }>; // Event Handling on: (channel: string, callback: (event: unknown, ...args: any[]) => void) => void; off: (channel: string, callback: (event: unknown, ...args: any[]) => void) => void; }; } } export {};