I make an app with angular (4), material and the mobile app with cordova.
I have some event with swipe (with hammer.js), at this moment i use screen size to know if i'm on touch screen.(xs,sm,md for touch and lg,xl for desktop) But it's not a good practice (because some tablet or notebook have the same screen size).
How do you know if the screen is a touch screen?