09. Tuple to Object

문제

Given an array, transform to an object type and the key/value must in the given array.

For example:

const tuple = ['tesla', 'model 3', 'model X', 'model Y'] as const

// expected { tesla: 'tesla', 'model 3': 'model 3', 'model X': 'model X', 'model Y': 'model Y'}
const result: TupleToObject<typeof tuple>

풀이

// 0. 시작
type TupleObject<T extends readonly any[]> = ...

// 1. 리턴값은 {}
type TupleObject<T extends readonly any[]> = {}

// 2. 키 - 밸류 값
type TupleObject<T extends readonly any[]> = {[]: ...}

// 3. 반복 조건
type TupleObject<T extends readonly any[]> = { [ xxx in T[number]]: ...};

// 4. 마무리
type TupleObject<T extends readonly any[]> = { [P in T[number]]: P }

Last updated