import { NodeMap } from "./NodeMap";
import { NodeChange } from "./NodeChange";
import { Movement } from "./Movement";
export declare class TreeChanges extends NodeMap<NodeChange> {
    anyParentsChanged: boolean;
    anyAttributesChanged: boolean;
    anyCharacterDataChanged: boolean;
    private reachableCache;
    private wasReachableCache;
    private readonly rootNode;
    constructor(rootNode: Node, mutations: MutationRecord[]);
    getChange(node: Node): NodeChange;
    getOldParent(node: Node): Node;
    getIsReachable(node: Node): boolean;
    getWasReachable(node: Node): boolean;
    reachabilityChange(node: Node): Movement;
}
