use serde::{Serialize, Deserialize};
use serde_json::Value as JsonValue;
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct ScreenshotParams {
#[serde(skip_serializing_if = "Option::is_none")]
pub format: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub quality: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub optimizeForSpeed: Option<bool>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct BeginFrameParams {
#[serde(skip_serializing_if = "Option::is_none")]
pub frameTimeTicks: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub interval: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub noDisplayUpdates: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub screenshot: Option<ScreenshotParams>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct BeginFrameReturns {
pub hasDamage: bool,
#[serde(skip_serializing_if = "Option::is_none")]
pub screenshotData: Option<String>,
}
impl BeginFrameParams { pub const METHOD: &'static str = "HeadlessExperimental.beginFrame"; }
impl crate::CdpCommand for BeginFrameParams {
const METHOD: &'static str = "HeadlessExperimental.beginFrame";
type Response = BeginFrameReturns;
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
pub struct DisableParams {}
impl DisableParams { pub const METHOD: &'static str = "HeadlessExperimental.disable"; }
impl crate::CdpCommand for DisableParams {
const METHOD: &'static str = "HeadlessExperimental.disable";
type Response = crate::EmptyReturns;
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
pub struct EnableParams {}
impl EnableParams { pub const METHOD: &'static str = "HeadlessExperimental.enable"; }
impl crate::CdpCommand for EnableParams {
const METHOD: &'static str = "HeadlessExperimental.enable";
type Response = crate::EmptyReturns;
}