ts-generics