//#region src/foundations/type-utils/index.d.ts type DeepReadonly = T extends ((...parameters: any[]) => any) ? T : T extends ReadonlyMap ? ReadonlyMap, DeepReadonly> : T extends ReadonlySet ? ReadonlySet> : T extends object ? { readonly [Key in keyof T]: DeepReadonly; } : T; type Flat = { [K in keyof R]: R[K]; }; type ViewOf = T extends { READONLY_VIEW: infer View; } ? View : T extends Array ? readonly [...T] : T extends Set ? ReadonlySet> : T extends Map ? ReadonlyMap, ViewOf> : T; //#endregion export { DeepReadonly, Flat, ViewOf }; //# sourceMappingURL=index.d.ts.map