import type { SessionBlock, BurnRate } from '../types/index.js';
export interface SessionMetrics {
    tokensUsed: number;
    tokensRemaining: number;
    usagePercentage: number;
    sessionStartTime: Date;
    sessionEndTime: Date;
    currentTime: Date;
    elapsedMinutes: number;
    totalSessionMinutes: number;
    remainingMinutes: number;
    timePercentage: number;
    predictedEndTime: Date | null;
    willExceedLimit: boolean;
    minutesUntilLimit: number | null;
    resetTime: Date;
    minutesUntilReset: number;
}
export declare function calculateSessionMetrics(session: SessionBlock, tokenLimit: number, currentTime?: Date): SessionMetrics;
export declare function formatTimeUntil(minutes: number): string;
export declare function formatPredictedTime(predictedTime: Date | null, timeFormat: '12' | '24'): string;
export declare function getStatusEmoji(percentage: number): string;
export declare function getBurnRateStatus(burnRate: BurnRate | null, remainingTokens: number, remainingMinutes: number): 'smooth' | 'moderate' | 'high' | 'critical';
export declare function formatBurnRateStatus(status: 'smooth' | 'moderate' | 'high' | 'critical'): string;
//# sourceMappingURL=session-metrics.d.ts.map