import { type default } from "https://deno.land/x/pptr@1.2.0/vendor/devtools-protocol/protocol-mapping.d.ts";
const { Commands } = default;
Properties
Disables console domain, prevents further console messages from being reported to the client.
Enables console domain, sends the messages collected so far to the client by means of the
messageAdded
notification.
Continues execution until specific location is reached.
Enables debugger for the given page. Clients should not assume that the debugging has been enabled until the result for this command is received.
Evaluates expression on a given call frame.
Execute a Wasm Evaluator module on a given call frame.
Returns possible locations for breakpoint. scriptId in start and end range locations should be the same.
Returns source for the script with given id.
This command is deprecated. Use getScriptSource instead.
Returns stack trace with given stackTraceId
.
Removes JavaScript breakpoint.
Restarts particular call frame from the beginning.
Resumes JavaScript execution.
Searches for given string in script content.
Enables or disables async call stacks tracking.
Replace previous blackbox patterns with passed ones. Forces backend to skip stepping/pausing in scripts with url matching one of the patterns. VM will try to leave blackboxed script by performing 'step in' several times, finally resorting to 'step out' if unsuccessful.
Makes backend skip steps in the script in blackboxed ranges. VM will try leave blacklisted scripts by performing 'step in' several times, finally resorting to 'step out' if unsuccessful. Positions array contains positions where blackbox state is changed. First interval isn't blackboxed. Array should be sorted.
Sets JavaScript breakpoint at a given location.
Sets instrumentation breakpoint.
Sets JavaScript breakpoint at given location specified either by URL or URL regex. Once this
command is issued, all existing parsed scripts will have breakpoints resolved and returned in
locations
property. Further matching script parsing will result in subsequent
breakpointResolved
events issued. This logical breakpoint will survive page reloads.
Sets JavaScript breakpoint before each call to the given function. If another function was created from the same source as a given one, calling it will also trigger the breakpoint.
Activates / deactivates all breakpoints on the page.
Defines pause on exceptions state. Can be set to stop on all exceptions, uncaught exceptions or
no exceptions. Initial pause on exceptions state is none
.
Changes return value in top frame. Available only at return break position.
Edits JavaScript source live.
Makes page not interrupt on any pauses (breakpoint, exception, dom exception etc).
Changes value of variable in a callframe. Object-based scopes are not supported and must be mutated manually.
Steps into the function call.
Steps over the statement.
Enables console to refer to the node with given id via $x (see Command Line API for more details $x functions).
Collect coverage data for the current isolate. The coverage data may be incomplete due to garbage collection.
Changes CPU profiler sampling interval. Must be called before CPU profiles recording started.
Enable precise code coverage. Coverage data for JavaScript executed before enabling precise code coverage may be incomplete. Enabling prevents running optimized code and resets execution counters.
Disable precise code coverage. Disabling releases unnecessary execution count records and allows executing optimized code.
Disable type profile. Disabling releases type profile data collected so far.
Collect coverage data for the current isolate, and resets execution counters. Precise code coverage needs to have started.
Collect type profile.
Retrieve counters.
Enable run time call stats collection.
Disable run time call stats collection.
Retrieve run time call stats.
Add handler to promise with given promise object id.
Calls function with given declaration on the given object. Object group of the result is inherited from the target object.
Compiles expression.
Disables reporting of execution contexts creation.
Discards collected exceptions and console API calls.
Enables reporting of execution contexts creation by means of executionContextCreated
event.
When the reporting gets enabled the event will be sent immediately for each existing execution
context.
Evaluates expression on global object.
Returns the isolate id.
Returns the JavaScript heap usage. It is the total usage of the corresponding isolate not scoped to a particular Runtime.
Returns properties of a given object. Object group of the result is inherited from the target object.
Returns all let, const and class variables from global scope.
Releases remote object with given id.
Releases all remote objects that belong to a given group.
Tells inspected instance to run if it was waiting for debugger to attach.
Runs script with given id in a given context.
Enables or disables async call stacks tracking.
Terminate current or next JavaScript execution. Will cancel the termination when the outer-most script execution ends.
If executionContextId is empty, adds binding with the given name on the global objects of all inspected contexts, including those created later, bindings survive reloads. If executionContextId is specified, adds binding only on global object of given execution context. Binding function takes exactly one argument, this argument should be string, in case of any other input, function throws an exception. Each binding function call produces Runtime.bindingCalled notification.
This method does not remove binding function from global object but unsubscribes current runtime agent from Runtime.bindingCalled notifications.
Returns supported domains.
Enables the accessibility domain which causes AXNodeId
s to remain consistent between method calls.
This turns on accessibility for the page, which can impact performance until accessibility is disabled.
Fetches the accessibility node and partial accessibility tree for this DOM node, if it exists.
Fetches the entire accessibility tree
Query a DOM node's accessibility subtree for accessible name and role.
This command computes the name and role for all nodes in the subtree, including those that are
ignored for accessibility, and returns those that mactch the specified name and role. If no DOM
node is specified, or the DOM node does not exist, the command returns an error. If neither
accessibleName
or role
is specified, it returns all the accessibility nodes in the subtree.
Returns the current time of the an animation.
Gets the playback rate of the document timeline.
Releases a set of animations to no longer be manipulated.
Gets the remote object of the Animation.
Seek a set of animations to a particular time within each animation.
Sets the paused state of a set of animations.
Sets the playback rate of the document timeline.
Sets the timing of an animation node.
Enables application cache domain notifications.
Returns relevant application cache data for the document in given frame.
Returns array of frame identifiers with manifest urls for each frame containing a document associated with some application cache.
Returns manifest URL for document in the given frame.
Returns the response body and size if it were re-encoded with the specified settings. Only applies to images.
Disables issues domain, prevents further issues from being reported to the client.
Enables issues domain, sends the issues collected so far to the client by means of the
issueAdded
event.
Enables event updates for the service.
Disables event updates for the service.
Set the recording state for the service.
Clears all stored data for the service.
Set permission settings for given origin.
Grant specific permissions to the given origin and reject all others.
Reset all permission management for all origins.
Set the behavior when downloading a file.
Returns version information.
Returns the command line switches for the browser process if, and only if --enable-automation is on the commandline.
Get Chrome histograms.
Get a Chrome histogram by name.
Get position and size of the browser window.
Get the browser window that contains the devtools target.
Set position and/or size of the browser window.
Set dock tile details, platform-specific.
Inserts a new rule with the given ruleText
in a stylesheet with given styleSheetId
, at the
position specified by location
.
Returns all class names from specified stylesheet.
Creates a new special "via-inspector" stylesheet in the frame with given frameId
.
Enables the CSS agent for the given page. Clients should not assume that the CSS agent has been enabled until the result of this command is received.
Ensures that the given node will have specified pseudo-classes whenever its style is computed by the browser.
Returns the computed style for a DOM node identified by nodeId
.
Returns the styles defined inline (explicitly in the "style" attribute and implicitly, using DOM
attributes) for a DOM node identified by nodeId
.
Returns requested styles for a DOM node identified by nodeId
.
Returns all media queries parsed by the rendering engine.
Requests information about platform fonts which we used to render child TextNodes in the given node.
Returns the current textual content for a stylesheet.
Starts tracking the given computed styles for updates. The specified array of properties replaces the one previously specified. Pass empty array to disable tracking. Use takeComputedStyleUpdates to retrieve the list of nodes that had properties modified. The changes to computed style properties are only tracked for nodes pushed to the front-end by the DOM agent. If no changes to the tracked properties occur after the node has been pushed to the front-end, no updates will be issued for the node.
Polls the next batch of computed style updates.
Find a rule with the given active property for the given node and set the new value for this property
Modifies the keyframe rule key text.
Modifies the rule selector.
Modifies the rule selector.
Sets the new stylesheet text.
Applies specified style edits one after another in the given order.
Stop tracking rule usage and return the list of rules that were used since last call to
takeCoverageDelta
(or since start of coverage instrumentation)
Obtain list of rules that became used since last call to this method (or since start of coverage instrumentation)
Enables/disables rendering of local CSS fonts (enabled by default).
Deletes a cache.
Deletes a cache entry.
Requests cache names.
Fetches cache entry.
Requests data from cache.
Starts observing for sinks that can be used for tab mirroring, and if set, sinks compatible with |presentationUrl| as well. When sinks are found, a |sinksUpdated| event is fired. Also starts observing for issue messages. When an issue is added or removed, an |issueUpdated| event is fired.
Sets a sink to be used when the web page requests the browser to choose a sink via Presentation API, Remote Playback API, or Cast SDK.
Starts mirroring the tab to the sink.
Stops the active Cast session on the sink.
Collects class names for the node with given id and all of it's child nodes.
Creates a deep copy of the specified node and places it into the target container before the given anchor.
Describes node given its id, does not require domain to be enabled. Does not start tracking any objects, can be used for automation.
Scrolls the specified rect of the given node into view if not already visible. Note: exactly one between nodeId, backendNodeId and objectId should be passed to identify the node.
Discards search results from the session with the given id. getSearchResults
should no longer
be called for that search.
Returns attributes for the specified node.
Returns boxes for the given node.
Returns quads that describe node position on the page. This method might return multiple quads for inline nodes.
Returns the root DOM node (and optionally the subtree) to the caller.
Returns the root DOM node (and optionally the subtree) to the caller. Deprecated, as it is not designed to work well with the rest of the DOM agent. Use DOMSnapshot.captureSnapshot instead.
Finds nodes with a given computed style in a subtree.
Returns node id at given location. Depending on whether DOM domain is enabled, nodeId is either returned or not.
Returns node's HTML markup.
Returns the id of the nearest ancestor that is a relayout boundary.
Returns search results from given fromIndex
to given toIndex
from the search with the given
identifier.
Moves node into the new container, places it before the given anchor.
Searches for a given string in the DOM tree. Use getSearchResults
to access search results or
cancelSearch
to end this search session.
Requests that the node is sent to the caller given its path. // FIXME, use XPath
Requests that a batch of nodes is sent to the caller given their backend node ids.
Executes querySelector
on a given node.
Executes querySelectorAll
on a given node.
Removes attribute with given name from an element with given id.
Removes node with given id.
Requests that children of the node with given id are returned to the caller in form of
setChildNodes
events where not only immediate children are retrieved, but all children down to
the specified depth.
Requests that the node is sent to the caller given the JavaScript node object reference. All
nodes that form the path from the node to the root are also sent to the client as a series of
setChildNodes
notifications.
Resolves the JavaScript node object for a given NodeId or BackendNodeId.
Sets attribute for an element with given id.
Sets attributes on element with given id. This method is useful when user edits some existing attribute value and types in several attribute name/value pairs.
Sets files for the given file input element.
Sets if stack traces should be captured for Nodes. See Node.getNodeStackTraces
. Default is disabled.
Gets stack traces associated with a Node. As of now, only provides stack trace for Node creation.
Returns file information for the given File wrapper.
Enables console to refer to the node with given id via $x (see Command Line API for more details $x functions).
Sets node name for a node with given id.
Sets node value for a node with given id.
Sets node HTML markup, returns new node id.
Returns iframe node that owns iframe with the given domain.
Returns event listeners of the given object.
Removes DOM breakpoint that was set using setDOMBreakpoint
.
Removes breakpoint on particular DOM event.
Removes breakpoint on particular native event.
Removes breakpoint from XMLHttpRequest.
Sets breakpoint on particular operation with DOM.
Sets breakpoint on particular DOM event.
Sets breakpoint on particular native event.
Sets breakpoint on XMLHttpRequest.
Disables DOM snapshot agent for the given page.
Enables DOM snapshot agent for the given page.
Returns a document snapshot, including the full DOM tree of the root node (including iframes, template contents, and imported documents) in a flattened array, as well as layout and white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is flattened.
Returns a document snapshot, including the full DOM tree of the root node (including iframes, template contents, and imported documents) in a flattened array, as well as layout and white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is flattened.
Disables storage tracking, prevents storage events from being sent to the client.
Enables storage tracking, storage events will now be delivered to the client.
Disables database tracking, prevents database events from being sent to the client.
Enables database tracking, database events will now be delivered to the client.
Clears the overridden Device Orientation.
Overrides the Device Orientation.
Tells whether emulation is supported.
Clears the overriden device metrics.
Clears the overriden Geolocation Position and Error.
Requests that page scale factor is reset to initial values.
Enables or disables simulating a focused and active page.
Enables CPU throttling to emulate slow CPUs.
Sets or clears an override of the default background color of the frame. This override is used if the content does not specify one.
Overrides the values of device screen dimensions (window.screen.width, window.screen.height, window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media query results).
Emulates the given media type or media feature for CSS media queries.
Emulates the given vision deficiency.
Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position unavailable.
Overrides the Idle state.
Sets a specified page scale factor.
Switches script execution in the page.
Enables touch on platforms which do not support them.
Turns on virtual time for all frames (replacing real-time with a synthetic time source) and sets the current virtual time policy. Note this supersedes any previous time budget.
Overrides default host system locale with the specified one.
Overrides default host system timezone with the specified one.
Resizes the frame/viewport of the page. Note that this does not affect the frame's container (e.g. browser window). Can be used to produce screenshots of the specified size. Not supported on Android.
Allows overriding user agent with the given string.
Sends a BeginFrame to the target and returns when the frame was completed. Optionally captures a screenshot from the resulting frame. Requires that the target was created with enabled BeginFrameControl. Designed for use with --run-all-compositor-stages-before-draw, see also https://goo.gl/3zHXhB for more background.
Disables headless events for the target.
Enables headless events for the target.
Close the stream, discard any temporary backing storage.
Read a chunk of the stream
Return UUID of Blob object specified by a remote object id.
Clears all entries from an object store.
Deletes a database.
Delete a range of entries from an object store
Requests data from object store or index.
Gets metadata of an object store
Requests database with given name in given frame.
Requests database names for given security origin.
Dispatches a key event to the page.
This method emulates inserting text that doesn't come from a key press, for example an emoji keyboard or an IME.
Dispatches a mouse event to the page.
Dispatches a touch event to the page.
Emulates touch event from the mouse event parameters.
Ignores input events (useful while auditing page).
Synthesizes a pinch gesture over a time period by issuing appropriate touch events.
Synthesizes a scroll gesture over a time period by issuing appropriate touch events.
Synthesizes a tap gesture over a time period by issuing appropriate touch events.
Provides the reasons why the given layer was composited.
Returns the snapshot identifier.
Returns the layer snapshot identifier.
Releases layer snapshot captured by the back-end.
Replays the layer snapshot and returns the resulting bitmap.
Replays the layer snapshot and returns canvas log.
Disables log domain, prevents further log entries from being reported to the client.
Enables log domain, sends the entries collected so far to the client by means of the
entryAdded
notification.
start violation reporting.
Simulate OomIntervention by purging V8 memory.
Enable/disable suppressing memory pressure notifications in all processes.
Simulate a memory pressure notification in all processes.
Start collecting native memory profile.
Retrieve native memory allocations profile collected since renderer process startup.
Retrieve native memory allocations profile collected since browser process startup.
Retrieve native memory allocations profile collected since last
startSampling
call.
Tells whether clearing browser cache is supported.
Tells whether clearing browser cookies is supported.
Tells whether emulation of network conditions is supported.
Response to Network.requestIntercepted which either modifies the request to continue with any modifications, or blocks it, or completes it with the provided response bytes. If a network fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted event will be sent with the same InterceptionId. Deprecated, use Fetch.continueRequest, Fetch.fulfillRequest and Fetch.failRequest instead.
Deletes browser cookies with matching name and url or domain/path pair.
Disables network tracking, prevents network events from being sent to the client.
Activates emulation of network conditions.
Enables network tracking, network events will now be delivered to the client.
Returns all browser cookies. Depending on the backend support, will return detailed cookie
information in the cookies
field.
Returns the DER-encoded certificate.
Returns all browser cookies for the current URL. Depending on the backend support, will return
detailed cookie information in the cookies
field.
Returns content served for the given request.
Returns post data sent with the request. Returns an error when no data was sent with the request.
Returns content served for the given currently intercepted request.
Returns a handle to the stream representing the response body. Note that after this command, the intercepted request can't be continued as is -- you either need to cancel it or to provide the response body. The stream only supports sequential read, IO.read will fail if the position is specified.
This method sends a new XMLHttpRequest which is identical to the original one. The following parameters should be identical: method, url, async, request body, extra headers, withCredentials attribute, user, password.
Searches for given string in response content.
Blocks URLs from loading.
Toggles ignoring of service worker for each request.
Toggles ignoring cache for each request. If true
, cache will not be used.
Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist.
Sets given cookies.
For testing.
Specifies whether to always send extra HTTP headers with the requests from this page.
Specifies whether to sned a debug header to all outgoing requests.
Sets the requests to intercept that match the provided patterns and optionally resource types. Deprecated, please use Fetch.enable instead.
Allows overriding user agent with the given string.
Returns information about the COEP/COOP isolation status.
Fetches the resource and returns the content.
For testing.
For Persistent Grid testing.
For Source Order Viewer testing.
Highlights owner element of the frame with given id.
Highlights DOM node with given id or with the given JavaScript object wrapper. Either nodeId or objectId must be specified.
Highlights given quad. Coordinates are absolute with respect to the main frame viewport.
Highlights given rectangle. Coordinates are absolute with respect to the main frame viewport.
Highlights the source order of the children of the DOM node with given id or with the given JavaScript object wrapper. Either nodeId or objectId must be specified.
Enters the 'inspect' mode. In this mode, elements that user is hovering over are highlighted. Backend then generates 'inspectNodeRequested' event upon element selection.
Highlights owner element of all frames detected to be ads.
Requests that backend shows debug borders on layers
Requests that backend shows the FPS counter
Highlight multiple elements with the CSS Grid overlay.
Requests that backend shows paint rectangles
Requests that backend shows layout shift regions
Requests that backend shows scroll bottleneck rects
Requests that backend shows hit-test borders on layers
Paints viewport size upon main frame resize.
Add a dual screen device hinge
Deprecated, please use addScriptToEvaluateOnNewDocument instead.
Evaluates given script in every frame upon creation (before loading frame's scripts).
Capture page screenshot.
Returns a snapshot of the page as a string. For MHTML format, the serialization includes iframes, shadow DOM, external resources, and element-inline styles.
Clears the overriden device metrics.
Clears the overridden Device Orientation.
Clears the overriden Geolocation Position and Error.
Creates an isolated world for the given frame.
Deletes browser cookie with given name, domain and path.
Returns all browser cookies. Depending on the backend support, will return detailed cookie
information in the cookies
field.
Returns present frame tree structure.
Returns metrics relating to the layouting of the page, such as viewport bounds/scale.
Returns content of the given resource.
Returns present frame / resource tree structure.
Accepts or dismisses a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload).
Print page as PDF.
Reloads given page optionally ignoring the cache.
Deprecated, please use removeScriptToEvaluateOnNewDocument instead.
Removes given script from the list.
Acknowledges that a screencast frame has been received by the frontend.
Searches for given string in resource content.
Enable Chrome's experimental ad filter on all sites.
Enable page Content Security Policy by-passing.
Overrides the values of device screen dimensions (window.screen.width, window.screen.height, window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media query results).
Overrides the Device Orientation.
Set generic font families.
Set default font sizes.
Sets given markup as the document's HTML.
Set the behavior when downloading a file.
Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position unavailable.
Controls whether page will emit lifecycle events.
Toggles mouse event-based touch event emulation.
Starts sending each frame using the screencastFrame
event.
Force the page stop all navigations and pending resource fetches.
Crashes renderer on the IO thread, generates minidumps.
Tries to close page, running its beforeunload hooks, if any.
Tries to update the web lifecycle state of the page. It will transition the page to the given state according to: https://github.com/WICG/web-lifecycle/
Stops sending each frame in the screencastFrame
.
Forces compilation cache to be generated for every subresource script.
Seeds compilation cache for given url. Compilation cache does not survive cross-process navigation.
Generates a report for testing.
Pauses page execution. Can be resumed using generic Runtime.runIfWaitingForDebugger.
Intercept file chooser requests and transfer control to protocol clients.
When file chooser interception is enabled, native file chooser dialog is not shown.
Instead, a protocol event Page.fileChooserOpened
is emitted.
Enable collecting and reporting metrics.
Sets time domain to use for collecting and reporting duration metrics. Note that this must be called before enabling metrics collection. Calling this method while metrics collection is enabled returns an error.
Retrieve current values of run-time metrics.
Enable/disable whether all certificate errors should be ignored.
Handles a certificate error that fired a certificateError event.
Enable/disable overriding certificate errors. If enabled, all certificate error events need to
be handled by the DevTools client and should be answered with handleCertificateError
commands.
Clears storage for origin.
Returns all browser cookies.
Sets given cookies.
Clears cookies.
Returns usage and quota in bytes.
Override quota for the specified origin
Registers origin to be notified when an update occurs to its cache storage list.
Registers origin to be notified when an update occurs to its IndexedDB.
Unregisters origin from receiving notifications for cache storage.
Unregisters origin from receiving notifications for IndexedDB.
Returns information about the system.
Returns information about all running processes.
Activates (focuses) the target.
Attaches to the target with given id.
Attaches to the browser target, only uses flat sessionId mode.
Closes the target. If the target is a page that gets closed too.
Inject object to the target's main frame that provides a communication channel with browser target.
Injected object will be available as window[bindingName]
.
The object has the follwing API:
binding.send(json)
- a method to send messages over the remote debugging protocolbinding.onmessage = json => handleMessage(json)
- a callback that will be called for the protocol notifications and command responses.
Creates a new empty BrowserContext. Similar to an incognito profile but you can have more than one.
Returns all browser contexts created with Target.createBrowserContext
method.
Creates a new page.
Detaches session with given id.
Deletes a BrowserContext. All the belonging pages will be closed without calling their beforeunload hooks.
Returns information about a target.
Retrieves a list of available targets.
Sends protocol message over session with given id. Consider using flat mode instead; see commands attachToTarget, setAutoAttach, and crbug.com/991325.
Controls whether to automatically attach to new targets which are considered to be related to this one. When turned on, attaches to all existing related targets as well. When turned off, automatically detaches from all currently attached targets.
Controls whether to discover available targets and notify via
targetCreated/targetInfoChanged/targetDestroyed
events.
Enables target discovery for the specified locations, when setDiscoverTargets
was set to
true
.
Request browser port binding.
Request browser port unbinding.
Gets supported tracing categories.
Record a clock sync marker in the trace.
Request a global memory dump.
Start trace events collection.
Enables issuing of requestPaused events. A request will be paused until client calls one of failRequest, fulfillRequest or continueRequest/continueWithAuth.
Causes the request to fail with specified reason.
Provides response to the request.
Continues the request, optionally modifying some of its parameters.
Continues a request supplying authChallengeResponse following authRequired event.
Causes the body of the response to be received from the server and returned as a single string. May only be issued for a request that is paused in the Response stage and is mutually exclusive with takeResponseBodyForInterceptionAsStream. Calling other methods that affect the request or disabling fetch domain before body is received results in an undefined behavior.
Returns a handle to the stream representing the response body. The request must be paused in the HeadersReceived stage. Note that after this command the request can't be continued as is -- client either needs to cancel it or to provide the response body. The stream only supports sequential read, IO.read will fail if the position is specified. This method is mutually exclusive with getResponseBody. Calling other methods that affect the request or disabling fetch domain before body is received results in an undefined behavior.
Enables the WebAudio domain and starts sending context lifetime events.
Fetch the realtime data from the registered contexts.
Enable the WebAuthn domain and start intercepting credential storage and retrieval with a virtual authenticator.
Creates and adds a virtual authenticator.
Removes the given authenticator.
Adds the credential to the specified authenticator.
Returns a single credential stored in the given virtual authenticator that matches the credential ID.
Returns all the credentials stored in the given virtual authenticator.
Removes a credential from the authenticator.
Clears all the credentials from the specified device.
Sets whether User Verification succeeds or fails for an authenticator. The default is true.