UNPKG

json-joy

Version:

Collection of libraries for building collaborative editing apps.

25 lines (24 loc) 890 B
import type { CompactMergeOp } from '../codec/compact/types'; import { AbstractOp } from './AbstractOp'; import type { OperationMerge } from '../types'; import { type Path } from '@jsonjoy.com/json-pointer'; import { OPCODE } from '../constants'; import type { IMessagePackEncoder } from '@jsonjoy.com/json-pack/lib/msgpack'; /** * @category JSON Patch Extended */ export declare class OpMerge extends AbstractOp<'merge'> { readonly pos: number; readonly props: object | null; constructor(path: Path, pos: number, props: object | null); op(): "merge"; code(): OPCODE; apply(doc: unknown): { doc: unknown; old: unknown[]; }; private merge; toJson(parent?: AbstractOp): OperationMerge; toCompact(parent: undefined | AbstractOp, verbose: boolean): CompactMergeOp; encode(encoder: IMessagePackEncoder, parent?: AbstractOp): void; }