Do you want a Pokemon that’s both good against Poison and Dragon types? Then Klefki is the Pokemon for you!
Klefki can be found in the Thrifty Megamart about 15% of the time between level 29 and 32. At that level, it will know Spikes, Draining Kiss, Crafty Shield, Foul Play, or it will know Torment instead of any of the previous moves mentioned if it is level 32. They will always have their ability Prankster, which gives status moves more priority. If you want their hidden ability, Magician, you are able to SOS for them. Magician steals the opponent’s item as long as the opponent has one and you do not. Some ideas, however, cannot be stolen, either if the opponent has the Sticky Hold ability or the item would change the opposing Pokemon’s form. I would suggest bringing a Pokemon with Magnet Pull to increase the chance that you find a Klefki, as it is the only Steel type there. Since Klefki is a Steel/Fairy type, it is weak to Fire and Ground, so I would not suggest using it against Hapu. Also, if you chose Popplio, then you shouldn’t get this Pokemon since you already have a Fairy type. However, if you need a Steel type Pokemon, there are several of them in Alola.