pub trait ScreenCaptureProxyInterface: Send + Sync {
type ConfigureResponseFut: Future<Output = Result<ScreenCaptureConfigureResult, Error>> + Send;
type GetNextFrameResponseFut: Future<Output = Result<ScreenCaptureGetNextFrameResult, Error>> + Send;
type ReleaseFrameResponseFut: Future<Output = Result<ScreenCaptureReleaseFrameResult, Error>> + Send;
// Required methods
fn configure(
&self,
payload: ScreenCaptureConfig,
) -> Self::ConfigureResponseFut;
fn get_next_frame(
&self,
payload: GetNextFrameArgs,
) -> Self::GetNextFrameResponseFut;
fn release_frame(&self, buffer_id: u32) -> Self::ReleaseFrameResponseFut;
}