/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { DetachedFieldIndex, IEditableForest, RevisionTag } from "../core/index.js";
import { disposeSymbol } from "../util/index.js";
import { ChangeEnricherCheckout } from "./defaultCommitEnricher.js";
import { SharedTreeChange } from "./sharedTreeChangeTypes.js";
export declare class SharedTreeChangeEnricher implements ChangeEnricherCheckout<SharedTreeChange> {
    private readonly forest;
    private readonly removedRoots;
    /**
     * @param forest - The state based on which to enrich changes.
     * Exclusively owned by the constructed instance.
     * @param removedRoots - The set of removed roots based on which to enrich changes.
     * Exclusively owned by the constructed instance.
     */
    constructor(forest: IEditableForest, removedRoots: DetachedFieldIndex);
    updateChangeEnrichments(change: SharedTreeChange): SharedTreeChange;
    private readonly getDetachedRoot;
    applyTipChange(change: SharedTreeChange, revision?: RevisionTag): void;
    [disposeSymbol](): void;
}
//# sourceMappingURL=sharedTreeChangeEnricher.d.ts.map