pub trait MouseProxyInterface: Send + Sync {
type AddDeviceResponseFut: Future<Output = Result<u32, Error>> + Send;
type SendInputReportResponseFut: Future<Output = Result<MouseSendInputReportResult, Error>> + Send;
// Required methods
fn add_device(&self) -> Self::AddDeviceResponseFut;
fn send_input_report(
&self,
device_id: u32,
report: MouseInputReport,
event_time: u64
) -> Self::SendInputReportResponseFut;
}