/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { type IdAllocator } from "../../util/index.js";
import { type CrossFieldManager, type NodeChangeRebaser, type RebaseRevisionMetadata } from "../modular-schema/index.js";
import { type Changeset } from "./types.js";
/**
 * Rebases `change` over `base` assuming they both apply to the same initial state.
 * @param change - The changeset to rebase.
 * @param base - The changeset to rebase over.
 * @returns A changeset that performs the changes in `change` but does so assuming `base` has been applied first.
 */
export declare function rebase(change: Changeset, base: Changeset, rebaseChild: NodeChangeRebaser, genId: IdAllocator, manager: CrossFieldManager, revisionMetadata: RebaseRevisionMetadata): Changeset;
//# sourceMappingURL=rebase.d.ts.map