Skip to main content
Using Deno in production at your company? Earn free Deno merch.
Give us feedback
Module

x/s3si/deps.ts>DeepReadonly

Export your battles from SplatNet to https://stat.ink
Go to Latest
type alias DeepReadonly
import { type DeepReadonly } from "https://deno.land/x/s3si@ci/deps.ts";

Like Readonly but recursive

definition: T extends Builtin ? T : T extends Map<infer K, infer V> ? ReadonlyMap<DeepReadonly<K>, DeepReadonly<V>> : T extends ReadonlyMap<infer K, infer V> ? ReadonlyMap<DeepReadonly<K>, DeepReadonly<V>> : T extends WeakMap<infer K, infer V> ? WeakMap<DeepReadonly<K>, DeepReadonly<V>> : T extends Set<infer U> ? ReadonlySet<DeepReadonly<U>> : T extends ReadonlySet<infer U> ? ReadonlySet<DeepReadonly<U>> : T extends WeakSet<infer U> ? WeakSet<DeepReadonly<U>> : T extends Promise<infer U> ? Promise<DeepReadonly<U>> : T extends { } ? readonly [K in keyof T]: DeepReadonly<T[K]> : IsUnknown<T> extends true ? unknown : Readonly<T>