import type { ChatMessage } from '../../../../core/llm/types.js';
/**
 * Chooses the archive/recent boundary without splitting tool-call pairs.
 */
export declare class ConversationCompactionSplitPolicy {
    static resolveRecentHistoryTokenBudget(contextWindow: number, ratio: number): number;
    static findSplit(history: ChatMessage[], options: {
        recentTokenBudget: number;
        preferredRecentMessages: number;
        stopAtPreferredMessages?: boolean;
    }): number;
    private static isAssistantToolCallMessage;
}
//# sourceMappingURL=split-policy.d.ts.map