Pick
提出詳細
type MyPick<T, K extends keyof T> = { [A in K]: T[A] }
| 提出日時 | 2025-10-17 03:30:08 | 
|---|---|
| 問題 | Pick | 
| ユーザー | dogadoga | 
| ステータス | Accepted | 
import type { Equal, Expect } from '@type-challenges/utils' type cases = [ Expect<Equal<Expected1, MyPick<Todo, 'title'>>>, Expect<Equal<Expected2, MyPick<Todo, 'title' | 'completed'>>>, // @ts-expect-error MyPick<Todo, 'title' | 'completed' | 'invalid'>, ] interface Todo { title: string description: string completed: boolean } interface Expected1 { title: string } interface Expected2 { title: string completed: boolean }