type DocumentType = {
id: number
updated_at: string
file_url: string
title: string
document_text: {
content: string
filename: string
}
}
// Pick<T, K>
type Pick<T, K extends keyof T> = {
[P in K]: T[P]
};
// ↑ T에서 K에 해당하는 키들만 가져오는
// Omit<T, K>
type Omit<T, K extends keyof any> = Pick<T, Exclude<keyof T, K>>;
// ↑ T에서 K에 해당하는 키들을 제외한 나머지를 Pick으로 뽑아내는 방식
// Partial<T>
type Partial<T> = {
[P in keyof T]?: T[P]
};
// ↑ T의 모든 프로퍼티를 optional로
// Required<T>
type Required<T> = {
[P in keyof T]-?: T[P]
};
// ↑ T의 모든 프로퍼티에서 optional을 제거하고 required로
카테고리 없음
댓글