import type { Discussion, DiscussionNote } from './gitlab.js'; export interface PriorThread { file: string; line: number | null; resolved: boolean; /** Bot comment body with fingerprint markers and emoji prefixes stripped. */ botComment: string; /** Human (non-system) reply bodies, in order. */ replies: string[]; } /** * Returns true when the note body contains a code-review fingerprint marker * (current or legacy prefix). * Used to identify notes posted by the bot without needing a getCurrentUser() call. */ export declare function isBotNote(note: DiscussionNote): boolean; /** * Parses the `+++ b/` lines from a unified diff and returns the set of * new file paths. `/dev/null` (deleted files) is excluded. */ export declare function extractChangedFiles(diff: string): Set; /** * Extracts prior review threads from existing MR discussions that are relevant * to the current diff. * * A thread is included when: * - It contains at least one bot note (identified by fingerprint marker). * - It contains at least one non-system human reply after the bot note. * - The thread's file appears in `changedFiles`. * * Resolved threads are included but marked with `resolved: true` so the * reviewer can reference them without re-raising the concern. */ export declare function extractPriorThreads(discussions: Discussion[], changedFiles: Set): PriorThread[]; /** * Renders a `` XML block from a list of prior threads. * Returns an empty string when `threads` is empty. */ export declare function renderPriorThreadsBlock(threads: PriorThread[]): string; //# sourceMappingURL=prior-threads.d.ts.map