Зачем нужны обобщения – TypeScript | Start Coder