Looking into it again now it seems I was confusing Arrays for Hashes, with regard to the hStore extension.
The application is in charge of what data goes into the database. It is performing sanitisation, validation, returning errors, all of that before persisting data. I don't want to have to deal with errors from the database nor do I want to have to manage data integrity from two separate locations.
I want to be able to tell the database to store something and it stores it modern development frameworks can handle data integrity stuff.