import type { RevivedTextSelector, TextSelector } from '@recogito/text-annotator'; import type { RevivedTEIRangeSelector, TEIRangeSelector } from '../tei-annotation'; /** * Computes a stable, lexically-sortable position key for a DOM node relative * to a container, incorporating a character offset within that node. * * Each path segment is the node's **absolute** child index among all siblings * (regardless of element type), zero-padded to a fixed width so that * lexicographic string comparison (`localeCompare`) faithfully reproduces * document order. * * Format: "000002/000000/000005::0000000014" * ^─────────────────^ ^─────────^ * one segment per DOM char offset * level from container */ export declare const toPositionKey: (node: Node, offset: number, container: HTMLElement, segmentPad?: number, offsetPad?: number) => string; export declare const isTEIRangeSelector: (selector: TEIRangeSelector | TextSelector) => selector is TEIRangeSelector; export declare const reviveSelector: (selector: TEIRangeSelector | RevivedTextSelector, container: HTMLElement) => RevivedTEIRangeSelector;