import { type ComponentPropsWithoutRef, type Ref } from 'react'; export type GithubDiffLine = { content: string; kind: 'hunk'; newLines?: number; newStart?: number; oldLines?: number; oldStart?: number; } | { content: string; key?: string; kind: 'context' | 'add' | 'del'; new: number | null; old: number | null; }; export type GithubInlineComment = { id: string; author: string; body: string; createdAt?: string; initials?: string; }; export type GithubInlineCommentThread = { comments?: readonly GithubInlineComment[]; resolved?: boolean; }; export type GithubInlineCommentThreads = Record; export type GithubInlineCommentAddDetails = { comment: GithubInlineComment; line: GithubDiffLine; lineIndex: number; lineKey: string; }; export type GithubInlineResolveChangeDetails = { line: GithubDiffLine; lineIndex: number; lineKey: string; resolved: boolean; }; export type GithubInlineOpenLineChangeDetails = { line: GithubDiffLine | null; lineIndex: number | null; lineKey: string | null; }; export type GithubInlineThreadsChangeDetails = ({ type: 'comment:add'; } & GithubInlineCommentAddDetails) | ({ type: 'resolve:change'; } & GithubInlineResolveChangeDetails); export type GithubInlineCommentsProps = Omit, 'children'> & { currentUser?: string; currentUserInitials?: string; defaultOpenLineIndex?: number | null; defaultThreads?: GithubInlineCommentThreads; diff?: readonly GithubDiffLine[]; diffText?: string; fileName: string; fileStatus?: string | null; onCommentAdd?: (details: GithubInlineCommentAddDetails) => void; onOpenLineChange?: (details: GithubInlineOpenLineChangeDetails) => void; onOpenLineIndexChange?: (lineIndex: number | null) => void; onResolveChange?: (details: GithubInlineResolveChangeDetails) => void; onThreadsChange?: (threads: GithubInlineCommentThreads, details: GithubInlineThreadsChangeDetails) => void; openLineIndex?: number | null; ref?: Ref; threads?: GithubInlineCommentThreads; }; export declare const GithubInlineComments: ({ className, currentUser, currentUserInitials, defaultOpenLineIndex, defaultThreads, diff, diffText, fileName, fileStatus, onCommentAdd, onOpenLineChange, onOpenLineIndexChange, onResolveChange, onThreadsChange, openLineIndex, ref, threads, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, ...sectionProps }: GithubInlineCommentsProps) => import("react/jsx-runtime").JSX.Element;