/** * Smart compaction suggestions — monitors conversation and suggests compaction at optimal points. */ import type { Message } from './types.js'; export interface CompactionSuggestion { reason: string; strategy: 'full' | 'quick' | 'selective'; estimatedTokens: number; estimatedSavings: number; } /** * Suggest compaction at optimal points. * Returns null if no compaction needed, or a suggestion with reason. */ export declare function shouldSuggestCompaction(messages: Message[], lastCompactionAt: number): CompactionSuggestion | null; /** * Pre-build a summary of what would be compacted. * Shows which messages/ranges would be affected. */ export declare function buildCompactionSummary(messages: Message[]): string; /** * Determine optimal compaction strategy based on token count and message characteristics. */ export declare function getCompactionStrategy(messages: Message[]): 'full' | 'quick' | 'selective';