import { CrossMemoryEvent, CrossMemoryEventType } from './event-capture';
export type ReplayFormat = 'text' | 'json' | 'markdown' | 'compact';
export interface ReplayOptions {
    project: string;
    sessionId?: number;
    eventTypes?: CrossMemoryEventType[];
    since?: string;
    until?: string;
    filePath?: string;
    filePattern?: string;
    limit?: number;
    format: ReplayFormat;
    groupBy?: 'none' | 'minute' | 'hour' | 'file' | 'type';
}
export interface ReplayResult {
    project: string;
    totalEvents: number;
    filteredCount: number;
    startTime: string;
    endTime: string;
    durationMinutes: number;
    eventsByType: Record<CrossMemoryEventType, number>;
    events: CrossMemoryEvent[];
    formatted: string;
}
export declare function replay(options: ReplayOptions): ReplayResult;
export declare function replayRecent(project: string, count: number, format?: ReplayFormat): ReplayResult;
export interface SessionSummary {
    sessionId: number | null;
    toolName: string | null;
    startTime: string;
    endTime: string | null;
    totalEvents: number;
    eventsByType: Record<CrossMemoryEventType, number>;
    uniqueFiles: string[];
    uniqueCommands: string[];
    errors: number;
    testPasses: number;
    testFails: number;
    aiPrompts: number;
    aiAccepted: number;
    aiRejected: number;
    lastErrorMessage: string | null;
    lastFileTouched: string | null;
    durationMinutes: number;
    contextSnapshot: string;
}
export declare function summarizeSession(project: string, sessionId: number): SessionSummary | null;
export declare function renderSessionSummary(summary: SessionSummary): string;
//# sourceMappingURL=replay.d.ts.map