import type { AuthorType, CommentAuthorAssociation, SuggestionBlock } from "../types.mts"; import type { FirstLookThread, FirstLookComment } from "../types/report.mts"; export declare function renderAuthor(author: string, authorType?: AuthorType, authorAssociation?: CommentAuthorAssociation, viewerDidAuthor?: boolean): string; export declare function renderBodyPreview(body: string): string; export declare function renderThreadResolutionStatusTag(t: { isOutdated?: boolean; isMinimized?: boolean; }): string; interface ThreadBulletInput { id: string; reviewId?: string; url?: string; path?: string | null; startLine?: number | null; line?: number | null; author: string; authorType?: AuthorType; authorAssociation?: CommentAuthorAssociation; viewerDidAuthor?: true; body: string; comments?: Array<{ id: string; author: string; authorType?: AuthorType; authorAssociation?: CommentAuthorAssociation; viewerDidAuthor?: true; body: string; url: string; }>; suggestion?: SuggestionBlock; edited?: boolean; } export declare function renderThreadBullet(t: ThreadBulletInput, opts?: { statusTag?: string; renderSuggestion?: boolean; noBody?: boolean; suppressEditedMarker?: boolean; verbose?: boolean; }): string; export declare function renderThreadConversation(t: ThreadBulletInput, verbose?: boolean): string; export declare function blockquote(body: string, maxChars?: number, url?: string): string; export declare function renderCommentBullet(c: { id: string; url?: string; author: string; authorType?: AuthorType; authorAssociation?: CommentAuthorAssociation; body: string; }, opts?: { statusTag?: string; }): string; export declare function renderEditedCommentTag(c: { edited?: boolean; }): string | undefined; export declare function renderReviewBullet(r: { id: string; author: string; authorType?: AuthorType; authorAssociation?: CommentAuthorAssociation; body?: string; staleBotCr?: boolean; staleReview?: boolean; }, opts?: { includeBody?: boolean; }): string; export declare function renderReviewListSection(heading: string, items: { id: string; author: string; authorType?: AuthorType; authorAssociation?: CommentAuthorAssociation; body?: string; }[]): string | null; /** * Build bullet strings for the `## First-look items` section. * Threads that also appear in resolutionOnlyIds have their body suppressed * (already shown in `## Review threads to resolve`). */ export declare function buildFirstLookBullets(firstLookThreads: FirstLookThread[], resolutionOnlyIds: Set, firstLookComments: FirstLookComment[], verbose?: boolean): string[]; export {};