Czym są generics w TypeScript i po co się ich używa? | LetsGit.IT