/** * Rich formatting for session information * * NOTE: This is a CLI presentation layer component. It uses chalk for * terminal formatting and should not be imported by domain layers. * This formatter is specific to CLI output and lives in the CLI layer. */ import type { Session, SessionSummary } from '../types/session.types.js'; export declare class SessionFormatter { /** * Format session list */ formatSessionList(sessions: SessionSummary[]): string; /** * Format single session item in list */ private formatSessionItem; /** * Format session details view */ formatSessionDetails(session: Session, options?: { showContext?: boolean; showFiles?: boolean; }): string; private buildArtifactsSection; private buildCommandHistorySection; private buildContextSection; private buildFilesSection; private buildOverviewSection; private buildSessionHeader; private buildSessionSections; private calculateHeaderWidth; /** * Format command history */ formatCommandHistory(commands: Array<{ command: string; success: boolean; timestamp?: string; }>): string; /** * Format file changes */ formatFileChanges(changes: { created: number; deleted: number; modified: number; }): string; /** * Format session metrics */ formatSessionMetrics(session: Session): string; /** * Get status icon */ private getStatusIcon; /** * Get status label with color */ private getStatusLabel; /** * Format command flow */ private formatCommandFlow; /** * Format age (relative time) */ private formatAge; /** * Format date */ private formatDate; /** * Format time (HH:MM:SS) */ private formatTime; /** * Format size in bytes */ private formatSize; /** * Calculate success rate */ private calculateSuccessRate; /** * Extract file changes from session */ private extractFileChanges; /** * Format detailed file changes list */ private formatFileChangesList; /** * Extract artifacts from session */ private extractArtifacts; /** * Format artifacts list */ private formatArtifactsList; /** * Format session context in a structured way */ private formatSessionContext; } export declare function getSessionFormatter(): SessionFormatter; //# sourceMappingURL=session-formatter.d.ts.map