Partial<Type>

Type 을 옵션으로 설정하여 구성한다. 해당 유틸리티는 주어진 타입이 서브셋으로 사용된다.

Required<Type>

interface Props {
    a?: number;
    b?: string;
}

const obj: Props = { a: 5 };
const obj2: Required<Props> = {
  a: 5,
  // b: undefined
  // -> required in type 'Required<Props>'
};

Readonly<Type>

interface Todo{
    title: string;
}
const todo: Readonly<Todo> = {
    title:'Delete ~ inactive user'
}

todo.title = '!!'
// -> annot assign to 'title' because it is a read-only property.ts

→ 해당 유틸리티는 런타임 시점에서 실패하여 할당 관련한 표현에 사용하기 유용한다.

Record<Keys, Type>