@berish/serber
Version:
Serializable and deserializable adaptive adapter with plugins
15 lines (14 loc) • 712 B
TypeScript
import LINQ from '@berish/linq';
import { SERBER_LOOP_OBJECT_DATA_REVERT_SYMBOL, SERBER_LOOP_OBJECT_DATA_SYMBOL } from '../const';
import { ISerberPlugin } from '../types';
declare const typeLoopObj = "_s_loop_object_";
export interface ILoopObjectPluginOutput {
type: typeof typeLoopObj;
path: (string | symbol | number)[];
}
export interface ILoopObjectPluginParams {
[SERBER_LOOP_OBJECT_DATA_SYMBOL]?: WeakMap<object, (string | symbol | number)[]>;
[SERBER_LOOP_OBJECT_DATA_REVERT_SYMBOL]?: LINQ<[(string | number | symbol)[], (string | number | symbol)[]]>;
}
export declare const loopObjectPlugin: ISerberPlugin<object, object | ILoopObjectPluginOutput, ILoopObjectPluginParams>;
export {};