Use a DOMAIN in multiple schemas
You can store them in the public schema if you're using them in more than one schema. That's what it's there for.

Typically, I don't. If you have a domain in more than one schema that usually indicates to me that either,


the type should be packaged as an extension and in it's own schema.
your two schemas should merge.


But there is nothing wrong with using the public schema.