ultimate-mcp-server
Version:
The definitive all-in-one Model Context Protocol server for AI-assisted coding across 30+ platforms
57 lines • 1.95 kB
TypeScript
import type { Message } from '../types/index.js';
interface ConversationData {
id: string;
title?: string;
created: string;
updated: string;
messages: Message[];
context: Record<string, any>;
tokens: number;
}
interface ToolUsage {
tool: string;
timestamp: string;
input: any;
output: any;
duration: number;
}
interface FileAccess {
path: string;
operation: 'read' | 'write' | 'edit';
timestamp: string;
content?: string;
}
export declare class SessionStorage {
private logger;
private sessionDir;
private currentSession;
private sessionFile;
private autoSaveInterval;
private isDirty;
constructor(sessionId?: string);
initialize(): Promise<void>;
private generateSessionId;
private createNewSession;
private loadSession;
saveSession(): Promise<void>;
private startAutoSave;
addMessage(conversationId: string, message: Message): Promise<void>;
addToolUsage(tool: string, input: any, output: any, duration: number): Promise<void>;
addFileAccess(filePath: string, operation: 'read' | 'write' | 'edit', content?: string): Promise<void>;
getConversationHistory(conversationId: string, limit?: number): Promise<Message[]>;
getAllConversations(): Promise<ConversationData[]>;
getRecentTools(limit?: number): Promise<ToolUsage[]>;
getRecentFiles(limit?: number): Promise<FileAccess[]>;
searchMessages(query: string, limit?: number): Promise<Message[]>;
getSessionMetadata(): Promise<Record<string, any>>;
listSessions(): Promise<string[]>;
switchSession(sessionId: string): Promise<void>;
deleteSession(sessionId?: string): Promise<void>;
exportSession(): Promise<string>;
importSession(data: string): Promise<void>;
cleanup(): Promise<void>;
getCurrentSessionId(): string | null;
hasUnsavedChanges(): boolean;
}
export {};
//# sourceMappingURL=session-storage.d.ts.map