TypeScript の Conditional Types

● TypeScript の Conditional Types (条件型)

条件型 は 以下のような三項演算子のような記述で型を定義します。(条件式に合致するときはX。それ以外はY。)

type MyType = 条件式 ? X : Y

条件式 にはいろいろな記述があります。 例えば

interface Animal {
  live(): void;
}
interface Dog extends Animal {
  woof(): void;
}
 
type MyType1 = Dog extends Animal ? number : string;
// これは以下 ↓ と同じです。
type MyType1 = number
 
type MyType2 = RegExp extends Animal ? number : string;
// これは以下 ↓ と同じです。        
type MyType2 = string
No.2390
08/25 12:07

edit