/**
 * Adaptive Chunker
 *
 * Divides messages into chunks for parallel summarization based on
 * message statistics and token distribution.
 */
import type { ChatMessage } from '../../types/index.js';
import type { MessageChunk, MessageStats, AdaptiveChunkConfig } from './types.js';
/**
 * Calculate message statistics
 */
export declare function calculateMessageStats(messages: ChatMessage[], model?: string): MessageStats;
/**
 * Calculate optimal chunk count based on message statistics
 */
export declare function calculateOptimalChunkCount(stats: MessageStats, targetChunks?: number, config?: Partial<AdaptiveChunkConfig>): number;
/**
 * Split messages into chunks for parallel summarization
 */
export declare function chunkMessages(messages: ChatMessage[], targetChunks?: number, config?: Partial<AdaptiveChunkConfig>, model?: string): MessageChunk[];
/**
 * Merge adjacent small chunks to balance distribution
 */
export declare function balanceChunks(chunks: MessageChunk[], minTokensPerChunk?: number): MessageChunk[];
