OmitByType
提出詳細
type OmitByType<T extends object, U> = { [K in keyof T as T[K] extends U ? never : K]: T[K] };
提出日時 | 2025-09-15 07:03:41 |
---|---|
問題 | OmitByType |
ユーザー | balckowl |
ステータス | Accepted |
import type { Equal, Expect } from '@type-challenges/utils' interface Model { name: string count: number isReadonly: boolean isEnable: boolean } type cases = [ Expect<Equal<OmitByType<Model, boolean>, { name: string; count: number }>>, Expect<Equal<OmitByType<Model, string>, { count: number; isReadonly: boolean; isEnable: boolean }>>, Expect<Equal<OmitByType<Model, number>, { name: string; isReadonly: boolean; isEnable: boolean }>>, ]