import type { PluginConfig } from "./config.js"; import type { SessionState } from "./session-state.js"; import type { TypedPluginInput } from "./types.js"; export interface CompactionDeps { config: PluginConfig; sessions: Map; log: (...args: unknown[]) => void; input: TypedPluginInput; } export declare function createCompactionModule(deps: CompactionDeps): { isTokenLimitError: (error: any) => boolean; attemptCompact: (sessionId: string) => Promise; forceCompact: (sessionId: string) => Promise; maybeProactiveCompact: (sessionId: string) => Promise; maybeOpportunisticCompact: (sessionId: string, reason: string) => Promise; maybeHardCompact: (sessionId: string) => Promise; }; //# sourceMappingURL=compaction.d.ts.map