blob: 46b61a8ddb18dcc4abe1d9647fa717412380bb37 [file] [log] [blame]
{
"version": {
"major": "1",
"minor": "3"
},
"domains": [
{
"domain": "Accessibility",
"experimental": true,
"dependencies": [
"DOM"
],
"types": [
{
"id": "AXNodeId",
"description": "Unique accessibility node identifier.",
"type": "string"
},
{
"id": "AXValueType",
"description": "Enum of possible property types.",
"type": "string",
"enum": [
"boolean",
"tristate",
"booleanOrUndefined",
"idref",
"idrefList",
"integer",
"node",
"nodeList",
"number",
"string",
"computedString",
"token",
"tokenList",
"domRelation",
"role",
"internalRole",
"valueUndefined"
]
},
{
"id": "AXValueSourceType",
"description": "Enum of possible property sources.",
"type": "string",
"enum": [
"attribute",
"implicit",
"style",
"contents",
"placeholder",
"relatedElement"
]
},
{
"id": "AXValueNativeSourceType",
"description": "Enum of possible native property sources (as a subtype of a particular AXValueSourceType).",
"type": "string",
"enum": [
"figcaption",
"label",
"labelfor",
"labelwrapped",
"legend",
"tablecaption",
"title",
"other"
]
},
{
"id": "AXValueSource",
"description": "A single source for a computed AX property.",
"type": "object",
"properties": [
{
"name": "type",
"description": "What type of source this is.",
"$ref": "AXValueSourceType"
},
{
"name": "value",
"description": "The value of this property source.",
"optional": true,
"$ref": "AXValue"
},
{
"name": "attribute",
"description": "The name of the relevant attribute, if any.",
"optional": true,
"type": "string"
},
{
"name": "attributeValue",
"description": "The value of the relevant attribute, if any.",
"optional": true,
"$ref": "AXValue"
},
{
"name": "superseded",
"description": "Whether this source is superseded by a higher priority source.",
"optional": true,
"type": "boolean"
},
{
"name": "nativeSource",
"description": "The native markup source for this value, e.g. a <label> element.",
"optional": true,
"$ref": "AXValueNativeSourceType"
},
{
"name": "nativeSourceValue",
"description": "The value, such as a node or node list, of the native source.",
"optional": true,
"$ref": "AXValue"
},
{
"name": "invalid",
"description": "Whether the value for this property is invalid.",
"optional": true,
"type": "boolean"
},
{
"name": "invalidReason",
"description": "Reason for the value being invalid, if it is.",
"optional": true,
"type": "string"
}
]
},
{
"id": "AXRelatedNode",
"type": "object",
"properties": [
{
"name": "backendDOMNodeId",
"description": "The BackendNodeId of the related DOM node.",
"$ref": "DOM.BackendNodeId"
},
{
"name": "idref",
"description": "The IDRef value provided, if any.",
"optional": true,
"type": "string"
},
{
"name": "text",
"description": "The text alternative of this node in the current context.",
"optional": true,
"type": "string"
}
]
},
{
"id": "AXProperty",
"type": "object",
"properties": [
{
"name": "name",
"description": "The name of this property.",
"$ref": "AXPropertyName"
},
{
"name": "value",
"description": "The value of this property.",
"$ref": "AXValue"
}
]
},
{
"id": "AXValue",
"description": "A single computed AX property.",
"type": "object",
"properties": [
{
"name": "type",
"description": "The type of this value.",
"$ref": "AXValueType"
},
{
"name": "value",
"description": "The computed value of this property.",
"optional": true,
"type": "any"
},
{
"name": "relatedNodes",
"description": "One or more related nodes, if applicable.",
"optional": true,
"type": "array",
"items": {
"$ref": "AXRelatedNode"
}
},
{
"name": "sources",
"description": "The sources which contributed to the computation of this property.",
"optional": true,
"type": "array",
"items": {
"$ref": "AXValueSource"
}
}
]
},
{
"id": "AXPropertyName",
"description": "Values of AXProperty name: from 'busy' to 'roledescription' - states which apply to every AX\nnode, from 'live' to 'root' - attributes which apply to nodes in live regions, from\n'autocomplete' to 'valuetext' - attributes which apply to widgets, from 'checked' to 'selected'\n- states which apply to widgets, from 'activedescendant' to 'owns' - relationships between\nelements other than parent/child/sibling.",
"type": "string",
"enum": [
"busy",
"disabled",
"hidden",
"hiddenRoot",
"invalid",
"keyshortcuts",
"roledescription",
"live",
"atomic",
"relevant",
"root",
"autocomplete",
"haspopup",
"level",
"multiselectable",
"orientation",
"multiline",
"readonly",
"required",
"valuemin",
"valuemax",
"valuetext",
"checked",
"expanded",
"modal",
"pressed",
"selected",
"activedescendant",
"controls",
"describedby",
"details",
"errormessage",
"flowto",
"labelledby",
"owns"
]
},
{
"id": "AXNode",
"description": "A node in the accessibility tree.",
"type": "object",
"properties": [
{
"name": "nodeId",
"description": "Unique identifier for this node.",
"$ref": "AXNodeId"
},
{
"name": "ignored",
"description": "Whether this node is ignored for accessibility",
"type": "boolean"
},
{
"name": "ignoredReasons",
"description": "Collection of reasons why this node is hidden.",
"optional": true,
"type": "array",
"items": {
"$ref": "AXProperty"
}
},
{
"name": "role",
"description": "This `Node`'s role, whether explicit or implicit.",
"optional": true,
"$ref": "AXValue"
},
{
"name": "name",
"description": "The accessible name for this `Node`.",
"optional": true,
"$ref": "AXValue"
},
{
"name": "description",
"description": "The accessible description for this `Node`.",
"optional": true,
"$ref": "AXValue"
},
{
"name": "value",
"description": "The value for this `Node`.",
"optional": true,
"$ref": "AXValue"
},
{
"name": "properties",
"description": "All other properties",
"optional": true,
"type": "array",
"items": {
"$ref": "AXProperty"
}
},
{
"name": "childIds",
"description": "IDs for each of this node's child nodes.",
"optional": true,
"type": "array",
"items": {
"$ref": "AXNodeId"
}
},
{
"name": "backendDOMNodeId",
"description": "The backend ID for the associated DOM node, if any.",
"optional": true,
"$ref": "DOM.BackendNodeId"
}
]
}
],
"commands": [
{
"name": "getPartialAXTree",
"description": "Fetches the accessibility node and partial accessibility tree for this DOM node, if it exists.",
"experimental": true,
"parameters": [
{
"name": "nodeId",
"description": "ID of node to get the partial accessibility tree for.",
"$ref": "DOM.NodeId"
},
{
"name": "fetchRelatives",
"description": "Whether to fetch this nodes ancestors, siblings and children. Defaults to true.",
"optional": true,
"type": "boolean"
}
],
"returns": [
{
"name": "nodes",
"description": "The `Accessibility.AXNode` for this DOM node, if it exists, plus its ancestors, siblings and\nchildren, if requested.",
"type": "array",
"items": {
"$ref": "AXNode"
}
}
]
}
]
},
{
"domain": "Animation",
"experimental": true,
"dependencies": [
"Runtime",
"DOM"
],
"types": [
{
"id": "Animation",
"description": "Animation instance.",
"type": "object",
"properties": [
{
"name": "id",
"description": "`Animation`'s id.",
"type": "string"
},
{
"name": "name",
"description": "`Animation`'s name.",
"type": "string"
},
{
"name": "pausedState",
"description": "`Animation`'s internal paused state.",
"type": "boolean"
},
{
"name": "playState",
"description": "`Animation`'s play state.",
"type": "string"
},
{
"name": "playbackRate",
"description": "`Animation`'s playback rate.",
"type": "number"
},
{
"name": "startTime",
"description": "`Animation`'s start time.",
"type": "number"
},
{
"name": "currentTime",
"description": "`Animation`'s current time.",
"type": "number"
},
{
"name": "type",
"description": "Animation type of `Animation`.",
"type": "string",
"enum": [
"CSSTransition",
"CSSAnimation",
"WebAnimation"
]
},
{
"name": "source",
"description": "`Animation`'s source animation node.",
"optional": true,
"$ref": "AnimationEffect"
},
{
"name": "cssId",
"description": "A unique ID for `Animation` representing the sources that triggered this CSS\nanimation/transition.",
"optional": true,
"type": "string"
}
]
},
{
"id": "AnimationEffect",
"description": "AnimationEffect instance",
"type": "object",
"properties": [
{
"name": "delay",
"description": "`AnimationEffect`'s delay.",
"type": "number"
},
{
"name": "endDelay",
"description": "`AnimationEffect`'s end delay.",
"type": "number"
},
{
"name": "iterationStart",
"description": "`AnimationEffect`'s iteration start.",
"type": "number"
},
{
"name": "iterations",
"description": "`AnimationEffect`'s iterations.",
"type": "number"
},
{
"name": "duration",
"description": "`AnimationEffect`'s iteration duration.",
"type": "number"
},
{
"name": "direction",
"description": "`AnimationEffect`'s playback direction.",
"type": "string"
},
{
"name": "fill",
"description": "`AnimationEffect`'s fill mode.",
"type": "string"
},
{
"name": "backendNodeId",
"description": "`AnimationEffect`'s target node.",
"optional": true,
"$ref": "DOM.BackendNodeId"
},
{
"name": "keyframesRule",
"description": "`AnimationEffect`'s keyframes.",
"optional": true,
"$ref": "KeyframesRule"
},
{
"name": "easing",
"description": "`AnimationEffect`'s timing function.",
"type": "string"
}
]
},
{
"id": "KeyframesRule",
"description": "Keyframes Rule",
"type": "object",
"properties": [
{
"name": "name",
"description": "CSS keyframed animation's name.",
"optional": true,
"type": "string"
},
{
"name": "keyframes",
"description": "List of animation keyframes.",
"type": "array",
"items": {
"$ref": "KeyframeStyle"
}
}
]
},
{
"id": "KeyframeStyle",
"description": "Keyframe Style",
"type": "object",
"properties": [
{
"name": "offset",
"description": "Keyframe's time offset.",
"type": "string"
},
{
"name": "easing",
"description": "`AnimationEffect`'s timing function.",
"type": "string"
}
]
}
],
"commands": [
{
"name": "disable",
"description": "Disables animation domain notifications."
},
{
"name": "enable",
"description": "Enables animation domain notifications."
},
{
"name": "getCurrentTime",
"description": "Returns the current time of the an animation.",
"parameters": [
{
"name": "id",
"description": "Id of animation.",
"type": "string"
}
],
"returns": [
{
"name": "currentTime",
"description": "Current time of the page.",
"type": "number"
}
]
},
{
"name": "getPlaybackRate",
"description": "Gets the playback rate of the document timeline.",
"returns": [
{
"name": "playbackRate",
"description": "Playback rate for animations on page.",
"type": "number"
}
]
},
{
"name": "releaseAnimations",
"description": "Releases a set of animations to no longer be manipulated.",
"parameters": [
{
"name": "animations",
"description": "List of animation ids to seek.",
"type": "array",
"items": {
"type": "string"
}
}
]
},
{
"name": "resolveAnimation",
"description": "Gets the remote object of the Animation.",
"parameters": [
{
"name": "animationId",
"description": "Animation id.",
"type": "string"
}
],
"returns": [
{
"name": "remoteObject",
"description": "Corresponding remote object.",
"$ref": "Runtime.RemoteObject"
}
]
},
{
"name": "seekAnimations",
"description": "Seek a set of animations to a particular time within each animation.",
"parameters": [
{
"name": "animations",
"description": "List of animation ids to seek.",
"type": "array",
"items": {
"type": "string"
}
},
{
"name": "currentTime",
"description": "Set the current time of each animation.",
"type": "number"
}
]
},
{
"name": "setPaused",
"description": "Sets the paused state of a set of animations.",
"parameters": [
{
"name": "animations",
"description": "Animations to set the pause state of.",
"type": "array",
"items": {
"type": "string"
}
},
{
"name": "paused",
"description": "Paused state to set to.",
"type": "boolean"
}
]
},
{
"name": "setPlaybackRate",
"description": "Sets the playback rate of the document timeline.",
"parameters": [
{
"name": "playbackRate",
"description": "Playback rate for animations on page",
"type": "number"
}
]
},
{
"name": "setTiming",
"description": "Sets the timing of an animation node.",
"parameters": [
{
"name": "animationId",
"description": "Animation id.",
"type": "string"
},
{
"name": "duration",
"description": "Duration of the animation.",
"type": "number"
},
{
"name": "delay",
"description": "Delay of the animation.",
"type": "number"
}
]
}
],
"events": [
{
"name": "animationCanceled",
"description": "Event for when an animation has been cancelled.",
"parameters": [
{
"name": "id",
"description": "Id of the animation that was cancelled.",
"type": "string"
}
]
},
{
"name": "animationCreated",
"description": "Event for each animation that has been created.",
"parameters": [
{
"name": "id",
"description": "Id of the animation that was created.",
"type": "string"
}
]
},
{
"name": "animationStarted",
"description": "Event for animation that has been started.",
"parameters": [
{
"name": "animation",
"description": "Animation that was started.",
"$ref": "Animation"
}
]
}
]
},
{
"domain": "ApplicationCache",
"experimental": true,
"types": [
{
"id": "ApplicationCacheResource",
"description": "Detailed application cache resource information.",
"type": "object",
"properties": [
{
"name": "url",
"description": "Resource url.",
"type": "string"
},
{
"name": "size",
"description": "Resource size.",
"type": "integer"
},
{
"name": "type",
"description": "Resource type.",
"type": "string"
}
]
},
{
"id": "ApplicationCache",
"description": "Detailed application cache information.",
"type": "object",
"properties": [
{
"name": "manifestURL",
"description": "Manifest URL.",
"type": "string"
},
{
"name": "size",
"description": "Application cache size.",
"type": "number"
},
{
"name": "creationTime",
"description": "Application cache creation time.",
"type": "number"
},
{
"name": "updateTime",
"description": "Application cache update time.",
"type": "number"
},
{
"name": "resources",
"description": "Application cache resources.",
"type": "array",
"items": {
"$ref": "ApplicationCacheResource"
}
}
]
},
{
"id": "FrameWithManifest",
"description": "Frame identifier - manifest URL pair.",
"type": "object",
"properties": [
{
"name": "frameId",
"description": "Frame identifier.",
"$ref": "Page.FrameId"
},
{
"name": "manifestURL",
"description": "Manifest URL.",
"type": "string"
},
{
"name": "status",
"description": "Application cache status.",
"type": "integer"
}
]
}
],
"commands": [
{
"name": "enable",
"description": "Enables application cache domain notifications."
},
{
"name": "getApplicationCacheForFrame",
"description": "Returns relevant application cache data for the document in given frame.",
"parameters": [
{
"name": "frameId",
"description": "Identifier of the frame containing document whose application cache is retrieved.",
"$ref": "Page.FrameId"
}
],
"returns": [
{
"name": "applicationCache",
"description": "Relevant application cache data for the document in given frame.",
"$ref": "ApplicationCache"
}
]
},
{
"name": "getFramesWithManifests",
"description": "Returns array of frame identifiers with manifest urls for each frame containing a document\nassociated with some application cache.",
"returns": [
{
"name": "frameIds",
"description": "Array of frame identifiers with manifest urls for each frame containing a document\nassociated with some application cache.",
"type": "array",
"items": {
"$ref": "FrameWithManifest"
}
}
]
},
{
"name": "getManifestForFrame",
"description": "Returns manifest URL for document in the given frame.",
"parameters": [
{
"name": "frameId",
"description": "Identifier of the frame containing document whose manifest is retrieved.",
"$ref": "Page.FrameId"
}
],
"returns": [
{
"name": "manifestURL",
"description": "Manifest URL for document in the given frame.",
"type": "string"
}
]
}
],
"events": [
{
"name": "applicationCacheStatusUpdated",
"parameters": [
{
"name": "frameId",
"description": "Identifier of the frame containing document whose application cache updated status.",
"$ref": "Page.FrameId"
},
{
"name": "manifestURL",
"description": "Manifest URL.",
"type": "string"
},
{
"name": "status",
"description": "Updated application cache status.",
"type": "integer"
}
]
},
{
"name": "networkStateUpdated",
"parameters": [
{
"name": "isNowOnline",
"type": "boolean"
}
]
}
]
},
{
"domain": "Audits",
"description": "Audits domain allows investigation of page violations and possible improvements.",
"experimental": true,
"dependencies": [
"Network"
],
"commands": [
{
"name": "getEncodedResponse",
"description": "Returns the response body and size if it were re-encoded with the specified settings. Only\napplies to images.",
"parameters": [
{
"name": "requestId",
"description": "Identifier of the network request to get content for.",
"$ref": "Network.RequestId"
},
{
"name": "encoding",
"description": "The encoding to use.",
"type": "string",
"enum": [
"webp",
"jpeg",
"png"
]
},
{
"name": "quality",
"description": "The quality of the encoding (0-1). (defaults to 1)",
"optional": true,
"type": "number"
},
{
"name": "sizeOnly",
"description": "Whether to only return the size information (defaults to false).",
"optional": true,
"type": "boolean"
}
],
"returns": [
{
"name": "body",
"description": "The encoded body as a base64 string. Omitted if sizeOnly is true.",
"optional": true,
"type": "string"
},
{
"name": "originalSize",
"description": "Size before re-encoding.",
"type": "integer"
},
{
"name": "encodedSize",
"description": "Size after re-encoding.",
"type": "integer"
}
]
}
]
},
{
"domain": "Browser",
"description": "The Browser domain defines methods and events for browser managing.",
"types": [
{
"id": "WindowID",
"experimental": true,
"type": "integer"
},
{
"id": "WindowState",
"description": "The state of the browser window.",
"experimental": true,
"type": "string",
"enum": [
"normal",
"minimized",
"maximized",
"fullscreen"
]
},
{
"id": "Bounds",
"description": "Browser window bounds information",
"experimental": true,
"type": "object",
"properties": [
{
"name": "left",
"description": "The offset from the left edge of the screen to the window in pixels.",
"optional": true,
"type": "integer"
},
{
"name": "top",
"description": "The offset from the top edge of the screen to the window in pixels.",
"optional": true,
"type": "integer"
},
{
"name": "width",
"description": "The window width in pixels.",
"optional": true,
"type": "integer"
},
{
"name": "height",
"description": "The window height in pixels.",
"optional": true,
"type": "integer"
},
{
"name": "windowState",
"description": "The window state. Default to normal.",
"optional": true,
"$ref": "WindowState"
}
]
}
],
"commands": [
{
"name": "close",
"description": "Close browser gracefully."
},
{
"name": "getVersion",
"description": "Returns version information.",
"returns": [
{
"name": "protocolVersion",
"description": "Protocol version.",
"type": "string"
},
{
"name": "product",
"description": "Product name.",
"type": "string"
},
{
"name": "revision",
"description": "Product revision.",
"type": "string"
},
{
"name": "userAgent",
"description": "User-Agent.",
"type": "string"
},
{
"name": "jsVersion",
"description": "V8 version.",
"type": "string"
}
]
},
{
"name": "getWindowBounds",
"description": "Get position and size of the browser window.",
"experimental": true,
"parameters": [
{
"name": "windowId",
"description": "Browser window id.",
"$ref": "WindowID"
}
],
"returns": [
{
"name": "bounds",
"description": "Bounds information of the window. When window state is 'minimized', the restored window\nposition and size are returned.",
"$ref": "Bounds"
}
]
},
{
"name": "getWindowForTarget",
"description": "Get the browser window that contains the devtools target.",
"experimental": true,
"parameters": [
{
"name": "targetId",
"description": "Devtools agent host id.",
"$ref": "Target.TargetID"
}
],
"returns": [
{
"name": "windowId",
"description": "Browser window id.",
"$ref": "WindowID"
},
{
"name": "bounds",
"description": "Bounds information of the window. When window state is 'minimized', the restored window\nposition and size are returned.",
"$ref": "Bounds"
}
]
},
{
"name": "setWindowBounds",
"description": "Set position and/or size of the browser window.",
"experimental": true,
"parameters": [
{
"name": "windowId",
"description": "Browser window id.",
"$ref": "WindowID"
},
{
"name": "bounds",
"description": "New window bounds. The 'minimized', 'maximized' and 'fullscreen' states cannot be combined\nwith 'left', 'top', 'width' or 'height'. Leaves unspecified fields unchanged.",
"$ref": "Bounds"
}
]
}
]
},
{
"domain": "CSS",
"description": "This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles)\nhave an associated `id` used in subsequent operations on the related object. Each object type has\na specific `id` structure, and those are not interchangeable between objects of different kinds.\nCSS objects can be loaded using the `get*ForNode()` calls (which accept a DOM node id). A client\ncan also keep track of stylesheets via the `styleSheetAdded`/`styleSheetRemoved` events and\nsubsequently load the required stylesheet contents using the `getStyleSheet[Text]()` methods.",
"experimental": true,
"dependencies": [
"DOM"
],
"types": [
{
"id": "StyleSheetId",
"type": "string"
},
{
"id": "StyleSheetOrigin",
"description": "Stylesheet type: \"injected\" for stylesheets injected via extension, \"user-agent\" for user-agent\nstylesheets, \"inspector\" for stylesheets created by the inspector (i.e. those holding the \"via\ninspector\" rules), \"regular\" for regular stylesheets.",
"type": "string",
"enum": [
"injected",
"user-agent",
"inspector",
"regular"
]
},
{
"id": "PseudoElementMatches",
"description": "CSS rule collection for a single pseudo style.",
"type": "object",
"properties": [
{
"name": "pseudoType",
"description": "Pseudo element type.",
"$ref": "DOM.PseudoType"
},
{
"name": "matches",
"description": "Matches of CSS rules applicable to the pseudo style.",
"type": "array",
"items": {
"$ref": "RuleMatch"
}
}
]
},
{
"id": "InheritedStyleEntry",
"description": "Inherited CSS rule collection from ancestor node.",
"type": "object",
"properties": [
{
"name": "inlineStyle",
"description": "The ancestor node's inline style, if any, in the style inheritance chain.",
"optional": true,
"$ref": "CSSStyle"
},
{
"name": "matchedCSSRules",
"description": "Matches of CSS rules matching the ancestor node in the style inheritance chain.",
"type": "array",
"items": {
"$ref": "RuleMatch"
}
}
]
},
{
"id": "RuleMatch",
"description": "Match data for a CSS rule.",
"type": "object",
"properties": [
{
"name": "rule",
"description": "CSS rule in the match.",
"$ref": "CSSRule"
},
{
"name": "matchingSelectors",
"description": "Matching selector indices in the rule's selectorList selectors (0-based).",
"type": "array",
"items": {
"type": "integer"
}
}
]
},
{
"id": "Value",
"description": "Data for a simple selector (these are delimited by commas in a selector list).",
"type": "object",
"properties": [
{
"name": "text",
"description": "Value text.",
"type": "string"
},
{
"name": "range",
"description": "Value range in the underlying resource (if available).",
"optional": true,
"$ref": "SourceRange"
}
]
},
{
"id": "SelectorList",
"description": "Selector list data.",
"type": "object",
"properties": [
{
"name": "selectors",
"description": "Selectors in the list.",
"type": "array",
"items": {
"$ref": "Value"
}
},
{
"name": "text",
"description": "Rule selector text.",
"type": "string"
}
]
},
{
"id": "CSSStyleSheetHeader",
"description": "CSS stylesheet metainformation.",
"type": "object",
"properties": [
{
"name": "styleSheetId",
"description": "The stylesheet identifier.",
"$ref": "StyleSheetId"
},
{
"name": "frameId",
"description": "Owner frame identifier.",
"$ref": "Page.FrameId"
},
{
"name": "sourceURL",
"description": "Stylesheet resource URL.",
"type": "string"
},
{
"name": "sourceMapURL",
"description": "URL of source map associated with the stylesheet (if any).",
"optional": true,
"type": "string"
},
{
"name": "origin",
"description": "Stylesheet origin.",
"$ref": "StyleSheetOrigin"
},
{
"name": "title",
"description": "Stylesheet title.",
"type": "string"
},
{
"name": "ownerNode",
"description": "The backend id for the owner node of the stylesheet.",
"optional": true,
"$ref": "DOM.BackendNodeId"
},
{
"name": "disabled",
"description": "Denotes whether the stylesheet is disabled.",
"type": "boolean"
},
{
"name": "hasSourceURL",
"description": "Whether the sourceURL field value comes from the sourceURL comment.",
"optional": true,
"type": "boolean"
},
{
"name": "isInline",
"description": "Whether this stylesheet is created for STYLE tag by parser. This flag is not set for\ndocument.written STYLE tags.",
"type": "boolean"
},
{
"name": "startLine",
"description": "Line offset of the stylesheet within the resource (zero based).",
"type": "number"
},
{
"name": "startColumn",
"description": "Column offset of the stylesheet within the resource (zero based).",
"type": "number"
},
{
"name": "length",
"description": "Size of the content (in characters).",
"type": "number"
}
]
},
{
"id": "CSSRule",
"description": "CSS rule representation.",
"type": "object",
"properties": [
{
"name": "styleSheetId",
"description": "The css style sheet identifier (absent for user agent stylesheet and user-specified\nstylesheet rules) this rule came from.",
"optional": true,
"$ref": "StyleSheetId"
},
{
"name": "selectorList",
"description": "Rule selector data.",
"$ref": "SelectorList"
},
{
"name": "origin",
"description": "Parent stylesheet's origin.",
"$ref": "StyleSheetOrigin"
},
{
"name": "style",
"description": "Associated style declaration.",
"$ref": "CSSStyle"
},
{
"name": "media",
"description": "Media list array (for rules involving media queries). The array enumerates media queries\nstarting with the innermost one, going outwards.",
"optional": true,
"type": "array",
"items": {
"$ref": "CSSMedia"
}
}
]
},
{
"id": "RuleUsage",
"description": "CSS coverage information.",
"type": "object",
"properties": [
{
"name": "styleSheetId",
"description": "The css style sheet identifier (absent for user agent stylesheet and user-specified\nstylesheet rules) this rule came from.",
"$ref": "StyleSheetId"
},
{
"name": "startOffset",
"description": "Offset of the start of the rule (including selector) from the beginning of the stylesheet.",
"type": "number"
},
{
"name": "endOffset",
"description": "Offset of the end of the rule body from the beginning of the stylesheet.",
"type": "number"
},
{
"name": "used",
"description": "Indicates whether the rule was actually used by some element in the page.",
"type": "boolean"
}
]
},
{
"id": "SourceRange",
"description": "Text range within a resource. All numbers are zero-based.",
"type": "object",
"properties": [
{
"name": "startLine",
"description": "Start line of range.",
"type": "integer"
},
{
"name": "startColumn",
"description": "Start column of range (inclusive).",
"type": "integer"
},
{
"name": "endLine",
"description": "End line of range",
"type": "integer"
},
{
"name": "endColumn",
"description": "End column of range (exclusive).",
"type": "integer"
}
]
},
{
"id": "ShorthandEntry",
"type": "object",
"properties": [
{
"name": "name",
"description": "Shorthand name.",
"type": "string"
},
{
"name": "value",
"description": "Shorthand value.",
"type": "string"
},
{
"name": "important",
"description": "Whether the property has \"!important\" annotation (implies `false` if absent).",
"optional": true,
"type": "boolean"
}
]
},
{
"id": "CSSComputedStyleProperty",
"type": "object",
"properties": [
{
"name": "name",
"description": "Computed style property name.",
"type": "string"
},
{
"name": "value",
"description": "Computed style property value.",
"type": "string"
}
]
},
{
"id": "CSSStyle",
"description": "CSS style representation.",
"type": "object",
"properties": [
{
"name": "styleSheetId",
"description": "The css style sheet identifier (absent for user agent stylesheet and user-specified\nstylesheet rules) this rule came from.",
"optional": true,
"$ref": "StyleSheetId"
},
{
"name": "cssProperties",
"description": "CSS properties in the style.",
"type": "array",
"items": {
"$ref": "CSSProperty"
}
},
{
"name": "shorthandEntries",
"description": "Computed values for all shorthands found in the style.",
"type": "array",
"items": {
"$ref": "ShorthandEntry"
}
},
{
"name": "cssText",
"description": "Style declaration text (if available).",
"optional": true,
"type": "string"
},
{
"name": "range",
"description": "Style declaration range in the enclosing stylesheet (if available).",
"optional": true,
"$ref": "SourceRange"
}
]
},
{
"id": "CSSProperty",
"description": "CSS property declaration data.",
"type": "object",
"properties": [
{
"name": "name",
"description": "The property name.",
"type": "string"
},
{
"name": "value",
"description": "The property value.",
"type": "string"
},
{
"name": "important",
"description": "Whether the property has \"!important\" annotation (implies `false` if absent).",
"optional": true,
"type": "boolean"
},
{
"name": "implicit",
"description": "Whether the property is implicit (implies `false` if absent).",
"optional": true,
"type": "boolean"
},
{
"name": "text",
"description": "The full property text as specified in the style.",
"optional": true,
"type": "string"
},
{
"name": "parsedOk",
"description": "Whether the property is understood by the browser (implies `true` if absent).",
"optional": true,
"type": "boolean"
},
{
"name": "disabled",
"description": "Whether the property is disabled by the user (present for source-based properties only).",
"optional": true,
"type": "boolean"
},
{
"name": "range",
"description": "The entire property range in the enclosing style declaration (if available).",
"optional": true,
"$ref": "SourceRange"
}
]
},
{
"id": "CSSMedia",
"description": "CSS media rule descriptor.",
"type": "object",
"properties": [
{
"name": "text",
"description": "Media query text.",
"type": "string"
},
{
"name": "source",
"description": "Source of the media query: \"mediaRule\" if specified by a @media rule, \"importRule\" if\nspecified by an @import rule, \"linkedSheet\" if specified by a \"media\" attribute in a linked\nstylesheet's LINK tag, \"inlineSheet\" if specified by a \"media\" attribute in an inline\nstylesheet's STYLE tag.",
"type": "string",
"enum": [
"mediaRule",
"importRule",
"linkedSheet",
"inlineSheet"
]
},
{
"name": "sourceURL",
"description": "URL of the document containing the media query description.",
"optional": true,
"type": "string"
},
{
"name": "range",
"description": "The associated rule (@media or @import) header range in the enclosing stylesheet (if\navailable).",
"optional": true,
"$ref": "SourceRange"
},
{
"name": "styleSheetId",
"description": "Identifier of the stylesheet containing this object (if exists).",
"optional": true,
"$ref": "StyleSheetId"
},
{
"name": "mediaList",
"description": "Array of media queries.",
"optional": true,
"type": "array",
"items": {
"$ref": "MediaQuery"
}
}
]
},
{
"id": "MediaQuery",
"description": "Media query descriptor.",
"type": "object",
"properties": [
{
"name": "expressions",
"description": "Array of media query expressions.",
"type": "array",
"items": {
"$ref": "MediaQueryExpression"
}
},
{
"name": "active",
"description": "Whether the media query condition is satisfied.",
"type": "boolean"
}
]
},
{
"id": "MediaQueryExpression",
"description": "Media query expression descriptor.",
"type": "object",
"properties": [
{
"name": "value",
"description": "Media query expression value.",
"type": "number"
},
{
"name": "unit",
"description": "Media query expression units.",
"type": "string"
},
{
"name": "feature",
"description": "Media query expression feature.",
"type": "string"
},
{
"name": "valueRange",
"description": "The associated range of the value text in the enclosing stylesheet (if available).",
"optional": true,
"$ref": "SourceRange"
},
{
"name": "computedLength",
"description": "Computed length of media query expression (if applicable).",
"optional": true,
"type": "number"
}
]
},
{
"id": "PlatformFontUsage",
"description": "Information about amount of glyphs that were rendered with given font.",
"type": "object",
"properties": [
{
"name": "familyName",
"description": "Font's family name reported by platform.",
"type": "string"
},
{
"name": "isCustomFont",
"description": "Indicates if the font was downloaded or resolved locally.",
"type": "boolean"
},
{
"name": "glyphCount",
"description": "Amount of glyphs that were rendered with this font.",
"type": "number"
}
]
},
{
"id": "CSSKeyframesRule",
"description": "CSS keyframes rule representation.",
"type": "object",
"properties": [
{
"name": "animationName",
"description": "Animation name.",
"$ref": "Value"
},
{
"name": "keyframes",
"description": "List of keyframes.",
"type": "array",
"items": {
"$ref": "CSSKeyframeRule"
}
}
]
},
{
"id": "CSSKeyframeRule",
"description": "CSS keyframe rule representation.",
"type": "object",
"properties": [
{
"name": "styleSheetId",
"description": "The css style sheet identifier (absent for user agent stylesheet and user-specified\nstylesheet rules) this rule came from.",
"optional": true,
"$ref": "StyleSheetId"
},
{
"name": "origin",
"description": "Parent stylesheet's origin.",
"$ref": "StyleSheetOrigin"
},
{
"name": "keyText",
"description": "Associated key text.",
"$ref": "Value"
},
{
"name": "style",
"description": "Associated style declaration.",
"$ref": "CSSStyle"
}
]
},
{
"id": "StyleDeclarationEdit",
"description": "A descriptor of operation to mutate style declaration text.",
"type": "object",
"properties": [
{
"name": "styleSheetId",
"description": "The css style sheet identifier.",
"$ref": "StyleSheetId"
},
{
"name": "range",
"description": "The range of the style text in the enclosing stylesheet.",
"$ref": "SourceRange"
},
{
"name": "text",
"description": "New style text.",
"type": "string"
}
]
}
],
"commands": [
{
"name": "addRule",
"description": "Inserts a new rule with the given `ruleText` in a stylesheet with given `styleSheetId`, at the\nposition specified by `location`.",
"parameters": [
{
"name": "styleSheetId",
"description": "The css style sheet identifier where a new rule should be inserted.",
"$ref": "StyleSheetId"
},
{
"name": "ruleText",
"description": "The text of a new rule.",
"type": "string"
},
{
"name": "location",
"description": "Text position of a new rule in the target style sheet.",
"$ref": "SourceRange"
}
],
"returns": [
{
"name": "rule",
"description": "The newly created rule.",
"$ref": "CSSRule"
}
]
},
{
"name": "collectClassNames",
"description": "Returns all class names from specified stylesheet.",
"parameters": [
{
"name": "styleSheetId",
"$ref": "StyleSheetId"
}
],
"returns": [
{
"name": "classNames",
"description": "Class name list.",
"type": "array",
"items": {
"type": "string"
}
}
]
},
{
"name": "createStyleSheet",
"description": "Creates a new special \"via-inspector\" stylesheet in the frame with given `frameId`.",
"parameters": [
{
"name": "frameId",
"description": "Identifier of the frame where \"via-inspector\" stylesheet should be created.",
"$ref": "Page.FrameId"
}
],
"returns": [
{
"name": "styleSheetId",
"description": "Identifier of the created \"via-inspector\" stylesheet.",
"$ref": "StyleSheetId"
}
]
},
{
"name": "disable",
"description": "Disables the CSS agent for the given page."
},
{
"name": "enable",
"description": "Enables the CSS agent for the given page. Clients should not assume that the CSS agent has been\nenabled until the result of this command is received."
},
{
"name": "forcePseudoState",
"description": "Ensures that the given node will have specified pseudo-classes whenever its style is computed by\nthe browser.",
"parameters": [
{
"name": "nodeId",
"description": "The element id for which to force the pseudo state.",
"$ref": "DOM.NodeId"
},
{
"name": "forcedPseudoClasses",
"description": "Element pseudo classes to force when computing the element's style.",
"type": "array",
"items": {
"type": "string"
}
}
]
},
{
"name": "getBackgroundColors",
"parameters": [
{
"name": "nodeId",
"description": "Id of the node to get background colors for.",
"$ref": "DOM.NodeId"
}
],
"returns": [
{
"name": "backgroundColors",
"description": "The range of background colors behind this element, if it contains any visible text. If no\nvisible text is present, this will be undefined. In the case of a flat background color,\nthis will consist of simply that color. In the case of a gradient, this will consist of each\nof the color stops. For anything more complicated, this will be an empty array. Images will\nbe ignored (as if the image had failed to load).",
"optional": true,
"type": "array",
"items": {
"type": "string"
}
},
{
"name": "computedFontSize",
"description": "The computed font size for this node, as a CSS computed value string (e.g. '12px').",
"optional": true,
"type": "string"
},
{
"name": "computedFontWeight",
"description": "The computed font weight for this node, as a CSS computed value string (e.g. 'normal' or\n'100').",
"optional": true,
"type": "string"
},
{
"name": "computedBodyFontSize",
"description": "The computed font size for the document body, as a computed CSS value string (e.g. '16px').",
"optional": true,
"type": "string"
}
]
},
{
"name": "getComputedStyleForNode",
"description": "Returns the computed style for a DOM node identified by `nodeId`.",
"parameters": [
{
"name": "nodeId",
"$ref": "DOM.NodeId"
}
],
"returns": [
{
"name": "computedStyle",
"description": "Computed style for the specified DOM node.",
"type": "array",
"items": {
"$ref": "CSSComputedStyleProperty"
}
}
]
},
{
"name": "getInlineStylesForNode",
"description": "Returns the styles defined inline (explicitly in the \"style\" attribute and implicitly, using DOM\nattributes) for a DOM node identified by `nodeId`.",
"parameters": [
{
"name": "nodeId",
"$ref": "DOM.NodeId"
}
],
"returns": [
{
"name": "inlineStyle",
"description": "Inline style for the specified DOM node.",
"optional": true,
"$ref": "CSSStyle"
},
{
"name": "attributesStyle",
"description": "Attribute-defined element style (e.g. resulting from \"width=20 height=100%\").",
"optional": true,
"$ref": "CSSStyle"
}
]
},
{
"name": "getMatchedStylesForNode",
"description": "Returns requested styles for a DOM node identified by `nodeId`.",
"parameters": [
{
"name": "nodeId",
"$ref": "DOM.NodeId"
}
],
"returns": [
{
"name": "inlineStyle",
"description": "Inline style for the specified DOM node.",
"optional": true,
"$ref": "CSSStyle"
},
{
"name": "attributesStyle",
"description": "Attribute-defined element style (e.g. resulting from \"width=20 height=100%\").",
"optional": true,
"$ref": "CSSStyle"
},
{
"name": "matchedCSSRules",
"description": "CSS rules matching this node, from all applicable stylesheets.",
"optional": true,
"type": "array",
"items": {
"$ref": "RuleMatch"
}
},
{
"name": "pseudoElements",
"description": "Pseudo style matches for this node.",
"optional": true,
"type": "array",
"items": {
"$ref": "PseudoElementMatches"
}
},
{
"name": "inherited",
"description": "A chain of inherited styles (from the immediate node parent up to the DOM tree root).",
"optional": true,
"type": "array",
"items": {
"$ref": "InheritedStyleEntry"
}
},
{
"name": "cssKeyframesRules",
"description": "A list of CSS keyframed animations matching this node.",
"optional": true,
"type": "array",
"items": {
"$ref": "CSSKeyframesRule"
}
}
]
},
{
"name": "getMediaQueries",
"description": "Returns all media queries parsed by the rendering engine.",
"returns": [
{
"name": "medias",
"type": "array",
"items": {
"$ref": "CSSMedia"
}
}
]
},
{
"name": "getPlatformFontsForNode",
"description": "Requests information about platform fonts which we used to render child TextNodes in the given\nnode.",
"parameters": [
{
"name": "nodeId",
"$ref": "DOM.NodeId"
}
],
"returns": [
{
"name": "fonts",
"description": "Usage statistics for every employed platform font.",
"type": "array",
"items": {
"$ref": "PlatformFontUsage"
}
}
]
},
{
"name": "getStyleSheetText",
"description": "Returns the current textual content and the URL for a stylesheet.",
"parameters": [
{
"name": "styleSheetId",
"$ref": "StyleSheetId"
}
],
"returns": [
{
"name": "text",
"description": "The stylesheet text.",
"type": "string"
}
]
},
{
"name": "setEffectivePropertyValueForNode",
"description": "Find a rule with the given active property for the given node and set the new value for this\nproperty",
"parameters": [
{
"name": "nodeId",
"description": "The element id for which to set property.",
"$ref": "DOM.NodeId"
},
{
"name": "propertyName",
"type": "string"
},
{
"name": "value",
"type": "string"
}
]
},
{
"name": "setKeyframeKey",
"description": "Modifies the keyframe rule key text.",
"parameters": [
{
"name": "styleSheetId",
"$ref": "StyleSheetId"
},
{
"name": "range",
"$ref": "SourceRange"
},
{
"name": "keyText",
"type": "string"
}
],
"returns": [
{
"name": "keyText",
"description": "The resulting key text after modification.",
"$ref": "Value"
}
]
},
{
"name": "setMediaText",
"description": "Modifies the rule selector.",
"parameters": [
{
"name": "styleSheetId",
"$ref": "StyleSheetId"
},
{
"name": "range",
"$ref": "SourceRange"
},
{
"name": "text",
"type": "string"
}
],
"returns": [
{
"name": "media",
"description": "The resulting CSS media rule after modification.",
"$ref": "CSSMedia"
}
]
},
{
"name": "setRuleSelector",
"description": "Modifies the rule selector.",
"parameters": [
{
"name": "styleSheetId",
"$ref": "StyleSheetId"
},
{
"name": "range",
"$ref": "SourceRange"
},
{
"name": "selector",
"type": "string"
}
],
"returns": [
{
"name": "selectorList",
"description": "The resulting selector list after modification.",
"$ref": "SelectorList"
}
]
},
{
"name": "setStyleSheetText",
"description": "Sets the new stylesheet text.",
"parameters": [
{
"name": "styleSheetId",
"$ref": "StyleSheetId"
},
{
"name": "text",
"type": "string"
}
],
"returns": [
{
"name": "sourceMapURL",
"description": "URL of source map associated with script (if any).",
"optional": true,
"type": "string"
}
]
},
{
"name": "setStyleTexts",
"description": "Applies specified style edits one after another in the given order.",
"parameters": [
{
"name": "edits",
"type": "array",
"items": {
"$ref": "StyleDeclarationEdit"
}
}
],
"returns": [
{
"name": "styles",
"description": "The resulting styles after modification.",
"type": "array",
"items": {
"$ref": "CSSStyle"
}
}
]
},
{
"name": "startRuleUsageTracking",
"description": "Enables the selector recording."
},
{
"name": "stopRuleUsageTracking",
"description": "The list of rules with an indication of whether these were used",
"returns": [
{
"name": "ruleUsage",
"type": "array",
"items": {
"$ref": "RuleUsage"
}
}
]
},
{
"name": "takeCoverageDelta",
"description": "Obtain list of rules that became used since last call to this method (or since start of coverage\ninstrumentation)",
"returns": [
{
"name": "coverage",
"type": "array",
"items": {
"$ref": "RuleUsage"
}
}
]
}
],
"events": [
{
"name": "fontsUpdated",
"description": "Fires whenever a web font gets loaded."
},
{
"name": "mediaQueryResultChanged",
"description": "Fires whenever a MediaQuery result changes (for example, after a browser window has been\nresized.) The current implementation considers only viewport-dependent media features."
},
{
"name": "styleSheetAdded",
"description": "Fired whenever an active document stylesheet is added.",
"parameters": [
{
"name": "header",
"description": "Added stylesheet metainfo.",
"$ref": "CSSStyleSheetHeader"
}
]
},
{
"name": "styleSheetChanged",
"description": "Fired whenever a stylesheet is changed as a result of the client operation.",
"parameters": [
{
"name": "styleSheetId",
"$ref": "StyleSheetId"
}
]
},
{
"name": "styleSheetRemoved",
"description": "Fired whenever an active document stylesheet is removed.",
"parameters": [
{
"name": "styleSheetId",
"description": "Identifier of the removed stylesheet.",
"$ref": "StyleSheetId"
}
]
}
]
},
{
"domain": "CacheStorage",
"experimental": true,
"types": [
{
"id": "CacheId",
"description": "Unique identifier of the Cache object.",
"type": "string"
},
{
"id": "DataEntry",
"description": "Data entry.",
"type": "object",
"properties": [
{
"name": "requestURL",
"description": "Request URL.",
"type": "string"
},
{
"name": "requestMethod",
"description": "Request method.",
"type": "string"
},
{
"name": "requestHeaders",
"description": "Request headers",
"type": "array",
"items": {
"$ref": "Header"
}
},
{
"name": "responseTime",
"description": "Number of seconds since epoch.",
"type": "number"
},
{
"name": "responseStatus",
"description": "HTTP response status code.",
"type": "integer"
},
{
"name": "responseStatusText",
"description": "HTTP response status text.",
"type": "string"
},
{
"name": "responseHeaders",
"description": "Response headers",
"type": "array",
"items": {
"$ref": "Header"
}
}
]
},
{
"id": "Cache",
"description": "Cache identifier.",
"type": "object",
"properties": [
{
"name": "cacheId",
"description": "An opaque unique id of the cache.",
"$ref": "CacheId"
},
{
"name": "securityOrigin",
"description": "Security origin of the cache.",
"type": "string"
},
{
"name": "cacheName",
"description": "The name of the cache.",
"type": "string"
}
]
},
{
"id": "Header",
"type": "object",
"properties": [
{
"name": "name",
"type": "string"
},
{
"name": "value",
"type": "string"
}
]
},
{
"id": "CachedResponse",
"description": "Cached response",
"type": "object",
"properties": [
{
"name": "body",
"description": "Entry content, base64-encoded.",
"type": "string"
}
]
}
],
"commands": [
{
"name": "deleteCache",
"description": "Deletes a cache.",
"parameters": [
{
"name": "cacheId",
"description": "Id of cache for deletion.",
"$ref": "CacheId"
}
]
},
{
"name": "deleteEntry",
"description": "Deletes a cache entry.",
"parameters": [
{
"name": "cacheId",
"description": "Id of cache where the entry will be deleted.",
"$ref": "CacheId"
},
{
"name": "request",
"description": "URL spec of the request.",
"type": "string"
}
]
},
{
"name": "requestCacheNames",
"description": "Requests cache names.",
"parameters": [
{
"name": "securityOrigin",
"description": "Security origin.",
"type": "string"
}
],
"returns": [
{
"name": "caches",
"description": "Caches for the security origin.",
"type": "array",
"items": {
"$ref": "Cache"
}
}
]
},
{
"name": "requestCachedResponse",
"description": "Fetches cache entry.",
"parameters": [
{
"name": "cacheId",
"description": "Id of cache that contains the enty.",
"$ref": "CacheId"
},
{
"name": "requestURL",
"description": "URL spec of the request.",
"type": "string"
}
],
"returns": [
{
"name": "response",
"description": "Response read from the cache.",
"$ref": "CachedResponse"
}
]
},
{
"name": "requestEntries",
"description": "Requests data from cache.",
"parameters": [
{
"name": "cacheId",
"description": "ID of cache to get entries from.",
"$ref": "CacheId"
},
{
"name": "skipCount",
"description": "Number of records to skip.",
"type": "integer"
},
{
"name": "pageSize",
"description": "Number of records to fetch.",
"type": "integer"
}
],
"returns": [
{
"name": "cacheDataEntries",
"description": "Array of object store data entries.",
"type": "array",
"items": {
"$ref": "DataEntry"
}
},
{
"name": "hasMore",
"description": "If true, there are more entries to fetch in the given range.",
"type": "boolean"
}
]
}
]
},
{
"domain": "DOM",
"description": "This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object\nthat has an `id`. This `id` can be used to get additional information on the Node, resolve it into\nthe JavaScript object wrapper, etc. It is important that client receives DOM events only for the\nnodes that are known to the client. Backend keeps track of the nodes that were sent to the client\nand never sends the same node twice. It is client's responsibility to collect information about\nthe nodes that were sent to the client.<p>Note that `iframe` owner elements will return\ncorresponding document elements as their child nodes.</p>",
"dependencies": [
"Runtime"
],
"types": [
{
"id": "NodeId",
"description": "Unique DOM node identifier.",
"type": "integer"
},
{
"id": "BackendNodeId",
"description": "Unique DOM node identifier used to reference a node that may not have been pushed to the\nfront-end.",
"type": "integer"
},
{
"id": "BackendNode",
"description": "Backend node with a friendly name.",
"type": "object",
"properties": [
{
"name": "nodeType",
"description": "`Node`'s nodeType.",
"type": "integer"
},
{
"name": "nodeName",
"description": "`Node`'s nodeName.",
"type": "string"
},
{
"name": "backendNodeId",
"$ref": "BackendNodeId"
}
]
},
{
"id": "PseudoType",
"description": "Pseudo element type.",
"type": "string",
"enum": [
"first-line",
"first-letter",
"before",
"after",
"backdrop",
"selection",
"first-line-inherited",
"scrollbar",
"scrollbar-thumb",
"scrollbar-button",
"scrollbar-track",
"scrollbar-track-piece",
"scrollbar-corner",
"resizer",
"input-list-button"
]
},
{
"id": "ShadowRootType",
"description": "Shadow root type.",
"type": "string",
"enum": [
"user-agent",
"open",
"closed"
]
},
{
"id": "Node",
"description": "DOM interaction is implemented in terms of mirror objects that represent the actual DOM nodes.\nDOMNode is a base node mirror type.",
"type": "object",
"properties": [
{
"name": "nodeId",
"description": "Node identifier that is passed into the rest of the DOM messages as the `nodeId`. Backend\nwill only push node with given `id` once. It is aware of all requested nodes and will only\nfire DOM events for nodes known to the client.",
"$ref": "NodeId"
},
{
"name": "parentId",
"description": "The id of the parent node if any.",
"optional": true,
"$ref": "NodeId"
},
{
"name": "backendNodeId",
"description": "The BackendNodeId for this node.",
"$ref": "BackendNodeId"
},
{
"name": "nodeType",
"description": "`Node`'s nodeType.",
"type": "integer"
},
{
"name": "nodeName",
"description": "`Node`'s nodeName.",
"type": "string"
},
{
"name": "localName",
"description": "`Node`'s localName.",
"type": "string"
},
{
"name": "nodeValue",
"description": "`Node`'s nodeValue.",
"type": "string"
},
{
"name": "childNodeCount",
"description": "Child count for `Container` nodes.",
"optional": true,
"type": "integer"
},
{
"name": "children",
"description": "Child nodes of this node when requested with children.",
"optional": true,
"type": "array",
"items": {
"$ref": "Node"
}
},
{
"name": "attributes",
"description": "Attributes of the `Element` node in the form of flat array `[name1, value1, name2, value2]`.",
"optional": true,
"type": "array",
"items": {
"type": "string"
}
},
{
"name": "documentURL",
"description": "Document URL that `Document` or `FrameOwner` node points to.",
"optional": true,
"type": "string"
},
{
"name": "baseURL",
"description": "Base URL that `Document` or `FrameOwner` node uses for URL completion.",
"optional": true,
"type": "string"
},
{
"name": "publicId",
"description": "`DocumentType`'s publicId.",
"optional": true,
"type": "string"
},
{
"name": "systemId",
"description": "`DocumentType`'s systemId.",
"optional": true,
"type": "string"
},
{
"name": "internalSubset",
"description": "`DocumentType`'s internalSubset.",
"optional": true,
"type": "string"
},
{
"name": "xmlVersion",
"description": "`Document`'s XML version in case of XML documents.",
"optional": true,
"type": "string"
},
{
"name": "name",
"description": "`Attr`'s name.",
"optional": true,
"type": "string"
},
{
"name": "value",
"description": "`Attr`'s value.",
"optional": true,
"type": "string"
},
{
"name": "pseudoType",
"description": "Pseudo element type for this node.",
"optional": true,
"$ref": "PseudoType"
},
{
"name": "shadowRootType",
"description": "Shadow root type.",
"optional": true,
"$ref": "ShadowRootType"
},
{
"name": "frameId",
"description": "Frame ID for frame owner elements.",
"optional": true,
"$ref": "Page.FrameId"
},
{
"name": "contentDocument",
"description": "Content document for frame owner elements.",
"optional": true,
"$ref": "Node"
},
{
"name": "shadowRoots",
"description": "Shadow root list for given element host.",
"optional": true,
"type": "array",
"items": {
"$ref": "Node"
}
},
{
"name": "templateContent",
"description": "Content document fragment for template elements.",
"optional": true,
"$ref": "Node"
},
{
"name": "pseudoElements",
"description": "Pseudo elements associated with this node.",
"optional": true,
"type": "array",
"items": {
"$ref": "Node"
}
},
{
"name": "importedDocument",
"description": "Import document for the HTMLImport links.",
"optional": true,
"$ref": "Node"
},
{
"name": "distributedNodes",
"description": "Distributed nodes for given insertion point.",
"optional": true,
"type": "array",
"items": {
"$ref": "BackendNode"
}
},
{
"name": "isSVG",
"description": "Whether the node is SVG.",
"optional": true,
"type": "boolean"
}
]
},
{
"id": "RGBA",
"description": "A structure holding an RGBA color.",
"type": "object",
"properties": [
{
"name": "r",
"description": "The red component, in the [0-255] range.",
"type": "integer"
},
{
"name": "g",
"description": "The green component, in the [0-255] range.",
"type": "integer"
},
{
"name": "b",
"description": "The blue component, in the [0-255] range.",
"type": "integer"
},
{
"name": "a",
"description": "The alpha component, in the [0-1] range (default: 1).",
"optional": true,
"type": "number"
}
]
},
{
"id": "Quad",
"description": "An array of quad vertices, x immediately followed by y for each point, points clock-wise.",
"type": "array",
"items": {
"type": "number"
}
},
{
"id": "BoxModel",
"description": "Box model.",
"type": "object",
"properties": [
{
"name": "content",
"description": "Content box",
"$ref": "Quad"
},
{
"name": "padding",
"description": "Padding box",
"$ref": "Quad"
},
{