import { type HistoryMessage } from './history-message-transform.js'; export interface SessionSearchHit { role: HistoryMessage['role']; ts?: string; messageIdx: number; snippet: string; } export interface SessionSearchResult { sessionId: string; title: string; lastModified: number; hits: SessionSearchHit[]; totalHits: number; } export interface SessionSearchResponse { query: string; results: SessionSearchResult[]; truncated: boolean; scannedFiles: number; matchedFiles: number; durationMs: number; } /** * Search every session under `workDir` for `query`. * * - Case-insensitive substring match (no regex). * - Capped at `limit` total hits across all sessions; per-session capped at 10. * - `signal` (optional) can be aborted between files for cancellation. */ export declare function searchSessions(workDir: string, query: string, opts?: { limit?: number; signal?: AbortSignal; }): SessionSearchResponse;