/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { AnchorNode, AnchorSet, DetachedField } from "../../core";
import { TreeStatus } from "../editable-tree-2";
/**
 * Checks the detached field and returns the TreeStatus based on whether or not the detached field is a root field.
 * @param detachedField - the detached field you want to check.
 * @returns the {@link TreeStatus} from the detached field provided.
 */
export declare function treeStatusFromDetachedField(detachedField: DetachedField): TreeStatus;
/**
 * Determines the tree status based on the anchor cache.
 *
 * Checks the anchorNode's cache to get the tree status.
 * If the cache is undefined or stale, it is updated and the treeStatus based on its detachedField is returned.
 *
 * @param anchors - the {@link AnchorSet} to compare your anchorNode cache to.
 * @param anchorNode - the {@link AnchorNode} to get the {@link TreeStatus} of.
 * @returns - the {@link TreeStatus} of the anchorNode provided.
 */
export declare function treeStatusFromAnchorCache(anchors: AnchorSet, anchorNode: AnchorNode): TreeStatus;
export declare const detachedFieldSlot: import("../../core").AnchorSlot<DetachedFieldCache>;
export interface DetachedFieldCache {
    generationNumber: number;
    detachedField: DetachedField;
}
//# sourceMappingURL=utilities.d.ts.map