import { ReplayResult } from './replay-types.js';
import { PartsDiff } from '../algorithm/parts-diffing.js';
type ReplayPartsEditor = {
    commands?: {
        addImageToCollaboration?: (params: {
            mediaPath: string;
            fileData: string;
        }) => boolean;
    };
    emit?: (event: string, payload?: unknown) => void;
    options?: {
        mediaFiles?: Record<string, unknown>;
    };
    storage?: {
        image?: {
            media?: Record<string, unknown>;
        };
    };
    converter?: {
        convertedXml?: Record<string, unknown>;
        documentModified?: boolean;
    } | null;
};
/**
 * Placeholder parts replay.
 *
 * This first slice applies coarse upserts/deletes directly into staged
 * XML/media state. It currently assumes the payload contains authoritative
 * snapshots for the affected parts.
 */
export declare function replayPartsDiff({ partsDiff, editor, }: {
    partsDiff: PartsDiff | null;
    editor?: ReplayPartsEditor;
}): ReplayResult;
export {};
//# sourceMappingURL=replay-parts.d.ts.map