use serde::Serialize;
use super::types::{ScreenshotFormat, Viewport};
#[derive(Debug, Clone, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct NavigateParams {
pub url: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub referrer: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub transition_type: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub frame_id: Option<String>,
}
#[derive(Debug, Clone, Serialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct ReloadParams {
#[serde(skip_serializing_if = "Option::is_none")]
pub ignore_cache: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub script_to_evaluate_on_load: Option<String>,
}
#[derive(Debug, Clone, Serialize)]
pub struct SetLifecycleEventsEnabledParams {
pub enabled: bool,
}
#[derive(Debug, Clone, Serialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct CaptureScreenshotParams {
#[serde(skip_serializing_if = "Option::is_none")]
pub format: Option<ScreenshotFormat>,
#[serde(skip_serializing_if = "Option::is_none")]
pub quality: Option<u8>,
#[serde(skip_serializing_if = "Option::is_none")]
pub clip: Option<Viewport>,
#[serde(skip_serializing_if = "Option::is_none")]
pub from_surface: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub capture_beyond_viewport: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub optimize_for_speed: Option<bool>,
}
#[derive(Debug, Clone, Serialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct PrintToPdfParams {
#[serde(skip_serializing_if = "Option::is_none")]
pub landscape: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub display_header_footer: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub print_background: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub scale: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub paper_width: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub paper_height: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub margin_top: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub margin_bottom: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub margin_left: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub margin_right: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub page_ranges: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub header_template: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub footer_template: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub prefer_css_page_size: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub transfer_mode: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub generate_tagged_pdf: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub generate_document_outline: Option<bool>,
}
#[derive(Debug, Clone, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct NavigateToHistoryEntryParams {
pub entry_id: i32,
}
#[derive(Debug, Clone, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct AddScriptToEvaluateOnNewDocumentParams {
pub source: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub world_name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub include_command_line_api: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub run_immediately: Option<bool>,
}
#[derive(Debug, Clone, Serialize)]
pub struct RemoveScriptToEvaluateOnNewDocumentParams {
pub identifier: String,
}
#[derive(Debug, Clone, Serialize, Default)]
pub struct BringToFrontParams {}
#[derive(Debug, Clone, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct SetDocumentContentParams {
pub frame_id: String,
pub html: String,
}
#[derive(Debug, Clone, Serialize)]
pub struct SetInterceptFileChooserDialogParams {
pub enabled: bool,
}
#[derive(Debug, Clone, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct CreateIsolatedWorldParams {
pub frame_id: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub world_name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub grant_univeral_access: Option<bool>,
}