import type { ObjectLike } from '../inner-types';
export declare function deepCopy<T = ObjectLike>(obj: T): T;
export declare function makeCopy(val: any): any;
/**
 * 尝试生成copy
 * @param val
 * @returns
 */
export declare function tryMakeCopy(val: any, readOnly?: boolean): any;
export declare function mayMakeCopy(ori: any, options: {
    immutBase: boolean;
    readOnly: boolean;
}): any;
