Creating multiple components

How can I use a single Mavsdk object to implement several system components?

I’m trying to simultaneously implement both a camera component and gimbal component on a RPi companion computer connected to an Ardupilot FC.
When creating the Mavsdk object you have to choose a single component type, but I need to advertise and handle messages for both the camera and gimbal.

I thought about creating two threads, each with its own Mavsdk object and MAVlink UDP connection, but my gimbal and camera are one device (Siyi A8). I would prefer to have a single thread and Mavsdk object that connects to the camera/gimbal device.

Any suggestions for how to architect this?