DROP TYPE typename [, ...] [ CASCADE | RESTRICT ]
The name (optionally schema-qualified) of an existing type.
Automatically drop objects that depend on the type (such as table columns, functions, operators, etc).
Refuse to drop the type if there are any dependent objects. This is the default.
DROP TYPE will remove a user type from the system catalogs.
Only the owner of a type can remove it.
Note that the CREATE TYPE command and the data type extension mechanisms in PostgreSQL differ from SQL99.