UNPKG

muschema

Version:
15 lines (14 loc) 500 B
import { MuReadStream, MuWriteStream } from 'mustreams'; export interface MuSchema<Value> { readonly identity: Value; readonly muType: string; readonly muData?: any; readonly json: object; alloc(): Value; free(state: Value): void; equal(base: Value, target: Value): boolean; clone(state: Value): Value; copy(source: Value, target: Value): void; diff(base: Value, target: Value, out: MuWriteStream): boolean; patch(base: Value, inp: MuReadStream): Value; }