Are these clocks related (synchronous) to each other? If so, I could see some merit to bundling them together in a single signal/port if they often get used in the same places.
If they are not related, then extreme care must be used when transferring data between them. You want those transfers to be rare and easily identified, neither of which is well served by bundling them together on one signal/port.
In defense of custom aggregate data types, I often define a package of interface types for a project that defines composites (arrays & records), enumerated types, subranges of integer, constants, etc. for use in the design.
For example, I find it extremely useful to define a record with an element for the data (maybe an array/record itself), and another element for a "valid" or "mode" indicator for that data. By bundling data and indicator in the same object, you always have all the information needed to interact with that data, whether you are producing it or consuming it.
Andy