import type { Comment, SuggestedEdit } from "../../types";
import type { ScrollIntoViewTarget } from "../client/editContext";
import type { FieldDescriptor, ItemDescriptor } from "../pageModel";
export type SuggestionRangeData = {
    oldRanges: Array<[number, number]>;
    newRanges: Array<[number, number]>;
    oldText: string;
    newText: string;
};
export declare function getCommentTextRangeKey(comment: Pick<Comment, "id">): string;
export declare function getSuggestedEditTextRangeKey(suggestion: Pick<SuggestedEdit, "id">): string;
export declare function getCommentTextRange(comment: Comment): [number, number] | null;
export declare function getCommentFieldDescriptor(comment: Comment): FieldDescriptor | undefined;
export declare function getCommentTransientElementKey(comment: Comment): string | undefined;
export declare function getCommentScrollIntoViewTarget(comment: Comment): ScrollIntoViewTarget;
export declare function getSuggestedEditFieldDescriptor(suggestion: SuggestedEdit): FieldDescriptor;
export declare function getSuggestedEditItemDescriptor(suggestion: SuggestedEdit): ItemDescriptor;
export declare function getSuggestionRangeData(oldValue: string | null | undefined, newValue: string | null | undefined): SuggestionRangeData;
export declare function getSuggestedEditScrollIntoViewTarget(suggestion: SuggestedEdit): ScrollIntoViewTarget;
