Many user-defined types already exist

Unlike the primitive types which are predefined, I am unable to give you much in the way of specific information about user-defined types, simply because they don't exist until a user defines them.

I can tell you, however, that when you obtain modern object-oriented programming tools for different programming languages, you not only receive the core language containing the primitive types, you also usually receive a large library containing several thousand user-defined types that have already been defined.

(Note that in this case, the user who defines a new type may actually be an employee working for the company from which you obtain your programming tools.  This person's job may be to create a large library of standard user-defined types for use by you and other customers.)

A large documentation package is usually also available to help you determine the individual characteristics of those user-defined types.