21
Model のインスタンスの型を考える
● Backbone.Model のプロパティは(厳密には違うけど)だいたい keyof defaults
● 仮に、extend() の引数を option とするとき…
○ defaults の型は typeof option['defaults']
○ これを仮に P と置く
○ すると、インスタンスの型はそれをジェネリクスに受け取る
TypedModelInstance
と置くことができる
○ その型は get(key: K): K[P] というメソッドを持つはず