/** * Same-length normalization applied to each PM text node when building the flat * doc string. Keeps `offsetToPos` aligned with `flat` (no character deletion). * * Do not strip zero-width characters here — `normalizeForAnchorMatch` strips them * on API anchors only; removing them from flat would desync `offsetToPos` lengths. */ export declare function normalizeFlatTextChunk(text: string): string; /** * Normalization for API anchor fields after markdown strip. May remove zero-width * characters that do not appear in flattened editor text. */ export declare function normalizeForAnchorMatch(text: string): string; /** * Trailing whitespace is significant for anchor matching; removeMarkdown trims non-trailing space. * Newlines are stripped from the final string (including trailing `\s` that is only `\r`/`\n`) so * anchors align with `flattenDoc`, which does not insert block newlines between text nodes. */ export declare function stripMdKeepTrail(text: string): string; /** * Normalize API anchor fields (may contain markdown) for matching against the * resolver's flattened document string: strip markdown/newlines, then apply * `normalizeForAnchorMatch`. Platform passes stored anchors unchanged; * this runs in `resolveReviewSuggestionRanges` before anchor location. */ export declare function normalizeAnchors(originalText: string, contextPrefix: string, contextSuffix: string): { originalText: string; contextPrefix: string; contextSuffix: string; };