import { M } from './typeUtils'; export declare function deepFreeze>(object: T): DeepFreeze; export declare type DeepFreeze = { +readonly [K in keyof O]: O[K] extends M.BuiltIn ? O[K] : DeepFreeze; }; export declare type DeepWritable = { -readonly [K in keyof T]: T[K] extends Record ? { [L in keyof DeepWritable]: DeepWritable[L]; } : T[K]; }; export declare const freeze: typeof deepFreeze;