CameraDevice
@Serializable
Represents a camera device available on the system.
This model is used across platform boundaries and therefore marked as Serializable so that it can be encoded/decoded (e.g., JSON) when communicating with other layers such as Flutter, Compose UI, or network APIs.