import { BlueNode } from '@blue-labs/language'; import { JsonPatch } from '../model/shared/json-patch.js'; type PatchOp = 'add' | 'replace' | 'remove'; export interface PatchResult { readonly path: string; readonly before: BlueNode | null; readonly after: BlueNode | null; readonly op: PatchOp; readonly originScope: string; readonly cascadeScopes: readonly string[]; } export declare class PatchEngine { private document; constructor(document: BlueNode); applyPatch(originScopePath: string, patch: JsonPatch): PatchResult; directWrite(path: string, value: BlueNode | null): void; private directWriteArray; private directWriteObject; private resolveParent; private getOrCreateChild; private applyAdd; private applyReplace; private applyRemove; private resolveParentForPatch; private rollbackCreated; } export {}; //# sourceMappingURL=patch-engine.d.ts.map