limu
Version:
A fast js lib of immutable data, based on shallow copy on read and mark modified on write mechanism
50 lines (49 loc) • 2.12 kB
TypeScript
import type { DataType } from '../inner-types';
/**
* 4.0 开始,新增 keyPaths 支持多引用记录
* 4.1 开始,支持 draft 操作过程中产生新引用
*/
export declare const VER = "4.1.1";
/** meta 数据key,仅 debug 模式才挂到对象的原型上 (4.0+ 移除debug) */
export declare const META_KEY: unique symbol;
/** 版本号key */
export declare const META_VER: unique symbol;
/** 标识这是一个 immut 创建的根对象 */
export declare const IMMUT_BASE: unique symbol;
/** markRaw 调用会给对象标记 IS_RAW 为 true */
export declare const IS_RAW: unique symbol;
/** 数据节点私有数据 */
export declare const PRIVATE_META: unique symbol;
export declare const MAP = "Map";
export declare const SET = "Set";
export declare const ARRAY = "Array";
export declare const OBJECT = "Object";
/**
* limu 需要关心的 symbol 读取 key 列表
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol
*/
export declare const JS_SYM_KEYS: symbol[];
export declare const CAREFUL_TYPES: {
readonly Map: "Map";
readonly Set: "Set";
readonly Array: "Array";
};
export declare const OBJ_DESC = "[object Object]";
export declare const MAP_DESC = "[object Map]";
export declare const SET_DESC = "[object Set]";
export declare const ARR_DESC = "[object Array]";
export declare const FN_DESC = "[object Function]";
export declare const desc2dataType: Record<string, DataType>;
export declare const SHOULD_REASSIGN_ARR_METHODS: string[];
export declare const SHOULD_REASSIGN_MAP_METHODS: string[];
export declare const SHOULD_REASSIGN_SET_METHODS: string[];
export declare const CHANGE_ARR_ORDER_METHODS: string[];
export declare const arrFnKeys: string[];
export declare const mapFnKeys: string[];
export declare const setFnKeys: string[];
export declare const CAREFUL_FNKEYS: Record<string, string[]>;
export declare const CHANGE_FNKEYS: Record<string, string[]>;
export declare const PROXYITEM_FNKEYS: Record<string, string[]>;
export declare const OP_GET = "get";
export declare const OP_SET = "set";
export declare const OP_DEL = "del";