import type { AgentMessage } from '@earendil-works/pi-agent-core'; export interface WindowConfig { maxMessages: number; keepRecentMessages: number; preserveSystemMessages: boolean; } export declare class SlidingWindow { private config; constructor(config?: Partial); /** * Trim messages to keep within window size */ trim(messages: AgentMessage[]): AgentMessage[]; /** * Check if messages need trimming */ needsTrim(messages: AgentMessage[]): boolean; /** * Get stats about current window */ getStats(messages: AgentMessage[]): { total: number; system: number; user: number; assistant: number; tool: number; needsTrim: boolean; }; }