use serde::{Serialize, Deserialize};
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)]
pub enum DOMBreakpointType {
#[default]
SubtreeModified,
AttributeModified,
NodeRemoved,
}
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)]
pub enum CSPViolationType {
#[default]
TrustedtypeSinkViolation,
TrustedtypePolicyViolation,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct EventListener {
#[serde(rename = "type")]
pub type_: String,
pub useCapture: bool,
pub passive: bool,
pub once: bool,
pub scriptId: crate::runtime::ScriptId,
pub lineNumber: i64,
pub columnNumber: i64,
#[serde(skip_serializing_if = "Option::is_none")]
pub handler: Option<crate::runtime::RemoteObject>,
#[serde(skip_serializing_if = "Option::is_none")]
pub originalHandler: Option<crate::runtime::RemoteObject>,
#[serde(skip_serializing_if = "Option::is_none")]
pub backendNodeId: Option<crate::dom::BackendNodeId>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct GetEventListenersParams {
pub objectId: crate::runtime::RemoteObjectId,
#[serde(skip_serializing_if = "Option::is_none")]
pub depth: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub pierce: Option<bool>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct GetEventListenersReturns {
pub listeners: Vec<EventListener>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct RemoveDOMBreakpointParams {
pub nodeId: crate::dom::NodeId,
#[serde(rename = "type")]
pub type_: DOMBreakpointType,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct RemoveEventListenerBreakpointParams {
pub eventName: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub targetName: Option<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct RemoveInstrumentationBreakpointParams {
pub eventName: String,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct RemoveXHRBreakpointParams {
pub url: String,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct SetBreakOnCSPViolationParams {
pub violationTypes: Vec<CSPViolationType>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct SetDOMBreakpointParams {
pub nodeId: crate::dom::NodeId,
#[serde(rename = "type")]
pub type_: DOMBreakpointType,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct SetEventListenerBreakpointParams {
pub eventName: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub targetName: Option<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct SetInstrumentationBreakpointParams {
pub eventName: String,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct SetXHRBreakpointParams {
pub url: String,
}