import { Mark, ResolvedPos } from 'prosemirror-model';
import { EditorState } from 'prosemirror-state';
import { AnnotationInfo } from './types';
/**
 * Finds the marks in the nodes to the left and right.
 * @param $pos Position to center search around
 */
export declare const surroundingMarks: ($pos: ResolvedPos) => (readonly Mark[])[];
/**
 * Finds annotation marks, and returns their IDs.
 * @param marks Array of marks to search in
 */
export declare const filterAnnotationIds: (marks: Array<Mark>) => Array<string>;
/**
 * Re-orders the annotation array based on the order in the document.
 *
 * This places the marks that do not appear in the surrounding nodes
 * higher in the list. That is, the inner-most one appears first.
 *
 * Undo, for example, can re-order annotation marks in the document.
 * @param annotations annotation metadata
 * @param $from location to look around (usually the selection)
 */
export declare const reorderAnnotations: (annotations: Array<AnnotationInfo>, $from: ResolvedPos) => void;
export declare const getAllAnnotations: (doc: EditorState['doc']) => string[];
