/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { ChangeAtomId, Delta } from "../core";
export declare function nodeIdFromChangeAtom(changeAtom: ChangeAtomId): Delta.DetachedNodeId;
/**
 * Converts a `Delta.FieldMarks` whose tree content is represented with by `TIn` instances
 * into a `Delta.FieldMarks`whose tree content is represented with by `TOut` instances.
 *
 * This function is useful for converting `Delta`s that represent tree content with cursors
 * into `Delta`s that represent tree content with a deep-comparable representation of the content.
 * See {@link assertDeltaEqual}.
 * @param fields - The Map of fields to convert. Not mutated.
 * @param func - The functions used to map tree content.
 */
export declare function mapFieldsChanges<TIn, TOut>(fields: Delta.FieldMap<TIn>, func: (tree: TIn) => TOut): Delta.FieldMap<TOut>;
/**
 * Converts a `Delta.FieldChanges` whose tree content is represented with by `TIn` instances
 * into a `Delta.FieldChanges`whose tree content is represented with by `TOut` instances.
 *
 * This function is useful for converting `Delta`s that represent tree content with cursors
 * into `Delta`s that represent tree content with a deep-comparable representation of the content.
 * See {@link assertMarkListEqual}.
 * @param fieldChanges - The instance to convert. Not mutated.
 * @param func - The functions used to map tree content.
 */
export declare function mapFieldChanges<TIn, TOut>(fieldChanges: Delta.FieldChanges<TIn>, func: (tree: TIn) => TOut): Delta.FieldChanges<TOut>;
/**
 * Converts a list of `Delta.Mark`s whose tree content is represented by `TIn` instances
 * into a list of `Delta.Mark`s whose tree content is represented by `TOut` instances.
 *
 * This function is useful for converting `Delta`s that represent tree content with cursors
 * into `Delta`s that represent tree content with a deep-comparable representation of the content.
 * See {@link assertMarkListEqual}.
 * @param list - The list of marks to convert. Not mutated.
 * @param func - The functions used to map tree content.
 */
export declare function mapMarkList<TIn, TOut>(list: readonly Delta.Mark<TIn>[], func: (tree: TIn) => TOut): Delta.Mark<TOut>[];
/**
 * Converts a `Delta.Mark` whose tree content is represented with by `TIn` instances
 * into a `Delta.Mark`whose tree content is represented with by `TOut` instances.
 *
 * This function is useful for converting `Delta`s that represent tree content with cursors
 * into `Delta`s that represent tree content with a deep-comparable representation of the content.
 * See {@link assertMarkListEqual}.
 * @param mark - The mark to convert. Not mutated.
 * @param func - The functions used to map tree content.
 */
export declare function mapMark<TIn, TOut>(mark: Delta.Mark<TIn>, func: (tree: TIn) => TOut): Delta.Mark<TOut>;
//# sourceMappingURL=deltaUtils.d.ts.map