9 lines
		
	
	
		
			348 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			9 lines
		
	
	
		
			348 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| export type Writable<T> = {
 | |
|     -readonly [P in keyof T]: T[P];
 | |
| };
 | |
| export type WritableArray<T> = T extends readonly any[] ? Writable<T> : T;
 | |
| export type IfNever<T, Y = true, N = false> = [T] extends [never] ? Y : N;
 | |
| export type IfUnknown<T, Y, N> = [unknown] extends [T] ? Y : N;
 | |
| export type UnknownToNever<T> = IfUnknown<T, never, T>;
 | |
| export {};
 |