// Definitions by: Cameron Hunter // Modified by: Angus Croll type Operation = "add" | "replace" | "remove"; type JSONPatchPathConverter = ( arrayPath: Array ) => OUTPUT; export function diff( a: object | Array, b: object | Array, ): Array<{ op: Operation; path: Array; value: any }>; export function diff( a: object | Array, b: object | Array, jsonPatchPathConverter: JSONPatchPathConverter ): Array<{ op: Operation; path: PATH; value: any }>; export const jsonPatchPathConverter: JSONPatchPathConverter;