UNPKG

@mfederczuk/deeptools

Version:

A set of utility functions that recursively operate on objects

46 lines (45 loc) 1.35 kB
/** * Creates a deep copy of **arr** that is also deeply frozen. * * @param arr The 3-dimensional array to create a deeply frozen copy of. * * @returns A deeply frozen copy of **arr**. * * @see {@link deepCopy} * @see {@link deepFreeze} */ declare function safeCopy<T>(arr: readonly (readonly (readonly T[])[])[]): readonly (readonly (readonly Readonly<T>[])[])[]; /** * Creates a deep copy of **arr** that is also deeply frozen. * * @param arr The 2-dimensional array to create a deeply frozen copy of. * * @returns A deeply frozen copy of **arr**. * * @see {@link deepCopy} * @see {@link deepFreeze} */ declare function safeCopy<T>(arr: readonly (readonly T[])[]): readonly (readonly Readonly<T>[])[]; /** * Creates a deep copy of **arr** that is also deeply frozen. * * @param arr The 1-dimensional array to create a deeply frozen copy of. * * @returns A deeply frozen copy of **arr**. * * @see {@link deepCopy} * @see {@link deepFreeze} */ declare function safeCopy<T>(arr: readonly T[]): readonly Readonly<T>[]; /** * Creates a deep copy of **obj** that is also deeply frozen. * * @param obj The object to create a deeply frozen copy of. * * @returns A deeply frozen copy of **obj**. * * @see {@link deepCopy} * @see {@link deepFreeze} */ declare function safeCopy<T>(obj: T): Readonly<T>; export { safeCopy };