the traditional way is to either have one giant struct with everything, or maybe a struct with nested structs of different types.
the new way is to use FInstancedStruct which is included in the StructUtils plugin, however this is technically experimental
an alternative is to use UObjects instead of structs