[{"domain":"Animation","description":"Domain for tracking/modifying Web Animations, as well as CSS (declarative) animations and transitions.","debuggableTypes":["page","web-page"],"targetTypes":["page"],"types":[{"id":"AnimationId","type":"string","description":"Unique Web Animation identifier."},{"id":"AnimationState","type":"string","enum":["ready","delayed","active","canceled","done"]},{"id":"PlaybackDirection","type":"string","enum":["normal","reverse","alternate","alternate-reverse"]},{"id":"FillMode","type":"string","enum":["none","forwards","backwards","both","auto"]},{"id":"Animation","type":"object","properties":[{"name":"animationId","$ref":"AnimationId"},{"name":"name","type":"string","optional":true,"description":"Equal to `Animation.prototype.get id`."},{"name":"cssAnimationName","type":"string","optional":true,"description":"Equal to the corresponding `animation-name` CSS property. Should not be provided if `transitionProperty` is also provided."},{"name":"cssTransitionProperty","type":"string","optional":true,"description":"Equal to the corresponding `transition-property` CSS property. Should not be provided if `animationName` is also provided."},{"name":"effect","$ref":"Effect","optional":true},{"name":"stackTrace","$ref":"Console.StackTrace","optional":true,"description":"Backtrace that was captured when this `WebAnimation` was created."}]},{"id":"Effect","type":"object","properties":[{"name":"startDelay","type":"number","optional":true},{"name":"endDelay","type":"number","optional":true},{"name":"iterationCount","type":"number","optional":true,"description":"Number of iterations in the animation. Infinity is represented as -1."},{"name":"iterationStart","type":"number","optional":true,"description":"Index of which iteration to start at."},{"name":"iterationDuration","type":"number","optional":true,"description":"Total time of each iteration, measured in milliseconds."},{"name":"timingFunction","type":"string","optional":true,"description":"CSS timing function of the overall animation."},{"name":"playbackDirection","$ref":"PlaybackDirection","optional":true},{"name":"fillMode","$ref":"FillMode","optional":true},{"name":"keyframes","type":"array","items":{"$ref":"Keyframe"},"optional":true}]},{"id":"Keyframe","type":"object","properties":[{"name":"offset","type":"number","description":"Decimal percentage [0,1] representing where this keyframe is in the entire duration of the animation."},{"name":"easing","type":"string","optional":true,"description":"CSS timing function for how the `style` is applied."},{"name":"style","type":"string","optional":true,"description":"CSS style declaration of the CSS properties that will be animated."}]},{"id":"TrackingUpdate","type":"object","properties":[{"name":"trackingAnimationId","$ref":"AnimationId"},{"name":"animationState","$ref":"AnimationState"},{"name":"nodeId","$ref":"DOM.NodeId","optional":true},{"name":"animationName","type":"string","optional":true,"description":"Equal to the corresponding `animation-name` CSS property. Should not be provided if `transitionProperty` is also provided."},{"name":"transitionProperty","type":"string","optional":true,"description":"Equal to the corresponding `transition-property` CSS property. Should not be provided if `animationName` is also provided."}]}],"commands":[{"name":"enable","description":"Enables Canvas domain events."},{"name":"disable","description":"Disables Canvas domain events."},{"name":"requestEffectTarget","description":"Gets the `DOM.NodeId` for the target of the effect of the animation with the given `AnimationId`.","parameters":[{"name":"animationId","$ref":"AnimationId"}],"returns":[{"name":"effectTarget","$ref":"DOM.Styleable"}]},{"name":"resolveAnimation","description":"Resolves JavaScript `WebAnimation` object for given `AnimationId`.","parameters":[{"name":"animationId","$ref":"AnimationId"},{"name":"objectGroup","type":"string","optional":true,"description":"Symbolic group name that can be used to release multiple objects."}],"returns":[{"name":"object","$ref":"Runtime.RemoteObject"}]},{"name":"startTracking","description":"Start tracking animations. This will produce a `trackingStart` event."},{"name":"stopTracking","description":"Stop tracking animations. This will produce a `trackingComplete` event."}],"events":[{"name":"animationCreated","description":"Dispatched whenever a `WebAnimation` is created.","parameters":[{"name":"animation","$ref":"Animation"}]},{"name":"nameChanged","description":"Dispatched whenever `Animation.prototype.set id` is called.","parameters":[{"name":"animationId","$ref":"AnimationId"},{"name":"name","type":"string","optional":true,"description":"Equal to `Animation.prototype.get id`."}]},{"name":"effectChanged","description":"Dispatched whenever the effect of any animation is changed in any way.","parameters":[{"name":"animationId","$ref":"AnimationId"},{"name":"effect","$ref":"Effect","optional":true,"description":"This is omitted when the effect is removed without a replacement."}]},{"name":"targetChanged","description":"Dispatched whenever the target of any effect of any animation is changed in any way.","parameters":[{"name":"animationId","$ref":"AnimationId"}]},{"name":"animationDestroyed","description":"Dispatched whenever a `WebAnimation` is destroyed.","parameters":[{"name":"animationId","$ref":"AnimationId"}]},{"name":"trackingStart","description":"Dispatched after `startTracking` command.","parameters":[{"name":"timestamp","type":"number"}]},{"name":"trackingUpdate","description":"Fired for each phase of Web Animation.","parameters":[{"name":"timestamp","type":"number"},{"name":"event","$ref":"TrackingUpdate"}]},{"name":"trackingComplete","description":"Dispatched after `stopTracking` command.","parameters":[{"name":"timestamp","type":"number"}]}]},{"domain":"ApplicationCache","debuggableTypes":["page","web-page"],"targetTypes":["page"],"types":[{"id":"ApplicationCacheResource","type":"object","description":"Detailed application cache resource information.","properties":[{"name":"url","type":"string","description":"Resource url."},{"name":"size","type":"integer","description":"Resource size."},{"name":"type","type":"string","description":"Resource type."}]},{"id":"ApplicationCache","type":"object","description":"Detailed application cache information.","properties":[{"name":"manifestURL","type":"string","description":"Manifest URL."},{"name":"size","type":"number","description":"Application cache size."},{"name":"creationTime","type":"number","description":"Application cache creation time."},{"name":"updateTime","type":"number","description":"Application cache update time."},{"name":"resources","type":"array","items":{"$ref":"ApplicationCacheResource"},"description":"Application cache resources."}]},{"id":"FrameWithManifest","type":"object","description":"Frame identifier - manifest URL pair.","properties":[{"name":"frameId","$ref":"Network.FrameId","description":"Frame identifier."},{"name":"manifestURL","type":"string","description":"Manifest URL."},{"name":"status","type":"integer","description":"Application cache status."}]}],"commands":[{"name":"getFramesWithManifests","description":"Returns array of frame identifiers with manifest urls for each frame containing a document associated with some application cache.","returns":[{"name":"frameIds","type":"array","items":{"$ref":"FrameWithManifest"},"description":"Array of frame identifiers with manifest urls for each frame containing a document associated with some application cache."}]},{"name":"enable","description":"Enables application cache domain notifications."},{"name":"disable","description":"Disable application cache domain notifications."},{"name":"getManifestForFrame","description":"Returns manifest URL for document in the given frame.","parameters":[{"name":"frameId","$ref":"Network.FrameId","description":"Identifier of the frame containing document whose manifest is retrieved."}],"returns":[{"name":"manifestURL","type":"string","description":"Manifest URL for document in the given frame."}]},{"name":"getApplicationCacheForFrame","description":"Returns relevant application cache data for the document in given frame.","parameters":[{"name":"frameId","$ref":"Network.FrameId","description":"Identifier of the frame containing document whose application cache is retrieved."}],"returns":[{"name":"applicationCache","$ref":"ApplicationCache","description":"Relevant application cache data for the document in given frame."}]}],"events":[{"name":"applicationCacheStatusUpdated","parameters":[{"name":"frameId","$ref":"Network.FrameId","description":"Identifier of the frame containing document whose application cache updated status."},{"name":"manifestURL","type":"string","description":"Manifest URL."},{"name":"status","type":"integer","description":"Updated application cache status."}]},{"name":"networkStateUpdated","parameters":[{"name":"isNowOnline","type":"boolean"}]}]},{"domain":"Audit","description":"","version":4,"debuggableTypes":["itml","javascript","page","service-worker","web-page"],"targetTypes":["itml","javascript","page","service-worker","worker"],"commands":[{"name":"setup","description":"Creates the `WebInspectorAudit` object that is passed to run. Must call teardown before calling setup more than once.","parameters":[{"name":"contextId","$ref":"Runtime.ExecutionContextId","optional":true,"description":"Specifies in which isolated context to run the test. Each content script lives in an isolated context and this parameter may be used to specify one of those contexts. If the parameter is omitted or 0 the evaluation will be performed in the context of the inspected page."}]},{"name":"run","description":"Parses and evaluates the given test string and sends back the result. Returned values are saved to the \"audit\" object group. Call setup before and teardown after if the `WebInspectorAudit` object should be passed into the test.","parameters":[{"name":"test","type":"string","description":"Test string to parse and evaluate."},{"name":"contextId","$ref":"Runtime.ExecutionContextId","optional":true,"description":"Specifies in which isolated context to run the test. Each content script lives in an isolated context and this parameter may be used to specify one of those contexts. If the parameter is omitted or 0 the evaluation will be performed in the context of the inspected page."}],"returns":[{"name":"result","$ref":"Runtime.RemoteObject","description":"Evaluation result."},{"name":"wasThrown","type":"boolean","optional":true,"description":"True if the result was thrown during the evaluation."}]},{"name":"teardown","description":"Destroys the `WebInspectorAudit` object that is passed to run. Must call setup before calling teardown."}]},{"domain":"Browser","description":"The Browser domain contains commands and events related to getting information about the browser ","debuggableTypes":["web-page"],"targetTypes":["web-page"],"types":[{"id":"ExtensionId","type":"string","description":"Unique extension identifier."},{"id":"Extension","type":"object","description":"Information about an extension.","properties":[{"name":"extensionId","$ref":"ExtensionId","description":"Extension identifier."},{"name":"name","type":"string","description":"The display name for the extension."}]}],"commands":[{"name":"enable","description":"Enables Browser domain events."},{"name":"disable","description":"Disables Browser domain events."}],"events":[{"name":"extensionsEnabled","parameters":[{"name":"extensions","type":"array","items":{"$ref":"Extension"},"description":"Information about the enabled extensions."}]},{"name":"extensionsDisabled","parameters":[{"name":"extensionIds","type":"array","items":{"$ref":"ExtensionId"},"description":"Disabled extension identifiers."}]}]},{"domain":"Canvas","description":"Canvas domain allows tracking of canvases that have an associated graphics context. Tracks canvases in the DOM and CSS canvases created with -webkit-canvas.","debuggableTypes":["page","web-page"],"targetTypes":["page","worker"],"types":[{"id":"CanvasId","type":"string","description":"Unique canvas identifier."},{"id":"ProgramId","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","type":"string","description":"Unique shader program identifier."},{"id":"ColorSpace","type":"string","enum":["srgb","display-p3"]},{"id":"ContextType","type":"string","enum":["canvas-2d","offscreen-canvas-2d","bitmaprenderer","offscreen-bitmaprenderer","webgl","offscreen-webgl","webgl2","offscreen-webgl2"],"description":"The type of rendering context backing the canvas element."},{"id":"ProgramType","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","type":"string","enum":["compute","render"]},{"id":"ShaderType","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","type":"string","enum":["compute","fragment","vertex"]},{"id":"ContextAttributes","type":"object","description":"Drawing surface attributes.","properties":[{"name":"alpha","type":"boolean","optional":true,"description":"WebGL, WebGL2, ImageBitmapRenderingContext"},{"name":"colorSpace","$ref":"ColorSpace","optional":true,"description":"2D"},{"name":"desynchronized","type":"boolean","optional":true,"description":"2D"},{"name":"depth","type":"boolean","optional":true,"description":"WebGL, WebGL2"},{"name":"stencil","type":"boolean","optional":true,"description":"WebGL, WebGL2"},{"name":"antialias","type":"boolean","optional":true,"description":"WebGL, WebGL2"},{"name":"premultipliedAlpha","type":"boolean","optional":true,"description":"WebGL, WebGL2"},{"name":"preserveDrawingBuffer","type":"boolean","optional":true,"description":"WebGL, WebGL2"},{"name":"failIfMajorPerformanceCaveat","type":"boolean","optional":true,"description":"WebGL, WebGL2"},{"name":"powerPreference","type":"string","optional":true,"description":"WebGL, WebGL2"}]},{"id":"Canvas","type":"object","description":"Information about a canvas for which a rendering context has been created.","properties":[{"name":"canvasId","$ref":"CanvasId","description":"Canvas identifier."},{"name":"contextType","$ref":"ContextType","description":"The type of rendering context backing the canvas."},{"name":"width","type":"number","description":"Width of the canvas in pixels."},{"name":"height","type":"number","description":"Height of the canvas in pixels."},{"name":"nodeId","$ref":"DOM.NodeId","optional":true,"description":"The corresponding DOM node id."},{"name":"cssCanvasName","type":"string","optional":true,"description":"The CSS canvas identifier, for canvases created with document.getCSSCanvasContext."},{"name":"contextAttributes","$ref":"ContextAttributes","optional":true,"description":"Context attributes for rendering contexts."},{"name":"memoryCost","type":"number","optional":true,"description":"Memory usage of the canvas in bytes."},{"name":"stackTrace","$ref":"Console.StackTrace","optional":true,"description":"Backtrace that was captured when this canvas context was created."}]},{"id":"ShaderProgram","description":"Information about a WebGL/WebGL2 shader program.","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","type":"object","properties":[{"name":"programId","$ref":"ProgramId"},{"name":"programType","$ref":"ProgramType"},{"name":"canvasId","$ref":"CanvasId"}]}],"commands":[{"name":"enable","description":"Enables Canvas domain events."},{"name":"disable","description":"Disables Canvas domain events."},{"name":"requestNode","description":"Gets the NodeId for the canvas node with the given CanvasId.","targetTypes":["page"],"parameters":[{"name":"canvasId","$ref":"CanvasId","description":"Canvas identifier."}],"returns":[{"name":"nodeId","$ref":"DOM.NodeId","description":"Node identifier for given canvas."}]},{"name":"requestContent","description":"Gets the data for the canvas node with the given CanvasId.","parameters":[{"name":"canvasId","$ref":"CanvasId","description":"Canvas identifier."}],"returns":[{"name":"content","type":"string","description":"Base64-encoded data of the canvas' contents."}]},{"name":"requestClientNodes","description":"Gets all -webkit-canvas nodes or active HTMLCanvasElement for a WebGPUDevice.","targetTypes":["page"],"parameters":[{"name":"canvasId","$ref":"CanvasId"}],"returns":[{"name":"clientNodeIds","type":"array","items":{"$ref":"DOM.NodeId"}}]},{"name":"resolveContext","description":"Resolves JavaScript canvas/device context object for given canvasId.","parameters":[{"name":"canvasId","$ref":"CanvasId","description":"Canvas identifier."},{"name":"objectGroup","type":"string","optional":true,"description":"Symbolic group name that can be used to release multiple objects."}],"returns":[{"name":"object","$ref":"Runtime.RemoteObject","description":"JavaScript object wrapper for given canvas context."}]},{"name":"setRecordingAutoCaptureFrameCount","description":"Tells the backend to record `count` frames whenever a new context is created.","parameters":[{"name":"count","type":"integer","description":"Number of frames to record (0 means don't record anything)."}]},{"name":"startRecording","description":"Record the next frame, or up to the given number of bytes of data, for the given canvas.","parameters":[{"name":"canvasId","$ref":"CanvasId"},{"name":"frameCount","type":"integer","optional":true,"description":"Number of frames to record (unlimited when not specified)."},{"name":"memoryLimit","type":"integer","optional":true,"description":"Memory limit of recorded data (100MB when not specified)."}]},{"name":"stopRecording","description":"Stop recording the given canvas.","parameters":[{"name":"canvasId","$ref":"CanvasId"}]},{"name":"requestShaderSource","description":"Requests the source of the shader of the given type from the program with the given id.","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","parameters":[{"name":"programId","$ref":"ProgramId"},{"name":"shaderType","$ref":"ShaderType"}],"returns":[{"name":"source","type":"string"}]},{"name":"updateShader","description":"Compiles and links the shader with identifier and type with the given source code.","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","parameters":[{"name":"programId","$ref":"ProgramId"},{"name":"shaderType","$ref":"ShaderType"},{"name":"source","type":"string"}]},{"name":"setShaderProgramDisabled","description":"Enable/disable the visibility of the given shader program.","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","parameters":[{"name":"programId","$ref":"ProgramId"},{"name":"disabled","type":"boolean"}]},{"name":"setShaderProgramHighlighted","description":"Enable/disable highlighting of the given shader program.","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","parameters":[{"name":"programId","$ref":"ProgramId"},{"name":"highlighted","type":"boolean"}]}],"events":[{"name":"canvasAdded","parameters":[{"name":"canvas","$ref":"Canvas","description":"Canvas object."}]},{"name":"canvasRemoved","parameters":[{"name":"canvasId","$ref":"CanvasId","description":"Removed canvas identifier."}]},{"name":"canvasSizeChanged","parameters":[{"name":"canvasId","$ref":"CanvasId","description":"Identifier of canvas that changed."},{"name":"width","type":"number","description":"Width of the canvas in pixels."},{"name":"height","type":"number","description":"Height of the canvas in pixels."}]},{"name":"canvasMemoryChanged","parameters":[{"name":"canvasId","$ref":"CanvasId","description":"Identifier of canvas that changed."},{"name":"memoryCost","type":"number","description":"New memory cost value for the canvas in bytes."}]},{"name":"extensionEnabled","parameters":[{"name":"canvasId","$ref":"CanvasId"},{"name":"extension","type":"string","description":"Name of the extension that was enabled."}]},{"name":"clientNodesChanged","targetTypes":["page"],"parameters":[{"name":"canvasId","$ref":"CanvasId","description":"Identifier of canvas that changed."}]},{"name":"recordingStarted","parameters":[{"name":"canvasId","$ref":"CanvasId"},{"name":"initiator","$ref":"Recording.Initiator"}]},{"name":"recordingProgress","parameters":[{"name":"canvasId","$ref":"CanvasId"},{"name":"frames","type":"array","items":{"$ref":"Recording.Frame"}},{"name":"bufferUsed","type":"integer","description":"Total memory size in bytes of all data recorded since the recording began."}]},{"name":"recordingFinished","parameters":[{"name":"canvasId","$ref":"CanvasId"},{"name":"recording","$ref":"Recording.Recording","optional":true}]},{"name":"programCreated","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","parameters":[{"name":"shaderProgram","$ref":"ShaderProgram"}]},{"name":"programDeleted","condition":"defined(ENABLE_WEBGL) && ENABLE_WEBGL","parameters":[{"name":"programId","$ref":"ProgramId"}]}]},{"domain":"Console","description":"Console domain defines methods and events for interaction with the JavaScript console. Console collects messages created by means of the JavaScript Console API. One needs to enable this domain using enable command in order to start receiving the console messages. Browser collects messages issued while console domain is not enabled as well and reports them using messageAdded notification upon enabling.","debuggableTypes":["itml","javascript","page","service-worker","web-page"],"targetTypes":["itml","javascript","page","service-worker","worker"],"types":[{"id":"ChannelSource","type":"string","enum":["xml","javascript","network","console-api","storage","appcache","rendering","css","security","content-blocker","media","mediasource","webrtc","itp-debug","private-click-measurement","payment-request","other"],"description":"Channels for different types of log messages."},{"id":"ChannelLevel","type":"string","enum":["off","basic","verbose"],"description":"Level of logging."},{"id":"ClearReason","type":"string","enum":["console-api","main-frame-navigation"],"description":"The reason the console is being cleared."},{"id":"Channel","description":"Logging channel.","type":"object","properties":[{"name":"source","$ref":"ChannelSource"},{"name":"level","$ref":"ChannelLevel"}]},{"id":"ConsoleMessage","type":"object","description":"Console message.","properties":[{"name":"source","$ref":"ChannelSource"},{"name":"level","type":"string","enum":["log","info","warning","error","debug"],"description":"Message severity."},{"name":"text","type":"string","description":"Message text."},{"name":"type","type":"string","optional":true,"enum":["log","dir","dirxml","table","trace","clear","startGroup","startGroupCollapsed","endGroup","assert","timing","profile","profileEnd","image"],"description":"Console message type."},{"name":"url","type":"string","optional":true,"description":"URL of the message origin."},{"name":"line","type":"integer","optional":true,"description":"Line number in the resource that generated this message."},{"name":"column","type":"integer","optional":true,"description":"Column number on the line in the resource that generated this message."},{"name":"repeatCount","type":"integer","optional":true,"description":"Repeat count for repeated messages."},{"name":"parameters","type":"array","items":{"$ref":"Runtime.RemoteObject"},"optional":true,"description":"Message parameters in case of the formatted message."},{"name":"stackTrace","$ref":"StackTrace","optional":true,"description":"JavaScript stack trace for assertions and error messages."},{"name":"networkRequestId","$ref":"Network.RequestId","optional":true,"description":"Identifier of the network request associated with this message."},{"name":"timestamp","type":"number","optional":true,"description":"Time when this message was added. Currently only used when an expensive operation happens to make sure that the frontend can account for it."}]},{"id":"CallFrame","type":"object","description":"Stack entry for console errors and assertions.","properties":[{"name":"functionName","type":"string","description":"JavaScript function name."},{"name":"url","type":"string","description":"JavaScript script name or url."},{"name":"scriptId","$ref":"Debugger.ScriptId","description":"Script identifier."},{"name":"lineNumber","type":"integer","description":"JavaScript script line number."},{"name":"columnNumber","type":"integer","description":"JavaScript script column number."}]},{"id":"StackTrace","description":"Call frames for async function calls, console assertions, and error messages.","type":"object","properties":[{"name":"callFrames","type":"array","items":{"$ref":"CallFrame"}},{"name":"topCallFrameIsBoundary","type":"boolean","optional":true,"description":"Whether the first item in callFrames is the native function that scheduled the asynchronous operation (e.g. setTimeout)."},{"name":"truncated","type":"boolean","optional":true,"description":"Whether one or more frames have been truncated from the bottom of the stack."},{"name":"parentStackTrace","$ref":"StackTrace","optional":true,"description":"Parent StackTrace."}]}],"commands":[{"name":"enable","description":"Enables console domain, sends the messages collected so far to the client by means of the messageAdded notification."},{"name":"disable","description":"Disables console domain, prevents further console messages from being reported to the client."},{"name":"clearMessages","description":"Clears console messages collected in the browser."},{"name":"getLoggingChannels","description":"List of the different message sources that are non-default logging channels.","returns":[{"name":"channels","type":"array","items":{"$ref":"Channel"},"description":"Logging channels."}]},{"name":"setLoggingChannelLevel","description":"Modify the level of a channel.","parameters":[{"name":"source","$ref":"ChannelSource","description":"Logging channel to modify."},{"name":"level","$ref":"ChannelLevel","description":"New level."}]}],"events":[{"name":"messageAdded","description":"Issued when new console message is added.","parameters":[{"name":"message","$ref":"ConsoleMessage","description":"Console message that has been added."}]},{"name":"messageRepeatCountUpdated","description":"Issued when subsequent message(s) are equal to the previous one(s).","parameters":[{"name":"count","type":"integer","description":"New repeat count value."},{"name":"timestamp","type":"number","optional":true,"description":"Timestamp of the latest message."}]},{"name":"messagesCleared","description":"Issued when console is cleared. This happens either upon clearMessages command or after page navigation.","parameters":[{"name":"reason","$ref":"ClearReason","description":"The reason the console is being cleared."}]},{"name":"heapSnapshot","description":"Issued from console.takeHeapSnapshot.","parameters":[{"name":"timestamp","type":"number"},{"name":"snapshotData","$ref":"Heap.HeapSnapshotData","description":"Snapshot at the end of tracking."},{"name":"title","type":"string","optional":true,"description":"Optional title provided to console.takeHeapSnapshot."}]}]},{"domain":"CPUProfiler","description":"CPUProfiler domain exposes cpu usage tracking.","condition":"defined(ENABLE_RESOURCE_USAGE) && ENABLE_RESOURCE_USAGE","debuggableTypes":["page","web-page"],"targetTypes":["page"],"types":[{"id":"ThreadInfo","description":"CPU usage for an individual thread.","type":"object","properties":[{"name":"name","type":"string","description":"Some thread identification information."},{"name":"usage","type":"number","description":"CPU usage for this thread. This should not exceed 100% for an individual thread."},{"name":"type","type":"string","enum":["main","webkit"],"optional":true,"description":"Type of thread. There should be a single main thread."},{"name":"targetId","type":"string","optional":true,"description":"A thread may be associated with a target, such as a Worker, in the process."}]},{"id":"Event","type":"object","properties":[{"name":"timestamp","type":"number"},{"name":"usage","type":"number","description":"Percent of total cpu usage. If there are multiple cores the usage may be greater than 100%."},{"name":"threads","type":"array","items":{"$ref":"ThreadInfo"},"optional":true,"description":"Per-thread CPU usage information. Does not include the main thread."}]}],"commands":[{"name":"startTracking","description":"Start tracking cpu usage."},{"name":"stopTracking","description":"Stop tracking cpu usage. This will produce a `trackingComplete` event."}],"events":[{"name":"trackingStart","description":"Tracking started.","parameters":[{"name":"timestamp","type":"number"}]},{"name":"trackingUpdate","description":"Periodic tracking updates with event data.","parameters":[{"name":"event","$ref":"Event"}]},{"name":"trackingComplete","description":"Tracking stopped.","parameters":[{"name":"timestamp","type":"number"}]}]},{"domain":"CSS","description":"This domain exposes CSS read/write operations. All CSS objects, like stylesheets, rules, and styles, have an associated id used in subsequent operations on the related object. Each object type has a specific id structure, and those are not interchangeable between objects of different kinds. CSS objects can be loaded using the get*ForNode() calls (which accept a DOM node id). Alternatively, a client can discover all the existing stylesheets with the getAllStyleSheets() method and subsequently load the required stylesheet contents using the getStyleSheet[Text]() methods.","debuggableTypes":["itml","page","web-page"],"targetTypes":["itml","page"],"types":[{"id":"StyleSheetId","type":"string"},{"id":"CSSStyleId","type":"object","description":"This object identifies a CSS style in a unique way.","properties":[{"name":"styleSheetId","$ref":"StyleSheetId","description":"Enclosing stylesheet identifier."},{"name":"ordinal","type":"integer","description":"The style ordinal within the stylesheet."}]},{"id":"StyleSheetOrigin","type":"string","enum":["user","user-agent","author","inspector"],"description":"Stylesheet type: \"user\" for user stylesheets, \"user-agent\" for user-agent stylesheets, \"inspector\" for stylesheets created by the inspector (i.e. those holding the \"via inspector\" rules), \"regular\" for regular stylesheets."},{"id":"CSSRuleId","type":"object","description":"This object identifies a CSS rule in a unique way.","properties":[{"name":"styleSheetId","$ref":"StyleSheetId","description":"Enclosing stylesheet identifier."},{"name":"ordinal","type":"integer","description":"The rule ordinal within the stylesheet."}]},{"id":"PseudoId","type":"string","enum":["first-line","first-letter","grammar-error","highlight","marker","before","after","selection","backdrop","spelling-error","view-transition","view-transition-group","view-transition-image-pair","view-transition-old","view-transition-new","-webkit-scrollbar","-webkit-resizer","-webkit-scrollbar-thumb","-webkit-scrollbar-button","-webkit-scrollbar-track","-webkit-scrollbar-track-piece","-webkit-scrollbar-corner"],"description":"Pseudo-style identifier (see enum PseudoId in RenderStyleConstants.h)."},{"id":"ForceablePseudoClass","type":"string","enum":["active","focus","focus-visible","focus-within","hover","target","visited"],"description":"Pseudo-style identifier (see enum PseudoId in RenderStyleConstants.h)."},{"id":"PseudoIdMatches","type":"object","description":"CSS rule collection for a single pseudo style.","properties":[{"name":"pseudoId","$ref":"PseudoId"},{"name":"matches","type":"array","items":{"$ref":"RuleMatch"},"description":"Matches of CSS rules applicable to the pseudo style."}]},{"id":"InheritedStyleEntry","type":"object","description":"CSS rule collection for a single pseudo style.","properties":[{"name":"inlineStyle","$ref":"CSSStyle","optional":true,"description":"The ancestor node's inline style, if any, in the style inheritance chain."},{"name":"matchedCSSRules","type":"array","items":{"$ref":"RuleMatch"},"description":"Matches of CSS rules matching the ancestor node in the style inheritance chain."}]},{"id":"RuleMatch","type":"object","description":"Match data for a CSS rule.","properties":[{"name":"rule","$ref":"CSSRule","description":"CSS rule in the match."},{"name":"matchingSelectors","type":"array","items":{"type":"integer"},"description":"Matching selector indices in the rule's selectorList selectors (0-based)."}]},{"id":"CSSSelector","type":"object","description":"CSS selector.","properties":[{"name":"text","type":"string","description":"Canonicalized selector text."},{"name":"specificity","optional":true,"type":"array","items":{"type":"integer"},"description":"Specificity (a, b, c) tuple. Included if the selector is sent in response to CSS.getMatchedStylesForNode which provides a context element."},{"name":"dynamic","optional":true,"type":"boolean","description":"Whether or not the specificity can be dynamic. Included if the selector is sent in response to CSS.getMatchedStylesForNode which provides a context element."}]},{"id":"SelectorList","type":"object","description":"Selector list data.","properties":[{"name":"selectors","type":"array","items":{"$ref":"CSSSelector"},"description":"Selectors in the list."},{"name":"text","type":"string","description":"Rule selector text."},{"name":"range","$ref":"SourceRange","optional":true,"description":"Rule selector range in the underlying resource (if available)."}]},{"id":"CSSStyleAttribute","type":"object","description":"CSS style information for a DOM style attribute.","properties":[{"name":"name","type":"string","description":"DOM attribute name (e.g. \"width\")."},{"name":"style","$ref":"CSSStyle","description":"CSS style generated by the respective DOM attribute."}]},{"id":"CSSStyleSheetHeader","type":"object","description":"CSS stylesheet meta-information.","properties":[{"name":"styleSheetId","$ref":"StyleSheetId","description":"The stylesheet identifier."},{"name":"frameId","$ref":"Network.FrameId","description":"Owner frame identifier."},{"name":"sourceURL","type":"string","description":"Stylesheet resource URL."},{"name":"origin","$ref":"StyleSheetOrigin","description":"Stylesheet origin."},{"name":"title","type":"string","description":"Stylesheet title."},{"name":"disabled","type":"boolean","description":"Denotes whether the stylesheet is disabled."},{"name":"isInline","type":"boolean","description":"Whether this stylesheet is a