Complete MX message containing Business Application Header and Document
This is the unified structure for all ISO20022 message types
The message type is determined from the AppHdr.MsgDefIdr field
Document enum - represents the Document element in MX messages
Each variant uses serde rename to match the XML element name
Box wrappers are used to prevent stack overflow from large variants