Going through every type, here's the first thing I think of:
Grass: tend to be bulky and chuck status conditions around
Fire: glass cannons
Water: really diverse, but generally bulky
Bug: tend to be weak all around, but Quiver Dance and Sticky Web help I guess
Normal: jack of all trades, master of none
Flying: not even really a proper type, almost everything is secondary flying and primary something else
Poison: bulky if anything, often weak
Electric: good scouts due to speed + SpA + Volt Switch
Ground: powerful and bulky, but slow
Fighting: battering rams
Rock: very double-edged, tend to be somewhat blunt instruments
Psychic: a diverse bunch, huge movepools and good stats but held back by weaknesses to U-turn & Pursuit
Ghost: lethal in the right hands, dead weight in the wrong ones
Ice: glass cannons, more even so than Fire- and Electric-types A conflicted type Game Freak decided to give the shittiest defensive capabilities in the game but also decided to shoehorn 90% of its mons into the "bulky and slow" archetype, to the point that the goddamn 700 BST Ice/DRAGON-type cover legend with better Attack than Rampardos but without usable coverage is actually struggling to stay afloat in OU.
Dragon: Pokemon's equivalent of the standard Mage class - really strong eventually, but it needs a lot of levelling to get there
Dark: very specialised, most Dark moves are generally weak but powerful in the right situation
Steel: best defensive typing evar
Fairy: a perverse type weak against all the worst types and strong against all the best ones