use serde::de::DeserializeOwned;
use std::marker::PhantomData;
use tauri::{plugin::PluginApi, AppHandle, Runtime};
use crate::error::Error;
use crate::models::*;
pub fn init<R: Runtime, C: DeserializeOwned>(
_app: &AppHandle<R>,
_api: PluginApi<R, C>,
) -> crate::Result<ScreenWakeLock<R>> {
Ok(ScreenWakeLock(PhantomData))
}
pub struct ScreenWakeLock<R: Runtime>(PhantomData<R>);
impl<R: Runtime> ScreenWakeLock<R> {
pub fn set_enabled(&self, _payload: SetEnabledRequest) -> crate::Result<SetEnabledResponse> {
Err(Error::Unsupported)
}
pub fn is_enabled(&self) -> crate::Result<IsEnabledResponse> {
Ok(IsEnabledResponse { enabled: false })
}
pub fn is_supported(&self) -> IsSupportedResponse {
IsSupportedResponse { supported: false }
}
}