As per #228 (comment), libmagic should be able to do this, but I do not see a way to get this library to give me the list of possible file extensions for a given file type.
Would be nice to have a verify_file_extension() function or something akin to it, but I can write that myself, it's just that I can't get the list at all.
mimetypes library does have a function for this.