import { DiffBlockData } from '../diff-builder/common';
/** A document path — string with `/` separators, or an array of segments */
export type DiffPath = string | string[];
/** Encode a single path segment (JSON Pointer escaping: `~` → `~0`, `/` → `~1`) */
export declare const encodeSegment: (key: string) => string;
/** Decode a single path segment (`~1` → `/`, `~0` → `~`) */
export declare const decodeSegment: (key: string) => string;
/** Convert a DiffPath to an array of decoded segments */
export declare function parsePath(path: DiffPath): string[];
/** Convert an array of segments to a string-form path (encoded) */
export declare function formatPath(segments: string[]): string;
/** Resolve a DiffPath to a DiffBlockData by matching the block ID */
export declare function resolvePathToBlock(path: DiffPath, blocks: DiffBlockData[]): DiffBlockData | null;
/** Get all ancestor block IDs for a given path (from root to parent) */
export declare function getAncestorBlockIds(path: DiffPath, blocks: DiffBlockData[]): string[];
