import type { Slice } from '@atlaskit/editor-prosemirror/model'; /** * We cannot use `Slice.eq` here: it delegates to `Node.eq` → `Node.sameMarkup`, * which `compareDeep`s ALL attributes and marks — so two paragraphs with * identical text but different `localId`s (or a dropped/re-valued `breakout`) are * reported as different. That would leak unchanged segments into the review * whenever the AI re-stamps localIds or re-flows layout (the `replaceDoc` case). * We instead compare the normalised JSON, plus the open depths (`openStart` / * `openEnd`) that `Slice.eq` also considers. * * Shared here in `@atlaskit/editor-common` so the two sides of the Review * pipeline agree on what counts as a change: the collab-edit COARSE segment * producer (`getAgentEditSegments`) and the AI-plugin FINE filter * (`entryHasNoChange`). If they disagreed, an edit whose only delta is a * `breakout` change could be recorded as a segment (anchoring the modal) yet * dropped by the filter (no diff). A breakout-only difference is not reviewable; * both sides consume this to honour that consistently. */ export declare const slicesEqualIgnoringLocalId: (a: Slice, b: Slice) => boolean;