interface Session { id: string; projectPath: string; projectName: string; totalFileChanges: number; sessionStartTime: string; sessionEndTime: string | null; lastPrompt?: string; lastPromptTime?: string; createdAt: string; updatedAt: string; } interface ProjectStats { id: string; projectPath: string; projectName: string; totalSessions: number; totalCheckpoints: number; totalFileChanges: number; lastSessionTime: Date; firstSessionTime: Date; createdAt: Date; updatedAt: Date; } interface StatsResponse { projects: ProjectStats[]; totalSessions: number; totalCheckpoints: number; hasActiveSession: boolean; } export declare class CheckpointManager { private db; private currentSession; private logger; constructor(); private getDatabasePath; private getAppDataDirectory; private initializeDatabase; handleClaudeEvent(eventType: string, data: any): Promise; private handleUserPromptSubmit; private handleStop; private handleNotification; private createCheckpoint; private generateCheckpointMessage; private getActiveSession; getProjectStats(): Promise; getCurrentSession(): Session | null; getCheckpoints(projectPath: string): Promise; getCheckpointById(checkpointId: string): Promise; getProjectIndexStats(projectPath: string): Promise; resetProjectIndex(projectPath?: string): Promise; forceFullScan(projectPath: string): Promise; restoreCheckpoint(checkpointId: string): Promise; diffCheckpoints(currentId: string, previousId: string): Promise; private generateSimpleDiff; deleteCheckpoint(checkpointId: string): Promise; deleteProjectCheckpoints(projectPath: string): Promise; clearAllCheckpoints(): Promise; close(): Promise; } export {};