"Fossies" - the Fresh Open Source Software Archive

Member "selenium-selenium-4.8.1/common/devtools/chromium/v85/browser_protocol.pdl" (17 Feb 2023, 271133 Bytes) of package /linux/www/selenium-selenium-4.8.1.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the last Fossies "Diffs" side-by-side code changes report for "browser_protocol.pdl": 4.4.0_vs_4.5.0.

    1 # Copyright 2017 The Chromium Authors. All rights reserved.
    2 # Use of this source code is governed by a BSD-style license that can be
    3 # found in the LICENSE file.
    4 #
    5 # Contributing to Chrome DevTools Protocol: https://docs.google.com/document/d/1c-COD2kaK__5iMM5SEx-PzNA7HFmgttcYfOHHX0HaOM/edit?usp=sharing
    6 
    7 version
    8   major 1
    9   minor 3
   10 
   11 experimental domain Accessibility
   12   depends on DOM
   13 
   14   # Unique accessibility node identifier.
   15   type AXNodeId extends string
   16 
   17   # Enum of possible property types.
   18   type AXValueType extends string
   19     enum
   20       boolean
   21       tristate
   22       booleanOrUndefined
   23       idref
   24       idrefList
   25       integer
   26       node
   27       nodeList
   28       number
   29       string
   30       computedString
   31       token
   32       tokenList
   33       domRelation
   34       role
   35       internalRole
   36       valueUndefined
   37 
   38   # Enum of possible property sources.
   39   type AXValueSourceType extends string
   40     enum
   41       attribute
   42       implicit
   43       style
   44       contents
   45       placeholder
   46       relatedElement
   47 
   48   # Enum of possible native property sources (as a subtype of a particular AXValueSourceType).
   49   type AXValueNativeSourceType extends string
   50     enum
   51       figcaption
   52       label
   53       labelfor
   54       labelwrapped
   55       legend
   56       tablecaption
   57       title
   58       other
   59 
   60   # A single source for a computed AX property.
   61   type AXValueSource extends object
   62     properties
   63       # What type of source this is.
   64       AXValueSourceType type
   65       # The value of this property source.
   66       optional AXValue value
   67       # The name of the relevant attribute, if any.
   68       optional string attribute
   69       # The value of the relevant attribute, if any.
   70       optional AXValue attributeValue
   71       # Whether this source is superseded by a higher priority source.
   72       optional boolean superseded
   73       # The native markup source for this value, e.g. a <label> element.
   74       optional AXValueNativeSourceType nativeSource
   75       # The value, such as a node or node list, of the native source.
   76       optional AXValue nativeSourceValue
   77       # Whether the value for this property is invalid.
   78       optional boolean invalid
   79       # Reason for the value being invalid, if it is.
   80       optional string invalidReason
   81 
   82   type AXRelatedNode extends object
   83     properties
   84       # The BackendNodeId of the related DOM node.
   85       DOM.BackendNodeId backendDOMNodeId
   86       # The IDRef value provided, if any.
   87       optional string idref
   88       # The text alternative of this node in the current context.
   89       optional string text
   90 
   91   type AXProperty extends object
   92     properties
   93       # The name of this property.
   94       AXPropertyName name
   95       # The value of this property.
   96       AXValue value
   97 
   98   # A single computed AX property.
   99   type AXValue extends object
  100     properties
  101       # The type of this value.
  102       AXValueType type
  103       # The computed value of this property.
  104       optional any value
  105       # One or more related nodes, if applicable.
  106       optional array of AXRelatedNode relatedNodes
  107       # The sources which contributed to the computation of this property.
  108       optional array of AXValueSource sources
  109 
  110   # Values of AXProperty name:
  111   # - from 'busy' to 'roledescription': states which apply to every AX node
  112   # - from 'live' to 'root': attributes which apply to nodes in live regions
  113   # - from 'autocomplete' to 'valuetext': attributes which apply to widgets
  114   # - from 'checked' to 'selected': states which apply to widgets
  115   # - from 'activedescendant' to 'owns' - relationships between elements other than parent/child/sibling.
  116   type AXPropertyName extends string
  117     enum
  118       busy
  119       disabled
  120       editable
  121       focusable
  122       focused
  123       hidden
  124       hiddenRoot
  125       invalid
  126       keyshortcuts
  127       settable
  128       roledescription
  129       live
  130       atomic
  131       relevant
  132       root
  133       autocomplete
  134       hasPopup
  135       level
  136       multiselectable
  137       orientation
  138       multiline
  139       readonly
  140       required
  141       valuemin
  142       valuemax
  143       valuetext
  144       checked
  145       expanded
  146       modal
  147       pressed
  148       selected
  149       activedescendant
  150       controls
  151       describedby
  152       details
  153       errormessage
  154       flowto
  155       labelledby
  156       owns
  157 
  158   # A node in the accessibility tree.
  159   type AXNode extends object
  160     properties
  161       # Unique identifier for this node.
  162       AXNodeId nodeId
  163       # Whether this node is ignored for accessibility
  164       boolean ignored
  165       # Collection of reasons why this node is hidden.
  166       optional array of AXProperty ignoredReasons
  167       # This `Node`'s role, whether explicit or implicit.
  168       optional AXValue role
  169       # The accessible name for this `Node`.
  170       optional AXValue name
  171       # The accessible description for this `Node`.
  172       optional AXValue description
  173       # The value for this `Node`.
  174       optional AXValue value
  175       # All other properties
  176       optional array of AXProperty properties
  177       # IDs for each of this node's child nodes.
  178       optional array of AXNodeId childIds
  179       # The backend ID for the associated DOM node, if any.
  180       optional DOM.BackendNodeId backendDOMNodeId
  181 
  182   # Disables the accessibility domain.
  183   command disable
  184 
  185   # Enables the accessibility domain which causes `AXNodeId`s to remain consistent between method calls.
  186   # This turns on accessibility for the page, which can impact performance until accessibility is disabled.
  187   command enable
  188 
  189   # Fetches the accessibility node and partial accessibility tree for this DOM node, if it exists.
  190   experimental command getPartialAXTree
  191     parameters
  192       # Identifier of the node to get the partial accessibility tree for.
  193       optional DOM.NodeId nodeId
  194       # Identifier of the backend node to get the partial accessibility tree for.
  195       optional DOM.BackendNodeId backendNodeId
  196       # JavaScript object id of the node wrapper to get the partial accessibility tree for.
  197       optional Runtime.RemoteObjectId objectId
  198       # Whether to fetch this nodes ancestors, siblings and children. Defaults to true.
  199       optional boolean fetchRelatives
  200     returns
  201       # The `Accessibility.AXNode` for this DOM node, if it exists, plus its ancestors, siblings and
  202       # children, if requested.
  203       array of AXNode nodes
  204 
  205   # Fetches the entire accessibility tree
  206   experimental command getFullAXTree
  207     returns
  208       array of AXNode nodes
  209 
  210 experimental domain Animation
  211   depends on Runtime
  212   depends on DOM
  213 
  214   # Animation instance.
  215   type Animation extends object
  216     properties
  217       # `Animation`'s id.
  218       string id
  219       # `Animation`'s name.
  220       string name
  221       # `Animation`'s internal paused state.
  222       boolean pausedState
  223       # `Animation`'s play state.
  224       string playState
  225       # `Animation`'s playback rate.
  226       number playbackRate
  227       # `Animation`'s start time.
  228       number startTime
  229       # `Animation`'s current time.
  230       number currentTime
  231       # Animation type of `Animation`.
  232       enum type
  233         CSSTransition
  234         CSSAnimation
  235         WebAnimation
  236       # `Animation`'s source animation node.
  237       optional AnimationEffect source
  238       # A unique ID for `Animation` representing the sources that triggered this CSS
  239       # animation/transition.
  240       optional string cssId
  241 
  242   # AnimationEffect instance
  243   type AnimationEffect extends object
  244     properties
  245       # `AnimationEffect`'s delay.
  246       number delay
  247       # `AnimationEffect`'s end delay.
  248       number endDelay
  249       # `AnimationEffect`'s iteration start.
  250       number iterationStart
  251       # `AnimationEffect`'s iterations.
  252       number iterations
  253       # `AnimationEffect`'s iteration duration.
  254       number duration
  255       # `AnimationEffect`'s playback direction.
  256       string direction
  257       # `AnimationEffect`'s fill mode.
  258       string fill
  259       # `AnimationEffect`'s target node.
  260       optional DOM.BackendNodeId backendNodeId
  261       # `AnimationEffect`'s keyframes.
  262       optional KeyframesRule keyframesRule
  263       # `AnimationEffect`'s timing function.
  264       string easing
  265 
  266   # Keyframes Rule
  267   type KeyframesRule extends object
  268     properties
  269       # CSS keyframed animation's name.
  270       optional string name
  271       # List of animation keyframes.
  272       array of KeyframeStyle keyframes
  273 
  274   # Keyframe Style
  275   type KeyframeStyle extends object
  276     properties
  277       # Keyframe's time offset.
  278       string offset
  279       # `AnimationEffect`'s timing function.
  280       string easing
  281 
  282   # Disables animation domain notifications.
  283   command disable
  284 
  285   # Enables animation domain notifications.
  286   command enable
  287 
  288   # Returns the current time of the an animation.
  289   command getCurrentTime
  290     parameters
  291       # Id of animation.
  292       string id
  293     returns
  294       # Current time of the page.
  295       number currentTime
  296 
  297   # Gets the playback rate of the document timeline.
  298   command getPlaybackRate
  299     returns
  300       # Playback rate for animations on page.
  301       number playbackRate
  302 
  303   # Releases a set of animations to no longer be manipulated.
  304   command releaseAnimations
  305     parameters
  306       # List of animation ids to seek.
  307       array of string animations
  308 
  309   # Gets the remote object of the Animation.
  310   command resolveAnimation
  311     parameters
  312       # Animation id.
  313       string animationId
  314     returns
  315       # Corresponding remote object.
  316       Runtime.RemoteObject remoteObject
  317 
  318   # Seek a set of animations to a particular time within each animation.
  319   command seekAnimations
  320     parameters
  321       # List of animation ids to seek.
  322       array of string animations
  323       # Set the current time of each animation.
  324       number currentTime
  325 
  326   # Sets the paused state of a set of animations.
  327   command setPaused
  328     parameters
  329       # Animations to set the pause state of.
  330       array of string animations
  331       # Paused state to set to.
  332       boolean paused
  333 
  334   # Sets the playback rate of the document timeline.
  335   command setPlaybackRate
  336     parameters
  337       # Playback rate for animations on page
  338       number playbackRate
  339 
  340   # Sets the timing of an animation node.
  341   command setTiming
  342     parameters
  343       # Animation id.
  344       string animationId
  345       # Duration of the animation.
  346       number duration
  347       # Delay of the animation.
  348       number delay
  349 
  350   # Event for when an animation has been cancelled.
  351   event animationCanceled
  352     parameters
  353       # Id of the animation that was cancelled.
  354       string id
  355 
  356   # Event for each animation that has been created.
  357   event animationCreated
  358     parameters
  359       # Id of the animation that was created.
  360       string id
  361 
  362   # Event for animation that has been started.
  363   event animationStarted
  364     parameters
  365       # Animation that was started.
  366       Animation animation
  367 
  368 experimental domain ApplicationCache
  369   depends on Page
  370 
  371   # Detailed application cache resource information.
  372   type ApplicationCacheResource extends object
  373     properties
  374       # Resource url.
  375       string url
  376       # Resource size.
  377       integer size
  378       # Resource type.
  379       string type
  380 
  381   # Detailed application cache information.
  382   type ApplicationCache extends object
  383     properties
  384       # Manifest URL.
  385       string manifestURL
  386       # Application cache size.
  387       number size
  388       # Application cache creation time.
  389       number creationTime
  390       # Application cache update time.
  391       number updateTime
  392       # Application cache resources.
  393       array of ApplicationCacheResource resources
  394 
  395   # Frame identifier - manifest URL pair.
  396   type FrameWithManifest extends object
  397     properties
  398       # Frame identifier.
  399       Page.FrameId frameId
  400       # Manifest URL.
  401       string manifestURL
  402       # Application cache status.
  403       integer status
  404 
  405   # Enables application cache domain notifications.
  406   command enable
  407 
  408   # Returns relevant application cache data for the document in given frame.
  409   command getApplicationCacheForFrame
  410     parameters
  411       # Identifier of the frame containing document whose application cache is retrieved.
  412       Page.FrameId frameId
  413     returns
  414       # Relevant application cache data for the document in given frame.
  415       ApplicationCache applicationCache
  416 
  417   # Returns array of frame identifiers with manifest urls for each frame containing a document
  418   # associated with some application cache.
  419   command getFramesWithManifests
  420     returns
  421       # Array of frame identifiers with manifest urls for each frame containing a document
  422       # associated with some application cache.
  423       array of FrameWithManifest frameIds
  424 
  425   # Returns manifest URL for document in the given frame.
  426   command getManifestForFrame
  427     parameters
  428       # Identifier of the frame containing document whose manifest is retrieved.
  429       Page.FrameId frameId
  430     returns
  431       # Manifest URL for document in the given frame.
  432       string manifestURL
  433 
  434   event applicationCacheStatusUpdated
  435     parameters
  436       # Identifier of the frame containing document whose application cache updated status.
  437       Page.FrameId frameId
  438       # Manifest URL.
  439       string manifestURL
  440       # Updated application cache status.
  441       integer status
  442 
  443   event networkStateUpdated
  444     parameters
  445       boolean isNowOnline
  446 
  447 # Audits domain allows investigation of page violations and possible improvements.
  448 experimental domain Audits
  449   depends on Network
  450 
  451   # Information about a cookie that is affected by an inspector issue.
  452   type AffectedCookie extends object
  453     properties
  454       # The following three properties uniquely identify a cookie
  455       string name
  456       string path
  457       string domain
  458 
  459   # Information about a request that is affected by an inspector issue.
  460   type AffectedRequest extends object
  461     properties
  462       # The unique request id.
  463       Network.RequestId requestId
  464       optional string url
  465 
  466   # Information about the frame affected by an inspector issue.
  467   type AffectedFrame extends object
  468     properties
  469       Page.FrameId frameId
  470 
  471   type SameSiteCookieExclusionReason extends string
  472     enum
  473       ExcludeSameSiteUnspecifiedTreatedAsLax
  474       ExcludeSameSiteNoneInsecure
  475 
  476   type SameSiteCookieWarningReason extends string
  477     enum
  478       WarnSameSiteUnspecifiedCrossSiteContext
  479       WarnSameSiteNoneInsecure
  480       WarnSameSiteUnspecifiedLaxAllowUnsafe
  481       WarnSameSiteStrictLaxDowngradeStrict
  482       WarnSameSiteStrictCrossDowngradeStrict
  483       WarnSameSiteStrictCrossDowngradeLax
  484       WarnSameSiteLaxCrossDowngradeStrict
  485       WarnSameSiteLaxCrossDowngradeLax
  486 
  487   type SameSiteCookieOperation extends string
  488     enum
  489       SetCookie
  490       ReadCookie
  491 
  492   # This information is currently necessary, as the front-end has a difficult
  493   # time finding a specific cookie. With this, we can convey specific error
  494   # information without the cookie.
  495   type SameSiteCookieIssueDetails extends object
  496     properties
  497       AffectedCookie cookie
  498       array of SameSiteCookieWarningReason cookieWarningReasons
  499       array of SameSiteCookieExclusionReason cookieExclusionReasons
  500       # Optionally identifies the site-for-cookies and the cookie url, which
  501       # may be used by the front-end as additional context.
  502       SameSiteCookieOperation operation
  503       optional string siteForCookies
  504       optional string cookieUrl
  505       optional AffectedRequest request
  506 
  507   type MixedContentResolutionStatus extends string
  508     enum
  509       MixedContentBlocked
  510       MixedContentAutomaticallyUpgraded
  511       MixedContentWarning
  512 
  513   type MixedContentResourceType extends string
  514     enum
  515       Audio
  516       Beacon
  517       CSPReport
  518       Download
  519       EventSource
  520       Favicon
  521       Font
  522       Form
  523       Frame
  524       Image
  525       Import
  526       Manifest
  527       Ping
  528       PluginData
  529       PluginResource
  530       Prefetch
  531       Resource
  532       Script
  533       ServiceWorker
  534       SharedWorker
  535       Stylesheet
  536       Track
  537       Video
  538       Worker
  539       XMLHttpRequest
  540       XSLT
  541 
  542   type MixedContentIssueDetails extends object
  543     properties
  544       # The type of resource causing the mixed content issue (css, js, iframe,
  545       # form,...). Marked as optional because it is mapped to from
  546       # blink::mojom::RequestContextType, which will be replaced
  547       # by network::mojom::RequestDestination
  548       optional MixedContentResourceType resourceType
  549       # The way the mixed content issue is being resolved.
  550       MixedContentResolutionStatus resolutionStatus
  551       # The unsafe http url causing the mixed content issue.
  552       string insecureURL
  553       # The url responsible for the call to an unsafe url.
  554       string mainResourceURL
  555       # The mixed content request.
  556       # Does not always exist (e.g. for unsafe form submission urls).
  557       optional AffectedRequest request
  558       # Optional because not every mixed content issue is necessarily linked to a frame.
  559       optional AffectedFrame frame
  560 
  561   # Enum indicating the reason a response has been blocked. These reasons are
  562   # refinements of the net error BLOCKED_BY_RESPONSE.
  563   type BlockedByResponseReason extends string
  564     enum
  565       CoepFrameResourceNeedsCoepHeader
  566       CoopSandboxedIFrameCannotNavigateToCoopPage
  567       CorpNotSameOrigin
  568       CorpNotSameOriginAfterDefaultedToSameOriginByCoep
  569       CorpNotSameSite
  570 
  571   # Details for a request that has been blocked with the BLOCKED_BY_RESPONSE
  572   # code. Currently only used for COEP/COOP, but may be extended to include
  573   # some CSP errors in the future.
  574   type BlockedByResponseIssueDetails extends object
  575     properties
  576       AffectedRequest request
  577       optional AffectedFrame frame
  578       BlockedByResponseReason reason
  579 
  580   type HeavyAdResolutionStatus extends string
  581     enum
  582       HeavyAdBlocked
  583       HeavyAdWarning
  584 
  585   type HeavyAdReason extends string
  586     enum
  587       NetworkTotalLimit
  588       CpuTotalLimit
  589       CpuPeakLimit
  590 
  591   type HeavyAdIssueDetails extends object
  592     properties
  593       # The resolution status, either blocking the content or warning.
  594       HeavyAdResolutionStatus resolution
  595       # The reason the ad was blocked, total network or cpu or peak cpu.
  596       HeavyAdReason reason
  597       # The frame that was blocked.
  598       AffectedFrame frame
  599 
  600   # A unique identifier for the type of issue. Each type may use one of the
  601   # optional fields in InspectorIssueDetails to convey more specific
  602   # information about the kind of issue.
  603   type InspectorIssueCode extends string
  604     enum
  605       SameSiteCookieIssue
  606       MixedContentIssue
  607       BlockedByResponseIssue
  608       HeavyAdIssue
  609 
  610   # This struct holds a list of optional fields with additional information
  611   # specific to the kind of issue. When adding a new issue code, please also
  612   # add a new optional field to this type.
  613   type InspectorIssueDetails extends object
  614     properties
  615       optional SameSiteCookieIssueDetails sameSiteCookieIssueDetails
  616       optional MixedContentIssueDetails mixedContentIssueDetails
  617       optional BlockedByResponseIssueDetails blockedByResponseIssueDetails
  618       optional HeavyAdIssueDetails heavyAdIssueDetails
  619 
  620   # An inspector issue reported from the back-end.
  621   type InspectorIssue extends object
  622     properties
  623       InspectorIssueCode code
  624       InspectorIssueDetails details
  625 
  626   # Returns the response body and size if it were re-encoded with the specified settings. Only
  627   # applies to images.
  628   command getEncodedResponse
  629     parameters
  630       # Identifier of the network request to get content for.
  631       Network.RequestId requestId
  632       # The encoding to use.
  633       enum encoding
  634         webp
  635         jpeg
  636         png
  637       # The quality of the encoding (0-1). (defaults to 1)
  638       optional number quality
  639       # Whether to only return the size information (defaults to false).
  640       optional boolean sizeOnly
  641     returns
  642       # The encoded body as a base64 string. Omitted if sizeOnly is true.
  643       optional binary body
  644       # Size before re-encoding.
  645       integer originalSize
  646       # Size after re-encoding.
  647       integer encodedSize
  648 
  649   # Disables issues domain, prevents further issues from being reported to the client.
  650   command disable
  651 
  652   # Enables issues domain, sends the issues collected so far to the client by means of the
  653   # `issueAdded` event.
  654   command enable
  655 
  656   event issueAdded
  657     parameters
  658       InspectorIssue issue
  659 
  660 # Defines events for background web platform features.
  661 experimental domain BackgroundService
  662   # The Background Service that will be associated with the commands/events.
  663   # Every Background Service operates independently, but they share the same
  664   # API.
  665   type ServiceName extends string
  666     enum
  667       backgroundFetch
  668       backgroundSync
  669       pushMessaging
  670       notifications
  671       paymentHandler
  672       periodicBackgroundSync
  673 
  674   # Enables event updates for the service.
  675   command startObserving
  676     parameters
  677       ServiceName service
  678 
  679   # Disables event updates for the service.
  680   command stopObserving
  681     parameters
  682       ServiceName service
  683 
  684   # Set the recording state for the service.
  685   command setRecording
  686     parameters
  687       boolean shouldRecord
  688       ServiceName service
  689 
  690   # Clears all stored data for the service.
  691   command clearEvents
  692     parameters
  693       ServiceName service
  694 
  695   # Called when the recording state for the service has been updated.
  696   event recordingStateChanged
  697     parameters
  698       boolean isRecording
  699       ServiceName service
  700 
  701   # A key-value pair for additional event information to pass along.
  702   type EventMetadata extends object
  703     properties
  704       string key
  705       string value
  706 
  707   type BackgroundServiceEvent extends object
  708     properties
  709       # Timestamp of the event (in seconds).
  710       Network.TimeSinceEpoch timestamp
  711       # The origin this event belongs to.
  712       string origin
  713       # The Service Worker ID that initiated the event.
  714       ServiceWorker.RegistrationID serviceWorkerRegistrationId
  715       # The Background Service this event belongs to.
  716       ServiceName service
  717       # A description of the event.
  718       string eventName
  719       # An identifier that groups related events together.
  720       string instanceId
  721       # A list of event-specific information.
  722       array of EventMetadata eventMetadata
  723 
  724   # Called with all existing backgroundServiceEvents when enabled, and all new
  725   # events afterwards if enabled and recording.
  726   event backgroundServiceEventReceived
  727     parameters
  728       BackgroundServiceEvent backgroundServiceEvent
  729 
  730 # The Browser domain defines methods and events for browser managing.
  731 domain Browser
  732   experimental type BrowserContextID extends string
  733   experimental type WindowID extends integer
  734 
  735   # The state of the browser window.
  736   experimental type WindowState extends string
  737     enum
  738       normal
  739       minimized
  740       maximized
  741       fullscreen
  742 
  743   # Browser window bounds information
  744   experimental type Bounds extends object
  745     properties
  746       # The offset from the left edge of the screen to the window in pixels.
  747       optional integer left
  748       # The offset from the top edge of the screen to the window in pixels.
  749       optional integer top
  750       # The window width in pixels.
  751       optional integer width
  752       # The window height in pixels.
  753       optional integer height
  754       # The window state. Default to normal.
  755       optional WindowState windowState
  756 
  757   experimental type PermissionType extends string
  758     enum
  759       accessibilityEvents
  760       audioCapture
  761       backgroundSync
  762       backgroundFetch
  763       clipboardReadWrite
  764       clipboardSanitizedWrite
  765       durableStorage
  766       flash
  767       geolocation
  768       midi
  769       midiSysex
  770       nfc
  771       notifications
  772       paymentHandler
  773       periodicBackgroundSync
  774       protectedMediaIdentifier
  775       sensors
  776       videoCapture
  777       idleDetection
  778       wakeLockScreen
  779       wakeLockSystem
  780 
  781   experimental type PermissionSetting extends string
  782     enum
  783       granted
  784       denied
  785       prompt
  786 
  787   # Definition of PermissionDescriptor defined in the Permissions API:
  788   # https://w3c.github.io/permissions/#dictdef-permissiondescriptor.
  789   experimental type PermissionDescriptor extends object
  790     properties
  791       # Name of permission.
  792       # See https://cs.chromium.org/chromium/src/third_party/blink/renderer/modules/permissions/permission_descriptor.idl for valid permission names.
  793       string name
  794       # For "midi" permission, may also specify sysex control.
  795       optional boolean sysex
  796       # For "push" permission, may specify userVisibleOnly.
  797       # Note that userVisibleOnly = true is the only currently supported type.
  798       optional boolean userVisibleOnly
  799       # For "wake-lock" permission, must specify type as either "screen" or "system".
  800       optional string type
  801       # For "clipboard" permission, may specify allowWithoutSanitization.
  802       optional boolean allowWithoutSanitization
  803 
  804   # Set permission settings for given origin.
  805   experimental command setPermission
  806     parameters
  807       # Descriptor of permission to override.
  808       PermissionDescriptor permission
  809       # Setting of the permission.
  810       PermissionSetting setting
  811       # Origin the permission applies to, all origins if not specified.
  812       optional string origin
  813       # Context to override. When omitted, default browser context is used.
  814       optional BrowserContextID browserContextId
  815 
  816   # Grant specific permissions to the given origin and reject all others.
  817   experimental command grantPermissions
  818     parameters
  819       array of PermissionType permissions
  820       # Origin the permission applies to, all origins if not specified.
  821       optional string origin
  822       # BrowserContext to override permissions. When omitted, default browser context is used.
  823       optional BrowserContextID browserContextId
  824 
  825   # Reset all permission management for all origins.
  826   experimental command resetPermissions
  827     parameters
  828       # BrowserContext to reset permissions. When omitted, default browser context is used.
  829       optional BrowserContextID browserContextId
  830 
  831   # Set the behavior when downloading a file.
  832   experimental command setDownloadBehavior
  833     parameters
  834       # Whether to allow all or deny all download requests, or use default Chrome behavior if
  835       # available (otherwise deny). |allowAndName| allows download and names files according to
  836       # their dowmload guids.
  837       enum behavior
  838         deny
  839         allow
  840         allowAndName
  841         default
  842       # BrowserContext to set download behavior. When omitted, default browser context is used.
  843       optional BrowserContextID browserContextId
  844       # The default path to save downloaded files to. This is requred if behavior is set to 'allow'
  845       # or 'allowAndName'.
  846       optional string downloadPath
  847 
  848   # Close browser gracefully.
  849   command close
  850 
  851   # Crashes browser on the main thread.
  852   experimental command crash
  853 
  854   # Crashes GPU process.
  855   experimental command crashGpuProcess
  856 
  857   # Returns version information.
  858   command getVersion
  859     returns
  860       # Protocol version.
  861       string protocolVersion
  862       # Product name.
  863       string product
  864       # Product revision.
  865       string revision
  866       # User-Agent.
  867       string userAgent
  868       # V8 version.
  869       string jsVersion
  870 
  871   # Returns the command line switches for the browser process if, and only if
  872   # --enable-automation is on the commandline.
  873   experimental command getBrowserCommandLine
  874     returns
  875       # Commandline parameters
  876       array of string arguments
  877 
  878   # Chrome histogram bucket.
  879   experimental type Bucket extends object
  880     properties
  881       # Minimum value (inclusive).
  882       integer low
  883       # Maximum value (exclusive).
  884       integer high
  885       # Number of samples.
  886       integer count
  887 
  888   # Chrome histogram.
  889   experimental type Histogram extends object
  890     properties
  891       # Name.
  892       string name
  893       # Sum of sample values.
  894       integer sum
  895       # Total number of samples.
  896       integer count
  897       # Buckets.
  898       array of Bucket buckets
  899 
  900   # Get Chrome histograms.
  901   experimental command getHistograms
  902     parameters
  903       # Requested substring in name. Only histograms which have query as a
  904       # substring in their name are extracted. An empty or absent query returns
  905       # all histograms.
  906       optional string query
  907       # If true, retrieve delta since last call.
  908       optional boolean delta
  909 
  910     returns
  911       # Histograms.
  912       array of Histogram histograms
  913 
  914   # Get a Chrome histogram by name.
  915   experimental command getHistogram
  916     parameters
  917       # Requested histogram name.
  918       string name
  919       # If true, retrieve delta since last call.
  920       optional boolean delta
  921     returns
  922       # Histogram.
  923       Histogram histogram
  924 
  925   # Get position and size of the browser window.
  926   experimental command getWindowBounds
  927     parameters
  928       # Browser window id.
  929       WindowID windowId
  930     returns
  931       # Bounds information of the window. When window state is 'minimized', the restored window
  932       # position and size are returned.
  933       Bounds bounds
  934 
  935   # Get the browser window that contains the devtools target.
  936   experimental command getWindowForTarget
  937     parameters
  938       # Devtools agent host id. If called as a part of the session, associated targetId is used.
  939       optional Target.TargetID targetId
  940     returns
  941       # Browser window id.
  942       WindowID windowId
  943       # Bounds information of the window. When window state is 'minimized', the restored window
  944       # position and size are returned.
  945       Bounds bounds
  946 
  947   # Set position and/or size of the browser window.
  948   experimental command setWindowBounds
  949     parameters
  950       # Browser window id.
  951       WindowID windowId
  952       # New window bounds. The 'minimized', 'maximized' and 'fullscreen' states cannot be combined
  953       # with 'left', 'top', 'width' or 'height'. Leaves unspecified fields unchanged.
  954       Bounds bounds
  955 
  956   # Set dock tile details, platform-specific.
  957   experimental command setDockTile
  958     parameters
  959       optional string badgeLabel
  960       # Png encoded image.
  961       optional binary image
  962 
  963 # This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles)
  964 # have an associated `id` used in subsequent operations on the related object. Each object type has
  965 # a specific `id` structure, and those are not interchangeable between objects of different kinds.
  966 # CSS objects can be loaded using the `get*ForNode()` calls (which accept a DOM node id). A client
  967 # can also keep track of stylesheets via the `styleSheetAdded`/`styleSheetRemoved` events and
  968 # subsequently load the required stylesheet contents using the `getStyleSheet[Text]()` methods.
  969 experimental domain CSS
  970   depends on DOM
  971   depends on Page
  972 
  973   type StyleSheetId extends string
  974 
  975   # Stylesheet type: "injected" for stylesheets injected via extension, "user-agent" for user-agent
  976   # stylesheets, "inspector" for stylesheets created by the inspector (i.e. those holding the "via
  977   # inspector" rules), "regular" for regular stylesheets.
  978   type StyleSheetOrigin extends string
  979     enum
  980       injected
  981       user-agent
  982       inspector
  983       regular
  984 
  985   # CSS rule collection for a single pseudo style.
  986   type PseudoElementMatches extends object
  987     properties
  988       # Pseudo element type.
  989       DOM.PseudoType pseudoType
  990       # Matches of CSS rules applicable to the pseudo style.
  991       array of RuleMatch matches
  992 
  993   # Inherited CSS rule collection from ancestor node.
  994   type InheritedStyleEntry extends object
  995     properties
  996       # The ancestor node's inline style, if any, in the style inheritance chain.
  997       optional CSSStyle inlineStyle
  998       # Matches of CSS rules matching the ancestor node in the style inheritance chain.
  999       array of RuleMatch matchedCSSRules
 1000 
 1001   # Match data for a CSS rule.
 1002   type RuleMatch extends object
 1003     properties
 1004       # CSS rule in the match.
 1005       CSSRule rule
 1006       # Matching selector indices in the rule's selectorList selectors (0-based).
 1007       array of integer matchingSelectors
 1008 
 1009   # Data for a simple selector (these are delimited by commas in a selector list).
 1010   type Value extends object
 1011     properties
 1012       # Value text.
 1013       string text
 1014       # Value range in the underlying resource (if available).
 1015       optional SourceRange range
 1016 
 1017   # Selector list data.
 1018   type SelectorList extends object
 1019     properties
 1020       # Selectors in the list.
 1021       array of Value selectors
 1022       # Rule selector text.
 1023       string text
 1024 
 1025   # CSS stylesheet metainformation.
 1026   type CSSStyleSheetHeader extends object
 1027     properties
 1028       # The stylesheet identifier.
 1029       StyleSheetId styleSheetId
 1030       # Owner frame identifier.
 1031       Page.FrameId frameId
 1032       # Stylesheet resource URL.
 1033       string sourceURL
 1034       # URL of source map associated with the stylesheet (if any).
 1035       optional string sourceMapURL
 1036       # Stylesheet origin.
 1037       StyleSheetOrigin origin
 1038       # Stylesheet title.
 1039       string title
 1040       # The backend id for the owner node of the stylesheet.
 1041       optional DOM.BackendNodeId ownerNode
 1042       # Denotes whether the stylesheet is disabled.
 1043       boolean disabled
 1044       # Whether the sourceURL field value comes from the sourceURL comment.
 1045       optional boolean hasSourceURL
 1046       # Whether this stylesheet is created for STYLE tag by parser. This flag is not set for
 1047       # document.written STYLE tags.
 1048       boolean isInline
 1049       # Whether this stylesheet is mutable. Inline stylesheets become mutable
 1050       # after they have been modified via CSSOM API.
 1051       # <link> element's stylesheets are never mutable. Constructed stylesheets
 1052       # (new CSSStyleSheet()) are mutable immediately after creation.
 1053       boolean isMutable
 1054       # Line offset of the stylesheet within the resource (zero based).
 1055       number startLine
 1056       # Column offset of the stylesheet within the resource (zero based).
 1057       number startColumn
 1058       # Size of the content (in characters).
 1059       number length
 1060       # Line offset of the end of the stylesheet within the resource (zero based).
 1061       number endLine
 1062       # Column offset of the end of the stylesheet within the resource (zero based).
 1063       number endColumn
 1064 
 1065   # CSS rule representation.
 1066   type CSSRule extends object
 1067     properties
 1068       # The css style sheet identifier (absent for user agent stylesheet and user-specified
 1069       # stylesheet rules) this rule came from.
 1070       optional StyleSheetId styleSheetId
 1071       # Rule selector data.
 1072       SelectorList selectorList
 1073       # Parent stylesheet's origin.
 1074       StyleSheetOrigin origin
 1075       # Associated style declaration.
 1076       CSSStyle style
 1077       # Media list array (for rules involving media queries). The array enumerates media queries
 1078       # starting with the innermost one, going outwards.
 1079       optional array of CSSMedia media
 1080 
 1081   # CSS coverage information.
 1082   type RuleUsage extends object
 1083     properties
 1084       # The css style sheet identifier (absent for user agent stylesheet and user-specified
 1085       # stylesheet rules) this rule came from.
 1086       StyleSheetId styleSheetId
 1087       # Offset of the start of the rule (including selector) from the beginning of the stylesheet.
 1088       number startOffset
 1089       # Offset of the end of the rule body from the beginning of the stylesheet.
 1090       number endOffset
 1091       # Indicates whether the rule was actually used by some element in the page.
 1092       boolean used
 1093 
 1094   # Text range within a resource. All numbers are zero-based.
 1095   type SourceRange extends object
 1096     properties
 1097       # Start line of range.
 1098       integer startLine
 1099       # Start column of range (inclusive).
 1100       integer startColumn
 1101       # End line of range
 1102       integer endLine
 1103       # End column of range (exclusive).
 1104       integer endColumn
 1105 
 1106   type ShorthandEntry extends object
 1107     properties
 1108       # Shorthand name.
 1109       string name
 1110       # Shorthand value.
 1111       string value
 1112       # Whether the property has "!important" annotation (implies `false` if absent).
 1113       optional boolean important
 1114 
 1115   type CSSComputedStyleProperty extends object
 1116     properties
 1117       # Computed style property name.
 1118       string name
 1119       # Computed style property value.
 1120       string value
 1121 
 1122   # CSS style representation.
 1123   type CSSStyle extends object
 1124     properties
 1125       # The css style sheet identifier (absent for user agent stylesheet and user-specified
 1126       # stylesheet rules) this rule came from.
 1127       optional StyleSheetId styleSheetId
 1128       # CSS properties in the style.
 1129       array of CSSProperty cssProperties
 1130       # Computed values for all shorthands found in the style.
 1131       array of ShorthandEntry shorthandEntries
 1132       # Style declaration text (if available).
 1133       optional string cssText
 1134       # Style declaration range in the enclosing stylesheet (if available).
 1135       optional SourceRange range
 1136 
 1137   # CSS property declaration data.
 1138   type CSSProperty extends object
 1139     properties
 1140       # The property name.
 1141       string name
 1142       # The property value.
 1143       string value
 1144       # Whether the property has "!important" annotation (implies `false` if absent).
 1145       optional boolean important
 1146       # Whether the property is implicit (implies `false` if absent).
 1147       optional boolean implicit
 1148       # The full property text as specified in the style.
 1149       optional string text
 1150       # Whether the property is understood by the browser (implies `true` if absent).
 1151       optional boolean parsedOk
 1152       # Whether the property is disabled by the user (present for source-based properties only).
 1153       optional boolean disabled
 1154       # The entire property range in the enclosing style declaration (if available).
 1155       optional SourceRange range
 1156 
 1157   # CSS media rule descriptor.
 1158   type CSSMedia extends object
 1159     properties
 1160       # Media query text.
 1161       string text
 1162       # Source of the media query: "mediaRule" if specified by a @media rule, "importRule" if
 1163       # specified by an @import rule, "linkedSheet" if specified by a "media" attribute in a linked
 1164       # stylesheet's LINK tag, "inlineSheet" if specified by a "media" attribute in an inline
 1165       # stylesheet's STYLE tag.
 1166       enum source
 1167         mediaRule
 1168         importRule
 1169         linkedSheet
 1170         inlineSheet
 1171       # URL of the document containing the media query description.
 1172       optional string sourceURL
 1173       # The associated rule (@media or @import) header range in the enclosing stylesheet (if
 1174       # available).
 1175       optional SourceRange range
 1176       # Identifier of the stylesheet containing this object (if exists).
 1177       optional StyleSheetId styleSheetId
 1178       # Array of media queries.
 1179       optional array of MediaQuery mediaList
 1180 
 1181   # Media query descriptor.
 1182   type MediaQuery extends object
 1183     properties
 1184       # Array of media query expressions.
 1185       array of MediaQueryExpression expressions
 1186       # Whether the media query condition is satisfied.
 1187       boolean active
 1188 
 1189   # Media query expression descriptor.
 1190   type MediaQueryExpression extends object
 1191     properties
 1192       # Media query expression value.
 1193       number value
 1194       # Media query expression units.
 1195       string unit
 1196       # Media query expression feature.
 1197       string feature
 1198       # The associated range of the value text in the enclosing stylesheet (if available).
 1199       optional SourceRange valueRange
 1200       # Computed length of media query expression (if applicable).
 1201       optional number computedLength
 1202 
 1203   # Information about amount of glyphs that were rendered with given font.
 1204   type PlatformFontUsage extends object
 1205     properties
 1206       # Font's family name reported by platform.
 1207       string familyName
 1208       # Indicates if the font was downloaded or resolved locally.
 1209       boolean isCustomFont
 1210       # Amount of glyphs that were rendered with this font.
 1211       number glyphCount
 1212 
 1213   # Properties of a web font: https://www.w3.org/TR/2008/REC-CSS2-20080411/fonts.html#font-descriptions
 1214   type FontFace extends object
 1215     properties
 1216       # The font-family.
 1217       string fontFamily
 1218       # The font-style.
 1219       string fontStyle
 1220       # The font-variant.
 1221       string fontVariant
 1222       # The font-weight.
 1223       string fontWeight
 1224       # The font-stretch.
 1225       string fontStretch
 1226       # The unicode-range.
 1227       string unicodeRange
 1228       # The src.
 1229       string src
 1230       # The resolved platform font family
 1231       string platformFontFamily
 1232 
 1233   # CSS keyframes rule representation.
 1234   type CSSKeyframesRule extends object
 1235     properties
 1236       # Animation name.
 1237       Value animationName
 1238       # List of keyframes.
 1239       array of CSSKeyframeRule keyframes
 1240 
 1241   # CSS keyframe rule representation.
 1242   type CSSKeyframeRule extends object
 1243     properties
 1244       # The css style sheet identifier (absent for user agent stylesheet and user-specified
 1245       # stylesheet rules) this rule came from.
 1246       optional StyleSheetId styleSheetId
 1247       # Parent stylesheet's origin.
 1248       StyleSheetOrigin origin
 1249       # Associated key text.
 1250       Value keyText
 1251       # Associated style declaration.
 1252       CSSStyle style
 1253 
 1254   # A descriptor of operation to mutate style declaration text.
 1255   type StyleDeclarationEdit extends object
 1256     properties
 1257       # The css style sheet identifier.
 1258       StyleSheetId styleSheetId
 1259       # The range of the style text in the enclosing stylesheet.
 1260       SourceRange range
 1261       # New style text.
 1262       string text
 1263 
 1264   # Inserts a new rule with the given `ruleText` in a stylesheet with given `styleSheetId`, at the
 1265   # position specified by `location`.
 1266   command addRule
 1267     parameters
 1268       # The css style sheet identifier where a new rule should be inserted.
 1269       StyleSheetId styleSheetId
 1270       # The text of a new rule.
 1271       string ruleText
 1272       # Text position of a new rule in the target style sheet.
 1273       SourceRange location
 1274     returns
 1275       # The newly created rule.
 1276       CSSRule rule
 1277 
 1278   # Returns all class names from specified stylesheet.
 1279   command collectClassNames
 1280     parameters
 1281       StyleSheetId styleSheetId
 1282     returns
 1283       # Class name list.
 1284       array of string classNames
 1285 
 1286   # Creates a new special "via-inspector" stylesheet in the frame with given `frameId`.
 1287   command createStyleSheet
 1288     parameters
 1289       # Identifier of the frame where "via-inspector" stylesheet should be created.
 1290       Page.FrameId frameId
 1291     returns
 1292       # Identifier of the created "via-inspector" stylesheet.
 1293       StyleSheetId styleSheetId
 1294 
 1295   # Disables the CSS agent for the given page.
 1296   command disable
 1297 
 1298   # Enables the CSS agent for the given page. Clients should not assume that the CSS agent has been
 1299   # enabled until the result of this command is received.
 1300   command enable
 1301 
 1302   # Ensures that the given node will have specified pseudo-classes whenever its style is computed by
 1303   # the browser.
 1304   command forcePseudoState
 1305     parameters
 1306       # The element id for which to force the pseudo state.
 1307       DOM.NodeId nodeId
 1308       # Element pseudo classes to force when computing the element's style.
 1309       array of string forcedPseudoClasses
 1310 
 1311   command getBackgroundColors
 1312     parameters
 1313       # Id of the node to get background colors for.
 1314       DOM.NodeId nodeId
 1315     returns
 1316       # The range of background colors behind this element, if it contains any visible text. If no
 1317       # visible text is present, this will be undefined. In the case of a flat background color,
 1318       # this will consist of simply that color. In the case of a gradient, this will consist of each
 1319       # of the color stops. For anything more complicated, this will be an empty array. Images will
 1320       # be ignored (as if the image had failed to load).
 1321       optional array of string backgroundColors
 1322       # The computed font size for this node, as a CSS computed value string (e.g. '12px').
 1323       optional string computedFontSize
 1324       # The computed font weight for this node, as a CSS computed value string (e.g. 'normal' or
 1325       # '100').
 1326       optional string computedFontWeight
 1327 
 1328   # Returns the computed style for a DOM node identified by `nodeId`.
 1329   command getComputedStyleForNode
 1330     parameters
 1331       DOM.NodeId nodeId
 1332     returns
 1333       # Computed style for the specified DOM node.
 1334       array of CSSComputedStyleProperty computedStyle
 1335 
 1336   # Returns the styles defined inline (explicitly in the "style" attribute and implicitly, using DOM
 1337   # attributes) for a DOM node identified by `nodeId`.
 1338   command getInlineStylesForNode
 1339     parameters
 1340       DOM.NodeId nodeId
 1341     returns
 1342       # Inline style for the specified DOM node.
 1343       optional CSSStyle inlineStyle
 1344       # Attribute-defined element style (e.g. resulting from "width=20 height=100%").
 1345       optional CSSStyle attributesStyle
 1346 
 1347   # Returns requested styles for a DOM node identified by `nodeId`.
 1348   command getMatchedStylesForNode
 1349     parameters
 1350       DOM.NodeId nodeId
 1351     returns
 1352       # Inline style for the specified DOM node.
 1353       optional CSSStyle inlineStyle
 1354       # Attribute-defined element style (e.g. resulting from "width=20 height=100%").
 1355       optional CSSStyle attributesStyle
 1356       # CSS rules matching this node, from all applicable stylesheets.
 1357       optional array of RuleMatch matchedCSSRules
 1358       # Pseudo style matches for this node.
 1359       optional array of PseudoElementMatches pseudoElements
 1360       # A chain of inherited styles (from the immediate node parent up to the DOM tree root).
 1361       optional array of InheritedStyleEntry inherited
 1362       # A list of CSS keyframed animations matching this node.
 1363       optional array of CSSKeyframesRule cssKeyframesRules
 1364 
 1365   # Returns all media queries parsed by the rendering engine.
 1366   command getMediaQueries
 1367     returns
 1368       array of CSSMedia medias
 1369 
 1370   # Requests information about platform fonts which we used to render child TextNodes in the given
 1371   # node.
 1372   command getPlatformFontsForNode
 1373     parameters
 1374       DOM.NodeId nodeId
 1375     returns
 1376       # Usage statistics for every employed platform font.
 1377       array of PlatformFontUsage fonts
 1378 
 1379   # Returns the current textual content for a stylesheet.
 1380   command getStyleSheetText
 1381     parameters
 1382       StyleSheetId styleSheetId
 1383     returns
 1384       # The stylesheet text.
 1385       string text
 1386 
 1387   # Find a rule with the given active property for the given node and set the new value for this
 1388   # property
 1389   command setEffectivePropertyValueForNode
 1390     parameters
 1391       # The element id for which to set property.
 1392       DOM.NodeId nodeId
 1393       string propertyName
 1394       string value
 1395 
 1396   # Modifies the keyframe rule key text.
 1397   command setKeyframeKey
 1398     parameters
 1399       StyleSheetId styleSheetId
 1400       SourceRange range
 1401       string keyText
 1402     returns
 1403       # The resulting key text after modification.
 1404       Value keyText
 1405 
 1406   # Modifies the rule selector.
 1407   command setMediaText
 1408     parameters
 1409       StyleSheetId styleSheetId
 1410       SourceRange range
 1411       string text
 1412     returns
 1413       # The resulting CSS media rule after modification.
 1414       CSSMedia media
 1415 
 1416   # Modifies the rule selector.
 1417   command setRuleSelector
 1418     parameters
 1419       StyleSheetId styleSheetId
 1420       SourceRange range
 1421       string selector
 1422     returns
 1423       # The resulting selector list after modification.
 1424       SelectorList selectorList
 1425 
 1426   # Sets the new stylesheet text.
 1427   command setStyleSheetText
 1428     parameters
 1429       StyleSheetId styleSheetId
 1430       string text
 1431     returns
 1432       # URL of source map associated with script (if any).
 1433       optional string sourceMapURL
 1434 
 1435   # Applies specified style edits one after another in the given order.
 1436   command setStyleTexts
 1437     parameters
 1438       array of StyleDeclarationEdit edits
 1439     returns
 1440       # The resulting styles after modification.
 1441       array of CSSStyle styles
 1442 
 1443   # Enables the selector recording.
 1444   command startRuleUsageTracking
 1445 
 1446   # Stop tracking rule usage and return the list of rules that were used since last call to
 1447   # `takeCoverageDelta` (or since start of coverage instrumentation)
 1448   command stopRuleUsageTracking
 1449     returns
 1450       array of RuleUsage ruleUsage
 1451 
 1452   # Obtain list of rules that became used since last call to this method (or since start of coverage
 1453   # instrumentation)
 1454   command takeCoverageDelta
 1455     returns
 1456       array of RuleUsage coverage
 1457       # Monotonically increasing time, in seconds.
 1458       number timestamp
 1459 
 1460   # Fires whenever a web font is updated.  A non-empty font parameter indicates a successfully loaded
 1461   # web font
 1462   event fontsUpdated
 1463     parameters
 1464       # The web font that has loaded.
 1465       optional FontFace font
 1466 
 1467   # Fires whenever a MediaQuery result changes (for example, after a browser window has been
 1468   # resized.) The current implementation considers only viewport-dependent media features.
 1469   event mediaQueryResultChanged
 1470 
 1471   # Fired whenever an active document stylesheet is added.
 1472   event styleSheetAdded
 1473     parameters
 1474       # Added stylesheet metainfo.
 1475       CSSStyleSheetHeader header
 1476 
 1477   # Fired whenever a stylesheet is changed as a result of the client operation.
 1478   event styleSheetChanged
 1479     parameters
 1480       StyleSheetId styleSheetId
 1481 
 1482   # Fired whenever an active document stylesheet is removed.
 1483   event styleSheetRemoved
 1484     parameters
 1485       # Identifier of the removed stylesheet.
 1486       StyleSheetId styleSheetId
 1487 
 1488 experimental domain CacheStorage
 1489 
 1490   # Unique identifier of the Cache object.
 1491   type CacheId extends string
 1492 
 1493   # type of HTTP response cached
 1494   type CachedResponseType extends string
 1495     enum
 1496       basic
 1497       cors
 1498       default
 1499       error
 1500       opaqueResponse
 1501       opaqueRedirect
 1502 
 1503   # Data entry.
 1504   type DataEntry extends object
 1505     properties
 1506       # Request URL.
 1507       string requestURL
 1508       # Request method.
 1509       string requestMethod
 1510       # Request headers
 1511       array of Header requestHeaders
 1512       # Number of seconds since epoch.
 1513       number responseTime
 1514       # HTTP response status code.
 1515       integer responseStatus
 1516       # HTTP response status text.
 1517       string responseStatusText
 1518       # HTTP response type
 1519       CachedResponseType responseType
 1520       # Response headers
 1521       array of Header responseHeaders
 1522 
 1523   # Cache identifier.
 1524   type Cache extends object
 1525     properties
 1526       # An opaque unique id of the cache.
 1527       CacheId cacheId
 1528       # Security origin of the cache.
 1529       string securityOrigin
 1530       # The name of the cache.
 1531       string cacheName
 1532 
 1533   type Header extends object
 1534     properties
 1535       string name
 1536       string value
 1537 
 1538   # Cached response
 1539   type CachedResponse extends object
 1540     properties
 1541       # Entry content, base64-encoded.
 1542       binary body
 1543 
 1544   # Deletes a cache.
 1545   command deleteCache
 1546     parameters
 1547       # Id of cache for deletion.
 1548       CacheId cacheId
 1549 
 1550   # Deletes a cache entry.
 1551   command deleteEntry
 1552     parameters
 1553       # Id of cache where the entry will be deleted.
 1554       CacheId cacheId
 1555       # URL spec of the request.
 1556       string request
 1557 
 1558   # Requests cache names.
 1559   command requestCacheNames
 1560     parameters
 1561       # Security origin.
 1562       string securityOrigin
 1563     returns
 1564       # Caches for the security origin.
 1565       array of Cache caches
 1566 
 1567   # Fetches cache entry.
 1568   command requestCachedResponse
 1569     parameters
 1570       # Id of cache that contains the entry.
 1571       CacheId cacheId
 1572       # URL spec of the request.
 1573       string requestURL
 1574       # headers of the request.
 1575       array of Header requestHeaders
 1576     returns
 1577       # Response read from the cache.
 1578       CachedResponse response
 1579 
 1580   # Requests data from cache.
 1581   command requestEntries
 1582     parameters
 1583       # ID of cache to get entries from.
 1584       CacheId cacheId
 1585       # Number of records to skip.
 1586       optional integer skipCount
 1587       # Number of records to fetch.
 1588       optional integer pageSize
 1589       # If present, only return the entries containing this substring in the path
 1590       optional string pathFilter
 1591     returns
 1592       # Array of object store data entries.
 1593       array of DataEntry cacheDataEntries
 1594       # Count of returned entries from this storage. If pathFilter is empty, it
 1595       # is the count of all entries from this storage.
 1596       number returnCount
 1597 
 1598 # A domain for interacting with Cast, Presentation API, and Remote Playback API
 1599 # functionalities.
 1600 experimental domain Cast
 1601 
 1602   type Sink extends object
 1603     properties
 1604       string name
 1605       string id
 1606       # Text describing the current session. Present only if there is an active
 1607       # session on the sink.
 1608       optional string session
 1609 
 1610   # Starts observing for sinks that can be used for tab mirroring, and if set,
 1611   # sinks compatible with |presentationUrl| as well. When sinks are found, a
 1612   # |sinksUpdated| event is fired.
 1613   # Also starts observing for issue messages. When an issue is added or removed,
 1614   # an |issueUpdated| event is fired.
 1615   command enable
 1616     parameters
 1617       optional string presentationUrl
 1618 
 1619   # Stops observing for sinks and issues.
 1620   command disable
 1621 
 1622   # Sets a sink to be used when the web page requests the browser to choose a
 1623   # sink via Presentation API, Remote Playback API, or Cast SDK.
 1624   command setSinkToUse
 1625     parameters
 1626       string sinkName
 1627 
 1628   # Starts mirroring the tab to the sink.
 1629   command startTabMirroring
 1630     parameters
 1631       string sinkName
 1632 
 1633   # Stops the active Cast session on the sink.
 1634   command stopCasting
 1635     parameters
 1636       string sinkName
 1637 
 1638   # This is fired whenever the list of available sinks changes. A sink is a
 1639   # device or a software surface that you can cast to.
 1640   event sinksUpdated
 1641     parameters
 1642       array of Sink sinks
 1643 
 1644   # This is fired whenever the outstanding issue/error message changes.
 1645   # |issueMessage| is empty if there is no issue.
 1646   event issueUpdated
 1647     parameters
 1648       string issueMessage
 1649 
 1650 
 1651 # This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object
 1652 # that has an `id`. This `id` can be used to get additional information on the Node, resolve it into
 1653 # the JavaScript object wrapper, etc. It is important that client receives DOM events only for the
 1654 # nodes that are known to the client. Backend keeps track of the nodes that were sent to the client
 1655 # and never sends the same node twice. It is client's responsibility to collect information about
 1656 # the nodes that were sent to the client.<p>Note that `iframe` owner elements will return
 1657 # corresponding document elements as their child nodes.</p>
 1658 domain DOM
 1659   depends on Runtime
 1660 
 1661   # Unique DOM node identifier.
 1662   type NodeId extends integer
 1663 
 1664   # Unique DOM node identifier used to reference a node that may not have been pushed to the
 1665   # front-end.
 1666   type BackendNodeId extends integer
 1667 
 1668   # Backend node with a friendly name.
 1669   type BackendNode extends object
 1670     properties
 1671       # `Node`'s nodeType.
 1672       integer nodeType
 1673       # `Node`'s nodeName.
 1674       string nodeName
 1675       BackendNodeId backendNodeId
 1676 
 1677   # Pseudo element type.
 1678   type PseudoType extends string
 1679     enum
 1680       first-line
 1681       first-letter
 1682       before
 1683       after
 1684       marker
 1685       backdrop
 1686       selection
 1687       first-line-inherited
 1688       scrollbar
 1689       scrollbar-thumb
 1690       scrollbar-button
 1691       scrollbar-track
 1692       scrollbar-track-piece
 1693       scrollbar-corner
 1694       resizer
 1695       input-list-button
 1696 
 1697   # Shadow root type.
 1698   type ShadowRootType extends string
 1699     enum
 1700       user-agent
 1701       open
 1702       closed
 1703 
 1704   # DOM interaction is implemented in terms of mirror objects that represent the actual DOM nodes.
 1705   # DOMNode is a base node mirror type.
 1706   type Node extends object
 1707     properties
 1708       # Node identifier that is passed into the rest of the DOM messages as the `nodeId`. Backend
 1709       # will only push node with given `id` once. It is aware of all requested nodes and will only
 1710       # fire DOM events for nodes known to the client.
 1711       NodeId nodeId
 1712       # The id of the parent node if any.
 1713       optional NodeId parentId
 1714       # The BackendNodeId for this node.
 1715       BackendNodeId backendNodeId
 1716       # `Node`'s nodeType.
 1717       integer nodeType
 1718       # `Node`'s nodeName.
 1719       string nodeName
 1720       # `Node`'s localName.
 1721       string localName
 1722       # `Node`'s nodeValue.
 1723       string nodeValue
 1724       # Child count for `Container` nodes.
 1725       optional integer childNodeCount
 1726       # Child nodes of this node when requested with children.
 1727       optional array of Node children
 1728       # Attributes of the `Element` node in the form of flat array `[name1, value1, name2, value2]`.
 1729       optional array of string attributes
 1730       # Document URL that `Document` or `FrameOwner` node points to.
 1731       optional string documentURL
 1732       # Base URL that `Document` or `FrameOwner` node uses for URL completion.
 1733       optional string baseURL
 1734       # `DocumentType`'s publicId.
 1735       optional string publicId
 1736       # `DocumentType`'s systemId.
 1737       optional string systemId
 1738       # `DocumentType`'s internalSubset.
 1739       optional string internalSubset
 1740       # `Document`'s XML version in case of XML documents.
 1741       optional string xmlVersion
 1742       # `Attr`'s name.
 1743       optional string name
 1744       # `Attr`'s value.
 1745       optional string value
 1746       # Pseudo element type for this node.
 1747       optional PseudoType pseudoType
 1748       # Shadow root type.
 1749       optional ShadowRootType shadowRootType
 1750       # Frame ID for frame owner elements.
 1751       optional Page.FrameId frameId
 1752       # Content document for frame owner elements.
 1753       optional Node contentDocument
 1754       # Shadow root list for given element host.
 1755       optional array of Node shadowRoots
 1756       # Content document fragment for template elements.
 1757       optional Node templateContent
 1758       # Pseudo elements associated with this node.
 1759       optional array of Node pseudoElements
 1760       # Import document for the HTMLImport links.
 1761       optional Node importedDocument
 1762       # Distributed nodes for given insertion point.
 1763       optional array of BackendNode distributedNodes
 1764       # Whether the node is SVG.
 1765       optional boolean isSVG
 1766 
 1767   # A structure holding an RGBA color.
 1768   type RGBA extends object
 1769     properties
 1770       # The red component, in the [0-255] range.
 1771       integer r
 1772       # The green component, in the [0-255] range.
 1773       integer g
 1774       # The blue component, in the [0-255] range.
 1775       integer b
 1776       # The alpha component, in the [0-1] range (default: 1).
 1777       optional number a
 1778 
 1779   # An array of quad vertices, x immediately followed by y for each point, points clock-wise.
 1780   type Quad extends array of number
 1781 
 1782   # Box model.
 1783   type BoxModel extends object
 1784     properties
 1785       # Content box
 1786       Quad content
 1787       # Padding box
 1788       Quad padding
 1789       # Border box
 1790       Quad border
 1791       # Margin box
 1792       Quad margin
 1793       # Node width
 1794       integer width
 1795       # Node height
 1796       integer height
 1797       # Shape outside coordinates
 1798       optional ShapeOutsideInfo shapeOutside
 1799 
 1800   # CSS Shape Outside details.
 1801   type ShapeOutsideInfo extends object
 1802     properties
 1803       # Shape bounds
 1804       Quad bounds
 1805       # Shape coordinate details
 1806       array of any shape
 1807       # Margin shape bounds
 1808       array of any marginShape
 1809 
 1810   # Rectangle.
 1811   type Rect extends object
 1812     properties
 1813       # X coordinate
 1814       number x
 1815       # Y coordinate
 1816       number y
 1817       # Rectangle width
 1818       number width
 1819       # Rectangle height
 1820       number height
 1821 
 1822   # Collects class names for the node with given id and all of it's child nodes.
 1823   experimental command collectClassNamesFromSubtree
 1824     parameters
 1825       # Id of the node to collect class names.
 1826       NodeId nodeId
 1827     returns
 1828       # Class name list.
 1829       array of string classNames
 1830 
 1831   # Creates a deep copy of the specified node and places it into the target container before the
 1832   # given anchor.
 1833   experimental command copyTo
 1834     parameters
 1835       # Id of the node to copy.
 1836       NodeId nodeId
 1837       # Id of the element to drop the copy into.
 1838       NodeId targetNodeId
 1839       # Drop the copy before this node (if absent, the copy becomes the last child of
 1840       # `targetNodeId`).
 1841       optional NodeId insertBeforeNodeId
 1842     returns
 1843       # Id of the node clone.
 1844       NodeId nodeId
 1845 
 1846   # Describes node given its id, does not require domain to be enabled. Does not start tracking any
 1847   # objects, can be used for automation.
 1848   command describeNode
 1849     parameters
 1850       # Identifier of the node.
 1851       optional NodeId nodeId
 1852       # Identifier of the backend node.
 1853       optional BackendNodeId backendNodeId
 1854       # JavaScript object id of the node wrapper.
 1855       optional Runtime.RemoteObjectId objectId
 1856       # The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
 1857       # entire subtree or provide an integer larger than 0.
 1858       optional integer depth
 1859       # Whether or not iframes and shadow roots should be traversed when returning the subtree
 1860       # (default is false).
 1861       optional boolean pierce
 1862     returns
 1863       # Node description.
 1864       Node node
 1865 
 1866   # Scrolls the specified rect of the given node into view if not already visible.
 1867   # Note: exactly one between nodeId, backendNodeId and objectId should be passed
 1868   # to identify the node.
 1869   experimental command scrollIntoViewIfNeeded
 1870     parameters
 1871       # Identifier of the node.
 1872       optional NodeId nodeId
 1873       # Identifier of the backend node.
 1874       optional BackendNodeId backendNodeId
 1875       # JavaScript object id of the node wrapper.
 1876       optional Runtime.RemoteObjectId objectId
 1877       # The rect to be scrolled into view, relative to the node's border box, in CSS pixels.
 1878       # When omitted, center of the node will be used, similar to Element.scrollIntoView.
 1879       optional Rect rect
 1880 
 1881   # Disables DOM agent for the given page.
 1882   command disable
 1883 
 1884   # Discards search results from the session with the given id. `getSearchResults` should no longer
 1885   # be called for that search.
 1886   experimental command discardSearchResults
 1887     parameters
 1888       # Unique search session identifier.
 1889       string searchId
 1890 
 1891   # Enables DOM agent for the given page.
 1892   command enable
 1893 
 1894   # Focuses the given element.
 1895   command focus
 1896     parameters
 1897       # Identifier of the node.
 1898       optional NodeId nodeId
 1899       # Identifier of the backend node.
 1900       optional BackendNodeId backendNodeId
 1901       # JavaScript object id of the node wrapper.
 1902       optional Runtime.RemoteObjectId objectId
 1903 
 1904   # Returns attributes for the specified node.
 1905   command getAttributes
 1906     parameters
 1907       # Id of the node to retrieve attibutes for.
 1908       NodeId nodeId
 1909     returns
 1910       # An interleaved array of node attribute names and values.
 1911       array of string attributes
 1912 
 1913   # Returns boxes for the given node.
 1914   command getBoxModel
 1915     parameters
 1916       # Identifier of the node.
 1917       optional NodeId nodeId
 1918       # Identifier of the backend node.
 1919       optional BackendNodeId backendNodeId
 1920       # JavaScript object id of the node wrapper.
 1921       optional Runtime.RemoteObjectId objectId
 1922     returns
 1923       # Box model for the node.
 1924       BoxModel model
 1925 
 1926   # Returns quads that describe node position on the page. This method
 1927   # might return multiple quads for inline nodes.
 1928   experimental command getContentQuads
 1929     parameters
 1930       # Identifier of the node.
 1931       optional NodeId nodeId
 1932       # Identifier of the backend node.
 1933       optional BackendNodeId backendNodeId
 1934       # JavaScript object id of the node wrapper.
 1935       optional Runtime.RemoteObjectId objectId
 1936     returns
 1937       # Quads that describe node layout relative to viewport.
 1938       array of Quad quads
 1939 
 1940   # Returns the root DOM node (and optionally the subtree) to the caller.
 1941   command getDocument
 1942     parameters
 1943       # The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
 1944       # entire subtree or provide an integer larger than 0.
 1945       optional integer depth
 1946       # Whether or not iframes and shadow roots should be traversed when returning the subtree
 1947       # (default is false).
 1948       optional boolean pierce
 1949     returns
 1950       # Resulting node.
 1951       Node root
 1952 
 1953   # Returns the root DOM node (and optionally the subtree) to the caller.
 1954   command getFlattenedDocument
 1955     parameters
 1956       # The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
 1957       # entire subtree or provide an integer larger than 0.
 1958       optional integer depth
 1959       # Whether or not iframes and shadow roots should be traversed when returning the subtree
 1960       # (default is false).
 1961       optional boolean pierce
 1962     returns
 1963       # Resulting node.
 1964       array of Node nodes
 1965 
 1966   # Returns node id at given location. Depending on whether DOM domain is enabled, nodeId is
 1967   # either returned or not.
 1968   command getNodeForLocation
 1969     parameters
 1970       # X coordinate.
 1971       integer x
 1972       # Y coordinate.
 1973       integer y
 1974       # False to skip to the nearest non-UA shadow root ancestor (default: false).
 1975       optional boolean includeUserAgentShadowDOM
 1976       # Whether to ignore pointer-events: none on elements and hit test them.
 1977       optional boolean ignorePointerEventsNone
 1978     returns
 1979       # Resulting node.
 1980       BackendNodeId backendNodeId
 1981       # Frame this node belongs to.
 1982       Page.FrameId frameId
 1983       # Id of the node at given coordinates, only when enabled and requested document.
 1984       optional NodeId nodeId
 1985 
 1986   # Returns node's HTML markup.
 1987   command getOuterHTML
 1988     parameters
 1989       # Identifier of the node.
 1990       optional NodeId nodeId
 1991       # Identifier of the backend node.
 1992       optional BackendNodeId backendNodeId
 1993       # JavaScript object id of the node wrapper.
 1994       optional Runtime.RemoteObjectId objectId
 1995     returns
 1996       # Outer HTML markup.
 1997       string outerHTML
 1998 
 1999   # Returns the id of the nearest ancestor that is a relayout boundary.
 2000   experimental command getRelayoutBoundary
 2001     parameters
 2002       # Id of the node.
 2003       NodeId nodeId
 2004     returns
 2005       # Relayout boundary node id for the given node.
 2006       NodeId nodeId
 2007 
 2008   # Returns search results from given `fromIndex` to given `toIndex` from the search with the given
 2009   # identifier.
 2010   experimental command getSearchResults
 2011     parameters
 2012       # Unique search session identifier.
 2013       string searchId
 2014       # Start index of the search result to be returned.
 2015       integer fromIndex
 2016       # End index of the search result to be returned.
 2017       integer toIndex
 2018     returns
 2019       # Ids of the search result nodes.
 2020       array of NodeId nodeIds
 2021 
 2022   # Hides any highlight.
 2023   command hideHighlight
 2024     # Use 'Overlay.hideHighlight' instead
 2025     redirect Overlay
 2026 
 2027   # Highlights DOM node.
 2028   command highlightNode
 2029     # Use 'Overlay.highlightNode' instead
 2030     redirect Overlay
 2031 
 2032   # Highlights given rectangle.
 2033   command highlightRect
 2034     # Use 'Overlay.highlightRect' instead
 2035     redirect Overlay
 2036 
 2037   # Marks last undoable state.
 2038   experimental command markUndoableState
 2039 
 2040   # Moves node into the new container, places it before the given anchor.
 2041   command moveTo
 2042     parameters
 2043       # Id of the node to move.
 2044       NodeId nodeId
 2045       # Id of the element to drop the moved node into.
 2046       NodeId targetNodeId
 2047       # Drop node before this one (if absent, the moved node becomes the last child of
 2048       # `targetNodeId`).
 2049       optional NodeId insertBeforeNodeId
 2050     returns
 2051       # New id of the moved node.
 2052       NodeId nodeId
 2053 
 2054   # Searches for a given string in the DOM tree. Use `getSearchResults` to access search results or
 2055   # `cancelSearch` to end this search session.
 2056   experimental command performSearch
 2057     parameters
 2058       # Plain text or query selector or XPath search query.
 2059       string query
 2060       # True to search in user agent shadow DOM.
 2061       optional boolean includeUserAgentShadowDOM
 2062     returns
 2063       # Unique search session identifier.
 2064       string searchId
 2065       # Number of search results.
 2066       integer resultCount
 2067 
 2068   # Requests that the node is sent to the caller given its path. // FIXME, use XPath
 2069   experimental command pushNodeByPathToFrontend
 2070     parameters
 2071       # Path to node in the proprietary format.
 2072       string path
 2073     returns
 2074       # Id of the node for given path.
 2075       NodeId nodeId
 2076 
 2077   # Requests that a batch of nodes is sent to the caller given their backend node ids.
 2078   experimental command pushNodesByBackendIdsToFrontend
 2079     parameters
 2080       # The array of backend node ids.
 2081       array of BackendNodeId backendNodeIds
 2082     returns
 2083       # The array of ids of pushed nodes that correspond to the backend ids specified in
 2084       # backendNodeIds.
 2085       array of NodeId nodeIds
 2086 
 2087   # Executes `querySelector` on a given node.
 2088   command querySelector
 2089     parameters
 2090       # Id of the node to query upon.
 2091       NodeId nodeId
 2092       # Selector string.
 2093       string selector
 2094     returns
 2095       # Query selector result.
 2096       NodeId nodeId
 2097 
 2098   # Executes `querySelectorAll` on a given node.
 2099   command querySelectorAll
 2100     parameters
 2101       # Id of the node to query upon.
 2102       NodeId nodeId
 2103       # Selector string.
 2104       string selector
 2105     returns
 2106       # Query selector result.
 2107       array of NodeId nodeIds
 2108 
 2109   # Re-does the last undone action.
 2110   experimental command redo
 2111 
 2112   # Removes attribute with given name from an element with given id.
 2113   command removeAttribute
 2114     parameters
 2115       # Id of the element to remove attribute from.
 2116       NodeId nodeId
 2117       # Name of the attribute to remove.
 2118       string name
 2119 
 2120   # Removes node with given id.
 2121   command removeNode
 2122     parameters
 2123       # Id of the node to remove.
 2124       NodeId nodeId
 2125 
 2126   # Requests that children of the node with given id are returned to the caller in form of
 2127   # `setChildNodes` events where not only immediate children are retrieved, but all children down to
 2128   # the specified depth.
 2129   command requestChildNodes
 2130     parameters
 2131       # Id of the node to get children for.
 2132       NodeId nodeId
 2133       # The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
 2134       # entire subtree or provide an integer larger than 0.
 2135       optional integer depth
 2136       # Whether or not iframes and shadow roots should be traversed when returning the sub-tree
 2137       # (default is false).
 2138       optional boolean pierce
 2139 
 2140   # Requests that the node is sent to the caller given the JavaScript node object reference. All
 2141   # nodes that form the path from the node to the root are also sent to the client as a series of
 2142   # `setChildNodes` notifications.
 2143   command requestNode
 2144     parameters
 2145       # JavaScript object id to convert into node.
 2146       Runtime.RemoteObjectId objectId
 2147     returns
 2148       # Node id for given object.
 2149       NodeId nodeId
 2150 
 2151   # Resolves the JavaScript node object for a given NodeId or BackendNodeId.
 2152   command resolveNode
 2153     parameters
 2154       # Id of the node to resolve.
 2155       optional NodeId nodeId
 2156       # Backend identifier of the node to resolve.
 2157       optional DOM.BackendNodeId backendNodeId
 2158       # Symbolic group name that can be used to release multiple objects.
 2159       optional string objectGroup
 2160       # Execution context in which to resolve the node.
 2161       optional Runtime.ExecutionContextId executionContextId
 2162     returns
 2163       # JavaScript object wrapper for given node.
 2164       Runtime.RemoteObject object
 2165 
 2166   # Sets attribute for an element with given id.
 2167   command setAttributeValue
 2168     parameters
 2169       # Id of the element to set attribute for.
 2170       NodeId nodeId
 2171       # Attribute name.
 2172       string name
 2173       # Attribute value.
 2174       string value
 2175 
 2176   # Sets attributes on element with given id. This method is useful when user edits some existing
 2177   # attribute value and types in several attribute name/value pairs.
 2178   command setAttributesAsText
 2179     parameters
 2180       # Id of the element to set attributes for.
 2181       NodeId nodeId
 2182       # Text with a number of attributes. Will parse this text using HTML parser.
 2183       string text
 2184       # Attribute name to replace with new attributes derived from text in case text parsed
 2185       # successfully.
 2186       optional string name
 2187 
 2188   # Sets files for the given file input element.
 2189   command setFileInputFiles
 2190     parameters
 2191       # Array of file paths to set.
 2192       array of string files
 2193       # Identifier of the node.
 2194       optional NodeId nodeId
 2195       # Identifier of the backend node.
 2196       optional BackendNodeId backendNodeId
 2197       # JavaScript object id of the node wrapper.
 2198       optional Runtime.RemoteObjectId objectId
 2199 
 2200   # Sets if stack traces should be captured for Nodes. See `Node.getNodeStackTraces`. Default is disabled.
 2201   experimental command setNodeStackTracesEnabled
 2202     parameters
 2203       # Enable or disable.
 2204       boolean enable
 2205 
 2206   # Gets stack traces associated with a Node. As of now, only provides stack trace for Node creation.
 2207   experimental command getNodeStackTraces
 2208     parameters
 2209       # Id of the node to get stack traces for.
 2210       NodeId nodeId
 2211     returns
 2212       # Creation stack trace, if available.
 2213       optional Runtime.StackTrace creation
 2214 
 2215   # Returns file information for the given
 2216   # File wrapper.
 2217   experimental command getFileInfo
 2218     parameters
 2219       # JavaScript object id of the node wrapper.
 2220       Runtime.RemoteObjectId objectId
 2221     returns
 2222       string path
 2223 
 2224   # Enables console to refer to the node with given id via $x (see Command Line API for more details
 2225   # $x functions).
 2226   experimental command setInspectedNode
 2227     parameters
 2228       # DOM node id to be accessible by means of $x command line API.
 2229       NodeId nodeId
 2230 
 2231   # Sets node name for a node with given id.
 2232   command setNodeName
 2233     parameters
 2234       # Id of the node to set name for.
 2235       NodeId nodeId
 2236       # New node's name.
 2237       string name
 2238     returns
 2239       # New node's id.
 2240       NodeId nodeId
 2241 
 2242   # Sets node value for a node with given id.
 2243   command setNodeValue
 2244     parameters
 2245       # Id of the node to set value for.
 2246       NodeId nodeId
 2247       # New node's value.
 2248       string value
 2249 
 2250   # Sets node HTML markup, returns new node id.
 2251   command setOuterHTML
 2252     parameters
 2253       # Id of the node to set markup for.
 2254       NodeId nodeId
 2255       # Outer HTML markup to set.
 2256       string outerHTML
 2257 
 2258   # Undoes the last performed action.
 2259   experimental command undo
 2260 
 2261   # Returns iframe node that owns iframe with the given domain.
 2262   experimental command getFrameOwner
 2263     parameters
 2264       Page.FrameId frameId
 2265     returns
 2266       # Resulting node.
 2267       BackendNodeId backendNodeId
 2268       # Id of the node at given coordinates, only when enabled and requested document.
 2269       optional NodeId nodeId
 2270 
 2271   # Fired when `Element`'s attribute is modified.
 2272   event attributeModified
 2273     parameters
 2274       # Id of the node that has changed.
 2275       NodeId nodeId
 2276       # Attribute name.
 2277       string name
 2278       # Attribute value.
 2279       string value
 2280 
 2281   # Fired when `Element`'s attribute is removed.
 2282   event attributeRemoved
 2283     parameters
 2284       # Id of the node that has changed.
 2285       NodeId nodeId
 2286       # A ttribute name.
 2287       string name
 2288 
 2289   # Mirrors `DOMCharacterDataModified` event.
 2290   event characterDataModified
 2291     parameters
 2292       # Id of the node that has changed.
 2293       NodeId nodeId
 2294       # New text value.
 2295       string characterData
 2296 
 2297   # Fired when `Container`'s child node count has changed.
 2298   event childNodeCountUpdated
 2299     parameters
 2300       # Id of the node that has changed.
 2301       NodeId nodeId
 2302       # New node count.
 2303       integer childNodeCount
 2304 
 2305   # Mirrors `DOMNodeInserted` event.
 2306   event childNodeInserted
 2307     parameters
 2308       # Id of the node that has changed.
 2309       NodeId parentNodeId
 2310       # If of the previous siblint.
 2311       NodeId previousNodeId
 2312       # Inserted node data.
 2313       Node node
 2314 
 2315   # Mirrors `DOMNodeRemoved` event.
 2316   event childNodeRemoved
 2317     parameters
 2318       # Parent id.
 2319       NodeId parentNodeId
 2320       # Id of the node that has been removed.
 2321       NodeId nodeId
 2322 
 2323   # Called when distrubution is changed.
 2324   experimental event distributedNodesUpdated
 2325     parameters
 2326       # Insertion point where distrubuted nodes were updated.
 2327       NodeId insertionPointId
 2328       # Distributed nodes for given insertion point.
 2329       array of BackendNode distributedNodes
 2330 
 2331   # Fired when `Document` has been totally updated. Node ids are no longer valid.
 2332   event documentUpdated
 2333 
 2334   # Fired when `Element`'s inline style is modified via a CSS property modification.
 2335   experimental event inlineStyleInvalidated
 2336     parameters
 2337       # Ids of the nodes for which the inline styles have been invalidated.
 2338       array of NodeId nodeIds
 2339 
 2340   # Called when a pseudo element is added to an element.
 2341   experimental event pseudoElementAdded
 2342     parameters
 2343       # Pseudo element's parent element id.
 2344       NodeId parentId
 2345       # The added pseudo element.
 2346       Node pseudoElement
 2347 
 2348   # Called when a pseudo element is removed from an element.
 2349   experimental event pseudoElementRemoved
 2350     parameters
 2351       # Pseudo element's parent element id.
 2352       NodeId parentId
 2353       # The removed pseudo element id.
 2354       NodeId pseudoElementId
 2355 
 2356   # Fired when backend wants to provide client with the missing DOM structure. This happens upon
 2357   # most of the calls requesting node ids.
 2358   event setChildNodes
 2359     parameters
 2360       # Parent node id to populate with children.
 2361       NodeId parentId
 2362       # Child nodes array.
 2363       array of Node nodes
 2364 
 2365   # Called when shadow root is popped from the element.
 2366   experimental event shadowRootPopped
 2367     parameters
 2368       # Host element id.
 2369       NodeId hostId
 2370       # Shadow root id.
 2371       NodeId rootId
 2372 
 2373   # Called when shadow root is pushed into the element.
 2374   experimental event shadowRootPushed
 2375     parameters
 2376       # Host element id.
 2377       NodeId hostId
 2378       # Shadow root.
 2379       Node root
 2380 
 2381 # DOM debugging allows setting breakpoints on particular DOM operations and events. JavaScript
 2382 # execution will stop on these operations as if there was a regular breakpoint set.
 2383 domain DOMDebugger
 2384   depends on DOM
 2385   depends on Debugger
 2386   depends on Runtime
 2387 
 2388   # DOM breakpoint type.
 2389   type DOMBreakpointType extends string
 2390     enum
 2391       subtree-modified
 2392       attribute-modified
 2393       node-removed
 2394 
 2395   # Object event listener.
 2396   type EventListener extends object
 2397     properties
 2398       # `EventListener`'s type.
 2399       string type
 2400       # `EventListener`'s useCapture.
 2401       boolean useCapture
 2402       # `EventListener`'s passive flag.
 2403       boolean passive
 2404       # `EventListener`'s once flag.
 2405       boolean once
 2406       # Script id of the handler code.
 2407       Runtime.ScriptId scriptId
 2408       # Line number in the script (0-based).
 2409       integer lineNumber
 2410       # Column number in the script (0-based).
 2411       integer columnNumber
 2412       # Event handler function value.
 2413       optional Runtime.RemoteObject handler
 2414       # Event original handler function value.
 2415       optional Runtime.RemoteObject originalHandler
 2416       # Node the listener is added to (if any).
 2417       optional DOM.BackendNodeId backendNodeId
 2418 
 2419   # Returns event listeners of the given object.
 2420   command getEventListeners
 2421     parameters
 2422       # Identifier of the object to return listeners for.
 2423       Runtime.RemoteObjectId objectId
 2424       # The maximum depth at which Node children should be retrieved, defaults to 1. Use -1 for the
 2425       # entire subtree or provide an integer larger than 0.
 2426       optional integer depth
 2427       # Whether or not iframes and shadow roots should be traversed when returning the subtree
 2428       # (default is false). Reports listeners for all contexts if pierce is enabled.
 2429       optional boolean pierce
 2430     returns
 2431       # Array of relevant listeners.
 2432       array of EventListener listeners
 2433 
 2434   # Removes DOM breakpoint that was set using `setDOMBreakpoint`.
 2435   command removeDOMBreakpoint
 2436     parameters
 2437       # Identifier of the node to remove breakpoint from.
 2438       DOM.NodeId nodeId
 2439       # Type of the breakpoint to remove.
 2440       DOMBreakpointType type
 2441 
 2442   # Removes breakpoint on particular DOM event.
 2443   command removeEventListenerBreakpoint
 2444     parameters
 2445       # Event name.
 2446       string eventName
 2447       # EventTarget interface name.
 2448       experimental optional string targetName
 2449 
 2450   # Removes breakpoint on particular native event.
 2451   experimental command removeInstrumentationBreakpoint
 2452     parameters
 2453       # Instrumentation name to stop on.
 2454       string eventName
 2455 
 2456   # Removes breakpoint from XMLHttpRequest.
 2457   command removeXHRBreakpoint
 2458     parameters
 2459       # Resource URL substring.
 2460       string url
 2461 
 2462   # Sets breakpoint on particular operation with DOM.
 2463   command setDOMBreakpoint
 2464     parameters
 2465       # Identifier of the node to set breakpoint on.
 2466       DOM.NodeId nodeId
 2467       # Type of the operation to stop upon.
 2468       DOMBreakpointType type
 2469 
 2470   # Sets breakpoint on particular DOM event.
 2471   command setEventListenerBreakpoint
 2472     parameters
 2473       # DOM Event name to stop on (any DOM event will do).
 2474       string eventName
 2475       # EventTarget interface name to stop on. If equal to `"*"` or not provided, will stop on any
 2476       # EventTarget.
 2477       experimental optional string targetName
 2478 
 2479   # Sets breakpoint on particular native event.
 2480   experimental command setInstrumentationBreakpoint
 2481     parameters
 2482       # Instrumentation name to stop on.
 2483       string eventName
 2484 
 2485   # Sets breakpoint on XMLHttpRequest.
 2486   command setXHRBreakpoint
 2487     parameters
 2488       # Resource URL substring. All XHRs having this substring in the URL will get stopped upon.
 2489       string url
 2490 
 2491 # This domain facilitates obtaining document snapshots with DOM, layout, and style information.
 2492 experimental domain DOMSnapshot
 2493   depends on CSS
 2494   depends on DOM
 2495   depends on DOMDebugger
 2496   depends on Page
 2497 
 2498   # A Node in the DOM tree.
 2499   type DOMNode extends object
 2500     properties
 2501       # `Node`'s nodeType.
 2502       integer nodeType
 2503       # `Node`'s nodeName.
 2504       string nodeName
 2505       # `Node`'s nodeValue.
 2506       string nodeValue
 2507       # Only set for textarea elements, contains the text value.
 2508       optional string textValue
 2509       # Only set for input elements, contains the input's associated text value.
 2510       optional string inputValue
 2511       # Only set for radio and checkbox input elements, indicates if the element has been checked
 2512       optional boolean inputChecked
 2513       # Only set for option elements, indicates if the element has been selected
 2514       optional boolean optionSelected
 2515       # `Node`'s id, corresponds to DOM.Node.backendNodeId.
 2516       DOM.BackendNodeId backendNodeId
 2517       # The indexes of the node's child nodes in the `domNodes` array returned by `getSnapshot`, if
 2518       # any.
 2519       optional array of integer childNodeIndexes
 2520       # Attributes of an `Element` node.
 2521       optional array of NameValue attributes
 2522       # Indexes of pseudo elements associated with this node in the `domNodes` array returned by
 2523       # `getSnapshot`, if any.
 2524       optional array of integer pseudoElementIndexes
 2525       # The index of the node's related layout tree node in the `layoutTreeNodes` array returned by
 2526       # `getSnapshot`, if any.
 2527       optional integer layoutNodeIndex
 2528       # Document URL that `Document` or `FrameOwner` node points to.
 2529       optional string documentURL
 2530       # Base URL that `Document` or `FrameOwner` node uses for URL completion.
 2531       optional string baseURL
 2532       # Only set for documents, contains the document's content language.
 2533       optional string contentLanguage
 2534       # Only set for documents, contains the document's character set encoding.
 2535       optional string documentEncoding
 2536       # `DocumentType` node's publicId.
 2537       optional string publicId
 2538       # `DocumentType` node's systemId.
 2539       optional string systemId
 2540       # Frame ID for frame owner elements and also for the document node.
 2541       optional Page.FrameId frameId
 2542       # The index of a frame owner element's content document in the `domNodes` array returned by
 2543       # `getSnapshot`, if any.
 2544       optional integer contentDocumentIndex
 2545       # Type of a pseudo element node.
 2546       optional DOM.PseudoType pseudoType
 2547       # Shadow root type.
 2548       optional DOM.ShadowRootType shadowRootType
 2549       # Whether this DOM node responds to mouse clicks. This includes nodes that have had click
 2550       # event listeners attached via JavaScript as well as anchor tags that naturally navigate when
 2551       # clicked.
 2552       optional boolean isClickable
 2553       # Details of the node's event listeners, if any.
 2554       optional array of DOMDebugger.EventListener eventListeners
 2555       # The selected url for nodes with a srcset attribute.
 2556       optional string currentSourceURL
 2557       # The url of the script (if any) that generates this node.
 2558       optional string originURL
 2559       # Scroll offsets, set when this node is a Document.
 2560       optional number scrollOffsetX
 2561       optional number scrollOffsetY
 2562 
 2563   # Details of post layout rendered text positions. The exact layout should not be regarded as
 2564   # stable and may change between versions.
 2565   type InlineTextBox extends object
 2566     properties
 2567       # The bounding box in document coordinates. Note that scroll offset of the document is ignored.
 2568       DOM.Rect boundingBox
 2569       # The starting index in characters, for this post layout textbox substring. Characters that
 2570       # would be represented as a surrogate pair in UTF-16 have length 2.
 2571       integer startCharacterIndex
 2572       # The number of characters in this post layout textbox substring. Characters that would be
 2573       # represented as a surrogate pair in UTF-16 have length 2.
 2574       integer numCharacters
 2575 
 2576   # Details of an element in the DOM tree with a LayoutObject.
 2577   type LayoutTreeNode extends object
 2578     properties
 2579       # The index of the related DOM node in the `domNodes` array returned by `getSnapshot`.
 2580       integer domNodeIndex
 2581       # The bounding box in document coordinates. Note that scroll offset of the document is ignored.
 2582       DOM.Rect boundingBox
 2583       # Contents of the LayoutText, if any.
 2584       optional string layoutText
 2585       # The post-layout inline text nodes, if any.
 2586       optional array of InlineTextBox inlineTextNodes
 2587       # Index into the `computedStyles` array returned by `getSnapshot`.
 2588       optional integer styleIndex
 2589       # Global paint order index, which is determined by the stacking order of the nodes. Nodes
 2590       # that are painted together will have the same index. Only provided if includePaintOrder in
 2591       # getSnapshot was true.
 2592       optional integer paintOrder
 2593       # Set to true to indicate the element begins a new stacking context.
 2594       optional boolean isStackingContext
 2595 
 2596   # A subset of the full ComputedStyle as defined by the request whitelist.
 2597   type ComputedStyle extends object
 2598     properties
 2599       # Name/value pairs of computed style properties.
 2600       array of NameValue properties
 2601 
 2602   # A name/value pair.
 2603   type NameValue extends object
 2604     properties
 2605       # Attribute/property name.
 2606       string name
 2607       # Attribute/property value.
 2608       string value
 2609 
 2610   # Index of the string in the strings table.
 2611   type StringIndex extends integer
 2612 
 2613   # Index of the string in the strings table.
 2614   type ArrayOfStrings extends array of StringIndex
 2615 
 2616   # Data that is only present on rare nodes.
 2617   type RareStringData extends object
 2618     properties
 2619       array of integer index
 2620       array of StringIndex value
 2621 
 2622   type RareBooleanData extends object
 2623     properties
 2624       array of integer index
 2625 
 2626   type RareIntegerData extends object
 2627     properties
 2628       array of integer index
 2629       array of integer value
 2630 
 2631   type Rectangle extends array of number
 2632 
 2633   # Document snapshot.
 2634   type DocumentSnapshot extends object
 2635     properties
 2636       # Document URL that `Document` or `FrameOwner` node points to.
 2637       StringIndex documentURL
 2638       # Document title.
 2639       StringIndex title
 2640       # Base URL that `Document` or `FrameOwner` node uses for URL completion.
 2641       StringIndex baseURL
 2642       # Contains the document's content language.
 2643       StringIndex contentLanguage
 2644       # Contains the document's character set encoding.
 2645       StringIndex encodingName
 2646       # `DocumentType` node's publicId.
 2647       StringIndex publicId
 2648       # `DocumentType` node's systemId.
 2649       StringIndex systemId
 2650       # Frame ID for frame owner elements and also for the document node.
 2651       StringIndex frameId
 2652       # A table with dom nodes.
 2653       NodeTreeSnapshot nodes
 2654       # The nodes in the layout tree.
 2655       LayoutTreeSnapshot layout
 2656       # The post-layout inline text nodes.
 2657       TextBoxSnapshot textBoxes
 2658       # Horizontal scroll offset.
 2659       optional number scrollOffsetX
 2660       # Vertical scroll offset.
 2661       optional number scrollOffsetY
 2662       # Document content width.
 2663       optional number contentWidth
 2664       # Document content height.
 2665       optional number contentHeight
 2666 
 2667   # Table containing nodes.
 2668   type NodeTreeSnapshot extends object
 2669     properties
 2670       # Parent node index.
 2671       optional array of integer parentIndex
 2672       # `Node`'s nodeType.
 2673       optional array of integer nodeType
 2674       # `Node`'s nodeName.
 2675       optional array of StringIndex nodeName
 2676       # `Node`'s nodeValue.
 2677       optional array of StringIndex nodeValue
 2678       # `Node`'s id, corresponds to DOM.Node.backendNodeId.
 2679       optional array of DOM.BackendNodeId backendNodeId
 2680       # Attributes of an `Element` node. Flatten name, value pairs.
 2681       optional array of ArrayOfStrings attributes
 2682       # Only set for textarea elements, contains the text value.
 2683       optional RareStringData textValue
 2684       # Only set for input elements, contains the input's associated text value.
 2685       optional RareStringData inputValue
 2686       # Only set for radio and checkbox input elements, indicates if the element has been checked
 2687       optional RareBooleanData inputChecked
 2688       # Only set for option elements, indicates if the element has been selected
 2689       optional RareBooleanData optionSelected
 2690       # The index of the document in the list of the snapshot documents.
 2691       optional RareIntegerData contentDocumentIndex
 2692       # Type of a pseudo element node.
 2693       optional RareStringData pseudoType
 2694       # Whether this DOM node responds to mouse clicks. This includes nodes that have had click
 2695       # event listeners attached via JavaScript as well as anchor tags that naturally navigate when
 2696       # clicked.
 2697       optional RareBooleanData isClickable
 2698       # The selected url for nodes with a srcset attribute.
 2699       optional RareStringData currentSourceURL
 2700       # The url of the script (if any) that generates this node.
 2701       optional RareStringData originURL
 2702 
 2703   # Table of details of an element in the DOM tree with a LayoutObject.
 2704   type LayoutTreeSnapshot extends object
 2705     properties
 2706       # Index of the corresponding node in the `NodeTreeSnapshot` array returned by `captureSnapshot`.
 2707       array of integer nodeIndex
 2708       # Array of indexes specifying computed style strings, filtered according to the `computedStyles` parameter passed to `captureSnapshot`.
 2709       array of ArrayOfStrings styles
 2710       # The absolute position bounding box.
 2711       array of Rectangle bounds
 2712       # Contents of the LayoutText, if any.
 2713       array of StringIndex text
 2714       # Stacking context information.
 2715       RareBooleanData stackingContexts
 2716       # Global paint order index, which is determined by the stacking order of the nodes. Nodes
 2717       # that are painted together will have the same index. Only provided if includePaintOrder in
 2718       # captureSnapshot was true.
 2719       optional array of integer paintOrders
 2720       # The offset rect of nodes. Only available when includeDOMRects is set to true
 2721       optional array of Rectangle offsetRects
 2722       # The scroll rect of nodes. Only available when includeDOMRects is set to true
 2723       optional array of Rectangle scrollRects
 2724       # The client rect of nodes. Only available when includeDOMRects is set to true
 2725       optional array of Rectangle clientRects
 2726 
 2727   # Table of details of the post layout rendered text positions. The exact layout should not be regarded as
 2728   # stable and may change between versions.
 2729   type TextBoxSnapshot extends object
 2730     properties
 2731       # Index of the layout tree node that owns this box collection.
 2732       array of integer layoutIndex
 2733       # The absolute position bounding box.
 2734       array of Rectangle bounds
 2735       # The starting index in characters, for this post layout textbox substring. Characters that
 2736       # would be represented as a surrogate pair in UTF-16 have length 2.
 2737       array of integer start
 2738       # The number of characters in this post layout textbox substring. Characters that would be
 2739       # represented as a surrogate pair in UTF-16 have length 2.
 2740       array of integer length
 2741 
 2742   # Disables DOM snapshot agent for the given page.
 2743   command disable
 2744 
 2745   # Enables DOM snapshot agent for the given page.
 2746   command enable
 2747 
 2748   # Returns a document snapshot, including the full DOM tree of the root node (including iframes,
 2749   # template contents, and imported documents) in a flattened array, as well as layout and
 2750   # white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is
 2751   # flattened.
 2752   deprecated command getSnapshot
 2753     parameters
 2754       # Whitelist of computed styles to return.
 2755       array of string computedStyleWhitelist
 2756       # Whether or not to retrieve details of DOM listeners (default false).
 2757       optional boolean includeEventListeners
 2758       # Whether to determine and include the paint order index of LayoutTreeNodes (default false).
 2759       optional boolean includePaintOrder
 2760       # Whether to include UA shadow tree in the snapshot (default false).
 2761       optional boolean includeUserAgentShadowTree
 2762     returns
 2763       # The nodes in the DOM tree. The DOMNode at index 0 corresponds to the root document.
 2764       array of DOMNode domNodes
 2765       # The nodes in the layout tree.
 2766       array of LayoutTreeNode layoutTreeNodes
 2767       # Whitelisted ComputedStyle properties for each node in the layout tree.
 2768       array of ComputedStyle computedStyles
 2769 
 2770   # Returns a document snapshot, including the full DOM tree of the root node (including iframes,
 2771   # template contents, and imported documents) in a flattened array, as well as layout and
 2772   # white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is
 2773   # flattened.
 2774   command captureSnapshot
 2775     parameters
 2776       # Whitelist of computed styles to return.
 2777       array of string computedStyles
 2778       # Whether to include layout object paint orders into the snapshot.
 2779       optional boolean includePaintOrder
 2780       # Whether to include DOM rectangles (offsetRects, clientRects, scrollRects) into the snapshot
 2781       optional boolean includeDOMRects
 2782     returns
 2783       # The nodes in the DOM tree. The DOMNode at index 0 corresponds to the root document.
 2784       array of DocumentSnapshot documents
 2785       # Shared string table that all string properties refer to with indexes.
 2786       array of string strings
 2787 
 2788 # Query and modify DOM storage.
 2789 experimental domain DOMStorage
 2790 
 2791   # DOM Storage identifier.
 2792   type StorageId extends object
 2793     properties
 2794       # Security origin for the storage.
 2795       string securityOrigin
 2796       # Whether the storage is local storage (not session storage).
 2797       boolean isLocalStorage
 2798 
 2799   # DOM Storage item.
 2800   type Item extends array of string
 2801 
 2802   command clear
 2803     parameters
 2804       StorageId storageId
 2805 
 2806   # Disables storage tracking, prevents storage events from being sent to the client.
 2807   command disable
 2808 
 2809   # Enables storage tracking, storage events will now be delivered to the client.
 2810   command enable
 2811 
 2812   command getDOMStorageItems
 2813     parameters
 2814       StorageId storageId
 2815     returns
 2816       array of Item entries
 2817 
 2818   command removeDOMStorageItem
 2819     parameters
 2820       StorageId storageId
 2821       string key
 2822 
 2823   command setDOMStorageItem
 2824     parameters
 2825       StorageId storageId
 2826       string key
 2827       string value
 2828 
 2829   event domStorageItemAdded
 2830     parameters
 2831       StorageId storageId
 2832       string key
 2833       string newValue
 2834 
 2835   event domStorageItemRemoved
 2836     parameters
 2837       StorageId storageId
 2838       string key
 2839 
 2840   event domStorageItemUpdated
 2841     parameters
 2842       StorageId storageId
 2843       string key
 2844       string oldValue
 2845       string newValue
 2846 
 2847   event domStorageItemsCleared
 2848     parameters
 2849       StorageId storageId
 2850 
 2851 experimental domain Database
 2852 
 2853   # Unique identifier of Database object.
 2854   type DatabaseId extends string
 2855 
 2856   # Database object.
 2857   type Database extends object
 2858     properties
 2859       # Database ID.
 2860       DatabaseId id
 2861       # Database domain.
 2862       string domain
 2863       # Database name.
 2864       string name
 2865       # Database version.
 2866       string version
 2867 
 2868   # Database error.
 2869   type Error extends object
 2870     properties
 2871       # Error message.
 2872       string message
 2873       # Error code.
 2874       integer code
 2875 
 2876   # Disables database tracking, prevents database events from being sent to the client.
 2877   command disable
 2878 
 2879   # Enables database tracking, database events will now be delivered to the client.
 2880   command enable
 2881 
 2882   command executeSQL
 2883     parameters
 2884       DatabaseId databaseId
 2885       string query
 2886     returns
 2887       optional array of string columnNames
 2888       optional array of any values
 2889       optional Error sqlError
 2890 
 2891   command getDatabaseTableNames
 2892     parameters
 2893       DatabaseId databaseId
 2894     returns
 2895       array of string tableNames
 2896 
 2897   event addDatabase
 2898     parameters
 2899       Database database
 2900 
 2901 experimental domain DeviceOrientation
 2902 
 2903   # Clears the overridden Device Orientation.
 2904   command clearDeviceOrientationOverride
 2905 
 2906   # Overrides the Device Orientation.
 2907   command setDeviceOrientationOverride
 2908     parameters
 2909       # Mock alpha
 2910       number alpha
 2911       # Mock beta
 2912       number beta
 2913       # Mock gamma
 2914       number gamma
 2915 
 2916 # This domain emulates different environments for the page.
 2917 domain Emulation
 2918   depends on DOM
 2919   depends on Page
 2920   depends on Runtime
 2921 
 2922   # Screen orientation.
 2923   type ScreenOrientation extends object
 2924     properties
 2925       # Orientation type.
 2926       enum type
 2927         portraitPrimary
 2928         portraitSecondary
 2929         landscapePrimary
 2930         landscapeSecondary
 2931       # Orientation angle.
 2932       integer angle
 2933 
 2934   type MediaFeature extends object
 2935     properties
 2936       string name
 2937       string value
 2938 
 2939   # advance: If the scheduler runs out of immediate work, the virtual time base may fast forward to
 2940   # allow the next delayed task (if any) to run; pause: The virtual time base may not advance;
 2941   # pauseIfNetworkFetchesPending: The virtual time base may not advance if there are any pending
 2942   # resource fetches.
 2943   experimental type VirtualTimePolicy extends string
 2944     enum
 2945       advance
 2946       pause
 2947       pauseIfNetworkFetchesPending
 2948 
 2949   # Used to specify User Agent Cient Hints to emulate. See https://wicg.github.io/ua-client-hints
 2950   experimental type UserAgentBrandVersion extends object
 2951     properties
 2952       string brand
 2953       string version
 2954 
 2955   # Used to specify User Agent Cient Hints to emulate. See https://wicg.github.io/ua-client-hints
 2956   experimental type UserAgentMetadata extends object
 2957     properties
 2958       array of UserAgentBrandVersion brands
 2959       string fullVersion
 2960       string platform
 2961       string platformVersion
 2962       string architecture
 2963       string model
 2964       boolean mobile
 2965 
 2966   # Tells whether emulation is supported.
 2967   command canEmulate
 2968     returns
 2969       # True if emulation is supported.
 2970       boolean result
 2971 
 2972   # Clears the overridden device metrics.
 2973   command clearDeviceMetricsOverride
 2974 
 2975   # Clears the overridden Geolocation Position and Error.
 2976   command clearGeolocationOverride
 2977 
 2978   # Requests that page scale factor is reset to initial values.
 2979   experimental command resetPageScaleFactor
 2980 
 2981   # Enables or disables simulating a focused and active page.
 2982   experimental command setFocusEmulationEnabled
 2983     parameters
 2984       # Whether to enable to disable focus emulation.
 2985       boolean enabled
 2986 
 2987   # Enables CPU throttling to emulate slow CPUs.
 2988   experimental command setCPUThrottlingRate
 2989     parameters
 2990       # Throttling rate as a slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
 2991       number rate
 2992 
 2993   # Sets or clears an override of the default background color of the frame. This override is used
 2994   # if the content does not specify one.
 2995   command setDefaultBackgroundColorOverride
 2996     parameters
 2997       # RGBA of the default background color. If not specified, any existing override will be
 2998       # cleared.
 2999       optional DOM.RGBA color
 3000 
 3001   # Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
 3002   # window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
 3003   # query results).
 3004   command setDeviceMetricsOverride
 3005     parameters
 3006       # Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
 3007       integer width
 3008       # Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override.
 3009       integer height
 3010       # Overriding device scale factor value. 0 disables the override.
 3011       number deviceScaleFactor
 3012       # Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text
 3013       # autosizing and more.
 3014       boolean mobile
 3015       # Scale to apply to resulting view image.
 3016       experimental optional number scale
 3017       # Overriding screen width value in pixels (minimum 0, maximum 10000000).
 3018       experimental optional integer screenWidth
 3019       # Overriding screen height value in pixels (minimum 0, maximum 10000000).
 3020       experimental optional integer screenHeight
 3021       # Overriding view X position on screen in pixels (minimum 0, maximum 10000000).
 3022       experimental optional integer positionX
 3023       # Overriding view Y position on screen in pixels (minimum 0, maximum 10000000).
 3024       experimental optional integer positionY
 3025       # Do not set visible view size, rely upon explicit setVisibleSize call.
 3026       experimental optional boolean dontSetVisibleSize
 3027       # Screen orientation override.
 3028       optional ScreenOrientation screenOrientation
 3029       # If set, the visible area of the page will be overridden to this viewport. This viewport
 3030       # change is not observed by the page, e.g. viewport-relative elements do not change positions.
 3031       experimental optional Page.Viewport viewport
 3032 
 3033   experimental command setScrollbarsHidden
 3034     parameters
 3035       # Whether scrollbars should be always hidden.
 3036       boolean hidden
 3037 
 3038   experimental command setDocumentCookieDisabled
 3039     parameters
 3040       # Whether document.coookie API should be disabled.
 3041       boolean disabled
 3042 
 3043   experimental command setEmitTouchEventsForMouse
 3044     parameters
 3045       # Whether touch emulation based on mouse input should be enabled.
 3046       boolean enabled
 3047       # Touch/gesture events configuration. Default: current platform.
 3048       optional enum configuration
 3049         mobile
 3050         desktop
 3051 
 3052   # Emulates the given media type or media feature for CSS media queries.
 3053   command setEmulatedMedia
 3054     parameters
 3055       # Media type to emulate. Empty string disables the override.
 3056       optional string media
 3057       # Media features to emulate.
 3058       optional array of MediaFeature features
 3059 
 3060   # Emulates the given vision deficiency.
 3061   experimental command setEmulatedVisionDeficiency
 3062     parameters
 3063       # Vision deficiency to emulate.
 3064       enum type
 3065         none
 3066         achromatopsia
 3067         blurredVision
 3068         deuteranopia
 3069         protanopia
 3070         tritanopia
 3071 
 3072   # Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position
 3073   # unavailable.
 3074   command setGeolocationOverride
 3075     parameters
 3076       # Mock latitude
 3077       optional number latitude
 3078       # Mock longitude
 3079       optional number longitude
 3080       # Mock accuracy
 3081       optional number accuracy
 3082 
 3083   # Overrides value returned by the javascript navigator object.
 3084   experimental deprecated command setNavigatorOverrides
 3085     parameters
 3086       # The platform navigator.platform should return.
 3087       string platform
 3088 
 3089   # Sets a specified page scale factor.
 3090   experimental command setPageScaleFactor
 3091     parameters
 3092       # Page scale factor.
 3093       number pageScaleFactor
 3094 
 3095   # Switches script execution in the page.
 3096   command setScriptExecutionDisabled
 3097     parameters
 3098       # Whether script execution should be disabled in the page.
 3099       boolean value
 3100 
 3101   # Enables touch on platforms which do not support them.
 3102   command setTouchEmulationEnabled
 3103     parameters
 3104       # Whether the touch event emulation should be enabled.
 3105       boolean enabled
 3106       # Maximum touch points supported. Defaults to one.
 3107       optional integer maxTouchPoints
 3108 
 3109   # Turns on virtual time for all frames (replacing real-time with a synthetic time source) and sets
 3110   # the current virtual time policy.  Note this supersedes any previous time budget.
 3111   experimental command setVirtualTimePolicy
 3112     parameters
 3113       VirtualTimePolicy policy
 3114       # If set, after this many virtual milliseconds have elapsed virtual time will be paused and a
 3115       # virtualTimeBudgetExpired event is sent.
 3116       optional number budget
 3117       # If set this specifies the maximum number of tasks that can be run before virtual is forced
 3118       # forwards to prevent deadlock.
 3119       optional integer maxVirtualTimeTaskStarvationCount
 3120       # If set the virtual time policy change should be deferred until any frame starts navigating.
 3121       # Note any previous deferred policy change is superseded.
 3122       optional boolean waitForNavigation
 3123       # If set, base::Time::Now will be overridden to initially return this value.
 3124       optional Network.TimeSinceEpoch initialVirtualTime
 3125     returns
 3126       # Absolute timestamp at which virtual time was first enabled (up time in milliseconds).
 3127       number virtualTimeTicksBase
 3128 
 3129   # Overrides default host system locale with the specified one.
 3130   experimental command setLocaleOverride
 3131     parameters
 3132       # ICU style C locale (e.g. "en_US"). If not specified or empty, disables the override and
 3133       # restores default host system locale.
 3134       optional string locale
 3135 
 3136   # Overrides default host system timezone with the specified one.
 3137   experimental command setTimezoneOverride
 3138     parameters
 3139       # The timezone identifier. If empty, disables the override and
 3140       # restores default host system timezone.
 3141       string timezoneId
 3142 
 3143   # Resizes the frame/viewport of the page. Note that this does not affect the frame's container
 3144   # (e.g. browser window). Can be used to produce screenshots of the specified size. Not supported
 3145   # on Android.
 3146   experimental deprecated command setVisibleSize
 3147     parameters
 3148       # Frame width (DIP).
 3149       integer width
 3150       # Frame height (DIP).
 3151       integer height
 3152 
 3153   # Notification sent after the virtual time budget for the current VirtualTimePolicy has run out.
 3154   experimental event virtualTimeBudgetExpired
 3155 
 3156   # Allows overriding user agent with the given string.
 3157   command setUserAgentOverride
 3158     parameters
 3159       # User agent to use.
 3160       string userAgent
 3161       # Browser langugage to emulate.
 3162       optional string acceptLanguage
 3163       # The platform navigator.platform should return.
 3164       optional string platform
 3165       # To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData
 3166       experimental optional UserAgentMetadata userAgentMetadata
 3167 
 3168 # This domain provides experimental commands only supported in headless mode.
 3169 experimental domain HeadlessExperimental
 3170   depends on Page
 3171   depends on Runtime
 3172 
 3173   # Encoding options for a screenshot.
 3174   type ScreenshotParams extends object
 3175     properties
 3176       # Image compression format (defaults to png).
 3177       optional enum format
 3178         jpeg
 3179         png
 3180       # Compression quality from range [0..100] (jpeg only).
 3181       optional integer quality
 3182 
 3183   # Sends a BeginFrame to the target and returns when the frame was completed. Optionally captures a
 3184   # screenshot from the resulting frame. Requires that the target was created with enabled
 3185   # BeginFrameControl. Designed for use with --run-all-compositor-stages-before-draw, see also
 3186   # https://goo.gl/3zHXhB for more background.
 3187   command beginFrame
 3188     parameters
 3189       # Timestamp of this BeginFrame in Renderer TimeTicks (milliseconds of uptime). If not set,
 3190       # the current time will be used.
 3191       optional number frameTimeTicks
 3192       # The interval between BeginFrames that is reported to the compositor, in milliseconds.
 3193       # Defaults to a 60 frames/second interval, i.e. about 16.666 milliseconds.
 3194       optional number interval
 3195       # Whether updates should not be committed and drawn onto the display. False by default. If
 3196       # true, only side effects of the BeginFrame will be run, such as layout and animations, but
 3197       # any visual updates may not be visible on the display or in screenshots.
 3198       optional boolean noDisplayUpdates
 3199       # If set, a screenshot of the frame will be captured and returned in the response. Otherwise,
 3200       # no screenshot will be captured. Note that capturing a screenshot can fail, for example,
 3201       # during renderer initialization. In such a case, no screenshot data will be returned.
 3202       optional ScreenshotParams screenshot
 3203     returns
 3204       # Whether the BeginFrame resulted in damage and, thus, a new frame was committed to the
 3205       # display. Reported for diagnostic uses, may be removed in the future.
 3206       boolean hasDamage
 3207       # Base64-encoded image data of the screenshot, if one was requested and successfully taken.
 3208       optional binary screenshotData
 3209 
 3210   # Disables headless events for the target.
 3211   command disable
 3212 
 3213   # Enables headless events for the target.
 3214   command enable
 3215 
 3216   # Issued when the target starts or stops needing BeginFrames.
 3217   # Deprecated. Issue beginFrame unconditionally instead and use result from
 3218   # beginFrame to detect whether the frames were suppressed.
 3219   deprecated event needsBeginFramesChanged
 3220     parameters
 3221       # True if BeginFrames are needed, false otherwise.
 3222       boolean needsBeginFrames
 3223 
 3224 # Input/Output operations for streams produced by DevTools.
 3225 domain IO
 3226 
 3227   # This is either obtained from another method or specifed as `blob:&lt;uuid&gt;` where
 3228   # `&lt;uuid&gt` is an UUID of a Blob.
 3229   type StreamHandle extends string
 3230 
 3231   # Close the stream, discard any temporary backing storage.
 3232   command close
 3233     parameters
 3234       # Handle of the stream to close.
 3235       StreamHandle handle
 3236 
 3237   # Read a chunk of the stream
 3238   command read
 3239     parameters
 3240       # Handle of the stream to read.
 3241       StreamHandle handle
 3242       # Seek to the specified offset before reading (if not specificed, proceed with offset
 3243       # following the last read). Some types of streams may only support sequential reads.
 3244       optional integer offset
 3245       # Maximum number of bytes to read (left upon the agent discretion if not specified).
 3246       optional integer size
 3247     returns
 3248       # Set if the data is base64-encoded
 3249       optional boolean base64Encoded
 3250       # Data that were read.
 3251       string data
 3252       # Set if the end-of-file condition occured while reading.
 3253       boolean eof
 3254 
 3255   # Return UUID of Blob object specified by a remote object id.
 3256   command resolveBlob
 3257     parameters
 3258       # Object id of a Blob object wrapper.
 3259       Runtime.RemoteObjectId objectId
 3260     returns
 3261       # UUID of the specified Blob.
 3262       string uuid
 3263 
 3264 experimental domain IndexedDB
 3265   depends on Runtime
 3266 
 3267   # Database with an array of object stores.
 3268   type DatabaseWithObjectStores extends object
 3269     properties
 3270       # Database name.
 3271       string name
 3272       # Database version (type is not 'integer', as the standard
 3273       # requires the version number to be 'unsigned long long')
 3274       number version
 3275       # Object stores in this database.
 3276       array of ObjectStore objectStores
 3277 
 3278   # Object store.
 3279   type ObjectStore extends object
 3280     properties
 3281       # Object store name.
 3282       string name
 3283       # Object store key path.
 3284       KeyPath keyPath
 3285       # If true, object store has auto increment flag set.
 3286       boolean autoIncrement
 3287       # Indexes in this object store.
 3288       array of ObjectStoreIndex indexes
 3289 
 3290   # Object store index.
 3291   type ObjectStoreIndex extends object
 3292     properties
 3293       # Index name.
 3294       string name
 3295       # Index key path.
 3296       KeyPath keyPath
 3297       # If true, index is unique.
 3298       boolean unique
 3299       # If true, index allows multiple entries for a key.
 3300       boolean multiEntry
 3301 
 3302   # Key.
 3303   type Key extends object
 3304     properties
 3305       # Key type.
 3306       enum type
 3307         number
 3308         string
 3309         date
 3310         array
 3311       # Number value.
 3312       optional number number
 3313       # String value.
 3314       optional string string
 3315       # Date value.
 3316       optional number date
 3317       # Array value.
 3318       optional array of Key array
 3319 
 3320   # Key range.
 3321   type KeyRange extends object
 3322     properties
 3323       # Lower bound.
 3324       optional Key lower
 3325       # Upper bound.
 3326       optional Key upper
 3327       # If true lower bound is open.
 3328       boolean lowerOpen
 3329       # If true upper bound is open.
 3330       boolean upperOpen
 3331 
 3332   # Data entry.
 3333   type DataEntry extends object
 3334     properties
 3335       # Key object.
 3336       Runtime.RemoteObject key
 3337       # Primary key object.
 3338       Runtime.RemoteObject primaryKey
 3339       # Value object.
 3340       Runtime.RemoteObject value
 3341 
 3342   # Key path.
 3343   type KeyPath extends object
 3344     properties
 3345       # Key path type.
 3346       enum type
 3347         null
 3348         string
 3349         array
 3350       # String value.
 3351       optional string string
 3352       # Array value.
 3353       optional array of string array
 3354 
 3355   # Clears all entries from an object store.
 3356   command clearObjectStore
 3357     parameters
 3358       # Security origin.
 3359       string securityOrigin
 3360       # Database name.
 3361       string databaseName
 3362       # Object store name.
 3363       string objectStoreName
 3364 
 3365   # Deletes a database.
 3366   command deleteDatabase
 3367     parameters
 3368       # Security origin.
 3369       string securityOrigin
 3370       # Database name.
 3371       string databaseName
 3372 
 3373   # Delete a range of entries from an object store
 3374   command deleteObjectStoreEntries
 3375     parameters
 3376       string securityOrigin
 3377       string databaseName
 3378       string objectStoreName
 3379       # Range of entry keys to delete
 3380       KeyRange keyRange
 3381 
 3382   # Disables events from backend.
 3383   command disable
 3384 
 3385   # Enables events from backend.
 3386   command enable
 3387 
 3388   # Requests data from object store or index.
 3389   command requestData
 3390     parameters
 3391       # Security origin.
 3392       string securityOrigin
 3393       # Database name.
 3394       string databaseName
 3395       # Object store name.
 3396       string objectStoreName
 3397       # Index name, empty string for object store data requests.
 3398       string indexName
 3399       # Number of records to skip.
 3400       integer skipCount
 3401       # Number of records to fetch.
 3402       integer pageSize
 3403       # Key range.
 3404       optional KeyRange keyRange
 3405     returns
 3406       # Array of object store data entries.
 3407       array of DataEntry objectStoreDataEntries
 3408       # If true, there are more entries to fetch in the given range.
 3409       boolean hasMore
 3410 
 3411   # Gets metadata of an object store
 3412   command getMetadata
 3413     parameters
 3414       # Security origin.
 3415       string securityOrigin
 3416       # Database name.
 3417       string databaseName
 3418       # Object store name.
 3419       string objectStoreName
 3420     returns
 3421       # the entries count
 3422       number entriesCount
 3423       # the current value of key generator, to become the next inserted
 3424       # key into the object store. Valid if objectStore.autoIncrement
 3425       # is true.
 3426       number keyGeneratorValue
 3427 
 3428   # Requests database with given name in given frame.
 3429   command requestDatabase
 3430     parameters
 3431       # Security origin.
 3432       string securityOrigin
 3433       # Database name.
 3434       string databaseName
 3435     returns
 3436       # Database with an array of object stores.
 3437       DatabaseWithObjectStores databaseWithObjectStores
 3438 
 3439   # Requests database names for given security origin.
 3440   command requestDatabaseNames
 3441     parameters
 3442       # Security origin.
 3443       string securityOrigin
 3444     returns
 3445       # Database names for origin.
 3446       array of string databaseNames
 3447 
 3448 domain Input
 3449 
 3450   type TouchPoint extends object
 3451     properties
 3452       # X coordinate of the event relative to the main frame's viewport in CSS pixels.
 3453       number x
 3454       # Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to
 3455       # the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
 3456       number y
 3457       # X radius of the touch area (default: 1.0).
 3458       optional number radiusX
 3459       # Y radius of the touch area (default: 1.0).
 3460       optional number radiusY
 3461       # Rotation angle (default: 0.0).
 3462       optional number rotationAngle
 3463       # Force (default: 1.0).
 3464       optional number force
 3465       # Identifier used to track touch sources between events, must be unique within an event.
 3466       optional number id
 3467 
 3468   experimental type GestureSourceType extends string
 3469     enum
 3470       default
 3471       touch
 3472       mouse
 3473 
 3474   type MouseButton extends string
 3475     enum
 3476         none
 3477         left
 3478         middle
 3479         right
 3480         back
 3481         forward
 3482 
 3483   # UTC time in seconds, counted from January 1, 1970.
 3484   type TimeSinceEpoch extends number
 3485 
 3486   # Dispatches a key event to the page.
 3487   command dispatchKeyEvent
 3488     parameters
 3489       # Type of the key event.
 3490       enum type
 3491         keyDown
 3492         keyUp
 3493         rawKeyDown
 3494         char
 3495       # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
 3496       # (default: 0).
 3497       optional integer modifiers
 3498       # Time at which the event occurred.
 3499       optional TimeSinceEpoch timestamp
 3500       # Text as generated by processing a virtual key code with a keyboard layout. Not needed for
 3501       # for `keyUp` and `rawKeyDown` events (default: "")
 3502       optional string text
 3503       # Text that would have been generated by the keyboard if no modifiers were pressed (except for
 3504       # shift). Useful for shortcut (accelerator) key handling (default: "").
 3505       optional string unmodifiedText
 3506       # Unique key identifier (e.g., 'U+0041') (default: "").
 3507       optional string keyIdentifier
 3508       # Unique DOM defined string value for each physical key (e.g., 'KeyA') (default: "").
 3509       optional string code
 3510       # Unique DOM defined string value describing the meaning of the key in the context of active
 3511       # modifiers, keyboard layout, etc (e.g., 'AltGr') (default: "").
 3512       optional string key
 3513       # Windows virtual key code (default: 0).
 3514       optional integer windowsVirtualKeyCode
 3515       # Native virtual key code (default: 0).
 3516       optional integer nativeVirtualKeyCode
 3517       # Whether the event was generated from auto repeat (default: false).
 3518       optional boolean autoRepeat
 3519       # Whether the event was generated from the keypad (default: false).
 3520       optional boolean isKeypad
 3521       # Whether the event was a system key event (default: false).
 3522       optional boolean isSystemKey
 3523       # Whether the event was from the left or right side of the keyboard. 1=Left, 2=Right (default:
 3524       # 0).
 3525       optional integer location
 3526       # Editing commands to send with the key event (e.g., 'selectAll') (default: []).
 3527       # These are related to but not equal the command names used in `document.execCommand` and NSStandardKeyBindingResponding.
 3528       # See https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/editing/commands/editor_command_names.h for valid command names.
 3529       experimental optional array of string commands
 3530 
 3531   # This method emulates inserting text that doesn't come from a key press,
 3532   # for example an emoji keyboard or an IME.
 3533   experimental command insertText
 3534     parameters
 3535       # The text to insert.
 3536       string text
 3537 
 3538   # Dispatches a mouse event to the page.
 3539   command dispatchMouseEvent
 3540     parameters
 3541       # Type of the mouse event.
 3542       enum type
 3543         mousePressed
 3544         mouseReleased
 3545         mouseMoved
 3546         mouseWheel
 3547       # X coordinate of the event relative to the main frame's viewport in CSS pixels.
 3548       number x
 3549       # Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to
 3550       # the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
 3551       number y
 3552       # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
 3553       # (default: 0).
 3554       optional integer modifiers
 3555       # Time at which the event occurred.
 3556       optional TimeSinceEpoch timestamp
 3557       # Mouse button (default: "none").
 3558       optional MouseButton button
 3559       # A number indicating which buttons are pressed on the mouse when a mouse event is triggered.
 3560       # Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0.
 3561       optional integer buttons
 3562       # Number of times the mouse button was clicked (default: 0).
 3563       optional integer clickCount
 3564       # X delta in CSS pixels for mouse wheel event (default: 0).
 3565       optional number deltaX
 3566       # Y delta in CSS pixels for mouse wheel event (default: 0).
 3567       optional number deltaY
 3568       # Pointer type (default: "mouse").
 3569       optional enum pointerType
 3570         mouse
 3571         pen
 3572 
 3573   # Dispatches a touch event to the page.
 3574   command dispatchTouchEvent
 3575     parameters
 3576       # Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while
 3577       # TouchStart and TouchMove must contains at least one.
 3578       enum type
 3579         touchStart
 3580         touchEnd
 3581         touchMove
 3582         touchCancel
 3583       # Active touch points on the touch device. One event per any changed point (compared to
 3584       # previous touch event in a sequence) is generated, emulating pressing/moving/releasing points
 3585       # one by one.
 3586       array of TouchPoint touchPoints
 3587       # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
 3588       # (default: 0).
 3589       optional integer modifiers
 3590       # Time at which the event occurred.
 3591       optional TimeSinceEpoch timestamp
 3592 
 3593   # Emulates touch event from the mouse event parameters.
 3594   experimental command emulateTouchFromMouseEvent
 3595     parameters
 3596       # Type of the mouse event.
 3597       enum type
 3598         mousePressed
 3599         mouseReleased
 3600         mouseMoved
 3601         mouseWheel
 3602       # X coordinate of the mouse pointer in DIP.
 3603       integer x
 3604       # Y coordinate of the mouse pointer in DIP.
 3605       integer y
 3606       # Mouse button. Only "none", "left", "right" are supported.
 3607       MouseButton button
 3608       # Time at which the event occurred (default: current time).
 3609       optional TimeSinceEpoch timestamp
 3610       # X delta in DIP for mouse wheel event (default: 0).
 3611       optional number deltaX
 3612       # Y delta in DIP for mouse wheel event (default: 0).
 3613       optional number deltaY
 3614       # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
 3615       # (default: 0).
 3616       optional integer modifiers
 3617       # Number of times the mouse button was clicked (default: 0).
 3618       optional integer clickCount
 3619 
 3620   # Ignores input events (useful while auditing page).
 3621   command setIgnoreInputEvents
 3622     parameters
 3623       # Ignores input events processing when set to true.
 3624       boolean ignore
 3625 
 3626   # Synthesizes a pinch gesture over a time period by issuing appropriate touch events.
 3627   experimental command synthesizePinchGesture
 3628     parameters
 3629       # X coordinate of the start of the gesture in CSS pixels.
 3630       number x
 3631       # Y coordinate of the start of the gesture in CSS pixels.
 3632       number y
 3633       # Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out).
 3634       number scaleFactor
 3635       # Relative pointer speed in pixels per second (default: 800).
 3636       optional integer relativeSpeed
 3637       # Which type of input events to be generated (default: 'default', which queries the platform
 3638       # for the preferred input type).
 3639       optional GestureSourceType gestureSourceType
 3640 
 3641   # Synthesizes a scroll gesture over a time period by issuing appropriate touch events.
 3642   experimental command synthesizeScrollGesture
 3643     parameters
 3644       # X coordinate of the start of the gesture in CSS pixels.
 3645       number x
 3646       # Y coordinate of the start of the gesture in CSS pixels.
 3647       number y
 3648       # The distance to scroll along the X axis (positive to scroll left).
 3649       optional number xDistance
 3650       # The distance to scroll along the Y axis (positive to scroll up).
 3651       optional number yDistance
 3652       # The number of additional pixels to scroll back along the X axis, in addition to the given
 3653       # distance.
 3654       optional number xOverscroll
 3655       # The number of additional pixels to scroll back along the Y axis, in addition to the given
 3656       # distance.
 3657       optional number yOverscroll
 3658       # Prevent fling (default: true).
 3659       optional boolean preventFling
 3660       # Swipe speed in pixels per second (default: 800).
 3661       optional integer speed
 3662       # Which type of input events to be generated (default: 'default', which queries the platform
 3663       # for the preferred input type).
 3664       optional GestureSourceType gestureSourceType
 3665       # The number of times to repeat the gesture (default: 0).
 3666       optional integer repeatCount
 3667       # The number of milliseconds delay between each repeat. (default: 250).
 3668       optional integer repeatDelayMs
 3669       # The name of the interaction markers to generate, if not empty (default: "").
 3670       optional string interactionMarkerName
 3671 
 3672   # Synthesizes a tap gesture over a time period by issuing appropriate touch events.
 3673   experimental command synthesizeTapGesture
 3674     parameters
 3675       # X coordinate of the start of the gesture in CSS pixels.
 3676       number x
 3677       # Y coordinate of the start of the gesture in CSS pixels.
 3678       number y
 3679       # Duration between touchdown and touchup events in ms (default: 50).
 3680       optional integer duration
 3681       # Number of times to perform the tap (e.g. 2 for double tap, default: 1).
 3682       optional integer tapCount
 3683       # Which type of input events to be generated (default: 'default', which queries the platform
 3684       # for the preferred input type).
 3685       optional GestureSourceType gestureSourceType
 3686 
 3687 experimental domain Inspector
 3688 
 3689   # Disables inspector domain notifications.
 3690   command disable
 3691 
 3692   # Enables inspector domain notifications.
 3693   command enable
 3694 
 3695   # Fired when remote debugging connection is about to be terminated. Contains detach reason.
 3696   event detached
 3697     parameters
 3698       # The reason why connection has been terminated.
 3699       string reason
 3700 
 3701   # Fired when debugging target has crashed
 3702   event targetCrashed
 3703 
 3704   # Fired when debugging target has reloaded after crash
 3705   event targetReloadedAfterCrash
 3706 
 3707 experimental domain LayerTree
 3708   depends on DOM
 3709 
 3710   # Unique Layer identifier.
 3711   type LayerId extends string
 3712 
 3713   # Unique snapshot identifier.
 3714   type SnapshotId extends string
 3715 
 3716   # Rectangle where scrolling happens on the main thread.
 3717   type ScrollRect extends object
 3718     properties
 3719       # Rectangle itself.
 3720       DOM.Rect rect
 3721       # Reason for rectangle to force scrolling on the main thread
 3722       enum type
 3723         RepaintsOnScroll
 3724         TouchEventHandler
 3725         WheelEventHandler
 3726 
 3727   # Sticky position constraints.
 3728   type StickyPositionConstraint extends object
 3729     properties
 3730       # Layout rectangle of the sticky element before being shifted
 3731       DOM.Rect stickyBoxRect
 3732       # Layout rectangle of the containing block of the sticky element
 3733       DOM.Rect containingBlockRect
 3734       # The nearest sticky layer that shifts the sticky box
 3735       optional LayerId nearestLayerShiftingStickyBox
 3736       # The nearest sticky layer that shifts the containing block
 3737       optional LayerId nearestLayerShiftingContainingBlock
 3738 
 3739   # Serialized fragment of layer picture along with its offset within the layer.
 3740   type PictureTile extends object
 3741     properties
 3742       # Offset from owning layer left boundary
 3743       number x
 3744       # Offset from owning layer top boundary
 3745       number y
 3746       # Base64-encoded snapshot data.
 3747       binary picture
 3748 
 3749   # Information about a compositing layer.
 3750   type Layer extends object
 3751     properties
 3752       # The unique id for this layer.
 3753       LayerId layerId
 3754       # The id of parent (not present for root).
 3755       optional LayerId parentLayerId
 3756       # The backend id for the node associated with this layer.
 3757       optional DOM.BackendNodeId backendNodeId
 3758       # Offset from parent layer, X coordinate.
 3759       number offsetX
 3760       # Offset from parent layer, Y coordinate.
 3761       number offsetY
 3762       # Layer width.
 3763       number width
 3764       # Layer height.
 3765       number height
 3766       # Transformation matrix for layer, default is identity matrix
 3767       optional array of number transform
 3768       # Transform anchor point X, absent if no transform specified
 3769       optional number anchorX
 3770       # Transform anchor point Y, absent if no transform specified
 3771       optional number anchorY
 3772       # Transform anchor point Z, absent if no transform specified
 3773       optional number anchorZ
 3774       # Indicates how many time this layer has painted.
 3775       integer paintCount
 3776       # Indicates whether this layer hosts any content, rather than being used for
 3777       # transform/scrolling purposes only.
 3778       boolean drawsContent
 3779       # Set if layer is not visible.
 3780       optional boolean invisible
 3781       # Rectangles scrolling on main thread only.
 3782       optional array of ScrollRect scrollRects
 3783       # Sticky position constraint information
 3784       optional StickyPositionConstraint stickyPositionConstraint
 3785 
 3786   # Array of timings, one per paint step.
 3787   type PaintProfile extends array of number
 3788 
 3789   # Provides the reasons why the given layer was composited.
 3790   command compositingReasons
 3791     parameters
 3792       # The id of the layer for which we want to get the reasons it was composited.
 3793       LayerId layerId
 3794     returns
 3795       # A list of strings specifying reasons for the given layer to become composited.
 3796       deprecated array of string compositingReasons
 3797       # A list of strings specifying reason IDs for the given layer to become composited.
 3798       array of string compositingReasonIds
 3799 
 3800   # Disables compositing tree inspection.
 3801   command disable
 3802 
 3803   # Enables compositing tree inspection.
 3804   command enable
 3805 
 3806   # Returns the snapshot identifier.
 3807   command loadSnapshot
 3808     parameters
 3809       # An array of tiles composing the snapshot.
 3810       array of PictureTile tiles
 3811     returns
 3812       # The id of the snapshot.
 3813       SnapshotId snapshotId
 3814 
 3815   # Returns the layer snapshot identifier.
 3816   command makeSnapshot
 3817     parameters
 3818       # The id of the layer.
 3819       LayerId layerId
 3820     returns
 3821       # The id of the layer snapshot.
 3822       SnapshotId snapshotId
 3823 
 3824   command profileSnapshot
 3825     parameters
 3826       # The id of the layer snapshot.
 3827       SnapshotId snapshotId
 3828       # The maximum number of times to replay the snapshot (1, if not specified).
 3829       optional integer minRepeatCount
 3830       # The minimum duration (in seconds) to replay the snapshot.
 3831       optional number minDuration
 3832       # The clip rectangle to apply when replaying the snapshot.
 3833       optional DOM.Rect clipRect
 3834     returns
 3835       # The array of paint profiles, one per run.
 3836       array of PaintProfile timings
 3837 
 3838   # Releases layer snapshot captured by the back-end.
 3839   command releaseSnapshot
 3840     parameters
 3841       # The id of the layer snapshot.
 3842       SnapshotId snapshotId
 3843 
 3844   # Replays the layer snapshot and returns the resulting bitmap.
 3845   command replaySnapshot
 3846     parameters
 3847       # The id of the layer snapshot.
 3848       SnapshotId snapshotId
 3849       # The first step to replay from (replay from the very start if not specified).
 3850       optional integer fromStep
 3851       # The last step to replay to (replay till the end if not specified).
 3852       optional integer toStep
 3853       # The scale to apply while replaying (defaults to 1).
 3854       optional number scale
 3855     returns
 3856       # A data: URL for resulting image.
 3857       string dataURL
 3858 
 3859   # Replays the layer snapshot and returns canvas log.
 3860   command snapshotCommandLog
 3861     parameters
 3862       # The id of the layer snapshot.
 3863       SnapshotId snapshotId
 3864     returns
 3865       # The array of canvas function calls.
 3866       array of object commandLog
 3867 
 3868   event layerPainted
 3869     parameters
 3870       # The id of the painted layer.
 3871       LayerId layerId
 3872       # Clip rectangle.
 3873       DOM.Rect clip
 3874 
 3875   event layerTreeDidChange
 3876     parameters
 3877       # Layer tree, absent if not in the comspositing mode.
 3878       optional array of Layer layers
 3879 
 3880 # Provides access to log entries.
 3881 domain Log
 3882   depends on Runtime
 3883   depends on Network
 3884 
 3885   # Log entry.
 3886   type LogEntry extends object
 3887     properties
 3888       # Log entry source.
 3889       enum source
 3890         xml
 3891         javascript
 3892         network
 3893         storage
 3894         appcache
 3895         rendering
 3896         security
 3897         deprecation
 3898         worker
 3899         violation
 3900         intervention
 3901         recommendation
 3902         other
 3903       # Log entry severity.
 3904       enum level
 3905         verbose
 3906         info
 3907         warning
 3908         error
 3909       # Logged text.
 3910       string text
 3911       # Timestamp when this entry was added.
 3912       Runtime.Timestamp timestamp
 3913       # URL of the resource if known.
 3914       optional string url
 3915       # Line number in the resource.
 3916       optional integer lineNumber
 3917       # JavaScript stack trace.
 3918       optional Runtime.StackTrace stackTrace
 3919       # Identifier of the network request associated with this entry.
 3920       optional Network.RequestId networkRequestId
 3921       # Identifier of the worker associated with this entry.
 3922       optional string workerId
 3923       # Call arguments.
 3924       optional array of Runtime.RemoteObject args
 3925 
 3926   # Violation configuration setting.
 3927   type ViolationSetting extends object
 3928     properties
 3929       # Violation type.
 3930       enum name
 3931         longTask
 3932         longLayout
 3933         blockedEvent
 3934         blockedParser
 3935         discouragedAPIUse
 3936         handler
 3937         recurringHandler
 3938       # Time threshold to trigger upon.
 3939       number threshold
 3940 
 3941   # Clears the log.
 3942   command clear
 3943 
 3944   # Disables log domain, prevents further log entries from being reported to the client.
 3945   command disable
 3946 
 3947   # Enables log domain, sends the entries collected so far to the client by means of the
 3948   # `entryAdded` notification.
 3949   command enable
 3950 
 3951   # start violation reporting.
 3952   command startViolationsReport
 3953     parameters
 3954       # Configuration for violations.
 3955       array of ViolationSetting config
 3956 
 3957   # Stop violation reporting.
 3958   command stopViolationsReport
 3959 
 3960   # Issued when new message was logged.
 3961   event entryAdded
 3962     parameters
 3963       # The entry.
 3964       LogEntry entry
 3965 
 3966 experimental domain Memory
 3967 
 3968   # Memory pressure level.
 3969   type PressureLevel extends string
 3970     enum
 3971       moderate
 3972       critical
 3973 
 3974   command getDOMCounters
 3975     returns
 3976       integer documents
 3977       integer nodes
 3978       integer jsEventListeners
 3979 
 3980   command prepareForLeakDetection
 3981 
 3982   # Simulate OomIntervention by purging V8 memory.
 3983   command forciblyPurgeJavaScriptMemory
 3984 
 3985   # Enable/disable suppressing memory pressure notifications in all processes.
 3986   command setPressureNotificationsSuppressed
 3987     parameters
 3988       # If true, memory pressure notifications will be suppressed.
 3989       boolean suppressed
 3990 
 3991   # Simulate a memory pressure notification in all processes.
 3992   command simulatePressureNotification
 3993     parameters
 3994       # Memory pressure level of the notification.
 3995       PressureLevel level
 3996 
 3997   # Start collecting native memory profile.
 3998   command startSampling
 3999     parameters
 4000       # Average number of bytes between samples.
 4001       optional integer samplingInterval
 4002       # Do not randomize intervals between samples.
 4003       optional boolean suppressRandomness
 4004 
 4005   # Stop collecting native memory profile.
 4006   command stopSampling
 4007 
 4008   # Retrieve native memory allocations profile
 4009   # collected since renderer process startup.
 4010   command getAllTimeSamplingProfile
 4011     returns
 4012       SamplingProfile profile
 4013 
 4014   # Retrieve native memory allocations profile
 4015   # collected since browser process startup.
 4016   command getBrowserSamplingProfile
 4017     returns
 4018       SamplingProfile profile
 4019 
 4020   # Retrieve native memory allocations profile collected since last
 4021   # `startSampling` call.
 4022   command getSamplingProfile
 4023     returns
 4024       SamplingProfile profile
 4025 
 4026   # Heap profile sample.
 4027   type SamplingProfileNode extends object
 4028     properties
 4029       # Size of the sampled allocation.
 4030       number size
 4031       # Total bytes attributed to this sample.
 4032       number total
 4033       # Execution stack at the point of allocation.
 4034       array of string stack
 4035 
 4036   # Array of heap profile samples.
 4037   type SamplingProfile extends object
 4038     properties
 4039       array of SamplingProfileNode samples
 4040       array of Module modules
 4041 
 4042   # Executable module information
 4043   type Module extends object
 4044     properties
 4045       # Name of the module.
 4046       string name
 4047       # UUID of the module.
 4048       string uuid
 4049       # Base address where the module is loaded into memory. Encoded as a decimal
 4050       # or hexadecimal (0x prefixed) string.
 4051       string baseAddress
 4052       # Size of the module in bytes.
 4053       number size
 4054 
 4055 # Network domain allows tracking network activities of the page. It exposes information about http,
 4056 # file, data and other requests and responses, their headers, bodies, timing, etc.
 4057 domain Network
 4058   depends on Debugger
 4059   depends on Runtime
 4060   depends on Security
 4061 
 4062   # Resource type as it was perceived by the rendering engine.
 4063   type ResourceType extends string
 4064     enum
 4065       Document
 4066       Stylesheet
 4067       Image
 4068       Media
 4069       Font
 4070       Script
 4071       TextTrack
 4072       XHR
 4073       Fetch
 4074       EventSource
 4075       WebSocket
 4076       Manifest
 4077       SignedExchange
 4078       Ping
 4079       CSPViolationReport
 4080       Other
 4081 
 4082   # Unique loader identifier.
 4083   type LoaderId extends string
 4084 
 4085   # Unique request identifier.
 4086   type RequestId extends string
 4087 
 4088   # Unique intercepted request identifier.
 4089   type InterceptionId extends string
 4090 
 4091   # Network level fetch failure reason.
 4092   type ErrorReason extends string
 4093     enum
 4094       Failed
 4095       Aborted
 4096       TimedOut
 4097       AccessDenied
 4098       ConnectionClosed
 4099       ConnectionReset
 4100       ConnectionRefused
 4101       ConnectionAborted
 4102       ConnectionFailed
 4103       NameNotResolved
 4104       InternetDisconnected
 4105       AddressUnreachable
 4106       BlockedByClient
 4107       BlockedByResponse
 4108 
 4109   # UTC time in seconds, counted from January 1, 1970.
 4110   type TimeSinceEpoch extends number
 4111 
 4112   # Monotonically increasing time in seconds since an arbitrary point in the past.
 4113   type MonotonicTime extends number
 4114 
 4115   # Request / response headers as keys / values of JSON object.
 4116   type Headers extends object
 4117 
 4118   # The underlying connection technology that the browser is supposedly using.
 4119   type ConnectionType extends string
 4120     enum
 4121       none
 4122       cellular2g
 4123       cellular3g
 4124       cellular4g
 4125       bluetooth
 4126       ethernet
 4127       wifi
 4128       wimax
 4129       other
 4130 
 4131   # Represents the cookie's 'SameSite' status:
 4132   # https://tools.ietf.org/html/draft-west-first-party-cookies
 4133   type CookieSameSite extends string
 4134     enum
 4135       Strict
 4136       Lax
 4137       None
 4138 
 4139   # Represents the cookie's 'Priority' status:
 4140   # https://tools.ietf.org/html/draft-west-cookie-priority-00
 4141   experimental type CookiePriority extends string
 4142     enum
 4143       Low
 4144       Medium
 4145       High
 4146 
 4147   # Timing information for the request.
 4148   type ResourceTiming extends object
 4149     properties
 4150       # Timing's requestTime is a baseline in seconds, while the other numbers are ticks in
 4151       # milliseconds relatively to this requestTime.
 4152       number requestTime
 4153       # Started resolving proxy.
 4154       number proxyStart
 4155       # Finished resolving proxy.
 4156       number proxyEnd
 4157       # Started DNS address resolve.
 4158       number dnsStart
 4159       # Finished DNS address resolve.
 4160       number dnsEnd
 4161       # Started connecting to the remote host.
 4162       number connectStart
 4163       # Connected to the remote host.
 4164       number connectEnd
 4165       # Started SSL handshake.
 4166       number sslStart
 4167       # Finished SSL handshake.
 4168       number sslEnd
 4169       # Started running ServiceWorker.
 4170       experimental number workerStart
 4171       # Finished Starting ServiceWorker.
 4172       experimental number workerReady
 4173       # Started fetch event.
 4174       experimental number workerFetchStart
 4175       # Settled fetch event respondWith promise.
 4176       experimental number workerRespondWithSettled
 4177       # Started sending request.
 4178       number sendStart
 4179       # Finished sending request.
 4180       number sendEnd
 4181       # Time the server started pushing request.
 4182       experimental number pushStart
 4183       # Time the server finished pushing request.
 4184       experimental number pushEnd
 4185       # Finished receiving response headers.
 4186       number receiveHeadersEnd
 4187 
 4188   # Loading priority of a resource request.
 4189   type ResourcePriority extends string
 4190     enum
 4191       VeryLow
 4192       Low
 4193       Medium
 4194       High
 4195       VeryHigh
 4196 
 4197   # HTTP request data.
 4198   type Request extends object
 4199     properties
 4200       # Request URL (without fragment).
 4201       string url
 4202       # Fragment of the requested URL starting with hash, if present.
 4203       optional string urlFragment
 4204       # HTTP request method.
 4205       string method
 4206       # HTTP request headers.
 4207       Headers headers
 4208       # HTTP POST request data.
 4209       optional string postData
 4210       # True when the request has POST data. Note that postData might still be omitted when this flag is true when the data is too long.
 4211       optional boolean hasPostData
 4212       # The mixed content type of the request.
 4213       optional Security.MixedContentType mixedContentType
 4214       # Priority of the resource request at the time request is sent.
 4215       ResourcePriority initialPriority
 4216       # The referrer policy of the request, as defined in https://www.w3.org/TR/referrer-policy/
 4217       enum referrerPolicy
 4218         unsafe-url
 4219         no-referrer-when-downgrade
 4220         no-referrer
 4221         origin
 4222         origin-when-cross-origin
 4223         same-origin
 4224         strict-origin
 4225         strict-origin-when-cross-origin
 4226       # Whether is loaded via link preload.
 4227       optional boolean isLinkPreload
 4228 
 4229   # Details of a signed certificate timestamp (SCT).
 4230   type SignedCertificateTimestamp extends object
 4231     properties
 4232       # Validation status.
 4233       string status
 4234       # Origin.
 4235       string origin
 4236       # Log name / description.
 4237       string logDescription
 4238       # Log ID.
 4239       string logId
 4240       # Issuance date.
 4241       TimeSinceEpoch timestamp
 4242       # Hash algorithm.
 4243       string hashAlgorithm
 4244       # Signature algorithm.
 4245       string signatureAlgorithm
 4246       # Signature data.
 4247       string signatureData
 4248 
 4249   # Security details about a request.
 4250   type SecurityDetails extends object
 4251     properties
 4252       # Protocol name (e.g. "TLS 1.2" or "QUIC").
 4253       string protocol
 4254       # Key Exchange used by the connection, or the empty string if not applicable.
 4255       string keyExchange
 4256       # (EC)DH group used by the connection, if applicable.
 4257       optional string keyExchangeGroup
 4258       # Cipher name.
 4259       string cipher
 4260       # TLS MAC. Note that AEAD ciphers do not have separate MACs.
 4261       optional string mac
 4262       # Certificate ID value.
 4263       Security.CertificateId certificateId
 4264       # Certificate subject name.
 4265       string subjectName
 4266       # Subject Alternative Name (SAN) DNS names and IP addresses.
 4267       array of string sanList
 4268       # Name of the issuing CA.
 4269       string issuer
 4270       # Certificate valid from date.
 4271       TimeSinceEpoch validFrom
 4272       # Certificate valid to (expiration) date
 4273       TimeSinceEpoch validTo
 4274       # List of signed certificate timestamps (SCTs).
 4275       array of SignedCertificateTimestamp signedCertificateTimestampList
 4276       # Whether the request complied with Certificate Transparency policy
 4277       CertificateTransparencyCompliance certificateTransparencyCompliance
 4278 
 4279   # Whether the request complied with Certificate Transparency policy.
 4280   type CertificateTransparencyCompliance extends string
 4281     enum
 4282       unknown
 4283       not-compliant
 4284       compliant
 4285 
 4286   # The reason why request was blocked.
 4287   type BlockedReason extends string
 4288     enum
 4289       other
 4290       csp
 4291       mixed-content
 4292       origin
 4293       inspector
 4294       subresource-filter
 4295       content-type
 4296       collapsed-by-client
 4297       coep-frame-resource-needs-coep-header
 4298       coop-sandboxed-iframe-cannot-navigate-to-coop-page
 4299       corp-not-same-origin
 4300       corp-not-same-origin-after-defaulted-to-same-origin-by-coep
 4301       corp-not-same-site
 4302 
 4303   # Source of serviceworker response.
 4304   type ServiceWorkerResponseSource extends string
 4305     enum
 4306       cache-storage
 4307       http-cache
 4308       fallback-code
 4309       network
 4310 
 4311   # HTTP response data.
 4312   type Response extends object
 4313     properties
 4314       # Response URL. This URL can be different from CachedResource.url in case of redirect.
 4315       string url
 4316       # HTTP response status code.
 4317       integer status
 4318       # HTTP response status text.
 4319       string statusText
 4320       # HTTP response headers.
 4321       Headers headers
 4322       # HTTP response headers text.
 4323       optional string headersText
 4324       # Resource mimeType as determined by the browser.
 4325       string mimeType
 4326       # Refined HTTP request headers that were actually transmitted over the network.
 4327       optional Headers requestHeaders
 4328       # HTTP request headers text.
 4329       optional string requestHeadersText
 4330       # Specifies whether physical connection was actually reused for this request.
 4331       boolean connectionReused
 4332       # Physical connection id that was actually used for this request.
 4333       number connectionId
 4334       # Remote IP address.
 4335       optional string remoteIPAddress
 4336       # Remote port.
 4337       optional integer remotePort
 4338       # Specifies that the request was served from the disk cache.
 4339       optional boolean fromDiskCache
 4340       # Specifies that the request was served from the ServiceWorker.
 4341       optional boolean fromServiceWorker
 4342       # Specifies that the request was served from the prefetch cache.
 4343       optional boolean fromPrefetchCache
 4344       # Total number of bytes received for this request so far.
 4345       number encodedDataLength
 4346       # Timing information for the given request.
 4347       optional ResourceTiming timing
 4348       # Response source of response from ServiceWorker.
 4349       optional ServiceWorkerResponseSource serviceWorkerResponseSource
 4350       # The time at which the returned response was generated.
 4351       optional TimeSinceEpoch responseTime
 4352       # Cache Storage Cache Name.
 4353       optional string cacheStorageCacheName
 4354       # Protocol used to fetch this request.
 4355       optional string protocol
 4356       # Security state of the request resource.
 4357       Security.SecurityState securityState
 4358       # Security details for the request.
 4359       optional SecurityDetails securityDetails
 4360 
 4361   # WebSocket request data.
 4362   type WebSocketRequest extends object
 4363     properties
 4364       # HTTP request headers.
 4365       Headers headers
 4366 
 4367   # WebSocket response data.
 4368   type WebSocketResponse extends object
 4369     properties
 4370       # HTTP response status code.
 4371       integer status
 4372       # HTTP response status text.
 4373       string statusText
 4374       # HTTP response headers.
 4375       Headers headers
 4376       # HTTP response headers text.
 4377       optional string headersText
 4378       # HTTP request headers.
 4379       optional Headers requestHeaders
 4380       # HTTP request headers text.
 4381       optional string requestHeadersText
 4382 
 4383   # WebSocket message data. This represents an entire WebSocket message, not just a fragmented frame as the name suggests.
 4384   type WebSocketFrame extends object
 4385     properties
 4386       # WebSocket message opcode.
 4387       number opcode
 4388       # WebSocket message mask.
 4389       boolean mask
 4390       # WebSocket message payload data.
 4391       # If the opcode is 1, this is a text message and payloadData is a UTF-8 string.
 4392       # If the opcode isn't 1, then payloadData is a base64 encoded string representing binary data.
 4393       string payloadData
 4394 
 4395   # Information about the cached resource.
 4396   type CachedResource extends object
 4397     properties
 4398       # Resource URL. This is the url of the original network request.
 4399       string url
 4400       # Type of this resource.
 4401       ResourceType type
 4402       # Cached response data.
 4403       optional Response response
 4404       # Cached response body size.
 4405       number bodySize
 4406 
 4407   # Information about the request initiator.
 4408   type Initiator extends object
 4409     properties
 4410       # Type of this initiator.
 4411       enum type
 4412         parser
 4413         script
 4414         preload
 4415         SignedExchange
 4416         other
 4417       # Initiator JavaScript stack trace, set for Script only.
 4418       optional Runtime.StackTrace stack
 4419       # Initiator URL, set for Parser type or for Script type (when script is importing module) or for SignedExchange type.
 4420       optional string url
 4421       # Initiator line number, set for Parser type or for Script type (when script is importing
 4422       # module) (0-based).
 4423       optional number lineNumber
 4424 
 4425   # Cookie object
 4426   type Cookie extends object
 4427     properties
 4428       # Cookie name.
 4429       string name
 4430       # Cookie value.
 4431       string value
 4432       # Cookie domain.
 4433       string domain
 4434       # Cookie path.
 4435       string path
 4436       # Cookie expiration date as the number of seconds since the UNIX epoch.
 4437       number expires
 4438       # Cookie size.
 4439       integer size
 4440       # True if cookie is http-only.
 4441       boolean httpOnly
 4442       # True if cookie is secure.
 4443       boolean secure
 4444       # True in case of session cookie.
 4445       boolean session
 4446       # Cookie SameSite type.
 4447       optional CookieSameSite sameSite
 4448       # Cookie Priority
 4449       experimental CookiePriority priority
 4450 
 4451   # Types of reasons why a cookie may not be stored from a response.
 4452   experimental type SetCookieBlockedReason extends string
 4453     enum
 4454       # The cookie had the "Secure" attribute but was not received over a secure connection.
 4455       SecureOnly
 4456       # The cookie had the "SameSite=Strict" attribute but came from a cross-origin response.
 4457       # This includes navigation requests intitiated by other origins.
 4458       SameSiteStrict
 4459       # The cookie had the "SameSite=Lax" attribute but came from a cross-origin response.
 4460       SameSiteLax
 4461       # The cookie didn't specify a "SameSite" attribute and was defaulted to "SameSite=Lax" and
 4462       # broke the same rules specified in the SameSiteLax value.
 4463       SameSiteUnspecifiedTreatedAsLax
 4464       # The cookie had the "SameSite=None" attribute but did not specify the "Secure" attribute,
 4465       # which is required in order to use "SameSite=None".
 4466       SameSiteNoneInsecure
 4467       # The cookie was not stored due to user preferences.
 4468       UserPreferences
 4469       # The syntax of the Set-Cookie header of the response was invalid.
 4470       SyntaxError
 4471       # The scheme of the connection is not allowed to store cookies.
 4472       SchemeNotSupported
 4473       # The cookie was not sent over a secure connection and would have overwritten a cookie with
 4474       # the Secure attribute.
 4475       OverwriteSecure
 4476       # The cookie's domain attribute was invalid with regards to the current host url.
 4477       InvalidDomain
 4478       # The cookie used the "__Secure-" or "__Host-" prefix in its name and broke the additional
 4479       # rules applied to cookies with these prefixes as defined in
 4480       # https://tools.ietf.org/html/draft-west-cookie-prefixes-05
 4481       InvalidPrefix
 4482       # An unknown error was encountered when trying to store this cookie.
 4483       UnknownError
 4484 
 4485   # Types of reasons why a cookie may not be sent with a request.
 4486   experimental type CookieBlockedReason extends string
 4487     enum
 4488       # The cookie had the "Secure" attribute and the connection was not secure.
 4489       SecureOnly
 4490       # The cookie's path was not within the request url's path.
 4491       NotOnPath
 4492       # The cookie's domain is not configured to match the request url's domain, even though they
 4493       # share a common TLD+1 (TLD+1 of foo.bar.example.com is example.com).
 4494       DomainMismatch
 4495       # The cookie had the "SameSite=Strict" attribute and the request was made on on a different
 4496       # site. This includes navigation requests initiated by other sites.
 4497       SameSiteStrict
 4498       # The cookie had the "SameSite=Lax" attribute and the request was made on a different site.
 4499       # This does not include navigation requests initiated by other sites.
 4500       SameSiteLax
 4501       # The cookie didn't specify a SameSite attribute when it was stored and was defaulted to
 4502       # "SameSite=Lax" and broke the same rules specified in the SameSiteLax value. The cookie had
 4503       # to have been set with "SameSite=None" to enable third-party usage.
 4504       SameSiteUnspecifiedTreatedAsLax
 4505       # The cookie had the "SameSite=None" attribute and the connection was not secure. Cookies
 4506       # without SameSite restrictions must be sent over a secure connection.
 4507       SameSiteNoneInsecure
 4508       # The cookie was not sent due to user preferences.
 4509       UserPreferences
 4510       # An unknown error was encountered when trying to send this cookie.
 4511       UnknownError
 4512 
 4513   # A cookie which was not stored from a response with the corresponding reason.
 4514   experimental type BlockedSetCookieWithReason extends object
 4515     properties
 4516       # The reason(s) this cookie was blocked.
 4517       array of SetCookieBlockedReason blockedReasons
 4518       # The string representing this individual cookie as it would appear in the header.
 4519       # This is not the entire "cookie" or "set-cookie" header which could have multiple cookies.
 4520       string cookieLine
 4521       # The cookie object which represents the cookie which was not stored. It is optional because
 4522       # sometimes complete cookie information is not available, such as in the case of parsing
 4523       # errors.
 4524       optional Cookie cookie
 4525 
 4526   # A cookie with was not sent with a request with the corresponding reason.
 4527   experimental type BlockedCookieWithReason extends object
 4528     properties
 4529       # The reason(s) the cookie was blocked.
 4530       array of CookieBlockedReason blockedReasons
 4531       # The cookie object representing the cookie which was not sent.
 4532       Cookie cookie
 4533 
 4534   # Cookie parameter object
 4535   type CookieParam extends object
 4536     properties
 4537       # Cookie name.
 4538       string name
 4539       # Cookie value.
 4540       string value
 4541       # The request-URI to associate with the setting of the cookie. This value can affect the
 4542       # default domain and path values of the created cookie.
 4543       optional string url
 4544       # Cookie domain.
 4545       optional string domain
 4546       # Cookie path.
 4547       optional string path
 4548       # True if cookie is secure.
 4549       optional boolean secure
 4550       # True if cookie is http-only.
 4551       optional boolean httpOnly
 4552       # Cookie SameSite type.
 4553       optional CookieSameSite sameSite
 4554       # Cookie expiration date, session cookie if not set
 4555       optional TimeSinceEpoch expires
 4556       # Cookie Priority.
 4557       experimental optional CookiePriority priority
 4558 
 4559   # Authorization challenge for HTTP status code 401 or 407.
 4560   experimental type AuthChallenge extends object
 4561     properties
 4562       # Source of the authentication challenge.
 4563       optional enum source
 4564         Server
 4565         Proxy
 4566       # Origin of the challenger.
 4567       string origin
 4568       # The authentication scheme used, such as basic or digest
 4569       string scheme
 4570       # The realm of the challenge. May be empty.
 4571       string realm
 4572 
 4573   # Response to an AuthChallenge.
 4574   experimental type AuthChallengeResponse extends object
 4575     properties
 4576       # The decision on what to do in response to the authorization challenge.  Default means
 4577       # deferring to the default behavior of the net stack, which will likely either the Cancel
 4578       # authentication or display a popup dialog box.
 4579       enum response
 4580         Default
 4581         CancelAuth
 4582         ProvideCredentials
 4583       # The username to provide, possibly empty. Should only be set if response is
 4584       # ProvideCredentials.
 4585       optional string username
 4586       # The password to provide, possibly empty. Should only be set if response is
 4587       # ProvideCredentials.
 4588       optional string password
 4589 
 4590   # Stages of the interception to begin intercepting. Request will intercept before the request is
 4591   # sent. Response will intercept after the response is received.
 4592   experimental type InterceptionStage extends string
 4593     enum
 4594       Request
 4595       HeadersReceived
 4596 
 4597   # Request pattern for interception.
 4598   experimental type RequestPattern extends object
 4599     properties
 4600       # Wildcards ('*' -> zero or more, '?' -> exactly one) are allowed. Escape character is
 4601       # backslash. Omitting is equivalent to "*".
 4602       optional string urlPattern
 4603       # If set, only requests for matching resource types will be intercepted.
 4604       optional ResourceType resourceType
 4605       # Stage at wich to begin intercepting requests. Default is Request.
 4606       optional InterceptionStage interceptionStage
 4607 
 4608   # Information about a signed exchange signature.
 4609   # https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#rfc.section.3.1
 4610   experimental type SignedExchangeSignature extends object
 4611     properties
 4612       # Signed exchange signature label.
 4613       string label
 4614       # The hex string of signed exchange signature.
 4615       string signature
 4616       # Signed exchange signature integrity.
 4617       string integrity
 4618       # Signed exchange signature cert Url.
 4619       optional string certUrl
 4620       # The hex string of signed exchange signature cert sha256.
 4621       optional string certSha256
 4622       # Signed exchange signature validity Url.
 4623       string validityUrl
 4624       # Signed exchange signature date.
 4625       integer date
 4626       # Signed exchange signature expires.
 4627       integer expires
 4628       # The encoded certificates.
 4629       optional array of string certificates
 4630 
 4631   # Information about a signed exchange header.
 4632   # https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#cbor-representation
 4633   experimental type SignedExchangeHeader extends object
 4634     properties
 4635       # Signed exchange request URL.
 4636       string requestUrl
 4637       # Signed exchange response code.
 4638       integer responseCode
 4639       # Signed exchange response headers.
 4640       Headers responseHeaders
 4641       # Signed exchange response signature.
 4642       array of SignedExchangeSignature signatures
 4643       # Signed exchange header integrity hash in the form of "sha256-<base64-hash-value>".
 4644       string headerIntegrity
 4645 
 4646   # Field type for a signed exchange related error.
 4647   experimental type SignedExchangeErrorField extends string
 4648     enum
 4649       signatureSig
 4650       signatureIntegrity
 4651       signatureCertUrl
 4652       signatureCertSha256
 4653       signatureValidityUrl
 4654       signatureTimestamps
 4655 
 4656   # Information about a signed exchange response.
 4657   experimental type SignedExchangeError extends object
 4658     properties
 4659       # Error message.
 4660       string message
 4661       # The index of the signature which caused the error.
 4662       optional integer signatureIndex
 4663       # The field which caused the error.
 4664       optional SignedExchangeErrorField errorField
 4665 
 4666   # Information about a signed exchange response.
 4667   experimental type SignedExchangeInfo extends object
 4668     properties
 4669       # The outer response of signed HTTP exchange which was received from network.
 4670       Response outerResponse
 4671       # Information about the signed exchange header.
 4672       optional SignedExchangeHeader header
 4673       # Security details for the signed exchange header.
 4674       optional SecurityDetails securityDetails
 4675       # Errors occurred while handling the signed exchagne.
 4676       optional array of SignedExchangeError errors
 4677 
 4678   # Tells whether clearing browser cache is supported.
 4679   deprecated command canClearBrowserCache
 4680     returns
 4681       # True if browser cache can be cleared.
 4682       boolean result
 4683 
 4684   # Tells whether clearing browser cookies is supported.
 4685   deprecated command canClearBrowserCookies
 4686     returns
 4687       # True if browser cookies can be cleared.
 4688       boolean result
 4689 
 4690   # Tells whether emulation of network conditions is supported.
 4691   deprecated command canEmulateNetworkConditions
 4692     returns
 4693       # True if emulation of network conditions is supported.
 4694       boolean result
 4695 
 4696   # Clears browser cache.
 4697   command clearBrowserCache
 4698 
 4699   # Clears browser cookies.
 4700   command clearBrowserCookies
 4701 
 4702   # Response to Network.requestIntercepted which either modifies the request to continue with any
 4703   # modifications, or blocks it, or completes it with the provided response bytes. If a network
 4704   # fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted
 4705   # event will be sent with the same InterceptionId.
 4706   # Deprecated, use Fetch.continueRequest, Fetch.fulfillRequest and Fetch.failRequest instead.
 4707   experimental deprecated command continueInterceptedRequest
 4708     parameters
 4709       InterceptionId interceptionId
 4710       # If set this causes the request to fail with the given reason. Passing `Aborted` for requests
 4711       # marked with `isNavigationRequest` also cancels the navigation. Must not be set in response
 4712       # to an authChallenge.
 4713       optional ErrorReason errorReason
 4714       # If set the requests completes using with the provided base64 encoded raw response, including
 4715       # HTTP status line and headers etc... Must not be set in response to an authChallenge.
 4716       optional binary rawResponse
 4717       # If set the request url will be modified in a way that's not observable by page. Must not be
 4718       # set in response to an authChallenge.
 4719       optional string url
 4720       # If set this allows the request method to be overridden. Must not be set in response to an
 4721       # authChallenge.
 4722       optional string method
 4723       # If set this allows postData to be set. Must not be set in response to an authChallenge.
 4724       optional string postData
 4725       # If set this allows the request headers to be changed. Must not be set in response to an
 4726       # authChallenge.
 4727       optional Headers headers
 4728       # Response to a requestIntercepted with an authChallenge. Must not be set otherwise.
 4729       optional AuthChallengeResponse authChallengeResponse
 4730 
 4731   # Deletes browser cookies with matching name and url or domain/path pair.
 4732   command deleteCookies
 4733     parameters
 4734       # Name of the cookies to remove.
 4735       string name
 4736       # If specified, deletes all the cookies with the given name where domain and path match
 4737       # provided URL.
 4738       optional string url
 4739       # If specified, deletes only cookies with the exact domain.
 4740       optional string domain
 4741       # If specified, deletes only cookies with the exact path.
 4742       optional string path
 4743 
 4744   # Disables network tracking, prevents network events from being sent to the client.
 4745   command disable
 4746 
 4747   # Activates emulation of network conditions.
 4748   command emulateNetworkConditions
 4749     parameters
 4750       # True to emulate internet disconnection.
 4751       boolean offline
 4752       # Minimum latency from request sent to response headers received (ms).
 4753       number latency
 4754       # Maximal aggregated download throughput (bytes/sec). -1 disables download throttling.
 4755       number downloadThroughput
 4756       # Maximal aggregated upload throughput (bytes/sec).  -1 disables upload throttling.
 4757       number uploadThroughput
 4758       # Connection type if known.
 4759       optional ConnectionType connectionType
 4760 
 4761   # Enables network tracking, network events will now be delivered to the client.
 4762   command enable
 4763     parameters
 4764       # Buffer size in bytes to use when preserving network payloads (XHRs, etc).
 4765       experimental optional integer maxTotalBufferSize
 4766       # Per-resource buffer size in bytes to use when preserving network payloads (XHRs, etc).
 4767       experimental optional integer maxResourceBufferSize
 4768       # Longest post body size (in bytes) that would be included in requestWillBeSent notification
 4769       optional integer maxPostDataSize
 4770 
 4771   # Returns all browser cookies. Depending on the backend support, will return detailed cookie
 4772   # information in the `cookies` field.
 4773   command getAllCookies
 4774     returns
 4775       # Array of cookie objects.
 4776       array of Cookie cookies
 4777 
 4778   # Returns the DER-encoded certificate.
 4779   experimental command getCertificate
 4780     parameters
 4781       # Origin to get certificate for.
 4782       string origin
 4783     returns
 4784       array of string tableNames
 4785 
 4786   # Returns all browser cookies for the current URL. Depending on the backend support, will return
 4787   # detailed cookie information in the `cookies` field.
 4788   command getCookies
 4789     parameters
 4790       # The list of URLs for which applicable cookies will be fetched
 4791       optional array of string urls
 4792     returns
 4793       # Array of cookie objects.
 4794       array of Cookie cookies
 4795 
 4796   # Returns content served for the given request.
 4797   command getResponseBody
 4798     parameters
 4799       # Identifier of the network request to get content for.
 4800       RequestId requestId
 4801     returns
 4802       # Response body.
 4803       string body
 4804       # True, if content was sent as base64.
 4805       boolean base64Encoded
 4806 
 4807   # Returns post data sent with the request. Returns an error when no data was sent with the request.
 4808   command getRequestPostData
 4809     parameters
 4810       # Identifier of the network request to get content for.
 4811       RequestId requestId
 4812     returns
 4813       # Request body string, omitting files from multipart requests
 4814       string postData
 4815 
 4816   # Returns content served for the given currently intercepted request.
 4817   experimental command getResponseBodyForInterception
 4818     parameters
 4819       # Identifier for the intercepted request to get body for.
 4820       InterceptionId interceptionId
 4821     returns
 4822       # Response body.
 4823       string body
 4824       # True, if content was sent as base64.
 4825       boolean base64Encoded
 4826 
 4827   # Returns a handle to the stream representing the response body. Note that after this command,
 4828   # the intercepted request can't be continued as is -- you either need to cancel it or to provide
 4829   # the response body. The stream only supports sequential read, IO.read will fail if the position
 4830   # is specified.
 4831   experimental command takeResponseBodyForInterceptionAsStream
 4832     parameters
 4833       InterceptionId interceptionId
 4834     returns
 4835       IO.StreamHandle stream
 4836 
 4837   # This method sends a new XMLHttpRequest which is identical to the original one. The following
 4838   # parameters should be identical: method, url, async, request body, extra headers, withCredentials
 4839   # attribute, user, password.
 4840   experimental command replayXHR
 4841     parameters
 4842       # Identifier of XHR to replay.
 4843       RequestId requestId
 4844 
 4845   # Searches for given string in response content.
 4846   experimental command searchInResponseBody
 4847     parameters
 4848       # Identifier of the network response to search.
 4849       RequestId requestId
 4850       # String to search for.
 4851       string query
 4852       # If true, search is case sensitive.
 4853       optional boolean caseSensitive
 4854       # If true, treats string parameter as regex.
 4855       optional boolean isRegex
 4856     returns
 4857       # List of search matches.
 4858       array of Debugger.SearchMatch result
 4859 
 4860   # Blocks URLs from loading.
 4861   experimental command setBlockedURLs
 4862     parameters
 4863       # URL patterns to block. Wildcards ('*') are allowed.
 4864       array of string urls
 4865 
 4866   # Toggles ignoring of service worker for each request.
 4867   experimental command setBypassServiceWorker
 4868     parameters
 4869       # Bypass service worker and load from network.
 4870       boolean bypass
 4871 
 4872   # Toggles ignoring cache for each request. If `true`, cache will not be used.
 4873   command setCacheDisabled
 4874     parameters
 4875       # Cache disabled state.
 4876       boolean cacheDisabled
 4877 
 4878   # Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist.
 4879   command setCookie
 4880     parameters
 4881       # Cookie name.
 4882       string name
 4883       # Cookie value.
 4884       string value
 4885       # The request-URI to associate with the setting of the cookie. This value can affect the
 4886       # default domain and path values of the created cookie.
 4887       optional string url
 4888       # Cookie domain.
 4889       optional string domain
 4890       # Cookie path.
 4891       optional string path
 4892       # True if cookie is secure.
 4893       optional boolean secure
 4894       # True if cookie is http-only.
 4895       optional boolean httpOnly
 4896       # Cookie SameSite type.
 4897       optional CookieSameSite sameSite
 4898       # Cookie expiration date, session cookie if not set
 4899       optional TimeSinceEpoch expires
 4900       # Cookie Priority type.
 4901       experimental optional CookiePriority priority
 4902     returns
 4903       # True if successfully set cookie.
 4904       boolean success
 4905 
 4906   # Sets given cookies.
 4907   command setCookies
 4908     parameters
 4909       # Cookies to be set.
 4910       array of CookieParam cookies
 4911 
 4912   # For testing.
 4913   experimental command setDataSizeLimitsForTest
 4914     parameters
 4915       # Maximum total buffer size.
 4916       integer maxTotalSize
 4917       # Maximum per-resource size.
 4918       integer maxResourceSize
 4919 
 4920   # Specifies whether to always send extra HTTP headers with the requests from this page.
 4921   command setExtraHTTPHeaders
 4922     parameters
 4923       # Map with extra HTTP headers.
 4924       Headers headers
 4925 
 4926   # Sets the requests to intercept that match the provided patterns and optionally resource types.
 4927   # Deprecated, please use Fetch.enable instead.
 4928   experimental deprecated command setRequestInterception
 4929     parameters
 4930       # Requests matching any of these patterns will be forwarded and wait for the corresponding
 4931       # continueInterceptedRequest call.
 4932       array of RequestPattern patterns
 4933 
 4934   # Allows overriding user agent with the given string.
 4935   command setUserAgentOverride
 4936     redirect Emulation
 4937     parameters
 4938       # User agent to use.
 4939       string userAgent
 4940       # Browser langugage to emulate.
 4941       optional string acceptLanguage
 4942       # The platform navigator.platform should return.
 4943       optional string platform
 4944       # To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData
 4945       experimental optional Emulation.UserAgentMetadata userAgentMetadata
 4946 
 4947 
 4948   # Fired when data chunk was received over the network.
 4949   event dataReceived
 4950     parameters
 4951       # Request identifier.
 4952       RequestId requestId
 4953       # Timestamp.
 4954       MonotonicTime timestamp
 4955       # Data chunk length.
 4956       integer dataLength
 4957       # Actual bytes received (might be less than dataLength for compressed encodings).
 4958       integer encodedDataLength
 4959 
 4960   # Fired when EventSource message is received.
 4961   event eventSourceMessageReceived
 4962     parameters
 4963       # Request identifier.
 4964       RequestId requestId
 4965       # Timestamp.
 4966       MonotonicTime timestamp
 4967       # Message type.
 4968       string eventName
 4969       # Message identifier.
 4970       string eventId
 4971       # Message content.
 4972       string data
 4973 
 4974   # Fired when HTTP request has failed to load.
 4975   event loadingFailed
 4976     parameters
 4977       # Request identifier.
 4978       RequestId requestId
 4979       # Timestamp.
 4980       MonotonicTime timestamp
 4981       # Resource type.
 4982       ResourceType type
 4983       # User friendly error message.
 4984       string errorText
 4985       # True if loading was canceled.
 4986       optional boolean canceled
 4987       # The reason why loading was blocked, if any.
 4988       optional BlockedReason blockedReason
 4989 
 4990   # Fired when HTTP request has finished loading.
 4991   event loadingFinished
 4992     parameters
 4993       # Request identifier.
 4994       RequestId requestId
 4995       # Timestamp.
 4996       MonotonicTime timestamp
 4997       # Total number of bytes received for this request.
 4998       number encodedDataLength
 4999       # Set when 1) response was blocked by Cross-Origin Read Blocking and also
 5000       # 2) this needs to be reported to the DevTools console.
 5001       optional boolean shouldReportCorbBlocking
 5002 
 5003   # Details of an intercepted HTTP request, which must be either allowed, blocked, modified or
 5004   # mocked.
 5005   # Deprecated, use Fetch.requestPaused instead.
 5006   experimental deprecated event requestIntercepted
 5007     parameters
 5008       # Each request the page makes will have a unique id, however if any redirects are encountered
 5009       # while processing that fetch, they will be reported with the same id as the original fetch.
 5010       # Likewise if HTTP authentication is needed then the same fetch id will be used.
 5011       InterceptionId interceptionId
 5012       Request request
 5013       # The id of the frame that initiated the request.
 5014       Page.FrameId frameId
 5015       # How the requested resource will be used.
 5016       ResourceType resourceType
 5017       # Whether this is a navigation request, which can abort the navigation completely.
 5018       boolean isNavigationRequest
 5019       # Set if the request is a navigation that will result in a download.
 5020       # Only present after response is received from the server (i.e. HeadersReceived stage).
 5021       optional boolean isDownload
 5022       # Redirect location, only sent if a redirect was intercepted.
 5023       optional string redirectUrl
 5024       # Details of the Authorization Challenge encountered. If this is set then
 5025       # continueInterceptedRequest must contain an authChallengeResponse.
 5026       optional AuthChallenge authChallenge
 5027       # Response error if intercepted at response stage or if redirect occurred while intercepting
 5028       # request.
 5029       optional ErrorReason responseErrorReason
 5030       # Response code if intercepted at response stage or if redirect occurred while intercepting
 5031       # request or auth retry occurred.
 5032       optional integer responseStatusCode
 5033       # Response headers if intercepted at the response stage or if redirect occurred while
 5034       # intercepting request or auth retry occurred.
 5035       optional Headers responseHeaders
 5036       # If the intercepted request had a corresponding requestWillBeSent event fired for it, then
 5037       # this requestId will be the same as the requestId present in the requestWillBeSent event.
 5038       optional RequestId requestId
 5039 
 5040   # Fired if request ended up loading from cache.
 5041   event requestServedFromCache
 5042     parameters
 5043       # Request identifier.
 5044       RequestId requestId
 5045 
 5046   # Fired when page is about to send HTTP request.
 5047   event requestWillBeSent
 5048     parameters
 5049       # Request identifier.
 5050       RequestId requestId
 5051       # Loader identifier. Empty string if the request is fetched from worker.
 5052       LoaderId loaderId
 5053       # URL of the document this request is loaded for.
 5054       string documentURL
 5055       # Request data.
 5056       Request request
 5057       # Timestamp.
 5058       MonotonicTime timestamp
 5059       # Timestamp.
 5060       TimeSinceEpoch wallTime
 5061       # Request initiator.
 5062       Initiator initiator
 5063       # Redirect response data.
 5064       optional Response redirectResponse
 5065       # Type of this resource.
 5066       optional ResourceType type
 5067       # Frame identifier.
 5068       optional Page.FrameId frameId
 5069       # Whether the request is initiated by a user gesture. Defaults to false.
 5070       optional boolean hasUserGesture
 5071 
 5072   # Fired when resource loading priority is changed
 5073   experimental event resourceChangedPriority
 5074     parameters
 5075       # Request identifier.
 5076       RequestId requestId
 5077       # New priority
 5078       ResourcePriority newPriority
 5079       # Timestamp.
 5080       MonotonicTime timestamp
 5081 
 5082   # Fired when a signed exchange was received over the network
 5083   experimental event signedExchangeReceived
 5084     parameters
 5085       # Request identifier.
 5086       RequestId requestId
 5087       # Information about the signed exchange response.
 5088       SignedExchangeInfo info
 5089 
 5090   # Fired when HTTP response is available.
 5091   event responseReceived
 5092     parameters
 5093       # Request identifier.
 5094       RequestId requestId
 5095       # Loader identifier. Empty string if the request is fetched from worker.
 5096       LoaderId loaderId
 5097       # Timestamp.
 5098       MonotonicTime timestamp
 5099       # Resource type.
 5100       ResourceType type
 5101       # Response data.
 5102       Response response
 5103       # Frame identifier.
 5104       optional Page.FrameId frameId
 5105 
 5106   # Fired when WebSocket is closed.
 5107   event webSocketClosed
 5108     parameters
 5109       # Request identifier.
 5110       RequestId requestId
 5111       # Timestamp.
 5112       MonotonicTime timestamp
 5113 
 5114   # Fired upon WebSocket creation.
 5115   event webSocketCreated
 5116     parameters
 5117       # Request identifier.
 5118       RequestId requestId
 5119       # WebSocket request URL.
 5120       string url
 5121       # Request initiator.
 5122       optional Initiator initiator
 5123 
 5124   # Fired when WebSocket message error occurs.
 5125   event webSocketFrameError
 5126     parameters
 5127       # Request identifier.
 5128       RequestId requestId
 5129       # Timestamp.
 5130       MonotonicTime timestamp
 5131       # WebSocket error message.
 5132       string errorMessage
 5133 
 5134   # Fired when WebSocket message is received.
 5135   event webSocketFrameReceived
 5136     parameters
 5137       # Request identifier.
 5138       RequestId requestId
 5139       # Timestamp.
 5140       MonotonicTime timestamp
 5141       # WebSocket response data.
 5142       WebSocketFrame response
 5143 
 5144   # Fired when WebSocket message is sent.
 5145   event webSocketFrameSent
 5146     parameters
 5147       # Request identifier.
 5148       RequestId requestId
 5149       # Timestamp.
 5150       MonotonicTime timestamp
 5151       # WebSocket response data.
 5152       WebSocketFrame response
 5153 
 5154   # Fired when WebSocket handshake response becomes available.
 5155   event webSocketHandshakeResponseReceived
 5156     parameters
 5157       # Request identifier.
 5158       RequestId requestId
 5159       # Timestamp.
 5160       MonotonicTime timestamp
 5161       # WebSocket response data.
 5162       WebSocketResponse response
 5163 
 5164   # Fired when WebSocket is about to initiate handshake.
 5165   event webSocketWillSendHandshakeRequest
 5166     parameters
 5167       # Request identifier.
 5168       RequestId requestId
 5169       # Timestamp.
 5170       MonotonicTime timestamp
 5171       # UTC Timestamp.
 5172       TimeSinceEpoch wallTime
 5173       # WebSocket request data.
 5174       WebSocketRequest request
 5175 
 5176   # Fired when additional information about a requestWillBeSent event is available from the
 5177   # network stack. Not every requestWillBeSent event will have an additional
 5178   # requestWillBeSentExtraInfo fired for it, and there is no guarantee whether requestWillBeSent
 5179   # or requestWillBeSentExtraInfo will be fired first for the same request.
 5180   experimental event requestWillBeSentExtraInfo
 5181     parameters
 5182       # Request identifier. Used to match this information to an existing requestWillBeSent event.
 5183       RequestId requestId
 5184       # A list of cookies potentially associated to the requested URL. This includes both cookies sent with
 5185       # the request and the ones not sent; the latter are distinguished by having blockedReason field set.
 5186       array of BlockedCookieWithReason associatedCookies
 5187       # Raw request headers as they will be sent over the wire.
 5188       Headers headers
 5189 
 5190   # Fired when additional information about a responseReceived event is available from the network
 5191   # stack. Not every responseReceived event will have an additional responseReceivedExtraInfo for
 5192   # it, and responseReceivedExtraInfo may be fired before or after responseReceived.
 5193   experimental event responseReceivedExtraInfo
 5194     parameters
 5195       # Request identifier. Used to match this information to another responseReceived event.
 5196       RequestId requestId
 5197       # A list of cookies which were not stored from the response along with the corresponding
 5198       # reasons for blocking. The cookies here may not be valid due to syntax errors, which
 5199       # are represented by the invalid cookie line string instead of a proper cookie.
 5200       array of BlockedSetCookieWithReason blockedCookies
 5201       # Raw response headers as they were received over the wire.
 5202       Headers headers
 5203       # Raw response header text as it was received over the wire. The raw text may not always be
 5204       # available, such as in the case of HTTP/2 or QUIC.
 5205       optional string headersText
 5206 
 5207 # This domain provides various functionality related to drawing atop the inspected page.
 5208 experimental domain Overlay
 5209   depends on DOM
 5210   depends on Page
 5211   depends on Runtime
 5212 
 5213   # Configuration data for the highlighting of Grid elements.
 5214   type GridHighlightConfig extends object
 5215     properties
 5216       # Whether the extension lines from grid cells to the rulers should be shown (default: false).
 5217       optional boolean showGridExtensionLines
 5218       # Show Positive line number labels (default: false).
 5219       optional boolean showPositiveLineNumbers
 5220       # Show Negative line number labels (default: false).
 5221       optional boolean showNegativeLineNumbers
 5222       # The grid container border highlight color (default: transparent).
 5223       optional DOM.RGBA gridBorderColor
 5224       # The cell border color (default: transparent).
 5225       optional DOM.RGBA cellBorderColor
 5226       # Whether the grid border is dashed (default: false).
 5227       optional boolean gridBorderDash
 5228       # Whether the cell border is dashed (default: false).
 5229       optional boolean cellBorderDash
 5230       # The row gap highlight fill color (default: transparent).
 5231       optional DOM.RGBA rowGapColor
 5232       # The row gap hatching fill color (default: transparent).
 5233       optional DOM.RGBA rowHatchColor
 5234       # The column gap highlight fill color (default: transparent).
 5235       optional DOM.RGBA columnGapColor
 5236       # The column gap hatching fill color (default: transparent).
 5237       optional DOM.RGBA columnHatchColor
 5238 
 5239   # Configuration data for the highlighting of page elements.
 5240   type HighlightConfig extends object
 5241     properties
 5242       # Whether the node info tooltip should be shown (default: false).
 5243       optional boolean showInfo
 5244       # Whether the node styles in the tooltip (default: false).
 5245       optional boolean showStyles
 5246       # Whether the rulers should be shown (default: false).
 5247       optional boolean showRulers
 5248       # Whether the a11y info should be shown (default: true).
 5249       optional boolean showAccessibilityInfo
 5250       # Whether the extension lines from node to the rulers should be shown (default: false).
 5251       optional boolean showExtensionLines
 5252       # The content box highlight fill color (default: transparent).
 5253       optional DOM.RGBA contentColor
 5254       # The padding highlight fill color (default: transparent).
 5255       optional DOM.RGBA paddingColor
 5256       # The border highlight fill color (default: transparent).
 5257       optional DOM.RGBA borderColor
 5258       # The margin highlight fill color (default: transparent).
 5259       optional DOM.RGBA marginColor
 5260       # The event target element highlight fill color (default: transparent).
 5261       optional DOM.RGBA eventTargetColor
 5262       # The shape outside fill color (default: transparent).
 5263       optional DOM.RGBA shapeColor
 5264       # The shape margin fill color (default: transparent).
 5265       optional DOM.RGBA shapeMarginColor
 5266       # The grid layout color (default: transparent).
 5267       optional DOM.RGBA cssGridColor
 5268       # The color format used to format color styles (default: hex).
 5269       optional ColorFormat colorFormat
 5270       # The grid layout highlight configuration (default: all transparent).
 5271       optional GridHighlightConfig gridHighlightConfig
 5272 
 5273   type ColorFormat extends string
 5274     enum
 5275       rgb
 5276       hsl
 5277       hex
 5278 
 5279   # Configuration for dual screen hinge
 5280   type HingeConfig extends object
 5281     properties
 5282       # A rectangle represent hinge
 5283       DOM.Rect rect
 5284       # The content box highlight fill color (default: a dark color).
 5285       optional DOM.RGBA contentColor
 5286       # The content box highlight outline color (default: transparent).
 5287       optional DOM.RGBA outlineColor
 5288 
 5289   type InspectMode extends string
 5290     enum
 5291       searchForNode
 5292       searchForUAShadowDOM
 5293       captureAreaScreenshot
 5294       showDistances
 5295       none
 5296 
 5297   # Disables domain notifications.
 5298   command disable
 5299 
 5300   # Enables domain notifications.
 5301   command enable
 5302 
 5303   # For testing.
 5304   command getHighlightObjectForTest
 5305     parameters
 5306       # Id of the node to get highlight object for.
 5307       DOM.NodeId nodeId
 5308       # Whether to include distance info.
 5309       optional boolean includeDistance
 5310       # Whether to include style info.
 5311       optional boolean includeStyle
 5312       # The color format to get config with (default: hex).
 5313       optional ColorFormat colorFormat
 5314       # Whether to show accessibility info (default: true).
 5315       optional boolean showAccessibilityInfo
 5316     returns
 5317       # Highlight data for the node.
 5318       object highlight
 5319 
 5320   # Hides any highlight.
 5321   command hideHighlight
 5322 
 5323   # Highlights owner element of the frame with given id.
 5324   command highlightFrame
 5325     parameters
 5326       # Identifier of the frame to highlight.
 5327       Page.FrameId frameId
 5328       # The content box highlight fill color (default: transparent).
 5329       optional DOM.RGBA contentColor
 5330       # The content box highlight outline color (default: transparent).
 5331       optional DOM.RGBA contentOutlineColor
 5332 
 5333   # Highlights DOM node with given id or with the given JavaScript object wrapper. Either nodeId or
 5334   # objectId must be specified.
 5335   command highlightNode
 5336     parameters
 5337       # A descriptor for the highlight appearance.
 5338       HighlightConfig highlightConfig
 5339       # Identifier of the node to highlight.
 5340       optional DOM.NodeId nodeId
 5341       # Identifier of the backend node to highlight.
 5342       optional DOM.BackendNodeId backendNodeId
 5343       # JavaScript object id of the node to be highlighted.
 5344       optional Runtime.RemoteObjectId objectId
 5345       # Selectors to highlight relevant nodes.
 5346       optional string selector
 5347 
 5348   # Highlights given quad. Coordinates are absolute with respect to the main frame viewport.
 5349   command highlightQuad
 5350     parameters
 5351       # Quad to highlight
 5352       DOM.Quad quad
 5353       # The highlight fill color (default: transparent).
 5354       optional DOM.RGBA color
 5355       # The highlight outline color (default: transparent).
 5356       optional DOM.RGBA outlineColor
 5357 
 5358   # Highlights given rectangle. Coordinates are absolute with respect to the main frame viewport.
 5359   command highlightRect
 5360     parameters
 5361       # X coordinate
 5362       integer x
 5363       # Y coordinate
 5364       integer y
 5365       # Rectangle width
 5366       integer width
 5367       # Rectangle height
 5368       integer height
 5369       # The highlight fill color (default: transparent).
 5370       optional DOM.RGBA color
 5371       # The highlight outline color (default: transparent).
 5372       optional DOM.RGBA outlineColor
 5373 
 5374   # Enters the 'inspect' mode. In this mode, elements that user is hovering over are highlighted.
 5375   # Backend then generates 'inspectNodeRequested' event upon element selection.
 5376   command setInspectMode
 5377     parameters
 5378       # Set an inspection mode.
 5379       InspectMode mode
 5380       # A descriptor for the highlight appearance of hovered-over nodes. May be omitted if `enabled
 5381       # == false`.
 5382       optional HighlightConfig highlightConfig
 5383 
 5384   # Highlights owner element of all frames detected to be ads.
 5385   command setShowAdHighlights
 5386     parameters
 5387       # True for showing ad highlights
 5388       boolean show
 5389 
 5390   command setPausedInDebuggerMessage
 5391     parameters
 5392       # The message to display, also triggers resume and step over controls.
 5393       optional string message
 5394 
 5395   # Requests that backend shows debug borders on layers
 5396   command setShowDebugBorders
 5397     parameters
 5398       # True for showing debug borders
 5399       boolean show
 5400 
 5401   # Requests that backend shows the FPS counter
 5402   command setShowFPSCounter
 5403     parameters
 5404       # True for showing the FPS counter
 5405       boolean show
 5406 
 5407   # Requests that backend shows paint rectangles
 5408   command setShowPaintRects
 5409     parameters
 5410       # True for showing paint rectangles
 5411       boolean result
 5412 
 5413   # Requests that backend shows layout shift regions
 5414   command setShowLayoutShiftRegions
 5415     parameters
 5416       # True for showing layout shift regions
 5417       boolean result
 5418 
 5419   # Requests that backend shows scroll bottleneck rects
 5420   command setShowScrollBottleneckRects
 5421     parameters
 5422       # True for showing scroll bottleneck rects
 5423       boolean show
 5424 
 5425   # Requests that backend shows hit-test borders on layers
 5426   command setShowHitTestBorders
 5427     parameters
 5428       # True for showing hit-test borders
 5429       boolean show
 5430 
 5431   # Paints viewport size upon main frame resize.
 5432   command setShowViewportSizeOnResize
 5433     parameters
 5434       # Whether to paint size or not.
 5435       boolean show
 5436 
 5437   # Add a dual screen device hinge
 5438   command setShowHinge
 5439     parameters
 5440       # hinge data, null means hideHinge
 5441       optional HingeConfig hingeConfig
 5442 
 5443   # Fired when the node should be inspected. This happens after call to `setInspectMode` or when
 5444   # user manually inspects an element.
 5445   event inspectNodeRequested
 5446     parameters
 5447       # Id of the node to inspect.
 5448       DOM.BackendNodeId backendNodeId
 5449 
 5450   # Fired when the node should be highlighted. This happens after call to `setInspectMode`.
 5451   event nodeHighlightRequested
 5452     parameters
 5453       DOM.NodeId nodeId
 5454 
 5455   # Fired when user asks to capture screenshot of some area on the page.
 5456   event screenshotRequested
 5457     parameters
 5458       # Viewport to capture, in device independent pixels (dip).
 5459       Page.Viewport viewport
 5460 
 5461   # Fired when user cancels the inspect mode.
 5462   event inspectModeCanceled
 5463 
 5464 # Actions and events related to the inspected page belong to the page domain.
 5465 domain Page
 5466   depends on Debugger
 5467   depends on DOM
 5468   depends on IO
 5469   depends on Network
 5470   depends on Runtime
 5471 
 5472   # Unique frame identifier.
 5473   type FrameId extends string
 5474 
 5475   # Information about the Frame on the page.
 5476   type Frame extends object
 5477     properties
 5478       # Frame unique identifier.
 5479       FrameId id
 5480       # Parent frame identifier.
 5481       optional string parentId
 5482       # Identifier of the loader associated with this frame.
 5483       Network.LoaderId loaderId
 5484       # Frame's name as specified in the tag.
 5485       optional string name
 5486       # Frame document's URL without fragment.
 5487       string url
 5488       # Frame document's URL fragment including the '#'.
 5489       experimental optional string urlFragment
 5490       # Frame document's security origin.
 5491       string securityOrigin
 5492       # Frame document's mimeType as determined by the browser.
 5493       string mimeType
 5494       # If the frame failed to load, this contains the URL that could not be loaded. Note that unlike url above, this URL may contain a fragment.
 5495       experimental optional string unreachableUrl
 5496 
 5497   # Information about the Resource on the page.
 5498   experimental type FrameResource extends object
 5499     properties
 5500       # Resource URL.
 5501       string url
 5502       # Type of this resource.
 5503       Network.ResourceType type
 5504       # Resource mimeType as determined by the browser.
 5505       string mimeType
 5506       # last-modified timestamp as reported by server.
 5507       optional Network.TimeSinceEpoch lastModified
 5508       # Resource content size.
 5509       optional number contentSize
 5510       # True if the resource failed to load.
 5511       optional boolean failed
 5512       # True if the resource was canceled during loading.
 5513       optional boolean canceled
 5514 
 5515   # Information about the Frame hierarchy along with their cached resources.
 5516   experimental type FrameResourceTree extends object
 5517     properties
 5518       # Frame information for this tree item.
 5519       Frame frame
 5520       # Child frames.
 5521       optional array of FrameResourceTree childFrames
 5522       # Information about frame resources.
 5523       array of FrameResource resources
 5524 
 5525   # Information about the Frame hierarchy.
 5526   type FrameTree extends object
 5527     properties
 5528       # Frame information for this tree item.
 5529       Frame frame
 5530       # Child frames.
 5531       optional array of FrameTree childFrames
 5532 
 5533   # Unique script identifier.
 5534   type ScriptIdentifier extends string
 5535 
 5536   # Transition type.
 5537   type TransitionType extends string
 5538     enum
 5539       link
 5540       typed
 5541       address_bar
 5542       auto_bookmark
 5543       auto_subframe
 5544       manual_subframe
 5545       generated
 5546       auto_toplevel
 5547       form_submit
 5548       reload
 5549       keyword
 5550       keyword_generated
 5551       other
 5552 
 5553   # Navigation history entry.
 5554   type NavigationEntry extends object
 5555     properties
 5556       # Unique id of the navigation history entry.
 5557       integer id
 5558       # URL of the navigation history entry.
 5559       string url
 5560       # URL that the user typed in the url bar.
 5561       string userTypedURL
 5562       # Title of the navigation history entry.
 5563       string title
 5564       # Transition type.
 5565       TransitionType transitionType
 5566 
 5567   # Screencast frame metadata.
 5568   experimental type ScreencastFrameMetadata extends object
 5569     properties
 5570       # Top offset in DIP.
 5571       number offsetTop
 5572       # Page scale factor.
 5573       number pageScaleFactor
 5574       # Device screen width in DIP.
 5575       number deviceWidth
 5576       # Device screen height in DIP.
 5577       number deviceHeight
 5578       # Position of horizontal scroll in CSS pixels.
 5579       number scrollOffsetX
 5580       # Position of vertical scroll in CSS pixels.
 5581       number scrollOffsetY
 5582       # Frame swap timestamp.
 5583       optional Network.TimeSinceEpoch timestamp
 5584 
 5585   # Javascript dialog type.
 5586   type DialogType extends string
 5587     enum
 5588       alert
 5589       confirm
 5590       prompt
 5591       beforeunload
 5592 
 5593   # Error while paring app manifest.
 5594   type AppManifestError extends object
 5595     properties
 5596       # Error message.
 5597       string message
 5598       # If criticial, this is a non-recoverable parse error.
 5599       integer critical
 5600       # Error line.
 5601       integer line
 5602       # Error column.
 5603       integer column
 5604 
 5605   # Parsed app manifest properties.
 5606   experimental type AppManifestParsedProperties extends object
 5607     properties
 5608       # Computed scope value
 5609       string scope
 5610 
 5611   # Layout viewport position and dimensions.
 5612   type LayoutViewport extends object
 5613     properties
 5614       # Horizontal offset relative to the document (CSS pixels).
 5615       integer pageX
 5616       # Vertical offset relative to the document (CSS pixels).
 5617       integer pageY
 5618       # Width (CSS pixels), excludes scrollbar if present.
 5619       integer clientWidth
 5620       # Height (CSS pixels), excludes scrollbar if present.
 5621       integer clientHeight
 5622 
 5623   # Visual viewport position, dimensions, and scale.
 5624   type VisualViewport extends object
 5625     properties
 5626       # Horizontal offset relative to the layout viewport (CSS pixels).
 5627       number offsetX
 5628       # Vertical offset relative to the layout viewport (CSS pixels).
 5629       number offsetY
 5630       # Horizontal offset relative to the document (CSS pixels).
 5631       number pageX
 5632       # Vertical offset relative to the document (CSS pixels).
 5633       number pageY
 5634       # Width (CSS pixels), excludes scrollbar if present.
 5635       number clientWidth
 5636       # Height (CSS pixels), excludes scrollbar if present.
 5637       number clientHeight
 5638       # Scale relative to the ideal viewport (size at width=device-width).
 5639       number scale
 5640       # Page zoom factor (CSS to device independent pixels ratio).
 5641       optional number zoom
 5642 
 5643   # Viewport for capturing screenshot.
 5644   type Viewport extends object
 5645     properties
 5646       # X offset in device independent pixels (dip).
 5647       number x
 5648       # Y offset in device independent pixels (dip).
 5649       number y
 5650       # Rectangle width in device independent pixels (dip).
 5651       number width
 5652       # Rectangle height in device independent pixels (dip).
 5653       number height
 5654       # Page scale factor.
 5655       number scale
 5656 
 5657   # Generic font families collection.
 5658   experimental type FontFamilies extends object
 5659     properties
 5660       # The standard font-family.
 5661       optional string standard
 5662       # The fixed font-family.
 5663       optional string fixed
 5664       # The serif font-family.
 5665       optional string serif
 5666       # The sansSerif font-family.
 5667       optional string sansSerif
 5668       # The cursive font-family.
 5669       optional string cursive
 5670       # The fantasy font-family.
 5671       optional string fantasy
 5672       # The pictograph font-family.
 5673       optional string pictograph
 5674 
 5675   # Default font sizes.
 5676   experimental type FontSizes extends object
 5677     properties
 5678       # Default standard font size.
 5679       optional integer standard
 5680       # Default fixed font size.
 5681       optional integer fixed
 5682 
 5683   experimental type ClientNavigationReason extends string
 5684     enum
 5685       formSubmissionGet
 5686       formSubmissionPost
 5687       httpHeaderRefresh
 5688       scriptInitiated
 5689       metaTagRefresh
 5690       pageBlockInterstitial
 5691       reload
 5692       anchorClick
 5693 
 5694   experimental type ClientNavigationDisposition extends string
 5695     enum
 5696       currentTab
 5697       newTab
 5698       newWindow
 5699       download
 5700 
 5701   experimental type InstallabilityErrorArgument extends object
 5702     properties
 5703       # Argument name (e.g. name:'minimum-icon-size-in-pixels').
 5704       string name
 5705       # Argument value (e.g. value:'64').
 5706       string value
 5707 
 5708   # The installability error
 5709   experimental type InstallabilityError extends object
 5710     properties
 5711       # The error id (e.g. 'manifest-missing-suitable-icon').
 5712       string errorId
 5713       # The list of error arguments (e.g. {name:'minimum-icon-size-in-pixels', value:'64'}).
 5714       array of InstallabilityErrorArgument errorArguments
 5715 
 5716   # The referring-policy used for the navigation.
 5717   experimental type ReferrerPolicy extends string
 5718     enum
 5719       noReferrer
 5720       noReferrerWhenDowngrade
 5721       origin
 5722       originWhenCrossOrigin
 5723       sameOrigin
 5724       strictOrigin
 5725       strictOriginWhenCrossOrigin
 5726       unsafeUrl
 5727 
 5728   # Deprecated, please use addScriptToEvaluateOnNewDocument instead.
 5729   experimental deprecated command addScriptToEvaluateOnLoad
 5730     parameters
 5731       string scriptSource
 5732     returns
 5733       # Identifier of the added script.
 5734       ScriptIdentifier identifier
 5735 
 5736   # Evaluates given script in every frame upon creation (before loading frame's scripts).
 5737   command addScriptToEvaluateOnNewDocument
 5738     parameters
 5739       string source
 5740       # If specified, creates an isolated world with the given name and evaluates given script in it.
 5741       # This world name will be used as the ExecutionContextDescription::name when the corresponding
 5742       # event is emitted.
 5743       experimental optional string worldName
 5744     returns
 5745       # Identifier of the added script.
 5746       ScriptIdentifier identifier
 5747 
 5748   # Brings page to front (activates tab).
 5749   command bringToFront
 5750 
 5751   # Capture page screenshot.
 5752   command captureScreenshot
 5753     parameters
 5754       # Image compression format (defaults to png).
 5755       optional enum format
 5756         jpeg
 5757         png
 5758       # Compression quality from range [0..100] (jpeg only).
 5759       optional integer quality
 5760       # Capture the screenshot of a given region only.
 5761       optional Viewport clip
 5762       # Capture the screenshot from the surface, rather than the view. Defaults to true.
 5763       experimental optional boolean fromSurface
 5764     returns
 5765       # Base64-encoded image data.
 5766       binary data
 5767 
 5768   # Returns a snapshot of the page as a string. For MHTML format, the serialization includes
 5769   # iframes, shadow DOM, external resources, and element-inline styles.
 5770   experimental command captureSnapshot
 5771     parameters
 5772       # Format (defaults to mhtml).
 5773       optional enum format
 5774         mhtml
 5775     returns
 5776       # Serialized page data.
 5777       string data
 5778 
 5779   # Clears the overridden device metrics.
 5780   experimental deprecated command clearDeviceMetricsOverride
 5781     # Use 'Emulation.clearDeviceMetricsOverride' instead
 5782     redirect Emulation
 5783 
 5784   # Clears the overridden Device Orientation.
 5785   experimental deprecated command clearDeviceOrientationOverride
 5786     # Use 'DeviceOrientation.clearDeviceOrientationOverride' instead
 5787     redirect DeviceOrientation
 5788 
 5789   # Clears the overridden Geolocation Position and Error.
 5790   deprecated command clearGeolocationOverride
 5791     # Use 'Emulation.clearGeolocationOverride' instead
 5792     redirect Emulation
 5793 
 5794   # Creates an isolated world for the given frame.
 5795   command createIsolatedWorld
 5796     parameters
 5797       # Id of the frame in which the isolated world should be created.
 5798       FrameId frameId
 5799       # An optional name which is reported in the Execution Context.
 5800       optional string worldName
 5801       # Whether or not universal access should be granted to the isolated world. This is a powerful
 5802       # option, use with caution.
 5803       optional boolean grantUniveralAccess
 5804     returns
 5805       # Execution context of the isolated world.
 5806       Runtime.ExecutionContextId executionContextId
 5807 
 5808   # Deletes browser cookie with given name, domain and path.
 5809   experimental deprecated command deleteCookie
 5810     # Use 'Network.deleteCookie' instead
 5811     redirect Network
 5812     parameters
 5813       # Name of the cookie to remove.
 5814       string cookieName
 5815       # URL to match cooke domain and path.
 5816       string url
 5817 
 5818   # Disables page domain notifications.
 5819   command disable
 5820 
 5821   # Enables page domain notifications.
 5822   command enable
 5823 
 5824   command getAppManifest
 5825     returns
 5826       # Manifest location.
 5827       string url
 5828       array of AppManifestError errors
 5829       # Manifest content.
 5830       optional string data
 5831       # Parsed manifest properties
 5832       experimental optional AppManifestParsedProperties parsed
 5833 
 5834   experimental command getInstallabilityErrors
 5835     returns
 5836       array of InstallabilityError installabilityErrors
 5837 
 5838   experimental command getManifestIcons
 5839     returns
 5840       optional binary primaryIcon
 5841 
 5842   # Returns all browser cookies. Depending on the backend support, will return detailed cookie
 5843   # information in the `cookies` field.
 5844   experimental deprecated command getCookies
 5845     # Use 'Network.getCookies' instead
 5846     redirect Network
 5847     returns
 5848       # Array of cookie objects.
 5849       array of Network.Cookie cookies
 5850 
 5851   # Returns present frame tree structure.
 5852   command getFrameTree
 5853     returns
 5854       # Present frame tree structure.
 5855       FrameTree frameTree
 5856 
 5857   # Returns metrics relating to the layouting of the page, such as viewport bounds/scale.
 5858   command getLayoutMetrics
 5859     returns
 5860       # Metrics relating to the layout viewport.
 5861       LayoutViewport layoutViewport
 5862       # Metrics relating to the visual viewport.
 5863       VisualViewport visualViewport
 5864       # Size of scrollable area.
 5865       DOM.Rect contentSize
 5866 
 5867   # Returns navigation history for the current page.
 5868   command getNavigationHistory
 5869     returns
 5870       # Index of the current navigation history entry.
 5871       integer currentIndex
 5872       # Array of navigation history entries.
 5873       array of NavigationEntry entries
 5874 
 5875   # Resets navigation history for the current page.
 5876   command resetNavigationHistory
 5877 
 5878   # Returns content of the given resource.
 5879   experimental command getResourceContent
 5880     parameters
 5881       # Frame id to get resource for.
 5882       FrameId frameId
 5883       # URL of the resource to get content for.
 5884       string url
 5885     returns
 5886       # Resource content.
 5887       string content
 5888       # True, if content was served as base64.
 5889       boolean base64Encoded
 5890 
 5891   # Returns present frame / resource tree structure.
 5892   experimental command getResourceTree
 5893     returns
 5894       # Present frame / resource tree structure.
 5895       FrameResourceTree frameTree
 5896 
 5897   # Accepts or dismisses a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload).
 5898   command handleJavaScriptDialog
 5899     parameters
 5900       # Whether to accept or dismiss the dialog.
 5901       boolean accept
 5902       # The text to enter into the dialog prompt before accepting. Used only if this is a prompt
 5903       # dialog.
 5904       optional string promptText
 5905 
 5906   # Navigates current page to the given URL.
 5907   command navigate
 5908     parameters
 5909       # URL to navigate the page to.
 5910       string url
 5911       # Referrer URL.
 5912       optional string referrer
 5913       # Intended transition type.
 5914       optional TransitionType transitionType
 5915       # Frame id to navigate, if not specified navigates the top frame.
 5916       optional FrameId frameId
 5917       # Referrer-policy used for the navigation.
 5918       experimental optional ReferrerPolicy referrerPolicy
 5919     returns
 5920       # Frame id that has navigated (or failed to navigate)
 5921       FrameId frameId
 5922       # Loader identifier.
 5923       optional Network.LoaderId loaderId
 5924       # User friendly error message, present if and only if navigation has failed.
 5925       optional string errorText
 5926 
 5927   # Navigates current page to the given history entry.
 5928   command navigateToHistoryEntry
 5929     parameters
 5930       # Unique id of the entry to navigate to.
 5931       integer entryId
 5932 
 5933   # Print page as PDF.
 5934   command printToPDF
 5935     parameters
 5936       # Paper orientation. Defaults to false.
 5937       optional boolean landscape
 5938       # Display header and footer. Defaults to false.
 5939       optional boolean displayHeaderFooter
 5940       # Print background graphics. Defaults to false.
 5941       optional boolean printBackground
 5942       # Scale of the webpage rendering. Defaults to 1.
 5943       optional number scale
 5944       # Paper width in inches. Defaults to 8.5 inches.
 5945       optional number paperWidth
 5946       # Paper height in inches. Defaults to 11 inches.
 5947       optional number paperHeight
 5948       # Top margin in inches. Defaults to 1cm (~0.4 inches).
 5949       optional number marginTop
 5950       # Bottom margin in inches. Defaults to 1cm (~0.4 inches).
 5951       optional number marginBottom
 5952       # Left margin in inches. Defaults to 1cm (~0.4 inches).
 5953       optional number marginLeft
 5954       # Right margin in inches. Defaults to 1cm (~0.4 inches).
 5955       optional number marginRight
 5956       # Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means
 5957       # print all pages.
 5958       optional string pageRanges
 5959       # Whether to silently ignore invalid but successfully parsed page ranges, such as '3-2'.
 5960       # Defaults to false.
 5961       optional boolean ignoreInvalidPageRanges
 5962       # HTML template for the print header. Should be valid HTML markup with following
 5963       # classes used to inject printing values into them:
 5964       # - `date`: formatted print date
 5965       # - `title`: document title
 5966       # - `url`: document location
 5967       # - `pageNumber`: current page number
 5968       # - `totalPages`: total pages in the document
 5969       #
 5970       # For example, `<span class=title></span>` would generate span containing the title.
 5971       optional string headerTemplate
 5972       # HTML template for the print footer. Should use the same format as the `headerTemplate`.
 5973       optional string footerTemplate
 5974       # Whether or not to prefer page size as defined by css. Defaults to false,
 5975       # in which case the content will be scaled to fit the paper size.
 5976       optional boolean preferCSSPageSize
 5977       # return as stream
 5978       experimental optional enum transferMode
 5979         ReturnAsBase64
 5980         ReturnAsStream
 5981     returns
 5982       # Base64-encoded pdf data. Empty if |returnAsStream| is specified.
 5983       binary data
 5984       # A handle of the stream that holds resulting PDF data.
 5985       experimental optional IO.StreamHandle stream
 5986 
 5987   # Reloads given page optionally ignoring the cache.
 5988   command reload
 5989     parameters
 5990       # If true, browser cache is ignored (as if the user pressed Shift+refresh).
 5991       optional boolean ignoreCache
 5992       # If set, the script will be injected into all frames of the inspected page after reload.
 5993       # Argument will be ignored if reloading dataURL origin.
 5994       optional string scriptToEvaluateOnLoad
 5995 
 5996   # Deprecated, please use removeScriptToEvaluateOnNewDocument instead.
 5997   experimental deprecated command removeScriptToEvaluateOnLoad
 5998     parameters
 5999       ScriptIdentifier identifier
 6000 
 6001   # Removes given script from the list.
 6002   command removeScriptToEvaluateOnNewDocument
 6003     parameters
 6004       ScriptIdentifier identifier
 6005 
 6006   # Acknowledges that a screencast frame has been received by the frontend.
 6007   experimental command screencastFrameAck
 6008     parameters
 6009       # Frame number.
 6010       integer sessionId
 6011 
 6012   # Searches for given string in resource content.
 6013   experimental command searchInResource
 6014     parameters
 6015       # Frame id for resource to search in.
 6016       FrameId frameId
 6017       # URL of the resource to search in.
 6018       string url
 6019       # String to search for.
 6020       string query
 6021       # If true, search is case sensitive.
 6022       optional boolean caseSensitive
 6023       # If true, treats string parameter as regex.
 6024       optional boolean isRegex
 6025     returns
 6026       # List of search matches.
 6027       array of Debugger.SearchMatch result
 6028 
 6029   # Enable Chrome's experimental ad filter on all sites.
 6030   experimental command setAdBlockingEnabled
 6031     parameters
 6032       # Whether to block ads.
 6033       boolean enabled
 6034 
 6035   # Enable page Content Security Policy by-passing.
 6036   experimental command setBypassCSP
 6037     parameters
 6038       # Whether to bypass page CSP.
 6039       boolean enabled
 6040 
 6041   # Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
 6042   # window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
 6043   # query results).
 6044   experimental deprecated command setDeviceMetricsOverride
 6045     # Use 'Emulation.setDeviceMetricsOverride' instead
 6046     redirect Emulation
 6047     parameters
 6048       # Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
 6049       integer width
 6050       # Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override.
 6051       integer height
 6052       # Overriding device scale factor value. 0 disables the override.
 6053       number deviceScaleFactor
 6054       # Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text
 6055       # autosizing and more.
 6056       boolean mobile
 6057       # Scale to apply to resulting view image.
 6058       optional number scale
 6059       # Overriding screen width value in pixels (minimum 0, maximum 10000000).
 6060       optional integer screenWidth
 6061       # Overriding screen height value in pixels (minimum 0, maximum 10000000).
 6062       optional integer screenHeight
 6063       # Overriding view X position on screen in pixels (minimum 0, maximum 10000000).
 6064       optional integer positionX
 6065       # Overriding view Y position on screen in pixels (minimum 0, maximum 10000000).
 6066       optional integer positionY
 6067       # Do not set visible view size, rely upon explicit setVisibleSize call.
 6068       optional boolean dontSetVisibleSize
 6069       # Screen orientation override.
 6070       optional Emulation.ScreenOrientation screenOrientation
 6071       # The viewport dimensions and scale. If not set, the override is cleared.
 6072       optional Viewport viewport
 6073 
 6074   # Overrides the Device Orientation.
 6075   experimental deprecated command setDeviceOrientationOverride
 6076     # Use 'DeviceOrientation.setDeviceOrientationOverride' instead
 6077     redirect DeviceOrientation
 6078     parameters
 6079       # Mock alpha
 6080       number alpha
 6081       # Mock beta
 6082       number beta
 6083       # Mock gamma
 6084       number gamma
 6085 
 6086   # Set generic font families.
 6087   experimental command setFontFamilies
 6088     parameters
 6089       # Specifies font families to set. If a font family is not specified, it won't be changed.
 6090       FontFamilies fontFamilies
 6091 
 6092   # Set default font sizes.
 6093   experimental command setFontSizes
 6094     parameters
 6095       # Specifies font sizes to set. If a font size is not specified, it won't be changed.
 6096       FontSizes fontSizes
 6097 
 6098   # Sets given markup as the document's HTML.
 6099   command setDocumentContent
 6100     parameters
 6101       # Frame id to set HTML for.
 6102       FrameId frameId
 6103       # HTML content to set.
 6104       string html
 6105 
 6106   # Set the behavior when downloading a file.
 6107   experimental deprecated command setDownloadBehavior
 6108     parameters
 6109       # Whether to allow all or deny all download requests, or use default Chrome behavior if
 6110       # available (otherwise deny).
 6111       enum behavior
 6112         deny
 6113         allow
 6114         default
 6115       # The default path to save downloaded files to. This is requred if behavior is set to 'allow'
 6116       optional string downloadPath
 6117 
 6118   # Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position
 6119   # unavailable.
 6120   deprecated command setGeolocationOverride
 6121     # Use 'Emulation.setGeolocationOverride' instead
 6122     redirect Emulation
 6123     parameters
 6124       # Mock latitude
 6125       optional number latitude
 6126       # Mock longitude
 6127       optional number longitude
 6128       # Mock accuracy
 6129       optional number accuracy
 6130 
 6131   # Controls whether page will emit lifecycle events.
 6132   experimental command setLifecycleEventsEnabled
 6133     parameters
 6134       # If true, starts emitting lifecycle events.
 6135       boolean enabled
 6136 
 6137   # Toggles mouse event-based touch event emulation.
 6138   experimental deprecated command setTouchEmulationEnabled
 6139     # Use 'Emulation.setTouchEmulationEnabled' instead
 6140     redirect Emulation
 6141     parameters
 6142       # Whether the touch event emulation should be enabled.
 6143       boolean enabled
 6144       # Touch/gesture events configuration. Default: current platform.
 6145       optional enum configuration
 6146         mobile
 6147         desktop
 6148 
 6149   # Starts sending each frame using the `screencastFrame` event.
 6150   experimental command startScreencast
 6151     parameters
 6152       # Image compression format.
 6153       optional enum format
 6154         jpeg
 6155         png
 6156       # Compression quality from range [0..100].
 6157       optional integer quality
 6158       # Maximum screenshot width.
 6159       optional integer maxWidth
 6160       # Maximum screenshot height.
 6161       optional integer maxHeight
 6162       # Send every n-th frame.
 6163       optional integer everyNthFrame
 6164 
 6165   # Force the page stop all navigations and pending resource fetches.
 6166   command stopLoading
 6167 
 6168   # Crashes renderer on the IO thread, generates minidumps.
 6169   experimental command crash
 6170 
 6171   # Tries to close page, running its beforeunload hooks, if any.
 6172   experimental command close
 6173 
 6174   # Tries to update the web lifecycle state of the page.
 6175   # It will transition the page to the given state according to:
 6176   # https://github.com/WICG/web-lifecycle/
 6177   experimental command setWebLifecycleState
 6178     parameters
 6179       # Target lifecycle state
 6180       enum state
 6181         frozen
 6182         active
 6183 
 6184   # Stops sending each frame in the `screencastFrame`.
 6185   experimental command stopScreencast
 6186 
 6187   # Forces compilation cache to be generated for every subresource script.
 6188   experimental command setProduceCompilationCache
 6189     parameters
 6190       boolean enabled
 6191 
 6192   # Seeds compilation cache for given url. Compilation cache does not survive
 6193   # cross-process navigation.
 6194   experimental command addCompilationCache
 6195     parameters
 6196       string url
 6197       # Base64-encoded data
 6198       binary data
 6199 
 6200   # Clears seeded compilation cache.
 6201   experimental command clearCompilationCache
 6202 
 6203   # Generates a report for testing.
 6204   experimental command generateTestReport
 6205     parameters
 6206       # Message to be displayed in the report.
 6207       string message
 6208       # Specifies the endpoint group to deliver the report to.
 6209       optional string group
 6210 
 6211   # Pauses page execution. Can be resumed using generic Runtime.runIfWaitingForDebugger.
 6212   experimental command waitForDebugger
 6213 
 6214   # Intercept file chooser requests and transfer control to protocol clients.
 6215   # When file chooser interception is enabled, native file chooser dialog is not shown.
 6216   # Instead, a protocol event `Page.fileChooserOpened` is emitted.
 6217   experimental command setInterceptFileChooserDialog
 6218     parameters
 6219       boolean enabled
 6220 
 6221   event domContentEventFired
 6222     parameters
 6223       Network.MonotonicTime timestamp
 6224 
 6225   # Emitted only when `page.interceptFileChooser` is enabled.
 6226   event fileChooserOpened
 6227     parameters
 6228       # Id of the frame containing input node.
 6229       experimental FrameId frameId
 6230       # Input node id.
 6231       experimental DOM.BackendNodeId backendNodeId
 6232       # Input mode.
 6233       enum mode
 6234         selectSingle
 6235         selectMultiple
 6236 
 6237   # Fired when frame has been attached to its parent.
 6238   event frameAttached
 6239     parameters
 6240       # Id of the frame that has been attached.
 6241       FrameId frameId
 6242       # Parent frame identifier.
 6243       FrameId parentFrameId
 6244       # JavaScript stack trace of when frame was attached, only set if frame initiated from script.
 6245       optional Runtime.StackTrace stack
 6246 
 6247   # Fired when frame no longer has a scheduled navigation.
 6248   deprecated event frameClearedScheduledNavigation
 6249     parameters
 6250       # Id of the frame that has cleared its scheduled navigation.
 6251       FrameId frameId
 6252 
 6253   # Fired when frame has been detached from its parent.
 6254   event frameDetached
 6255     parameters
 6256       # Id of the frame that has been detached.
 6257       FrameId frameId
 6258 
 6259   # Fired once navigation of the frame has completed. Frame is now associated with the new loader.
 6260   event frameNavigated
 6261     parameters
 6262       # Frame object.
 6263       Frame frame
 6264 
 6265   experimental event frameResized
 6266 
 6267   # Fired when a renderer-initiated navigation is requested.
 6268   # Navigation may still be cancelled after the event is issued.
 6269   experimental event frameRequestedNavigation
 6270     parameters
 6271       # Id of the frame that is being navigated.
 6272       FrameId frameId
 6273       # The reason for the navigation.
 6274       ClientNavigationReason reason
 6275       # The destination URL for the requested navigation.
 6276       string url
 6277       # The disposition for the navigation.
 6278       ClientNavigationDisposition disposition
 6279 
 6280   # Fired when frame schedules a potential navigation.
 6281   deprecated event frameScheduledNavigation
 6282     parameters
 6283       # Id of the frame that has scheduled a navigation.
 6284       FrameId frameId
 6285       # Delay (in seconds) until the navigation is scheduled to begin. The navigation is not
 6286       # guaranteed to start.
 6287       number delay
 6288       # The reason for the navigation.
 6289       ClientNavigationReason reason
 6290       # The destination URL for the scheduled navigation.
 6291       string url
 6292 
 6293   # Fired when frame has started loading.
 6294   experimental event frameStartedLoading
 6295     parameters
 6296       # Id of the frame that has started loading.
 6297       FrameId frameId
 6298 
 6299   # Fired when frame has stopped loading.
 6300   experimental event frameStoppedLoading
 6301     parameters
 6302       # Id of the frame that has stopped loading.
 6303       FrameId frameId
 6304 
 6305   # Fired when page is about to start a download.
 6306   experimental event downloadWillBegin
 6307     parameters
 6308       # Id of the frame that caused download to begin.
 6309       FrameId frameId
 6310       # Global unique identifier of the download.
 6311       string guid
 6312       # URL of the resource being downloaded.
 6313       string url
 6314       # Suggested file name of the resource (the actual name of the file saved on disk may differ).
 6315       string suggestedFilename
 6316 
 6317   # Fired when download makes progress. Last call has |done| == true.
 6318   experimental event downloadProgress
 6319     parameters
 6320       # Global unique identifier of the download.
 6321       string guid
 6322       # Total expected bytes to download.
 6323       number totalBytes
 6324       # Total bytes received.
 6325       number receivedBytes
 6326       # Download status.
 6327       enum state
 6328         inProgress
 6329         completed
 6330         canceled
 6331 
 6332   # Fired when interstitial page was hidden
 6333   event interstitialHidden
 6334 
 6335   # Fired when interstitial page was shown
 6336   event interstitialShown
 6337 
 6338   # Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) has been
 6339   # closed.
 6340   event javascriptDialogClosed
 6341     parameters
 6342       # Whether dialog was confirmed.
 6343       boolean result
 6344       # User input in case of prompt.
 6345       string userInput
 6346 
 6347   # Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) is about to
 6348   # open.
 6349   event javascriptDialogOpening
 6350     parameters
 6351       # Frame url.
 6352       string url
 6353       # Message that will be displayed by the dialog.
 6354       string message
 6355       # Dialog type.
 6356       DialogType type
 6357       # True iff browser is capable showing or acting on the given dialog. When browser has no
 6358       # dialog handler for given target, calling alert while Page domain is engaged will stall
 6359       # the page execution. Execution can be resumed via calling Page.handleJavaScriptDialog.
 6360       boolean hasBrowserHandler
 6361       # Default dialog prompt.
 6362       optional string defaultPrompt
 6363 
 6364   # Fired for top level page lifecycle events such as navigation, load, paint, etc.
 6365   event lifecycleEvent
 6366     parameters
 6367       # Id of the frame.
 6368       FrameId frameId
 6369       # Loader identifier. Empty string if the request is fetched from worker.
 6370       Network.LoaderId loaderId
 6371       string name
 6372       Network.MonotonicTime timestamp
 6373 
 6374   event loadEventFired
 6375     parameters
 6376       Network.MonotonicTime timestamp
 6377 
 6378   # Fired when same-document navigation happens, e.g. due to history API usage or anchor navigation.
 6379   experimental event navigatedWithinDocument
 6380     parameters
 6381       # Id of the frame.
 6382       FrameId frameId
 6383       # Frame's new url.
 6384       string url
 6385 
 6386   # Compressed image data requested by the `startScreencast`.
 6387   experimental event screencastFrame
 6388     parameters
 6389       # Base64-encoded compressed image.
 6390       binary data
 6391       # Screencast frame metadata.
 6392       ScreencastFrameMetadata metadata
 6393       # Frame number.
 6394       integer sessionId
 6395 
 6396   # Fired when the page with currently enabled screencast was shown or hidden `.
 6397   experimental event screencastVisibilityChanged
 6398     parameters
 6399       # True if the page is visible.
 6400       boolean visible
 6401 
 6402   # Fired when a new window is going to be opened, via window.open(), link click, form submission,
 6403   # etc.
 6404   event windowOpen
 6405     parameters
 6406       # The URL for the new window.
 6407       string url
 6408       # Window name.
 6409       string windowName
 6410       # An array of enabled window features.
 6411       array of string windowFeatures
 6412       # Whether or not it was triggered by user gesture.
 6413       boolean userGesture
 6414 
 6415   # Issued for every compilation cache generated. Is only available
 6416   # if Page.setGenerateCompilationCache is enabled.
 6417   experimental event compilationCacheProduced
 6418     parameters
 6419       string url
 6420       # Base64-encoded data
 6421       binary data
 6422 
 6423 domain Performance
 6424 
 6425   # Run-time execution metric.
 6426   type Metric extends object
 6427     properties
 6428       # Metric name.
 6429       string name
 6430       # Metric value.
 6431       number value
 6432 
 6433   # Disable collecting and reporting metrics.
 6434   command disable
 6435 
 6436   # Enable collecting and reporting metrics.
 6437   command enable
 6438     parameters
 6439       # Time domain to use for collecting and reporting duration metrics.
 6440       optional enum timeDomain
 6441         # Use monotonically increasing abstract time (default).
 6442         timeTicks
 6443         # Use thread running time.
 6444         threadTicks
 6445 
 6446   # Sets time domain to use for collecting and reporting duration metrics.
 6447   # Note that this must be called before enabling metrics collection. Calling
 6448   # this method while metrics collection is enabled returns an error.
 6449   experimental deprecated command setTimeDomain
 6450     parameters
 6451       # Time domain
 6452       enum timeDomain
 6453         # Use monotonically increasing abstract time (default).
 6454         timeTicks
 6455         # Use thread running time.
 6456         threadTicks
 6457 
 6458   # Retrieve current values of run-time metrics.
 6459   command getMetrics
 6460     returns
 6461       # Current values for run-time metrics.
 6462       array of Metric metrics
 6463 
 6464   # Current values of the metrics.
 6465   event metrics
 6466     parameters
 6467       # Current values of the metrics.
 6468       array of Metric metrics
 6469       # Timestamp title.
 6470       string title
 6471 
 6472 # Security
 6473 domain Security
 6474 
 6475   # An internal certificate ID value.
 6476   type CertificateId extends integer
 6477 
 6478   # A description of mixed content (HTTP resources on HTTPS pages), as defined by
 6479   # https://www.w3.org/TR/mixed-content/#categories
 6480   type MixedContentType extends string
 6481     enum
 6482       blockable
 6483       optionally-blockable
 6484       none
 6485 
 6486   # The security level of a page or resource.
 6487   type SecurityState extends string
 6488     enum
 6489       unknown
 6490       neutral
 6491       insecure
 6492       secure
 6493       info
 6494       insecure-broken
 6495 
 6496   # Details about the security state of the page certificate.
 6497   experimental type CertificateSecurityState extends object
 6498     properties
 6499       # Protocol name (e.g. "TLS 1.2" or "QUIC").
 6500       string protocol
 6501       # Key Exchange used by the connection, or the empty string if not applicable.
 6502       string keyExchange
 6503       # (EC)DH group used by the connection, if applicable.
 6504       optional string keyExchangeGroup
 6505       # Cipher name.
 6506       string cipher
 6507       # TLS MAC. Note that AEAD ciphers do not have separate MACs.
 6508       optional string mac
 6509       # Page certificate.
 6510       array of string certificate
 6511       # Certificate subject name.
 6512       string subjectName
 6513       # Name of the issuing CA.
 6514       string issuer
 6515       # Certificate valid from date.
 6516       Network.TimeSinceEpoch validFrom
 6517       # Certificate valid to (expiration) date
 6518       Network.TimeSinceEpoch validTo
 6519       # The highest priority network error code, if the certificate has an error.
 6520       optional string certificateNetworkError
 6521       # True if the certificate uses a weak signature aglorithm.
 6522       boolean certificateHasWeakSignature
 6523       # True if the certificate has a SHA1 signature in the chain.
 6524       boolean certificateHasSha1Signature
 6525       # True if modern SSL
 6526       boolean modernSSL
 6527       # True if the connection is using an obsolete SSL protocol.
 6528       boolean obsoleteSslProtocol
 6529       # True if the connection is using an obsolete SSL key exchange.
 6530       boolean obsoleteSslKeyExchange
 6531       # True if the connection is using an obsolete SSL cipher.
 6532       boolean obsoleteSslCipher
 6533       # True if the connection is using an obsolete SSL signature.
 6534       boolean obsoleteSslSignature
 6535 
 6536   experimental type SafetyTipStatus extends string
 6537     enum
 6538       badReputation
 6539       lookalike
 6540 
 6541   experimental type SafetyTipInfo extends object
 6542     properties
 6543       # Describes whether the page triggers any safety tips or reputation warnings. Default is unknown.
 6544       SafetyTipStatus safetyTipStatus
 6545       # The URL the safety tip suggested ("Did you mean?"). Only filled in for lookalike matches.
 6546       optional string safeUrl
 6547 
 6548   # Security state information about the page.
 6549   experimental type VisibleSecurityState extends object
 6550     properties
 6551       # The security level of the page.
 6552       SecurityState securityState
 6553       # Security state details about the page certificate.
 6554       optional CertificateSecurityState certificateSecurityState
 6555       # The type of Safety Tip triggered on the page. Note that this field will be set even if the Safety Tip UI was not actually shown.
 6556       optional SafetyTipInfo safetyTipInfo
 6557       # Array of security state issues ids.
 6558       array of string securityStateIssueIds
 6559 
 6560   # An explanation of an factor contributing to the security state.
 6561   type SecurityStateExplanation extends object
 6562     properties
 6563       # Security state representing the severity of the factor being explained.
 6564       SecurityState securityState
 6565       # Title describing the type of factor.
 6566       string title
 6567       # Short phrase describing the type of factor.
 6568       string summary
 6569       # Full text explanation of the factor.
 6570       string description
 6571       # The type of mixed content described by the explanation.
 6572       MixedContentType mixedContentType
 6573       # Page certificate.
 6574       array of string certificate
 6575       # Recommendations to fix any issues.
 6576       optional array of string recommendations
 6577 
 6578   # Information about insecure content on the page.
 6579   deprecated type InsecureContentStatus extends object
 6580     properties
 6581       # Always false.
 6582       boolean ranMixedContent
 6583       # Always false.
 6584       boolean displayedMixedContent
 6585       # Always false.
 6586       boolean containedMixedForm
 6587       # Always false.
 6588       boolean ranContentWithCertErrors
 6589       # Always false.
 6590       boolean displayedContentWithCertErrors
 6591       # Always set to unknown.
 6592       SecurityState ranInsecureContentStyle
 6593       # Always set to unknown.
 6594       SecurityState displayedInsecureContentStyle
 6595 
 6596   # The action to take when a certificate error occurs. continue will continue processing the
 6597   # request and cancel will cancel the request.
 6598   type CertificateErrorAction extends string
 6599     enum
 6600       continue
 6601       cancel
 6602 
 6603   # Disables tracking security state changes.
 6604   command disable
 6605 
 6606   # Enables tracking security state changes.
 6607   command enable
 6608 
 6609   # Enable/disable whether all certificate errors should be ignored.
 6610   experimental command setIgnoreCertificateErrors
 6611     parameters
 6612       # If true, all certificate errors will be ignored.
 6613       boolean ignore
 6614 
 6615   # Handles a certificate error that fired a certificateError event.
 6616   deprecated command handleCertificateError
 6617     parameters
 6618       # The ID of the event.
 6619       integer eventId
 6620       # The action to take on the certificate error.
 6621       CertificateErrorAction action
 6622 
 6623   # Enable/disable overriding certificate errors. If enabled, all certificate error events need to
 6624   # be handled by the DevTools client and should be answered with `handleCertificateError` commands.
 6625   deprecated command setOverrideCertificateErrors
 6626     parameters
 6627       # If true, certificate errors will be overridden.
 6628       boolean override
 6629 
 6630   # There is a certificate error. If overriding certificate errors is enabled, then it should be
 6631   # handled with the `handleCertificateError` command. Note: this event does not fire if the
 6632   # certificate error has been allowed internally. Only one client per target should override
 6633   # certificate errors at the same time.
 6634   deprecated event certificateError
 6635     parameters
 6636       # The ID of the event.
 6637       integer eventId
 6638       # The type of the error.
 6639       string errorType
 6640       # The url that was requested.
 6641       string requestURL
 6642 
 6643   # The security state of the page changed.
 6644   experimental event visibleSecurityStateChanged
 6645     parameters
 6646       # Security state information about the page.
 6647       VisibleSecurityState visibleSecurityState
 6648 
 6649   # The security state of the page changed.
 6650   event securityStateChanged
 6651     parameters
 6652       # Security state.
 6653       SecurityState securityState
 6654       # True if the page was loaded over cryptographic transport such as HTTPS.
 6655       deprecated boolean schemeIsCryptographic
 6656       # List of explanations for the security state. If the overall security state is `insecure` or
 6657       # `warning`, at least one corresponding explanation should be included.
 6658       array of SecurityStateExplanation explanations
 6659       # Information about insecure content on the page.
 6660       deprecated InsecureContentStatus insecureContentStatus
 6661       # Overrides user-visible description of the state.
 6662       optional string summary
 6663 
 6664 experimental domain ServiceWorker
 6665   depends on Target
 6666 
 6667   type RegistrationID extends string
 6668 
 6669   # ServiceWorker registration.
 6670   type ServiceWorkerRegistration extends object
 6671     properties
 6672       RegistrationID registrationId
 6673       string scopeURL
 6674       boolean isDeleted
 6675 
 6676   type ServiceWorkerVersionRunningStatus extends string
 6677     enum
 6678       stopped
 6679       starting
 6680       running
 6681       stopping
 6682 
 6683   type ServiceWorkerVersionStatus extends string
 6684     enum
 6685       new
 6686       installing
 6687       installed
 6688       activating
 6689       activated
 6690       redundant
 6691 
 6692   # ServiceWorker version.
 6693   type ServiceWorkerVersion extends object
 6694     properties
 6695       string versionId
 6696       RegistrationID registrationId
 6697       string scriptURL
 6698       ServiceWorkerVersionRunningStatus runningStatus
 6699       ServiceWorkerVersionStatus status
 6700       # The Last-Modified header value of the main script.
 6701       optional number scriptLastModified
 6702       # The time at which the response headers of the main script were received from the server.
 6703       # For cached script it is the last time the cache entry was validated.
 6704       optional number scriptResponseTime
 6705       optional array of Target.TargetID controlledClients
 6706       optional Target.TargetID targetId
 6707 
 6708   # ServiceWorker error message.
 6709   type ServiceWorkerErrorMessage extends object
 6710     properties
 6711       string errorMessage
 6712       RegistrationID registrationId
 6713       string versionId
 6714       string sourceURL
 6715       integer lineNumber
 6716       integer columnNumber
 6717 
 6718   command deliverPushMessage
 6719     parameters
 6720       string origin
 6721       RegistrationID registrationId
 6722       string data
 6723 
 6724   command disable
 6725 
 6726   command dispatchSyncEvent
 6727     parameters
 6728       string origin
 6729       RegistrationID registrationId
 6730       string tag
 6731       boolean lastChance
 6732 
 6733   command dispatchPeriodicSyncEvent
 6734     parameters
 6735       string origin
 6736       RegistrationID registrationId
 6737       string tag
 6738 
 6739   command enable
 6740 
 6741   command inspectWorker
 6742     parameters
 6743       string versionId
 6744 
 6745   command setForceUpdateOnPageLoad
 6746     parameters
 6747       boolean forceUpdateOnPageLoad
 6748 
 6749   command skipWaiting
 6750     parameters
 6751       string scopeURL
 6752 
 6753   command startWorker
 6754     parameters
 6755       string scopeURL
 6756 
 6757   command stopAllWorkers
 6758 
 6759   command stopWorker
 6760     parameters
 6761       string versionId
 6762 
 6763   command unregister
 6764     parameters
 6765       string scopeURL
 6766 
 6767   command updateRegistration
 6768     parameters
 6769       string scopeURL
 6770 
 6771   event workerErrorReported
 6772     parameters
 6773       ServiceWorkerErrorMessage errorMessage
 6774 
 6775   event workerRegistrationUpdated
 6776     parameters
 6777       array of ServiceWorkerRegistration registrations
 6778 
 6779   event workerVersionUpdated
 6780     parameters
 6781       array of ServiceWorkerVersion versions
 6782 
 6783 experimental domain Storage
 6784   depends on Browser
 6785   depends on Network
 6786 
 6787   # Enum of possible storage types.
 6788   type StorageType extends string
 6789     enum
 6790       appcache
 6791       cookies
 6792       file_systems
 6793       indexeddb
 6794       local_storage
 6795       shader_cache
 6796       websql
 6797       service_workers
 6798       cache_storage
 6799       all
 6800       other
 6801 
 6802   # Usage for a storage type.
 6803   type UsageForType extends object
 6804     properties
 6805       # Name of storage type.
 6806       StorageType storageType
 6807       # Storage usage (bytes).
 6808       number usage
 6809 
 6810   # Clears storage for origin.
 6811   command clearDataForOrigin
 6812     parameters
 6813       # Security origin.
 6814       string origin
 6815       # Comma separated list of StorageType to clear.
 6816       string storageTypes
 6817 
 6818   # Returns all browser cookies.
 6819   command getCookies
 6820     parameters
 6821       # Browser context to use when called on the browser endpoint.
 6822       optional Browser.BrowserContextID browserContextId
 6823     returns
 6824       # Array of cookie objects.
 6825       array of Network.Cookie cookies
 6826 
 6827   # Sets given cookies.
 6828   command setCookies
 6829     parameters
 6830       # Cookies to be set.
 6831       array of Network.CookieParam cookies
 6832       # Browser context to use when called on the browser endpoint.
 6833       optional Browser.BrowserContextID browserContextId
 6834 
 6835   # Clears cookies.
 6836   command clearCookies
 6837     parameters
 6838       # Browser context to use when called on the browser endpoint.
 6839       optional Browser.BrowserContextID browserContextId
 6840 
 6841   # Returns usage and quota in bytes.
 6842   command getUsageAndQuota
 6843     parameters
 6844       # Security origin.
 6845       string origin
 6846     returns
 6847       # Storage usage (bytes).
 6848       number usage
 6849       # Storage quota (bytes).
 6850       number quota
 6851       # Storage usage per type (bytes).
 6852       array of UsageForType usageBreakdown
 6853 
 6854   # Registers origin to be notified when an update occurs to its cache storage list.
 6855   command trackCacheStorageForOrigin
 6856     parameters
 6857       # Security origin.
 6858       string origin
 6859 
 6860   # Registers origin to be notified when an update occurs to its IndexedDB.
 6861   command trackIndexedDBForOrigin
 6862     parameters
 6863       # Security origin.
 6864       string origin
 6865 
 6866   # Unregisters origin from receiving notifications for cache storage.
 6867   command untrackCacheStorageForOrigin
 6868     parameters
 6869       # Security origin.
 6870       string origin
 6871 
 6872   # Unregisters origin from receiving notifications for IndexedDB.
 6873   command untrackIndexedDBForOrigin
 6874     parameters
 6875       # Security origin.
 6876       string origin
 6877 
 6878   # A cache's contents have been modified.
 6879   event cacheStorageContentUpdated
 6880     parameters
 6881       # Origin to update.
 6882       string origin
 6883       # Name of cache in origin.
 6884       string cacheName
 6885 
 6886   # A cache has been added/deleted.
 6887   event cacheStorageListUpdated
 6888     parameters
 6889       # Origin to update.
 6890       string origin
 6891 
 6892   # The origin's IndexedDB object store has been modified.
 6893   event indexedDBContentUpdated
 6894     parameters
 6895       # Origin to update.
 6896       string origin
 6897       # Database to update.
 6898       string databaseName
 6899       # ObjectStore to update.
 6900       string objectStoreName
 6901 
 6902   # The origin's IndexedDB database list has been modified.
 6903   event indexedDBListUpdated
 6904     parameters
 6905       # Origin to update.
 6906       string origin
 6907 
 6908 # The SystemInfo domain defines methods and events for querying low-level system information.
 6909 experimental domain SystemInfo
 6910 
 6911   # Describes a single graphics processor (GPU).
 6912   type GPUDevice extends object
 6913     properties
 6914       # PCI ID of the GPU vendor, if available; 0 otherwise.
 6915       number vendorId
 6916       # PCI ID of the GPU device, if available; 0 otherwise.
 6917       number deviceId
 6918       # Sub sys ID of the GPU, only available on Windows.
 6919       optional number subSysId
 6920       # Revision of the GPU, only available on Windows.
 6921       optional number revision
 6922       # String description of the GPU vendor, if the PCI ID is not available.
 6923       string vendorString
 6924       # String description of the GPU device, if the PCI ID is not available.
 6925       string deviceString
 6926       # String description of the GPU driver vendor.
 6927       string driverVendor
 6928       # String description of the GPU driver version.
 6929       string driverVersion
 6930 
 6931   # Describes the width and height dimensions of an entity.
 6932   type Size extends object
 6933     properties
 6934       # Width in pixels.
 6935       integer width
 6936       # Height in pixels.
 6937       integer height
 6938 
 6939   # Describes a supported video decoding profile with its associated minimum and
 6940   # maximum resolutions.
 6941   type VideoDecodeAcceleratorCapability extends object
 6942     properties
 6943       # Video codec profile that is supported, e.g. VP9 Profile 2.
 6944       string profile
 6945       # Maximum video dimensions in pixels supported for this |profile|.
 6946       Size maxResolution
 6947       # Minimum video dimensions in pixels supported for this |profile|.
 6948       Size minResolution
 6949 
 6950   # Describes a supported video encoding profile with its associated maximum
 6951   # resolution and maximum framerate.
 6952   type VideoEncodeAcceleratorCapability extends object
 6953     properties
 6954       # Video codec profile that is supported, e.g H264 Main.
 6955       string profile
 6956       # Maximum video dimensions in pixels supported for this |profile|.
 6957       Size maxResolution
 6958       # Maximum encoding framerate in frames per second supported for this
 6959       # |profile|, as fraction's numerator and denominator, e.g. 24/1 fps,
 6960       # 24000/1001 fps, etc.
 6961       integer maxFramerateNumerator
 6962       integer maxFramerateDenominator
 6963 
 6964   # YUV subsampling type of the pixels of a given image.
 6965   type SubsamplingFormat extends string
 6966     enum
 6967       yuv420
 6968       yuv422
 6969       yuv444
 6970 
 6971   # Image format of a given image.
 6972   type ImageType extends string
 6973     enum
 6974       jpeg
 6975       webp
 6976       unknown
 6977 
 6978   # Describes a supported image decoding profile with its associated minimum and
 6979   # maximum resolutions and subsampling.
 6980   type ImageDecodeAcceleratorCapability extends object
 6981     properties
 6982       # Image coded, e.g. Jpeg.
 6983       ImageType imageType
 6984       # Maximum supported dimensions of the image in pixels.
 6985       Size maxDimensions
 6986       # Minimum supported dimensions of the image in pixels.
 6987       Size minDimensions
 6988       # Optional array of supported subsampling formats, e.g. 4:2:0, if known.
 6989       array of SubsamplingFormat subsamplings
 6990 
 6991   # Provides information about the GPU(s) on the system.
 6992   type GPUInfo extends object
 6993     properties
 6994       # The graphics devices on the system. Element 0 is the primary GPU.
 6995       array of GPUDevice devices
 6996       # An optional dictionary of additional GPU related attributes.
 6997       optional object auxAttributes
 6998       # An optional dictionary of graphics features and their status.
 6999       optional object featureStatus
 7000       # An optional array of GPU driver bug workarounds.
 7001       array of string driverBugWorkarounds
 7002       # Supported accelerated video decoding capabilities.
 7003       array of VideoDecodeAcceleratorCapability videoDecoding
 7004       # Supported accelerated video encoding capabilities.
 7005       array of VideoEncodeAcceleratorCapability videoEncoding
 7006       # Supported accelerated image decoding capabilities.
 7007       array of ImageDecodeAcceleratorCapability imageDecoding
 7008 
 7009   # Represents process info.
 7010   type ProcessInfo extends object
 7011     properties
 7012       # Specifies process type.
 7013       string type
 7014       # Specifies process id.
 7015       integer id
 7016       # Specifies cumulative CPU usage in seconds across all threads of the
 7017       # process since the process start.
 7018       number cpuTime
 7019 
 7020   # Returns information about the system.
 7021   command getInfo
 7022     returns
 7023       # Information about the GPUs on the system.
 7024       GPUInfo gpu
 7025       # A platform-dependent description of the model of the machine. On Mac OS, this is, for
 7026       # example, 'MacBookPro'. Will be the empty string if not supported.
 7027       string modelName
 7028       # A platform-dependent description of the version of the machine. On Mac OS, this is, for
 7029       # example, '10.1'. Will be the empty string if not supported.
 7030       string modelVersion
 7031       # The command line string used to launch the browser. Will be the empty string if not
 7032       # supported.
 7033       string commandLine
 7034 
 7035   # Returns information about all running processes.
 7036   command getProcessInfo
 7037     returns
 7038       # An array of process info blocks.
 7039       array of ProcessInfo processInfo
 7040 
 7041 # Supports additional targets discovery and allows to attach to them.
 7042 domain Target
 7043 
 7044   type TargetID extends string
 7045 
 7046   # Unique identifier of attached debugging session.
 7047   type SessionID extends string
 7048 
 7049   type TargetInfo extends object
 7050     properties
 7051       TargetID targetId
 7052       string type
 7053       string title
 7054       string url
 7055       # Whether the target has an attached client.
 7056       boolean attached
 7057       # Opener target Id
 7058       optional TargetID openerId
 7059       experimental optional Browser.BrowserContextID browserContextId
 7060 
 7061   experimental type RemoteLocation extends object
 7062     properties
 7063       string host
 7064       integer port
 7065 
 7066   # Activates (focuses) the target.
 7067   command activateTarget
 7068     parameters
 7069       TargetID targetId
 7070 
 7071   # Attaches to the target with given id.
 7072   command attachToTarget
 7073     parameters
 7074       TargetID targetId
 7075       # Enables "flat" access to the session via specifying sessionId attribute in the commands.
 7076       # We plan to make this the default, deprecate non-flattened mode,
 7077       # and eventually retire it. See crbug.com/991325.
 7078       optional boolean flatten
 7079     returns
 7080       # Id assigned to the session.
 7081       SessionID sessionId
 7082 
 7083   # Attaches to the browser target, only uses flat sessionId mode.
 7084   experimental command attachToBrowserTarget
 7085     returns
 7086       # Id assigned to the session.
 7087       SessionID sessionId
 7088 
 7089   # Closes the target. If the target is a page that gets closed too.
 7090   command closeTarget
 7091     parameters
 7092       TargetID targetId
 7093     returns
 7094       boolean success
 7095 
 7096   # Inject object to the target's main frame that provides a communication
 7097   # channel with browser target.
 7098   #
 7099   # Injected object will be available as `window[bindingName]`.
 7100   #
 7101   # The object has the follwing API:
 7102   # - `binding.send(json)` - a method to send messages over the remote debugging protocol
 7103   # - `binding.onmessage = json => handleMessage(json)` - a callback that will be called for the protocol notifications and command responses.
 7104   experimental command exposeDevToolsProtocol
 7105     parameters
 7106       TargetID targetId
 7107       # Binding name, 'cdp' if not specified.
 7108       optional string bindingName
 7109 
 7110   # Creates a new empty BrowserContext. Similar to an incognito profile but you can have more than
 7111   # one.
 7112   experimental command createBrowserContext
 7113     parameters
 7114       # If specified, disposes this context when debugging session disconnects.
 7115       optional boolean disposeOnDetach
 7116       # Proxy server, similar to the one passed to --proxy-server
 7117       optional string proxyServer
 7118       # Proxy bypass list, similar to the one passed to --proxy-bypass-list
 7119       optional string proxyBypassList
 7120 
 7121     returns
 7122       # The id of the context created.
 7123       Browser.BrowserContextID browserContextId
 7124 
 7125   # Returns all browser contexts created with `Target.createBrowserContext` method.
 7126   experimental command getBrowserContexts
 7127     returns
 7128       # An array of browser context ids.
 7129       array of Browser.BrowserContextID browserContextIds
 7130 
 7131   # Creates a new page.
 7132   command createTarget
 7133     parameters
 7134       # The initial URL the page will be navigated to.
 7135       string url
 7136       # Frame width in DIP (headless chrome only).
 7137       optional integer width
 7138       # Frame height in DIP (headless chrome only).
 7139       optional integer height
 7140       # The browser context to create the page in.
 7141       optional Browser.BrowserContextID browserContextId
 7142       # Whether BeginFrames for this target will be controlled via DevTools (headless chrome only,
 7143       # not supported on MacOS yet, false by default).
 7144       experimental optional boolean enableBeginFrameControl
 7145       # Whether to create a new Window or Tab (chrome-only, false by default).
 7146       optional boolean newWindow
 7147       # Whether to create the target in background or foreground (chrome-only,
 7148       # false by default).
 7149       optional boolean background
 7150     returns
 7151       # The id of the page opened.
 7152       TargetID targetId
 7153 
 7154   # Detaches session with given id.
 7155   command detachFromTarget
 7156     parameters
 7157       # Session to detach.
 7158       optional SessionID sessionId
 7159       # Deprecated.
 7160       deprecated optional TargetID targetId
 7161 
 7162   # Deletes a BrowserContext. All the belonging pages will be closed without calling their
 7163   # beforeunload hooks.
 7164   experimental command disposeBrowserContext
 7165     parameters
 7166       Browser.BrowserContextID browserContextId
 7167 
 7168   # Returns information about a target.
 7169   experimental command getTargetInfo
 7170     parameters
 7171       optional TargetID targetId
 7172     returns
 7173       TargetInfo targetInfo
 7174 
 7175   # Retrieves a list of available targets.
 7176   command getTargets
 7177     returns
 7178       # The list of targets.
 7179       array of TargetInfo targetInfos
 7180 
 7181   # Sends protocol message over session with given id.
 7182   # Consider using flat mode instead; see commands attachToTarget, setAutoAttach,
 7183   # and crbug.com/991325.
 7184   deprecated command sendMessageToTarget
 7185     parameters
 7186       string message
 7187       # Identifier of the session.
 7188       optional SessionID sessionId
 7189       # Deprecated.
 7190       deprecated optional TargetID targetId
 7191 
 7192   # Controls whether to automatically attach to new targets which are considered to be related to
 7193   # this one. When turned on, attaches to all existing related targets as well. When turned off,
 7194   # automatically detaches from all currently attached targets.
 7195   experimental command setAutoAttach
 7196     parameters
 7197       # Whether to auto-attach to related targets.
 7198       boolean autoAttach
 7199       # Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger`
 7200       # to run paused targets.
 7201       boolean waitForDebuggerOnStart
 7202       # Enables "flat" access to the session via specifying sessionId attribute in the commands.
 7203       # We plan to make this the default, deprecate non-flattened mode,
 7204       # and eventually retire it. See crbug.com/991325.
 7205       optional boolean flatten
 7206 
 7207   # Controls whether to discover available targets and notify via
 7208   # `targetCreated/targetInfoChanged/targetDestroyed` events.
 7209   command setDiscoverTargets
 7210     parameters
 7211       # Whether to discover available targets.
 7212       boolean discover
 7213 
 7214   # Enables target discovery for the specified locations, when `setDiscoverTargets` was set to
 7215   # `true`.
 7216   experimental command setRemoteLocations
 7217     parameters
 7218       # List of remote locations.
 7219       array of RemoteLocation locations
 7220 
 7221   # Issued when attached to target because of auto-attach or `attachToTarget` command.
 7222   experimental event attachedToTarget
 7223     parameters
 7224       # Identifier assigned to the session used to send/receive messages.
 7225       SessionID sessionId
 7226       TargetInfo targetInfo
 7227       boolean waitingForDebugger
 7228 
 7229   # Issued when detached from target for any reason (including `detachFromTarget` command). Can be
 7230   # issued multiple times per target if multiple sessions have been attached to it.
 7231   experimental event detachedFromTarget
 7232     parameters
 7233       # Detached session identifier.
 7234       SessionID sessionId
 7235       # Deprecated.
 7236       deprecated optional TargetID targetId
 7237 
 7238   # Notifies about a new protocol message received from the session (as reported in
 7239   # `attachedToTarget` event).
 7240   event receivedMessageFromTarget
 7241     parameters
 7242       # Identifier of a session which sends a message.
 7243       SessionID sessionId
 7244       string message
 7245       # Deprecated.
 7246       deprecated optional TargetID targetId
 7247 
 7248   # Issued when a possible inspection target is created.
 7249   event targetCreated
 7250     parameters
 7251       TargetInfo targetInfo
 7252 
 7253   # Issued when a target is destroyed.
 7254   event targetDestroyed
 7255     parameters
 7256       TargetID targetId
 7257 
 7258   # Issued when a target has crashed.
 7259   event targetCrashed
 7260     parameters
 7261       TargetID targetId
 7262       # Termination status type.
 7263       string status
 7264       # Termination error code.
 7265       integer errorCode
 7266 
 7267   # Issued when some information about a target has changed. This only happens between
 7268   # `targetCreated` and `targetDestroyed`.
 7269   event targetInfoChanged
 7270     parameters
 7271       TargetInfo targetInfo
 7272 
 7273 # The Tethering domain defines methods and events for browser port binding.
 7274 experimental domain Tethering
 7275 
 7276   # Request browser port binding.
 7277   command bind
 7278     parameters
 7279       # Port number to bind.
 7280       integer port
 7281 
 7282   # Request browser port unbinding.
 7283   command unbind
 7284     parameters
 7285       # Port number to unbind.
 7286       integer port
 7287 
 7288   # Informs that port was successfully bound and got a specified connection id.
 7289   event accepted
 7290     parameters
 7291       # Port number that was successfully bound.
 7292       integer port
 7293       # Connection id to be used.
 7294       string connectionId
 7295 
 7296 experimental domain Tracing
 7297   depends on IO
 7298 
 7299   # Configuration for memory dump. Used only when "memory-infra" category is enabled.
 7300   type MemoryDumpConfig extends object
 7301 
 7302   type TraceConfig extends object
 7303     properties
 7304       # Controls how the trace buffer stores data.
 7305       optional enum recordMode
 7306         recordUntilFull
 7307         recordContinuously
 7308         recordAsMuchAsPossible
 7309         echoToConsole
 7310       # Turns on JavaScript stack sampling.
 7311       optional boolean enableSampling
 7312       # Turns on system tracing.
 7313       optional boolean enableSystrace
 7314       # Turns on argument filter.
 7315       optional boolean enableArgumentFilter
 7316       # Included category filters.
 7317       optional array of string includedCategories
 7318       # Excluded category filters.
 7319       optional array of string excludedCategories
 7320       # Configuration to synthesize the delays in tracing.
 7321       optional array of string syntheticDelays
 7322       # Configuration for memory dump triggers. Used only when "memory-infra" category is enabled.
 7323       optional MemoryDumpConfig memoryDumpConfig
 7324 
 7325   # Data format of a trace. Can be either the legacy JSON format or the
 7326   # protocol buffer format. Note that the JSON format will be deprecated soon.
 7327   type StreamFormat extends string
 7328     enum
 7329       json
 7330       proto
 7331 
 7332   # Compression type to use for traces returned via streams.
 7333   type StreamCompression extends string
 7334     enum
 7335       none
 7336       gzip
 7337 
 7338   # Stop trace events collection.
 7339   command end
 7340 
 7341   # Gets supported tracing categories.
 7342   command getCategories
 7343     returns
 7344       # A list of supported tracing categories.
 7345       array of string categories
 7346 
 7347   # Record a clock sync marker in the trace.
 7348   command recordClockSyncMarker
 7349     parameters
 7350       # The ID of this clock sync marker
 7351       string syncId
 7352 
 7353   # Request a global memory dump.
 7354   command requestMemoryDump
 7355     parameters
 7356       # Enables more deterministic results by forcing garbage collection
 7357       optional boolean deterministic
 7358     returns
 7359       # GUID of the resulting global memory dump.
 7360       string dumpGuid
 7361       # True iff the global memory dump succeeded.
 7362       boolean success
 7363 
 7364   # Start trace events collection.
 7365   command start
 7366     parameters
 7367       # Category/tag filter
 7368       deprecated optional string categories
 7369       # Tracing options
 7370       deprecated optional string options
 7371       # If set, the agent will issue bufferUsage events at this interval, specified in milliseconds
 7372       optional number bufferUsageReportingInterval
 7373       # Whether to report trace events as series of dataCollected events or to save trace to a
 7374       # stream (defaults to `ReportEvents`).
 7375       optional enum transferMode
 7376         ReportEvents
 7377         ReturnAsStream
 7378       # Trace data format to use. This only applies when using `ReturnAsStream`
 7379       # transfer mode (defaults to `json`).
 7380       optional StreamFormat streamFormat
 7381       # Compression format to use. This only applies when using `ReturnAsStream`
 7382       # transfer mode (defaults to `none`)
 7383       optional StreamCompression streamCompression
 7384       optional TraceConfig traceConfig
 7385 
 7386   event bufferUsage
 7387     parameters
 7388       # A number in range [0..1] that indicates the used size of event buffer as a fraction of its
 7389       # total size.
 7390       optional number percentFull
 7391       # An approximate number of events in the trace log.
 7392       optional number eventCount
 7393       # A number in range [0..1] that indicates the used size of event buffer as a fraction of its
 7394       # total size.
 7395       optional number value
 7396 
 7397   # Contains an bucket of collected trace events. When tracing is stopped collected events will be
 7398   # send as a sequence of dataCollected events followed by tracingComplete event.
 7399   event dataCollected
 7400     parameters
 7401       array of object value
 7402 
 7403   # Signals that tracing is stopped and there is no trace buffers pending flush, all data were
 7404   # delivered via dataCollected events.
 7405   event tracingComplete
 7406     parameters
 7407       # Indicates whether some trace data is known to have been lost, e.g. because the trace ring
 7408       # buffer wrapped around.
 7409       boolean dataLossOccurred
 7410       # A handle of the stream that holds resulting trace data.
 7411       optional IO.StreamHandle stream
 7412       # Trace data format of returned stream.
 7413       optional StreamFormat traceFormat
 7414       # Compression format of returned stream.
 7415       optional StreamCompression streamCompression
 7416 
 7417 # A domain for letting clients substitute browser's network layer with client code.
 7418 experimental domain Fetch
 7419   depends on Network
 7420   depends on IO
 7421   depends on Page
 7422 
 7423   # Unique request identifier.
 7424   type RequestId extends string
 7425 
 7426   # Stages of the request to handle. Request will intercept before the request is
 7427   # sent. Response will intercept after the response is received (but before response
 7428   # body is received.
 7429   experimental type RequestStage extends string
 7430     enum
 7431       Request
 7432       Response
 7433 
 7434   experimental type RequestPattern extends object
 7435     properties
 7436       # Wildcards ('*' -> zero or more, '?' -> exactly one) are allowed. Escape character is
 7437       # backslash. Omitting is equivalent to "*".
 7438       optional string urlPattern
 7439       # If set, only requests for matching resource types will be intercepted.
 7440       optional Network.ResourceType resourceType
 7441       # Stage at wich to begin intercepting requests. Default is Request.
 7442       optional RequestStage requestStage
 7443 
 7444   # Response HTTP header entry
 7445   type HeaderEntry extends object
 7446     properties
 7447       string name
 7448       string value
 7449 
 7450   # Authorization challenge for HTTP status code 401 or 407.
 7451   experimental type AuthChallenge extends object
 7452     properties
 7453       # Source of the authentication challenge.
 7454       optional enum source
 7455         Server
 7456         Proxy
 7457       # Origin of the challenger.
 7458       string origin
 7459       # The authentication scheme used, such as basic or digest
 7460       string scheme
 7461       # The realm of the challenge. May be empty.
 7462       string realm
 7463 
 7464   # Response to an AuthChallenge.
 7465   experimental type AuthChallengeResponse extends object
 7466     properties
 7467       # The decision on what to do in response to the authorization challenge.  Default means
 7468       # deferring to the default behavior of the net stack, which will likely either the Cancel
 7469       # authentication or display a popup dialog box.
 7470       enum response
 7471         Default
 7472         CancelAuth
 7473         ProvideCredentials
 7474       # The username to provide, possibly empty. Should only be set if response is
 7475       # ProvideCredentials.
 7476       optional string username
 7477       # The password to provide, possibly empty. Should only be set if response is
 7478       # ProvideCredentials.
 7479       optional string password
 7480 
 7481   # Disables the fetch domain.
 7482   command disable
 7483 
 7484   # Enables issuing of requestPaused events. A request will be paused until client
 7485   # calls one of failRequest, fulfillRequest or continueRequest/continueWithAuth.
 7486   command enable
 7487     parameters
 7488       # If specified, only requests matching any of these patterns will produce
 7489       # fetchRequested event and will be paused until clients response. If not set,
 7490       # all requests will be affected.
 7491       optional array of RequestPattern patterns
 7492       # If true, authRequired events will be issued and requests will be paused
 7493       # expecting a call to continueWithAuth.
 7494       optional boolean handleAuthRequests
 7495 
 7496   # Causes the request to fail with specified reason.
 7497   command failRequest
 7498     parameters
 7499       # An id the client received in requestPaused event.
 7500       RequestId requestId
 7501       # Causes the request to fail with the given reason.
 7502       Network.ErrorReason errorReason
 7503 
 7504   # Provides response to the request.
 7505   command fulfillRequest
 7506     parameters
 7507       # An id the client received in requestPaused event.
 7508       RequestId requestId
 7509       # An HTTP response code.
 7510       integer responseCode
 7511       # Response headers.
 7512       optional array of HeaderEntry responseHeaders
 7513       # Alternative way of specifying response headers as a \0-separated
 7514       # series of name: value pairs. Prefer the above method unless you
 7515       # need to represent some non-UTF8 values that can't be transmitted
 7516       # over the protocol as text.
 7517       optional binary binaryResponseHeaders
 7518       # A response body.
 7519       optional binary body
 7520       # A textual representation of responseCode.
 7521       # If absent, a standard phrase matching responseCode is used.
 7522       optional string responsePhrase
 7523 
 7524   # Continues the request, optionally modifying some of its parameters.
 7525   command continueRequest
 7526     parameters
 7527       # An id the client received in requestPaused event.
 7528       RequestId requestId
 7529       # If set, the request url will be modified in a way that's not observable by page.
 7530       optional string url
 7531       # If set, the request method is overridden.
 7532       optional string method
 7533       # If set, overrides the post data in the request.
 7534       optional string postData
 7535       # If set, overrides the request headers.
 7536       optional array of HeaderEntry headers
 7537 
 7538   # Continues a request supplying authChallengeResponse following authRequired event.
 7539   command continueWithAuth
 7540     parameters
 7541       # An id the client received in authRequired event.
 7542       RequestId requestId
 7543       # Response to  with an authChallenge.
 7544       AuthChallengeResponse authChallengeResponse
 7545 
 7546   # Causes the body of the response to be received from the server and
 7547   # returned as a single string. May only be issued for a request that
 7548   # is paused in the Response stage and is mutually exclusive with
 7549   # takeResponseBodyForInterceptionAsStream. Calling other methods that
 7550   # affect the request or disabling fetch domain before body is received
 7551   # results in an undefined behavior.
 7552   command getResponseBody
 7553     parameters
 7554       # Identifier for the intercepted request to get body for.
 7555       RequestId requestId
 7556     returns
 7557       # Response body.
 7558       string body
 7559       # True, if content was sent as base64.
 7560       boolean base64Encoded
 7561 
 7562   # Returns a handle to the stream representing the response body.
 7563   # The request must be paused in the HeadersReceived stage.
 7564   # Note that after this command the request can't be continued
 7565   # as is -- client either needs to cancel it or to provide the
 7566   # response body.
 7567   # The stream only supports sequential read, IO.read will fail if the position
 7568   # is specified.
 7569   # This method is mutually exclusive with getResponseBody.
 7570   # Calling other methods that affect the request or disabling fetch
 7571   # domain before body is received results in an undefined behavior.
 7572   command takeResponseBodyAsStream
 7573     parameters
 7574       RequestId requestId
 7575     returns
 7576       IO.StreamHandle stream
 7577 
 7578   # Issued when the domain is enabled and the request URL matches the
 7579   # specified filter. The request is paused until the client responds
 7580   # with one of continueRequest, failRequest or fulfillRequest.
 7581   # The stage of the request can be determined by presence of responseErrorReason
 7582   # and responseStatusCode -- the request is at the response stage if either
 7583   # of these fields is present and in the request stage otherwise.
 7584   event requestPaused
 7585     parameters
 7586       # Each request the page makes will have a unique id.
 7587       RequestId requestId
 7588       # The details of the request.
 7589       Network.Request request
 7590       # The id of the frame that initiated the request.
 7591       Page.FrameId frameId
 7592       # How the requested resource will be used.
 7593       Network.ResourceType resourceType
 7594       # Response error if intercepted at response stage.
 7595       optional Network.ErrorReason responseErrorReason
 7596       # Response code if intercepted at response stage.
 7597       optional integer responseStatusCode
 7598       # Response headers if intercepted at the response stage.
 7599       optional array of HeaderEntry responseHeaders
 7600       # If the intercepted request had a corresponding Network.requestWillBeSent event fired for it,
 7601       # then this networkId will be the same as the requestId present in the requestWillBeSent event.
 7602       optional RequestId networkId
 7603 
 7604   # Issued when the domain is enabled with handleAuthRequests set to true.
 7605   # The request is paused until client responds with continueWithAuth.
 7606   event authRequired
 7607     parameters
 7608       # Each request the page makes will have a unique id.
 7609       RequestId requestId
 7610       # The details of the request.
 7611       Network.Request request
 7612       # The id of the frame that initiated the request.
 7613       Page.FrameId frameId
 7614       # How the requested resource will be used.
 7615       Network.ResourceType resourceType
 7616       # Details of the Authorization Challenge encountered.
 7617       # If this is set, client should respond with continueRequest that
 7618       # contains AuthChallengeResponse.
 7619       AuthChallenge authChallenge
 7620 
 7621 # This domain allows inspection of Web Audio API.
 7622 # https://webaudio.github.io/web-audio-api/
 7623 experimental domain WebAudio
 7624 
 7625   # An unique ID for a graph object (AudioContext, AudioNode, AudioParam) in Web Audio API
 7626   type GraphObjectId extends string
 7627 
 7628   # Enum of BaseAudioContext types
 7629   type ContextType extends string
 7630     enum
 7631       realtime
 7632       offline
 7633 
 7634   # Enum of AudioContextState from the spec
 7635   type ContextState extends string
 7636     enum
 7637       suspended
 7638       running
 7639       closed
 7640 
 7641   # Enum of AudioNode types
 7642   type NodeType extends string
 7643 
 7644   # Enum of AudioNode::ChannelCountMode from the spec
 7645   type ChannelCountMode extends string
 7646     enum
 7647       clamped-max
 7648       explicit
 7649       max
 7650 
 7651   # Enum of AudioNode::ChannelInterpretation from the spec
 7652   type ChannelInterpretation extends string
 7653     enum
 7654       discrete
 7655       speakers
 7656 
 7657   # Enum of AudioParam types
 7658   type ParamType extends string
 7659 
 7660   # Enum of AudioParam::AutomationRate from the spec
 7661   type AutomationRate extends string
 7662     enum
 7663       a-rate
 7664       k-rate
 7665 
 7666   # Fields in AudioContext that change in real-time.
 7667   type ContextRealtimeData extends object
 7668     properties
 7669       # The current context time in second in BaseAudioContext.
 7670       number currentTime
 7671       # The time spent on rendering graph divided by render qunatum duration,
 7672       # and multiplied by 100. 100 means the audio renderer reached the full
 7673       # capacity and glitch may occur.
 7674       number renderCapacity
 7675       # A running mean of callback interval.
 7676       number callbackIntervalMean
 7677       # A running variance of callback interval.
 7678       number callbackIntervalVariance
 7679 
 7680   # Protocol object for BaseAudioContext
 7681   type BaseAudioContext extends object
 7682     properties
 7683       GraphObjectId contextId
 7684       ContextType contextType
 7685       ContextState contextState
 7686       optional ContextRealtimeData realtimeData
 7687       # Platform-dependent callback buffer size.
 7688       number callbackBufferSize
 7689       # Number of output channels supported by audio hardware in use.
 7690       number maxOutputChannelCount
 7691       # Context sample rate.
 7692       number sampleRate
 7693 
 7694 # Protocol object for AudioListner
 7695   type AudioListener extends object
 7696     properties
 7697       GraphObjectId listenerId
 7698       GraphObjectId contextId
 7699 
 7700   # Protocol object for AudioNode
 7701   type AudioNode extends object
 7702     properties
 7703       GraphObjectId nodeId
 7704       GraphObjectId contextId
 7705       NodeType nodeType
 7706       number numberOfInputs
 7707       number numberOfOutputs
 7708       number channelCount
 7709       ChannelCountMode channelCountMode
 7710       ChannelInterpretation channelInterpretation
 7711 
 7712   # Protocol object for AudioParam
 7713   type AudioParam extends object
 7714     properties
 7715       GraphObjectId paramId
 7716       GraphObjectId nodeId
 7717       GraphObjectId contextId
 7718       ParamType paramType
 7719       AutomationRate rate
 7720       number defaultValue
 7721       number minValue
 7722       number maxValue
 7723 
 7724   # Enables the WebAudio domain and starts sending context lifetime events.
 7725   command enable
 7726 
 7727   # Disables the WebAudio domain.
 7728   command disable
 7729 
 7730   # Fetch the realtime data from the registered contexts.
 7731   command getRealtimeData
 7732     parameters
 7733       GraphObjectId contextId
 7734     returns
 7735       ContextRealtimeData realtimeData
 7736 
 7737   # Notifies that a new BaseAudioContext has been created.
 7738   event contextCreated
 7739     parameters
 7740       BaseAudioContext context
 7741 
 7742   # Notifies that an existing BaseAudioContext will be destroyed.
 7743   event contextWillBeDestroyed
 7744     parameters
 7745       GraphObjectId contextId
 7746 
 7747   # Notifies that existing BaseAudioContext has changed some properties (id stays the same)..
 7748   event contextChanged
 7749     parameters
 7750       BaseAudioContext context
 7751 
 7752 # Notifies that the construction of an AudioListener has finished.
 7753   event audioListenerCreated
 7754     parameters
 7755       AudioListener listener
 7756 
 7757   # Notifies that a new AudioListener has been created.
 7758   event audioListenerWillBeDestroyed
 7759     parameters
 7760       GraphObjectId contextId
 7761       GraphObjectId listenerId
 7762 
 7763   # Notifies that a new AudioNode has been created.
 7764   event audioNodeCreated
 7765     parameters
 7766       AudioNode node
 7767 
 7768   # Notifies that an existing AudioNode has been destroyed.
 7769   event audioNodeWillBeDestroyed
 7770     parameters
 7771       GraphObjectId contextId
 7772       GraphObjectId nodeId
 7773 
 7774   # Notifies that a new AudioParam has been created.
 7775   event audioParamCreated
 7776     parameters
 7777       AudioParam param
 7778 
 7779   # Notifies that an existing AudioParam has been destroyed.
 7780   event audioParamWillBeDestroyed
 7781     parameters
 7782       GraphObjectId contextId
 7783       GraphObjectId nodeId
 7784       GraphObjectId paramId
 7785 
 7786   # Notifies that two AudioNodes are connected.
 7787   event nodesConnected
 7788     parameters
 7789       GraphObjectId contextId
 7790       GraphObjectId sourceId
 7791       GraphObjectId destinationId
 7792       optional number sourceOutputIndex
 7793       optional number destinationInputIndex
 7794 
 7795   # Notifies that AudioNodes are disconnected. The destination can be null, and it means all the outgoing connections from the source are disconnected.
 7796   event nodesDisconnected
 7797     parameters
 7798       GraphObjectId contextId
 7799       GraphObjectId sourceId
 7800       GraphObjectId destinationId
 7801       optional number sourceOutputIndex
 7802       optional number destinationInputIndex
 7803 
 7804   # Notifies that an AudioNode is connected to an AudioParam.
 7805   event nodeParamConnected
 7806     parameters
 7807       GraphObjectId contextId
 7808       GraphObjectId sourceId
 7809       GraphObjectId destinationId
 7810       optional number sourceOutputIndex
 7811 
 7812   # Notifies that an AudioNode is disconnected to an AudioParam.
 7813   event nodeParamDisconnected
 7814     parameters
 7815       GraphObjectId contextId
 7816       GraphObjectId sourceId
 7817       GraphObjectId destinationId
 7818       optional number sourceOutputIndex
 7819 
 7820 # This domain allows configuring virtual authenticators to test the WebAuthn
 7821 # API.
 7822 experimental domain WebAuthn
 7823   type AuthenticatorId extends string
 7824 
 7825   type AuthenticatorProtocol extends string
 7826     enum
 7827       # Universal 2nd Factor.
 7828       u2f
 7829       # Client To Authenticator Protocol 2.
 7830       ctap2
 7831 
 7832   type AuthenticatorTransport extends string
 7833     enum
 7834       # Cross-Platform authenticator attachments:
 7835       usb
 7836       nfc
 7837       ble
 7838       cable
 7839       # Platform authenticator attachment:
 7840       internal
 7841 
 7842   type VirtualAuthenticatorOptions extends object
 7843     properties
 7844       AuthenticatorProtocol protocol
 7845       AuthenticatorTransport transport
 7846       # Defaults to false.
 7847       optional boolean hasResidentKey
 7848       # Defaults to false.
 7849       optional boolean hasUserVerification
 7850       # If set to true, tests of user presence will succeed immediately.
 7851       # Otherwise, they will not be resolved. Defaults to true.
 7852       optional boolean automaticPresenceSimulation
 7853       # Sets whether User Verification succeeds or fails for an authenticator.
 7854       # Defaults to false.
 7855       optional boolean isUserVerified
 7856 
 7857   type Credential extends object
 7858     properties
 7859       binary credentialId
 7860       boolean isResidentCredential
 7861       # Relying Party ID the credential is scoped to. Must be set when adding a
 7862       # credential.
 7863       optional string rpId
 7864       # The ECDSA P-256 private key in PKCS#8 format.
 7865       binary privateKey
 7866       # An opaque byte sequence with a maximum size of 64 bytes mapping the
 7867       # credential to a specific user.
 7868       optional binary userHandle
 7869       # Signature counter. This is incremented by one for each successful
 7870       # assertion.
 7871       # See https://w3c.github.io/webauthn/#signature-counter
 7872       integer signCount
 7873 
 7874   # Enable the WebAuthn domain and start intercepting credential storage and
 7875   # retrieval with a virtual authenticator.
 7876   command enable
 7877 
 7878   # Disable the WebAuthn domain.
 7879   command disable
 7880 
 7881   # Creates and adds a virtual authenticator.
 7882   command addVirtualAuthenticator
 7883     parameters
 7884       VirtualAuthenticatorOptions options
 7885     returns
 7886       AuthenticatorId authenticatorId
 7887 
 7888   # Removes the given authenticator.
 7889   command removeVirtualAuthenticator
 7890     parameters
 7891       AuthenticatorId authenticatorId
 7892 
 7893   # Adds the credential to the specified authenticator.
 7894   command addCredential
 7895     parameters
 7896       AuthenticatorId authenticatorId
 7897       Credential credential
 7898 
 7899   # Returns a single credential stored in the given virtual authenticator that
 7900   # matches the credential ID.
 7901   command getCredential
 7902     parameters
 7903       AuthenticatorId authenticatorId
 7904       binary credentialId
 7905     returns
 7906       Credential credential
 7907 
 7908   # Returns all the credentials stored in the given virtual authenticator.
 7909   command getCredentials
 7910     parameters
 7911       AuthenticatorId authenticatorId
 7912     returns
 7913       array of Credential credentials
 7914 
 7915   # Removes a credential from the authenticator.
 7916   command removeCredential
 7917     parameters
 7918       AuthenticatorId authenticatorId
 7919       binary credentialId
 7920 
 7921   # Clears all the credentials from the specified device.
 7922   command clearCredentials
 7923     parameters
 7924       AuthenticatorId authenticatorId
 7925 
 7926   # Sets whether User Verification succeeds or fails for an authenticator.
 7927   # The default is true.
 7928   command setUserVerified
 7929     parameters
 7930       AuthenticatorId authenticatorId
 7931       boolean isUserVerified
 7932 
 7933 # This domain allows detailed inspection of media elements
 7934 experimental domain Media
 7935 
 7936   # Players will get an ID that is unique within the agent context.
 7937   type PlayerId extends string
 7938 
 7939   type Timestamp extends number
 7940 
 7941   # Have one type per entry in MediaLogRecord::Type
 7942   # Corresponds to kMessage
 7943   type PlayerMessage extends object
 7944     properties
 7945       # Keep in sync with MediaLogMessageLevel
 7946       # We are currently keeping the message level 'error' separate from the
 7947       # PlayerError type because right now they represent different things,
 7948       # this one being a DVLOG(ERROR) style log message that gets printed
 7949       # based on what log level is selected in the UI, and the other is a
 7950       # representation of a media::PipelineStatus object. Soon however we're
 7951       # going to be moving away from using PipelineStatus for errors and
 7952       # introducing a new error type which should hopefully let us integrate
 7953       # the error log level into the PlayerError type.
 7954       enum level
 7955         error
 7956         warning
 7957         info
 7958         debug
 7959       string message
 7960 
 7961   # Corresponds to kMediaPropertyChange
 7962   type PlayerProperty extends object
 7963     properties
 7964       string name
 7965       string value
 7966 
 7967   # Corresponds to kMediaEventTriggered
 7968   type PlayerEvent extends object
 7969     properties
 7970       Timestamp timestamp
 7971       string value
 7972 
 7973   # Corresponds to kMediaError
 7974   type PlayerError extends object
 7975     properties
 7976       enum type
 7977         # Compatability until we switch to media_error
 7978         pipeline_error
 7979         media_error
 7980       # When this switches to using media::Status instead of PipelineStatus
 7981       # we can remove "errorCode" and replace it with the fields from
 7982       # a Status instance. This also seems like a duplicate of the error
 7983       # level enum - there is a todo bug to have that level removed and
 7984       # use this instead. (crbug.com/1068454)
 7985       string errorCode
 7986 
 7987   # This can be called multiple times, and can be used to set / override /
 7988   # remove player properties. A null propValue indicates removal.
 7989   event playerPropertiesChanged
 7990     parameters
 7991       PlayerId playerId
 7992       array of PlayerProperty properties
 7993 
 7994   # Send events as a list, allowing them to be batched on the browser for less
 7995   # congestion. If batched, events must ALWAYS be in chronological order.
 7996   event playerEventsAdded
 7997     parameters
 7998       PlayerId playerId
 7999       array of PlayerEvent events
 8000 
 8001   # Send a list of any messages that need to be delivered.
 8002   event playerMessagesLogged
 8003     parameters
 8004       PlayerId playerId
 8005       array of PlayerMessage messages
 8006 
 8007   # Send a list of any errors that need to be delivered.
 8008   event playerErrorsRaised
 8009     parameters
 8010       PlayerId playerId
 8011       array of PlayerError errors
 8012 
 8013   # Called whenever a player is created, or when a new agent joins and recieves
 8014   # a list of active players. If an agent is restored, it will recieve the full
 8015   # list of player ids and all events again.
 8016   event playersCreated
 8017     parameters
 8018       array of PlayerId players
 8019 
 8020   # Enables the Media domain
 8021   command enable
 8022 
 8023   # Disables the Media domain.
 8024   command disable