/** * @hiden */ declare module 'jiff' { interface DiffOptions { hash?: (x: any) => string | number; makeContext?: (index: number, array: any[]) => any; invertible?: boolean; } interface PatchOptions { findContext?: (index: number, array: any[], context: any) => number; } type Patch = any; function diff(original: any, changed: any, options?: DiffOptions): Patch[]; function patch(changes: Patch[], object: T, options?: PatchOptions): U; function patchInPlace(changes: Patch[], object: T, options?: PatchOptions): U; function inverse(changes: Patch[]): Patch[]; function clone(object: T): T; }