/**
 * Stage 4: Sliding Window Truncation
 *
 * Non-destructive fallback: tags oldest messages as truncated
 * instead of deleting them. Always preserves first message pair.
 * Removes messages in pairs to maintain role alternation.
 *
 * Features:
 * - Adaptive truncation (PERF-001): calculates fraction from actual overage
 *   instead of fixed 50%, with iterative refinement up to 6 passes.
 * - Small conversation handling (BUG-005): for <= 4 messages, truncates
 *   message content proportionally instead of returning no-op.
 */
import type { ChatMessage, TruncationConfig, TruncationResult } from "../../types/index.js";
export declare function truncateWithSlidingWindow(messages: ChatMessage[], config?: TruncationConfig): TruncationResult;
