/**
 * Shared session scanning logic used by both /api/sessions and /api/sessions-batch.
 *
 * Scans Claude Code and Cursor session directories for JSONL session files,
 * parsing headers to extract preview, message count, and timestamps.
 */
export interface SessionResult {
    id: string;
    agentType: string;
    preview: string | null;
    messageCount: number;
    firstMessageAt: string | null;
    lastMessageAt: string | null;
    createdAt: string | null;
    projectPath: string;
    filePath: string;
    /** mtime for sorting — not sent to client */
    _mtime: number;
}
export declare function scanClaudeSessions(repositoryPath: string, limit: number, includeWorktrees?: boolean): Promise<SessionResult[]>;
export declare function scanCursorSessions(repositoryPath: string, limit: number): Promise<SessionResult[]>;
/**
 * Scan sessions for a single repository path from all providers.
 * Merges and sorts by recency.
 */
export declare function scanSessionsForPath(repositoryPath: string, limit: number, includeWorktrees?: boolean): Promise<SessionResult[]>;
//# sourceMappingURL=session-scanner.d.ts.map