smartjson/ts/smartjson.plugins.ts

27 lines
640 B
TypeScript
Raw Normal View History

2020-10-03 11:20:58 +00:00
// third party scope
2019-07-04 15:03:15 +00:00
import lodashCloneDeep from 'lodash.clonedeep';
2019-12-15 19:05:20 +00:00
import stableJson2 from 'fast-json-stable-stringify';
2020-10-03 11:20:58 +00:00
import bufferJson from 'buffer-json';
2019-12-15 19:05:20 +00:00
const stableJson = stableJson2 as any;
2020-10-03 11:20:58 +00:00
export { bufferJson, lodashCloneDeep, stableJson };
2019-12-15 19:05:20 +00:00
export interface IStableJsonTypes {
2020-10-05 11:26:06 +00:00
Comparator: (
a: IStableJsonTypes['CompareDescriptor'],
b: IStableJsonTypes['CompareDescriptor']
) => number;
2019-12-15 19:05:20 +00:00
CompareDescriptor: {
2020-10-05 11:26:06 +00:00
key: string;
value: any;
2019-12-15 19:05:20 +00:00
};
Options: {
2020-10-05 11:26:06 +00:00
cmp?: (
a: IStableJsonTypes['CompareDescriptor'],
b: IStableJsonTypes['CompareDescriptor']
) => number;
2019-12-15 19:05:20 +00:00
cycles?: boolean;
};
}