/**
 * Context Cache MCP Tool
 * Pack files by @patterns, cache in memory, paginated read by session ID
 *
 * Operations:
 * - pack: Parse @patterns and cache file contents
 * - read: Paginated read from cache by session ID
 * - status: Get cache/session status
 * - release: Release session cache
 * - cleanup: Cleanup expired caches
 */
import type { ToolSchema, ToolResult } from '../types/tool.js';
import { type CacheStatus, type SessionStatus } from './context-cache-store.js';
interface PackResult {
    operation: 'pack';
    session_id: string;
    files_packed: number;
    files_skipped: number;
    total_bytes: number;
    patterns_matched: number;
    patterns_failed: number;
    expires_at: string;
    errors?: string[];
}
interface ReadResult {
    operation: 'read';
    session_id: string;
    content: string;
    offset: number;
    limit: number;
    total_bytes: number;
    has_more: boolean;
    next_offset: number | null;
}
interface StatusResult {
    operation: 'status';
    session_id?: string;
    session?: SessionStatus;
    cache?: CacheStatus;
}
interface ReleaseResult {
    operation: 'release';
    session_id: string;
    released: boolean;
    freed_bytes: number;
}
interface CleanupResult {
    operation: 'cleanup';
    removed: number;
    remaining: number;
}
type OperationResult = PackResult | ReadResult | StatusResult | ReleaseResult | CleanupResult;
export declare const schema: ToolSchema;
export declare function handler(params: Record<string, unknown>): Promise<ToolResult<OperationResult>>;
export {};
//# sourceMappingURL=context-cache.d.ts.map