Utility Type - 3
→ T에서 Key가 union K에 있는 속성 집합을 선택합니다.
→ 선택 하고자 하는 타입들이 더 명확하다면 Pick 을 사용
*/**
* From T, pick a set of properties whose keys are in the union K
*/*
type Pick<T, K extends keyof T> = {
[P in K]: T[P];
};
type Video = {
id: string;
title: string;
url: string;
data: string;
};
type VideoMetadata = Pick<Video, 'id' | 'title'>;
*// 정보들이 많은 타입이 있고, 그 중에 몇가지만 다루는 타입이 있다면 Pick 을 사용하면 된다.*
*// 내가 원하는 타입들만 쏙쏙 골라서 받아올 때 사용*
function getVideo(id: string): Video {
return {
id,
title: 'video',
url: 'https://..',
data: 'byte-data..',
};
};
function getVideoMetadata(id: string): VideoMetadata {
return {
id: id,
title: 'title',
};
};