PostgreSQL: Comment afficher la liste de tous les types de données disponibles?

Question:

Dans PostgreSQL (à l'aide de SQL, pas la console), comment puis-je lister l'ensemble des datataypes ?

Idéalement comme ceci:
http://www.java2s.com/Code/PostgreSQL/Postgre-SQL/Displaysalldatatypesintheconnecteddatabasewithcomments.htm

Il faut aussi la liste des types définis par l'utilisateur, si il y en a.

Tout comme la liste dans pgAdmin3 où vous définissez le type de données d'une nouvelle colonne dans une table.