Open5
type-challenges ログ

TypeScriptをなんとなく使用していて、型周りの理解が足りてない。
ので、 type-challenges をちょこちょこやっていく。

Hello World
回答
type HelloWorld = string

Pick
回答
type MyPick<T, K extends keyof T> = {
[Key in K]: T[Key]
}

Readonly
回答
type MyReadonly<T> = {
readonly [Key in keyof T]: T[Key]
}

Tuple to Object
回答
type TupleToObject<T extends readonly (string | number | symbol)[]> = {
[P in T[number]]: P
}