- how was it done prior to TS 2.9 - showcase class/functional components + why's - why `SFC` cannot be used for generic component definition