Why is there only hide, instead of delete
So that admins get complete control over what content exists on their website. In theory, we could all band together and delete tons of content off PokeBase if we wanted. So the option is disabled as a fallback.
So people cannot remove posts they've used to harass people. It is nice to hang on to evidence of things if we need it later. It helps stop this from being a platform for abuse.
99.99% of people cannot see posts that you have hidden. You might as well have deleted it: from the public eye, at least. The 0.01% who can see the posts may only do so because they're trusted.