キーをオプショナルにするとき、?
をつけます。
全てのキーをオプショナルにするときは、Partial<T>
を使います。
それでは、キーがオプションか、もしくはnull
のときはどうするか?わたしは Maybe<T>
というジェネリックなタイプを作って設定しています。
Redis等で null
が返ってくるときの設定がこれで楽にできます。
あとは、例えば function
であるタイプ (e.g. T
) を返す場合、条件に満たない場合は undefined
を返す場合はあると思います。その時もただ単に function hoge(key: string): Maybe<T> {...}
とすれば良いです。