Application struct classes are all essentially External in nature, in that they can be referenced in customer-specific functionality.
Customers are discouraged from directly creating aggregations from application structs to any other struct (as they no longer have full visibility on where these application structs are being used). Customers can however continue to use aggregation to include application structs in their own project-specific structs.