import type { ChatMessage } from '../../../../core/llm/types.js';
import type { ConversationCompactionContextInput } from './types.js';
/**
 * Owns low-cost token estimates used by compaction thresholds and context stats.
 */
export declare class ConversationCompactionTokenEstimator {
    static estimateHistory(history: ChatMessage[]): number;
    static estimateRequest(input: Pick<ConversationCompactionContextInput, 'history' | 'runtime' | 'request'>): number;
    static isCompactedSummary(message: ChatMessage): boolean;
    static countNonCompactedMessages(history: ChatMessage[]): number;
    static estimateMessage(message: ChatMessage): number;
    static estimateText(text: string): number;
}
//# sourceMappingURL=token-estimator.d.ts.map