diff --git a/.eslintignore b/.eslintignore index 54c6043ef96..758aeb91ddb 100644 --- a/.eslintignore +++ b/.eslintignore @@ -6,8 +6,6 @@ node6/* node6-test/* experimental/ lib/ -src/externs.d.ts -src/protocol.d.ts /index.d.ts # We ignore this file because it uses ES imports which we don't yet use # in the Puppeteer src, so it trips up the ESLint-TypeScript parser. diff --git a/.travis.yml b/.travis.yml index ac86d00e06e..1d50febba49 100644 --- a/.travis.yml +++ b/.travis.yml @@ -63,9 +63,9 @@ jobs: env: - CHROMIUM=true script: - - npm run compare-protocol-d-ts - npm run lint - npm run ensure-new-docs-up-to-date + - npm run ensure-correct-devtools-protocol-revision # This bot runs separately as it changes package.json to test puppeteer-core # and we don't want that leaking into other bots and causing issues. diff --git a/docs/api.md b/docs/api.md index 83dcc3d929c..45a784e6308 100644 --- a/docs/api.md +++ b/docs/api.md @@ -331,7 +331,7 @@ * [target.worker()](#targetworker) - [class: CDPSession](#class-cdpsession) * [cdpSession.detach()](#cdpsessiondetach) - * [cdpSession.send(method[, params])](#cdpsessionsendmethod-params) + * [cdpSession.send(method[, ...paramArgs])](#cdpsessionsendmethod-paramargs) - [class: Coverage](#class-coverage) * [coverage.startCSSCoverage([options])](#coveragestartcsscoverageoptions) * [coverage.startJSCoverage([options])](#coveragestartjscoverageoptions) @@ -3946,9 +3946,9 @@ await client.send('Animation.setPlaybackRate', { Detaches the cdpSession from the target. Once detached, the cdpSession object won't emit any events and can't be used to send messages. -#### cdpSession.send(method[, params]) +#### cdpSession.send(method[, ...paramArgs]) - `method` <[string]> protocol method name -- `params` <[Object]> Optional method parameters +- `...paramArgs` <[Object]> Optional method parameters - returns: <[Promise]<[Object]>> ### class: Coverage diff --git a/new-docs/puppeteer.cdpsession.md b/new-docs/puppeteer.cdpsession.md index 038b0bda54f..db75960e402 100644 --- a/new-docs/puppeteer.cdpsession.md +++ b/new-docs/puppeteer.cdpsession.md @@ -41,5 +41,5 @@ await client.send('Animation.setPlaybackRate', { | Method | Modifiers | Description | | --- | --- | --- | | [detach()](./puppeteer.cdpsession.detach.md) | | Detaches the cdpSession from the target. Once detached, the cdpSession object won't emit any events and can't be used to send messages. | -| [send(method, params)](./puppeteer.cdpsession.send.md) | | | +| [send(method, paramArgs)](./puppeteer.cdpsession.send.md) | | | diff --git a/new-docs/puppeteer.cdpsession.send.md b/new-docs/puppeteer.cdpsession.send.md index 8fba8aa8ca6..dce83b49830 100644 --- a/new-docs/puppeteer.cdpsession.send.md +++ b/new-docs/puppeteer.cdpsession.send.md @@ -7,7 +7,7 @@ Signature: ```typescript -send(method: T, params?: Protocol.CommandParameters[T]): Promise; +send(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise; ``` ## Parameters @@ -15,9 +15,9 @@ send(method: T, params?: Protocol.Co | Parameter | Type | Description | | --- | --- | --- | | method | T | | -| params | Protocol.CommandParameters\[T\] | | +| paramArgs | ProtocolMapping.Commands\[T\]\['paramsType'\] | | Returns: -Promise<Protocol.CommandReturnValues\[T\]> +Promise<ProtocolMapping.Commands\[T\]\['returnType'\]> diff --git a/new-docs/puppeteer.page.deletecookie.md b/new-docs/puppeteer.page.deletecookie.md index 58522b41a81..edb0e6c4fb4 100644 --- a/new-docs/puppeteer.page.deletecookie.md +++ b/new-docs/puppeteer.page.deletecookie.md @@ -7,14 +7,14 @@ Signature: ```typescript -deleteCookie(...cookies: Protocol.Network.deleteCookiesParameters[]): Promise; +deleteCookie(...cookies: Protocol.Network.DeleteCookiesRequest[]): Promise; ``` ## Parameters | Parameter | Type | Description | | --- | --- | --- | -| cookies | Protocol.Network.deleteCookiesParameters\[\] | | +| cookies | Protocol.Network.DeleteCookiesRequest\[\] | | Returns: diff --git a/package.json b/package.json index 8a9c2b33d93..f0101afc755 100644 --- a/package.json +++ b/package.json @@ -24,16 +24,15 @@ "doc": "node utils/doclint/cli.js", "clean-lib": "rm -rf lib", "tsc": "npm run clean-lib && tsc --version && npm run tsc-cjs && npm run tsc-esm", - "tsc-cjs": "tsc -p . && cp src/protocol.d.ts lib/cjs", - "tsc-esm": "tsc --build tsconfig-esm.json && cp src/protocol.d.ts lib/esm", + "tsc-cjs": "tsc -p .", + "tsc-esm": "tsc --build tsconfig-esm.json", "typecheck": "tsc -p . --noEmit", "apply-next-version": "node utils/apply_next_version.js", - "update-protocol-d-ts": "node utils/protocol-types-generator update", - "compare-protocol-d-ts": "node utils/protocol-types-generator compare", "test-install": "scripts/test-install.sh", "generate-docs": "npm run tsc && api-extractor run --local --verbose && api-documenter markdown -i temp -o new-docs", "ensure-new-docs-up-to-date": "npm run generate-docs && exit `git status --porcelain | head -255 | wc -l`", - "generate-dependency-graph": "echo 'Requires graphviz installed locally!' && depcruise --exclude 'api.ts' --do-not-follow '^node_modules' --output-type dot src/index.ts | dot -T png > dependency-chart.png" + "generate-dependency-graph": "echo 'Requires graphviz installed locally!' && depcruise --exclude 'api.ts' --do-not-follow '^node_modules' --output-type dot src/index.ts | dot -T png > dependency-chart.png", + "ensure-correct-devtools-protocol-revision": "ts-node scripts/ensure-correct-devtools-protocol-package" }, "files": [ "lib/", @@ -46,6 +45,7 @@ "license": "Apache-2.0", "dependencies": { "debug": "^4.1.0", + "devtools-protocol": "0.0.754670", "extract-zip": "^2.0.0", "https-proxy-agent": "^4.0.0", "mime": "^2.0.3", diff --git a/scripts/ensure-correct-devtools-protocol-package.ts b/scripts/ensure-correct-devtools-protocol-package.ts new file mode 100644 index 00000000000..f953844ce0b --- /dev/null +++ b/scripts/ensure-correct-devtools-protocol-package.ts @@ -0,0 +1,83 @@ +/** + * Copyright 2020 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * This script ensures that the pinned version of devtools-protocol in + * package.json is the right version for the current revision of Chromium that + * Puppeteer ships with. + * + * The devtools-protocol package publisher runs every hour and checks if there + * are protocol changes. If there are, it will be versioned with the revision + * number of the commit that last changed the .pdl files. + * + * Chromium branches/releases are figured out at a later point in time, so it's + * not true that each Chromium revision will have an exact matching revision + * version of devtools-protocol. To ensure we're using a devtools-protocol that + * is aligned with our revision, we want to find the largest package number + * that's <= the revision that Puppeteer is using. + * + * This script uses npm's `view` function to list all versions in a range and + * find the one closest to our Chromium revision. + */ + +import { PUPPETEER_REVISIONS } from '../src/revisions'; +import { execSync } from 'child_process'; + +import packageJson from '../package.json'; + +const currentProtocolPackageInstalledVersion = + packageJson.dependencies['devtools-protocol']; + +/** + * Ensure that the devtools-protocol version is pinned. + */ +if (/^[^0-9]/.test(currentProtocolPackageInstalledVersion)) { + console.log( + `ERROR: devtools-protocol package is not pinned to a specific version.\n` + ); + process.exit(1); +} + +// find the right revision for our Chromium revision + +const command = `npm view "devtools-protocol@<=0.0.${PUPPETEER_REVISIONS.chromium}" version | tail -1`; + +console.log( + 'Checking npm for devtools-protocol revisions:\n', + `'${command}'`, + '\n' +); + +const output = execSync(command, { + encoding: 'utf8', +}); + +const bestRevisionFromNpm = output.split(' ')[1].replace(/'|\n/g, ''); + +if (currentProtocolPackageInstalledVersion !== bestRevisionFromNpm) { + console.log(`ERROR: bad devtools-protocol revision detected: + + Current Puppeteer Chromium revision: ${PUPPETEER_REVISIONS.chromium} + Current devtools-protocol version in package.json: ${currentProtocolPackageInstalledVersion} + Expected devtools-protocol version: ${bestRevisionFromNpm}`); + + process.exit(1); +} + +console.log( + `Correct devtools-protocol version found (${bestRevisionFromNpm}).` +); +process.exit(0); diff --git a/src/common/Accessibility.ts b/src/common/Accessibility.ts index d9a4b5fc258..cc41c32516d 100644 --- a/src/common/Accessibility.ts +++ b/src/common/Accessibility.ts @@ -16,7 +16,7 @@ import { CDPSession } from './Connection'; import { ElementHandle } from './JSHandle'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; /** * Represents a Node and the properties of it that are relevant to Accessibility. diff --git a/src/common/Browser.ts b/src/common/Browser.ts index 0ae871b0529..060e50f16f8 100644 --- a/src/common/Browser.ts +++ b/src/common/Browser.ts @@ -18,8 +18,8 @@ import { assert } from './assert'; import { helper } from './helper'; import { Target } from './Target'; import { EventEmitter } from './EventEmitter'; -import Protocol from '../protocol'; import { Connection, ConnectionEmittedEvents } from './Connection'; +import { Protocol } from 'devtools-protocol'; import { Page } from './Page'; import { ChildProcess } from 'child_process'; import { Viewport } from './PuppeteerViewport'; @@ -272,7 +272,7 @@ export class Browser extends EventEmitter { } private async _targetCreated( - event: Protocol.Target.targetCreatedPayload + event: Protocol.Target.TargetCreatedEvent ): Promise { const targetInfo = event.targetInfo; const { browserContextId } = targetInfo; @@ -314,7 +314,7 @@ export class Browser extends EventEmitter { } private _targetInfoChanged( - event: Protocol.Target.targetInfoChangedPayload + event: Protocol.Target.TargetInfoChangedEvent ): void { const target = this._targets.get(event.targetInfo.targetId); assert(target, 'target should exist before targetInfoChanged'); @@ -500,7 +500,7 @@ export class Browser extends EventEmitter { return !this._connection._closed; } - private _getVersion(): Promise { + private _getVersion(): Promise { return this._connection.send('Browser.getVersion'); } } diff --git a/src/common/Connection.ts b/src/common/Connection.ts index e59ec7bd856..7765fad2b95 100644 --- a/src/common/Connection.ts +++ b/src/common/Connection.ts @@ -18,7 +18,8 @@ import { debug } from './Debug'; const debugProtocolSend = debug('puppeteer:protocol:SEND ►'); const debugProtocolReceive = debug('puppeteer:protocol:RECV ◀'); -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; +import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping'; import { ConnectionTransport } from './ConnectionTransport'; import { EventEmitter } from './EventEmitter'; @@ -77,10 +78,17 @@ export class Connection extends EventEmitter { return this._url; } - send( + send( method: T, - params?: Protocol.CommandParameters[T] - ): Promise { + ...paramArgs: ProtocolMapping.Commands[T]['paramsType'] + ): Promise { + // There is only ever 1 param arg passed, but the Protocol defines it as an + // array of 0 or 1 items See this comment: + // https://github.com/ChromeDevTools/devtools-protocol/pull/113#issuecomment-412603285 + // which explains why the protocol defines the params this way for better + // type-inference. + // So now we check if there are any params or not and deal with them accordingly. + const params = paramArgs.length ? paramArgs[0] : undefined; const id = this._rawSend({ method, params }); return new Promise((resolve, reject) => { this._callbacks.set(id, { resolve, reject, error: new Error(), method }); @@ -232,10 +240,10 @@ export class CDPSession extends EventEmitter { this._sessionId = sessionId; } - send( + send( method: T, - params?: Protocol.CommandParameters[T] - ): Promise { + ...paramArgs: ProtocolMapping.Commands[T]['paramsType'] + ): Promise { if (!this._connection) return Promise.reject( new Error( @@ -243,6 +251,9 @@ export class CDPSession extends EventEmitter { ) ); + // See the comment in Connection#send explaining why we do this. + const params = paramArgs.length ? paramArgs[0] : undefined; + const id = this._connection._rawSend({ sessionId: this._sessionId, method, diff --git a/src/common/Coverage.ts b/src/common/Coverage.ts index 5b590a0a2be..47fa003e307 100644 --- a/src/common/Coverage.ts +++ b/src/common/Coverage.ts @@ -16,7 +16,7 @@ import { assert } from './assert'; import { helper, debugError, PuppeteerEventListener } from './helper'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { CDPSession } from './Connection'; import { EVALUATION_SCRIPT_URL } from './ExecutionContext'; @@ -223,7 +223,7 @@ class JSCoverage { } async _onScriptParsed( - event: Protocol.Debugger.scriptParsedPayload + event: Protocol.Debugger.ScriptParsedEvent ): Promise { // Ignore puppeteer-injected scripts if (event.url === EVALUATION_SCRIPT_URL) return; @@ -246,10 +246,10 @@ class JSCoverage { this._enabled = false; const result = await Promise.all< - Protocol.Profiler.takePreciseCoverageReturnValue, - Protocol.Profiler.stopPreciseCoverageReturnValue, - Protocol.Profiler.disableReturnValue, - Protocol.Debugger.disableReturnValue + Protocol.Profiler.TakePreciseCoverageResponse, + void, + void, + void >([ this._client.send('Profiler.takePreciseCoverage'), this._client.send('Profiler.stopPreciseCoverage'), @@ -322,9 +322,7 @@ class CSSCoverage { this._stylesheetSources.clear(); } - async _onStyleSheet( - event: Protocol.CSS.styleSheetAddedPayload - ): Promise { + async _onStyleSheet(event: Protocol.CSS.StyleSheetAddedEvent): Promise { const header = event.header; // Ignore anonymous scripts if (!header.sourceURL) return; diff --git a/src/common/Dialog.ts b/src/common/Dialog.ts index 87974ebdf9c..3223936d331 100644 --- a/src/common/Dialog.ts +++ b/src/common/Dialog.ts @@ -16,7 +16,7 @@ import { assert } from './assert'; import { CDPSession } from './Connection'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; /** * Dialog instances are dispatched by the {@link Page} via the `dialog` event. diff --git a/src/common/EmulationManager.ts b/src/common/EmulationManager.ts index 3231aa1bc9c..17d77f38273 100644 --- a/src/common/EmulationManager.ts +++ b/src/common/EmulationManager.ts @@ -15,7 +15,7 @@ */ import { CDPSession } from './Connection'; import { Viewport } from './PuppeteerViewport'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; export class EmulationManager { _client: CDPSession; diff --git a/src/common/ExecutionContext.ts b/src/common/ExecutionContext.ts index df7d4024680..b3473f0b541 100644 --- a/src/common/ExecutionContext.ts +++ b/src/common/ExecutionContext.ts @@ -20,7 +20,7 @@ import { createJSHandle, JSHandle, ElementHandle } from './JSHandle'; import { CDPSession } from './Connection'; import { DOMWorld } from './DOMWorld'; import { Frame } from './FrameManager'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { EvaluateHandleFn, SerializableOrJSHandle } from './EvalTypes'; export const EVALUATION_SCRIPT_URL = '__puppeteer_evaluation_script__'; @@ -301,7 +301,7 @@ export class ExecutionContext { return { value: arg }; } - function rewriteError(error: Error): Protocol.Runtime.evaluateReturnValue { + function rewriteError(error: Error): Protocol.Runtime.EvaluateResponse { if (error.message.includes('Object reference chain is too long')) return { result: { type: 'undefined' } }; if (error.message.includes("Object couldn't be returned by value")) diff --git a/src/common/FileChooser.ts b/src/common/FileChooser.ts index 22eed356569..cbd086d74db 100644 --- a/src/common/FileChooser.ts +++ b/src/common/FileChooser.ts @@ -15,7 +15,7 @@ */ import { ElementHandle } from './JSHandle'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { assert } from './assert'; /** @@ -45,7 +45,7 @@ export class FileChooser { */ constructor( element: ElementHandle, - event: Protocol.Page.fileChooserOpenedPayload + event: Protocol.Page.FileChooserOpenedEvent ) { this._element = element; this._multiple = event.mode !== 'selectSingle'; diff --git a/src/common/FrameManager.ts b/src/common/FrameManager.ts index f4ec1ab01e9..29a86fdd8cc 100644 --- a/src/common/FrameManager.ts +++ b/src/common/FrameManager.ts @@ -27,7 +27,7 @@ import { JSHandle, ElementHandle } from './JSHandle'; import { MouseButton } from './Input'; import { Page } from './Page'; import { HTTPResponse } from './HTTPResponse'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { SerializableOrJSHandle, EvaluateHandleFn, @@ -108,10 +108,7 @@ export class FrameManager extends EventEmitter { } async initialize(): Promise { - const result = await Promise.all< - Protocol.Page.enableReturnValue, - Protocol.Page.getFrameTreeReturnValue - >([ + const result = await Promise.all<{}, Protocol.Page.GetFrameTreeResponse>([ this._client.send('Page.enable'), this._client.send('Page.getFrameTree'), ]); @@ -121,7 +118,7 @@ export class FrameManager extends EventEmitter { await Promise.all([ this._client.send('Page.setLifecycleEventsEnabled', { enabled: true }), this._client - .send('Runtime.enable', {}) + .send('Runtime.enable') .then(() => this._ensureIsolatedWorld(UTILITY_WORLD_NAME)), this._networkManager.initialize(), ]); @@ -210,7 +207,7 @@ export class FrameManager extends EventEmitter { return watcher.navigationResponse(); } - _onLifecycleEvent(event: Protocol.Page.lifecycleEventPayload): void { + _onLifecycleEvent(event: Protocol.Page.LifecycleEventEvent): void { const frame = this._frames.get(event.frameId); if (!frame) return; frame._onLifecycleEvent(event.loaderId, event.name); diff --git a/src/common/HTTPRequest.ts b/src/common/HTTPRequest.ts index d2a4548b130..a27b94a8487 100644 --- a/src/common/HTTPRequest.ts +++ b/src/common/HTTPRequest.ts @@ -18,7 +18,7 @@ import { Frame } from './FrameManager'; import { HTTPResponse } from './HTTPResponse'; import { assert } from './assert'; import { helper, debugError } from './helper'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; /** * @public @@ -123,7 +123,7 @@ export class HTTPRequest { frame: Frame, interceptionId: string, allowInterception: boolean, - event: Protocol.Network.requestWillBeSentPayload, + event: Protocol.Network.RequestWillBeSentEvent, redirectChain: HTTPRequest[] ) { this._client = client; diff --git a/src/common/HTTPResponse.ts b/src/common/HTTPResponse.ts index c40ecb88fea..575b684e31e 100644 --- a/src/common/HTTPResponse.ts +++ b/src/common/HTTPResponse.ts @@ -17,7 +17,7 @@ import { CDPSession } from './Connection'; import { Frame } from './FrameManager'; import { HTTPRequest } from './HTTPRequest'; import { SecurityDetails } from './SecurityDetails'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; /** * @public diff --git a/src/common/JSHandle.ts b/src/common/JSHandle.ts index 082d7d761b1..f5a0c18b283 100644 --- a/src/common/JSHandle.ts +++ b/src/common/JSHandle.ts @@ -22,7 +22,7 @@ import { CDPSession } from './Connection'; import { KeyInput } from './USKeyboardLayout'; import { FrameManager, Frame } from './FrameManager'; import { getQueryHandlerAndSelector } from './QueryHandler'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { EvaluateFn, SerializableOrJSHandle, @@ -445,11 +445,12 @@ export class ElementHandle< }; } - private _getBoxModel(): Promise { + private _getBoxModel(): Promise { + const params: Protocol.DOM.GetBoxModelRequest = { + objectId: this._remoteObject.objectId, + }; return this._client - .send('DOM.getBoxModel', { - objectId: this._remoteObject.objectId, - }) + .send('DOM.getBoxModel', params) .catch((error) => debugError(error)); } diff --git a/src/common/NetworkManager.ts b/src/common/NetworkManager.ts index 68eda72bf34..4eaf1e059fc 100644 --- a/src/common/NetworkManager.ts +++ b/src/common/NetworkManager.ts @@ -16,7 +16,7 @@ import { EventEmitter } from './EventEmitter'; import { assert } from './assert'; import { helper, debugError } from './helper'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { CDPSession } from './Connection'; import { FrameManager } from './FrameManager'; import { HTTPRequest } from './HTTPRequest'; @@ -53,7 +53,7 @@ export class NetworkManager extends EventEmitter { _requestIdToRequest = new Map(); _requestIdToRequestWillBeSentEvent = new Map< string, - Protocol.Network.requestWillBeSentPayload + Protocol.Network.RequestWillBeSentEvent >(); _extraHTTPHeaders: Record = {}; _offline = false; @@ -182,7 +182,7 @@ export class NetworkManager extends EventEmitter { }); } - _onRequestWillBeSent(event: Protocol.Network.requestWillBeSentPayload): void { + _onRequestWillBeSent(event: Protocol.Network.RequestWillBeSentEvent): void { // Request interception doesn't happen for data URLs with Network Service. if ( this._protocolRequestInterceptionEnabled && @@ -201,7 +201,7 @@ export class NetworkManager extends EventEmitter { this._onRequest(event, null); } - _onAuthRequired(event: Protocol.Fetch.authRequiredPayload): void { + _onAuthRequired(event: Protocol.Fetch.AuthRequiredEvent): void { /* TODO(jacktfranklin): This is defined in protocol.d.ts but not * in an easily referrable way - we should look at exposing it. */ @@ -225,7 +225,7 @@ export class NetworkManager extends EventEmitter { .catch(debugError); } - _onRequestPaused(event: Protocol.Fetch.requestPausedPayload): void { + _onRequestPaused(event: Protocol.Fetch.RequestPausedEvent): void { if ( !this._userRequestInterceptionEnabled && this._protocolRequestInterceptionEnabled @@ -251,7 +251,7 @@ export class NetworkManager extends EventEmitter { } _onRequest( - event: Protocol.Network.requestWillBeSentPayload, + event: Protocol.Network.RequestWillBeSentEvent, interceptionId?: string ): void { let redirectChain = []; @@ -280,7 +280,7 @@ export class NetworkManager extends EventEmitter { } _onRequestServedFromCache( - event: Protocol.Network.requestServedFromCachePayload + event: Protocol.Network.RequestServedFromCacheEvent ): void { const request = this._requestIdToRequest.get(event.requestId); if (request) request._fromMemoryCache = true; @@ -302,7 +302,7 @@ export class NetworkManager extends EventEmitter { this.emit(NetworkManagerEmittedEvents.RequestFinished, request); } - _onResponseReceived(event: Protocol.Network.responseReceivedPayload): void { + _onResponseReceived(event: Protocol.Network.ResponseReceivedEvent): void { const request = this._requestIdToRequest.get(event.requestId); // FileUpload sends a response without a matching request. if (!request) return; @@ -311,7 +311,7 @@ export class NetworkManager extends EventEmitter { this.emit(NetworkManagerEmittedEvents.Response, response); } - _onLoadingFinished(event: Protocol.Network.loadingFinishedPayload): void { + _onLoadingFinished(event: Protocol.Network.LoadingFinishedEvent): void { const request = this._requestIdToRequest.get(event.requestId); // For certain requestIds we never receive requestWillBeSent event. // @see https://crbug.com/750469 @@ -325,7 +325,7 @@ export class NetworkManager extends EventEmitter { this.emit(NetworkManagerEmittedEvents.RequestFinished, request); } - _onLoadingFailed(event: Protocol.Network.loadingFailedPayload): void { + _onLoadingFailed(event: Protocol.Network.LoadingFailedEvent): void { const request = this._requestIdToRequest.get(event.requestId); // For certain requestIds we never receive requestWillBeSent event. // @see https://crbug.com/750469 diff --git a/src/common/Page.ts b/src/common/Page.ts index 48c2e22fd62..257784a09bf 100644 --- a/src/common/Page.ts +++ b/src/common/Page.ts @@ -40,7 +40,7 @@ import { TimeoutSettings } from './TimeoutSettings'; import { FileChooser } from './FileChooser'; import { ConsoleMessage, ConsoleMessageType } from './ConsoleMessage'; import { PuppeteerLifeCycleEvent } from './LifecycleWatcher'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { SerializableOrJSHandle, EvaluateHandleFn, @@ -527,13 +527,13 @@ export class Page extends EventEmitter { waitForDebuggerOnStart: false, flatten: true, }), - this._client.send('Performance.enable', {}), - this._client.send('Log.enable', {}), + this._client.send('Performance.enable'), + this._client.send('Log.enable'), ]); } private async _onFileChooser( - event: Protocol.Page.fileChooserOpenedPayload + event: Protocol.Page.FileChooserOpenedEvent ): Promise { if (!this._fileChooserInterceptors.size) return; const frame = this._frameManager.frame(event.frameId); @@ -638,7 +638,7 @@ export class Page extends EventEmitter { this.emit('error', new Error('Page crashed!')); } - private _onLogEntryAdded(event: Protocol.Log.entryAddedPayload): void { + private _onLogEntryAdded(event: Protocol.Log.EntryAddedEvent): void { const { level, text, args, source, url, lineNumber } = event.entry; if (args) args.map((arg) => helper.releaseObject(this._client, arg)); if (source !== 'worker') @@ -1012,7 +1012,7 @@ export class Page extends EventEmitter { } async deleteCookie( - ...cookies: Protocol.Network.deleteCookiesParameters[] + ...cookies: Protocol.Network.DeleteCookiesRequest[] ): Promise { const pageURL = this.url(); for (const cookie of cookies) { @@ -1121,7 +1121,7 @@ export class Page extends EventEmitter { return this._buildMetricsObject(response.metrics); } - private _emitMetrics(event: Protocol.Performance.metricsPayload): void { + private _emitMetrics(event: Protocol.Performance.MetricsEvent): void { this.emit(PageEmittedEvents.Metrics, { title: event.title, metrics: this._buildMetricsObject(event.metrics), @@ -1148,7 +1148,7 @@ export class Page extends EventEmitter { } private async _onConsoleAPI( - event: Protocol.Runtime.consoleAPICalledPayload + event: Protocol.Runtime.ConsoleAPICalledEvent ): Promise { if (event.executionContextId === 0) { // DevTools protocol stores the last 1000 console messages. These @@ -1174,7 +1174,7 @@ export class Page extends EventEmitter { } private async _onBindingCalled( - event: Protocol.Runtime.bindingCalledPayload + event: Protocol.Runtime.BindingCalledEvent ): Promise { const { name, seq, args } = JSON.parse(event.payload); let expression = null; @@ -1264,7 +1264,7 @@ export class Page extends EventEmitter { this.emit(PageEmittedEvents.Console, message); } - private _onDialog(event: Protocol.Page.javascriptDialogOpeningPayload): void { + private _onDialog(event: Protocol.Page.JavascriptDialogOpeningEvent): void { let dialogType = null; const validDialogTypes = new Set([ 'alert', @@ -1307,10 +1307,10 @@ export class Page extends EventEmitter { } async reload(options?: WaitForOptions): Promise { - const result = await Promise.all< - HTTPResponse, - Protocol.Page.reloadReturnValue - >([this.waitForNavigation(options), this._client.send('Page.reload')]); + const result = await Promise.all([ + this.waitForNavigation(options), + this._client.send('Page.reload'), + ]); return result[0]; } @@ -1386,10 +1386,7 @@ export class Page extends EventEmitter { const history = await this._client.send('Page.getNavigationHistory'); const entry = history.entries[history.currentIndex + delta]; if (!entry) return null; - const result = await Promise.all< - HTTPResponse, - Protocol.Page.navigateToHistoryEntryReturnValue - >([ + const result = await Promise.all([ this.waitForNavigation(options), this._client.send('Page.navigateToHistoryEntry', { entryId: entry.id }), ]); diff --git a/src/common/SecurityDetails.ts b/src/common/SecurityDetails.ts index 9b13db5caeb..aceba1a3d08 100644 --- a/src/common/SecurityDetails.ts +++ b/src/common/SecurityDetails.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; /** * The SecurityDetails class represents the security details of a diff --git a/src/common/Target.ts b/src/common/Target.ts index 7d6988c05e4..b5b9ad11bf6 100644 --- a/src/common/Target.ts +++ b/src/common/Target.ts @@ -19,7 +19,7 @@ import { WebWorker } from './WebWorker'; import { CDPSession } from './Connection'; import { Browser, BrowserContext } from './Browser'; import { Viewport } from './PuppeteerViewport'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; /** * @public diff --git a/src/common/WebWorker.ts b/src/common/WebWorker.ts index c74e14899f3..54d416ac542 100644 --- a/src/common/WebWorker.ts +++ b/src/common/WebWorker.ts @@ -18,7 +18,7 @@ import { debugError } from './helper'; import { ExecutionContext } from './ExecutionContext'; import { JSHandle } from './JSHandle'; import { CDPSession } from './Connection'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { EvaluateHandleFn, SerializableOrJSHandle } from './EvalTypes'; /** @@ -96,7 +96,7 @@ export class WebWorker extends EventEmitter { }); // This might fail if the target is closed before we recieve all execution contexts. - this._client.send('Runtime.enable', {}).catch(debugError); + this._client.send('Runtime.enable').catch(debugError); this._client.on('Runtime.consoleAPICalled', (event) => consoleAPICalled( event.type, diff --git a/src/common/helper.ts b/src/common/helper.ts index fddcc8ea374..b100ddf6604 100644 --- a/src/common/helper.ts +++ b/src/common/helper.ts @@ -18,7 +18,7 @@ import { debug } from './Debug'; import * as fs from 'fs'; import { CDPSession } from './Connection'; import { promisify } from 'util'; -import Protocol from '../protocol'; +import { Protocol } from 'devtools-protocol'; import { CommonEventEmitter } from './EventEmitter'; import { assert } from './assert'; diff --git a/src/protocol.d.ts b/src/protocol.d.ts deleted file mode 100644 index e14a1d62992..00000000000 --- a/src/protocol.d.ts +++ /dev/null @@ -1,15503 +0,0 @@ -// This is generated from /utils/protocol-types-generator/index.js - type binary = string; - -declare module Protocol { - export module Accessibility { - /** - * Unique accessibility node identifier. - */ - export type AXNodeId = string; - /** - * Enum of possible property types. - */ - export type AXValueType = "boolean"|"tristate"|"booleanOrUndefined"|"idref"|"idrefList"|"integer"|"node"|"nodeList"|"number"|"string"|"computedString"|"token"|"tokenList"|"domRelation"|"role"|"internalRole"|"valueUndefined"; - /** - * Enum of possible property sources. - */ - export type AXValueSourceType = "attribute"|"implicit"|"style"|"contents"|"placeholder"|"relatedElement"; - /** - * Enum of possible native property sources (as a subtype of a particular AXValueSourceType). - */ - export type AXValueNativeSourceType = "figcaption"|"label"|"labelfor"|"labelwrapped"|"legend"|"tablecaption"|"title"|"other"; - /** - * A single source for a computed AX property. - */ - export interface AXValueSource { - /** - * What type of source this is. - */ - type: AXValueSourceType; - /** - * The value of this property source. - */ - value?: AXValue; - /** - * The name of the relevant attribute, if any. - */ - attribute?: string; - /** - * The value of the relevant attribute, if any. - */ - attributeValue?: AXValue; - /** - * Whether this source is superseded by a higher priority source. - */ - superseded?: boolean; - /** - * The native markup source for this value, e.g. a element. - */ - nativeSource?: AXValueNativeSourceType; - /** - * The value, such as a node or node list, of the native source. - */ - nativeSourceValue?: AXValue; - /** - * Whether the value for this property is invalid. - */ - invalid?: boolean; - /** - * Reason for the value being invalid, if it is. - */ - invalidReason?: string; - } - export interface AXRelatedNode { - /** - * The BackendNodeId of the related DOM node. - */ - backendDOMNodeId: DOM.BackendNodeId; - /** - * The IDRef value provided, if any. - */ - idref?: string; - /** - * The text alternative of this node in the current context. - */ - text?: string; - } - export interface AXProperty { - /** - * The name of this property. - */ - name: AXPropertyName; - /** - * The value of this property. - */ - value: AXValue; - } - /** - * A single computed AX property. - */ - export interface AXValue { - /** - * The type of this value. - */ - type: AXValueType; - /** - * The computed value of this property. - */ - value?: any; - /** - * One or more related nodes, if applicable. - */ - relatedNodes?: AXRelatedNode[]; - /** - * The sources which contributed to the computation of this property. - */ - sources?: AXValueSource[]; - } - /** - * Values of AXProperty name: -- from 'busy' to 'roledescription': states which apply to every AX node -- from 'live' to 'root': attributes which apply to nodes in live regions -- from 'autocomplete' to 'valuetext': attributes which apply to widgets -- from 'checked' to 'selected': states which apply to widgets -- from 'activedescendant' to 'owns' - relationships between elements other than parent/child/sibling. - */ - export type AXPropertyName = "busy"|"disabled"|"editable"|"focusable"|"focused"|"hidden"|"hiddenRoot"|"invalid"|"keyshortcuts"|"settable"|"roledescription"|"live"|"atomic"|"relevant"|"root"|"autocomplete"|"hasPopup"|"level"|"multiselectable"|"orientation"|"multiline"|"readonly"|"required"|"valuemin"|"valuemax"|"valuetext"|"checked"|"expanded"|"modal"|"pressed"|"selected"|"activedescendant"|"controls"|"describedby"|"details"|"errormessage"|"flowto"|"labelledby"|"owns"; - /** - * A node in the accessibility tree. - */ - export interface AXNode { - /** - * Unique identifier for this node. - */ - nodeId: AXNodeId; - /** - * Whether this node is ignored for accessibility - */ - ignored: boolean; - /** - * Collection of reasons why this node is hidden. - */ - ignoredReasons?: AXProperty[]; - /** - * This `Node`'s role, whether explicit or implicit. - */ - role?: AXValue; - /** - * The accessible name for this `Node`. - */ - name?: AXValue; - /** - * The accessible description for this `Node`. - */ - description?: AXValue; - /** - * The value for this `Node`. - */ - value?: AXValue; - /** - * All other properties - */ - properties?: AXProperty[]; - /** - * IDs for each of this node's child nodes. - */ - childIds?: AXNodeId[]; - /** - * The backend ID for the associated DOM node, if any. - */ - backendDOMNodeId?: DOM.BackendNodeId; - } - - - /** - * Disables the accessibility domain. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables the accessibility domain which causes `AXNodeId`s to remain consistent between method calls. -This turns on accessibility for the page, which can impact performance until accessibility is disabled. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Fetches the accessibility node and partial accessibility tree for this DOM node, if it exists. - */ - export type getPartialAXTreeParameters = { - /** - * Identifier of the node to get the partial accessibility tree for. - */ - nodeId?: DOM.NodeId; - /** - * Identifier of the backend node to get the partial accessibility tree for. - */ - backendNodeId?: DOM.BackendNodeId; - /** - * JavaScript object id of the node wrapper to get the partial accessibility tree for. - */ - objectId?: Runtime.RemoteObjectId; - /** - * Whether to fetch this nodes ancestors, siblings and children. Defaults to true. - */ - fetchRelatives?: boolean; - } - export type getPartialAXTreeReturnValue = { - /** - * The `Accessibility.AXNode` for this DOM node, if it exists, plus its ancestors, siblings and -children, if requested. - */ - nodes: AXNode[]; - } - /** - * Fetches the entire accessibility tree - */ - export type getFullAXTreeParameters = { - } - export type getFullAXTreeReturnValue = { - nodes: AXNode[]; - } - } - - export module Animation { - /** - * Animation instance. - */ - export interface Animation { - /** - * `Animation`'s id. - */ - id: string; - /** - * `Animation`'s name. - */ - name: string; - /** - * `Animation`'s internal paused state. - */ - pausedState: boolean; - /** - * `Animation`'s play state. - */ - playState: string; - /** - * `Animation`'s playback rate. - */ - playbackRate: number; - /** - * `Animation`'s start time. - */ - startTime: number; - /** - * `Animation`'s current time. - */ - currentTime: number; - /** - * Animation type of `Animation`. - */ - type: "CSSTransition"|"CSSAnimation"|"WebAnimation"; - /** - * `Animation`'s source animation node. - */ - source?: AnimationEffect; - /** - * A unique ID for `Animation` representing the sources that triggered this CSS -animation/transition. - */ - cssId?: string; - } - /** - * AnimationEffect instance - */ - export interface AnimationEffect { - /** - * `AnimationEffect`'s delay. - */ - delay: number; - /** - * `AnimationEffect`'s end delay. - */ - endDelay: number; - /** - * `AnimationEffect`'s iteration start. - */ - iterationStart: number; - /** - * `AnimationEffect`'s iterations. - */ - iterations: number; - /** - * `AnimationEffect`'s iteration duration. - */ - duration: number; - /** - * `AnimationEffect`'s playback direction. - */ - direction: string; - /** - * `AnimationEffect`'s fill mode. - */ - fill: string; - /** - * `AnimationEffect`'s target node. - */ - backendNodeId?: DOM.BackendNodeId; - /** - * `AnimationEffect`'s keyframes. - */ - keyframesRule?: KeyframesRule; - /** - * `AnimationEffect`'s timing function. - */ - easing: string; - } - /** - * Keyframes Rule - */ - export interface KeyframesRule { - /** - * CSS keyframed animation's name. - */ - name?: string; - /** - * List of animation keyframes. - */ - keyframes: KeyframeStyle[]; - } - /** - * Keyframe Style - */ - export interface KeyframeStyle { - /** - * Keyframe's time offset. - */ - offset: string; - /** - * `AnimationEffect`'s timing function. - */ - easing: string; - } - - /** - * Event for when an animation has been cancelled. - */ - export type animationCanceledPayload = { - /** - * Id of the animation that was cancelled. - */ - id: string; - } - /** - * Event for each animation that has been created. - */ - export type animationCreatedPayload = { - /** - * Id of the animation that was created. - */ - id: string; - } - /** - * Event for animation that has been started. - */ - export type animationStartedPayload = { - /** - * Animation that was started. - */ - animation: Animation; - } - - /** - * Disables animation domain notifications. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables animation domain notifications. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Returns the current time of the an animation. - */ - export type getCurrentTimeParameters = { - /** - * Id of animation. - */ - id: string; - } - export type getCurrentTimeReturnValue = { - /** - * Current time of the page. - */ - currentTime: number; - } - /** - * Gets the playback rate of the document timeline. - */ - export type getPlaybackRateParameters = { - } - export type getPlaybackRateReturnValue = { - /** - * Playback rate for animations on page. - */ - playbackRate: number; - } - /** - * Releases a set of animations to no longer be manipulated. - */ - export type releaseAnimationsParameters = { - /** - * List of animation ids to seek. - */ - animations: string[]; - } - export type releaseAnimationsReturnValue = { - } - /** - * Gets the remote object of the Animation. - */ - export type resolveAnimationParameters = { - /** - * Animation id. - */ - animationId: string; - } - export type resolveAnimationReturnValue = { - /** - * Corresponding remote object. - */ - remoteObject: Runtime.RemoteObject; - } - /** - * Seek a set of animations to a particular time within each animation. - */ - export type seekAnimationsParameters = { - /** - * List of animation ids to seek. - */ - animations: string[]; - /** - * Set the current time of each animation. - */ - currentTime: number; - } - export type seekAnimationsReturnValue = { - } - /** - * Sets the paused state of a set of animations. - */ - export type setPausedParameters = { - /** - * Animations to set the pause state of. - */ - animations: string[]; - /** - * Paused state to set to. - */ - paused: boolean; - } - export type setPausedReturnValue = { - } - /** - * Sets the playback rate of the document timeline. - */ - export type setPlaybackRateParameters = { - /** - * Playback rate for animations on page - */ - playbackRate: number; - } - export type setPlaybackRateReturnValue = { - } - /** - * Sets the timing of an animation node. - */ - export type setTimingParameters = { - /** - * Animation id. - */ - animationId: string; - /** - * Duration of the animation. - */ - duration: number; - /** - * Delay of the animation. - */ - delay: number; - } - export type setTimingReturnValue = { - } - } - - export module ApplicationCache { - /** - * Detailed application cache resource information. - */ - export interface ApplicationCacheResource { - /** - * Resource url. - */ - url: string; - /** - * Resource size. - */ - size: number; - /** - * Resource type. - */ - type: string; - } - /** - * Detailed application cache information. - */ - export interface ApplicationCache { - /** - * Manifest URL. - */ - manifestURL: string; - /** - * Application cache size. - */ - size: number; - /** - * Application cache creation time. - */ - creationTime: number; - /** - * Application cache update time. - */ - updateTime: number; - /** - * Application cache resources. - */ - resources: ApplicationCacheResource[]; - } - /** - * Frame identifier - manifest URL pair. - */ - export interface FrameWithManifest { - /** - * Frame identifier. - */ - frameId: Page.FrameId; - /** - * Manifest URL. - */ - manifestURL: string; - /** - * Application cache status. - */ - status: number; - } - - export type applicationCacheStatusUpdatedPayload = { - /** - * Identifier of the frame containing document whose application cache updated status. - */ - frameId: Page.FrameId; - /** - * Manifest URL. - */ - manifestURL: string; - /** - * Updated application cache status. - */ - status: number; - } - export type networkStateUpdatedPayload = { - isNowOnline: boolean; - } - - /** - * Enables application cache domain notifications. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Returns relevant application cache data for the document in given frame. - */ - export type getApplicationCacheForFrameParameters = { - /** - * Identifier of the frame containing document whose application cache is retrieved. - */ - frameId: Page.FrameId; - } - export type getApplicationCacheForFrameReturnValue = { - /** - * Relevant application cache data for the document in given frame. - */ - applicationCache: ApplicationCache; - } - /** - * Returns array of frame identifiers with manifest urls for each frame containing a document -associated with some application cache. - */ - export type getFramesWithManifestsParameters = { - } - export type getFramesWithManifestsReturnValue = { - /** - * Array of frame identifiers with manifest urls for each frame containing a document -associated with some application cache. - */ - frameIds: FrameWithManifest[]; - } - /** - * Returns manifest URL for document in the given frame. - */ - export type getManifestForFrameParameters = { - /** - * Identifier of the frame containing document whose manifest is retrieved. - */ - frameId: Page.FrameId; - } - export type getManifestForFrameReturnValue = { - /** - * Manifest URL for document in the given frame. - */ - manifestURL: string; - } - } - - /** - * Audits domain allows investigation of page violations and possible improvements. - */ - export module Audits { - /** - * Information about a cookie that is affected by an inspector issue. - */ - export interface AffectedCookie { - /** - * The following three properties uniquely identify a cookie - */ - name: string; - path: string; - domain: string; - /** - * Optionally identifies the site-for-cookies, which may be used by the -front-end as additional context. - */ - siteForCookies?: string; - } - export type SameSiteCookieExclusionReason = "ExcludeSameSiteUnspecifiedTreatedAsLax"|"ExcludeSameSiteNoneInsecure"; - export type SameSiteCookieWarningReason = "WarnSameSiteUnspecifiedCrossSiteContext"|"WarnSameSiteNoneInsecure"|"WarnSameSiteUnspecifiedLaxAllowUnsafe"|"WarnSameSiteCrossSchemeSecureUrlMethodUnsafe"|"WarnSameSiteCrossSchemeSecureUrlLax"|"WarnSameSiteCrossSchemeSecureUrlStrict"|"WarnSameSiteCrossSchemeInsecureUrlMethodUnsafe"|"WarnSameSiteCrossSchemeInsecureUrlLax"|"WarnSameSiteCrossSchemeInsecureUrlStrict"; - /** - * This information is currently necessary, as the front-end has a difficult -time finding a specific cookie. With this, we can convey specific error -information without the cookie. - */ - export interface SameSiteCookieIssueDetails { - cookieWarningReasons: SameSiteCookieWarningReason[]; - cookieExclusionReasons: SameSiteCookieExclusionReason[]; - } - export interface AffectedResources { - cookies?: AffectedCookie[]; - } - /** - * A unique identifier for the type of issue. Each type may use one of the -optional fields in InspectorIssueDetails to convey more specific -information about the kind of issue, and AffectedResources to identify -resources that are affected by this issue. - */ - export type InspectorIssueCode = "SameSiteCookieIssue"; - /** - * This struct holds a list of optional fields with additional information -pertaining to the kind of issue. This is useful if there is a number of -very similar issues that only differ in details. - */ - export interface InspectorIssueDetails { - sameSiteCookieIssueDetails?: SameSiteCookieIssueDetails; - } - /** - * An inspector issue reported from the back-end. - */ - export interface InspectorIssue { - code: InspectorIssueCode; - details: InspectorIssueDetails; - resources: AffectedResources; - } - - export type issueAddedPayload = { - issue: InspectorIssue; - } - - /** - * Returns the response body and size if it were re-encoded with the specified settings. Only -applies to images. - */ - export type getEncodedResponseParameters = { - /** - * Identifier of the network request to get content for. - */ - requestId: Network.RequestId; - /** - * The encoding to use. - */ - encoding: "webp"|"jpeg"|"png"; - /** - * The quality of the encoding (0-1). (defaults to 1) - */ - quality?: number; - /** - * Whether to only return the size information (defaults to false). - */ - sizeOnly?: boolean; - } - export type getEncodedResponseReturnValue = { - /** - * The encoded body as a base64 string. Omitted if sizeOnly is true. - */ - body?: binary; - /** - * Size before re-encoding. - */ - originalSize: number; - /** - * Size after re-encoding. - */ - encodedSize: number; - } - /** - * Disables issues domain, prevents further issues from being reported to the client. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables issues domain, sends the issues collected so far to the client by means of the -`issueAdded` event. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - } - - /** - * Defines events for background web platform features. - */ - export module BackgroundService { - /** - * The Background Service that will be associated with the commands/events. -Every Background Service operates independently, but they share the same -API. - */ - export type ServiceName = "backgroundFetch"|"backgroundSync"|"pushMessaging"|"notifications"|"paymentHandler"|"periodicBackgroundSync"; - /** - * A key-value pair for additional event information to pass along. - */ - export interface EventMetadata { - key: string; - value: string; - } - export interface BackgroundServiceEvent { - /** - * Timestamp of the event (in seconds). - */ - timestamp: Network.TimeSinceEpoch; - /** - * The origin this event belongs to. - */ - origin: string; - /** - * The Service Worker ID that initiated the event. - */ - serviceWorkerRegistrationId: ServiceWorker.RegistrationID; - /** - * The Background Service this event belongs to. - */ - service: ServiceName; - /** - * A description of the event. - */ - eventName: string; - /** - * An identifier that groups related events together. - */ - instanceId: string; - /** - * A list of event-specific information. - */ - eventMetadata: EventMetadata[]; - } - - /** - * Called when the recording state for the service has been updated. - */ - export type recordingStateChangedPayload = { - isRecording: boolean; - service: ServiceName; - } - /** - * Called with all existing backgroundServiceEvents when enabled, and all new -events afterwards if enabled and recording. - */ - export type backgroundServiceEventReceivedPayload = { - backgroundServiceEvent: BackgroundServiceEvent; - } - - /** - * Enables event updates for the service. - */ - export type startObservingParameters = { - service: ServiceName; - } - export type startObservingReturnValue = { - } - /** - * Disables event updates for the service. - */ - export type stopObservingParameters = { - service: ServiceName; - } - export type stopObservingReturnValue = { - } - /** - * Set the recording state for the service. - */ - export type setRecordingParameters = { - shouldRecord: boolean; - service: ServiceName; - } - export type setRecordingReturnValue = { - } - /** - * Clears all stored data for the service. - */ - export type clearEventsParameters = { - service: ServiceName; - } - export type clearEventsReturnValue = { - } - } - - /** - * The Browser domain defines methods and events for browser managing. - */ - export module Browser { - export type BrowserContextID = string; - export type WindowID = number; - /** - * The state of the browser window. - */ - export type WindowState = "normal"|"minimized"|"maximized"|"fullscreen"; - /** - * Browser window bounds information - */ - export interface Bounds { - /** - * The offset from the left edge of the screen to the window in pixels. - */ - left?: number; - /** - * The offset from the top edge of the screen to the window in pixels. - */ - top?: number; - /** - * The window width in pixels. - */ - width?: number; - /** - * The window height in pixels. - */ - height?: number; - /** - * The window state. Default to normal. - */ - windowState?: WindowState; - } - export type PermissionType = "accessibilityEvents"|"audioCapture"|"backgroundSync"|"backgroundFetch"|"clipboardReadWrite"|"clipboardSanitizedWrite"|"durableStorage"|"flash"|"geolocation"|"midi"|"midiSysex"|"nfc"|"notifications"|"paymentHandler"|"periodicBackgroundSync"|"protectedMediaIdentifier"|"sensors"|"videoCapture"|"idleDetection"|"wakeLockScreen"|"wakeLockSystem"; - export type PermissionSetting = "granted"|"denied"|"prompt"; - /** - * Definition of PermissionDescriptor defined in the Permissions API: -https://w3c.github.io/permissions/#dictdef-permissiondescriptor. - */ - export interface PermissionDescriptor { - /** - * Name of permission. -See https://cs.chromium.org/chromium/src/third_party/blink/renderer/modules/permissions/permission_descriptor.idl for valid permission names. - */ - name: string; - /** - * For "midi" permission, may also specify sysex control. - */ - sysex?: boolean; - /** - * For "push" permission, may specify userVisibleOnly. -Note that userVisibleOnly = true is the only currently supported type. - */ - userVisibleOnly?: boolean; - /** - * For "wake-lock" permission, must specify type as either "screen" or "system". - */ - type?: string; - /** - * For "clipboard" permission, may specify allowWithoutSanitization. - */ - allowWithoutSanitization?: boolean; - } - /** - * Chrome histogram bucket. - */ - export interface Bucket { - /** - * Minimum value (inclusive). - */ - low: number; - /** - * Maximum value (exclusive). - */ - high: number; - /** - * Number of samples. - */ - count: number; - } - /** - * Chrome histogram. - */ - export interface Histogram { - /** - * Name. - */ - name: string; - /** - * Sum of sample values. - */ - sum: number; - /** - * Total number of samples. - */ - count: number; - /** - * Buckets. - */ - buckets: Bucket[]; - } - - - /** - * Set permission settings for given origin. - */ - export type setPermissionParameters = { - /** - * Origin the permission applies to, all origins if not specified. - */ - origin?: string; - /** - * Descriptor of permission to override. - */ - permission: PermissionDescriptor; - /** - * Setting of the permission. - */ - setting: PermissionSetting; - /** - * Context to override. When omitted, default browser context is used. - */ - browserContextId?: BrowserContextID; - } - export type setPermissionReturnValue = { - } - /** - * Grant specific permissions to the given origin and reject all others. - */ - export type grantPermissionsParameters = { - /** - * Origin the permission applies to, all origins if not specified. - */ - origin?: string; - permissions: PermissionType[]; - /** - * BrowserContext to override permissions. When omitted, default browser context is used. - */ - browserContextId?: BrowserContextID; - } - export type grantPermissionsReturnValue = { - } - /** - * Reset all permission management for all origins. - */ - export type resetPermissionsParameters = { - /** - * BrowserContext to reset permissions. When omitted, default browser context is used. - */ - browserContextId?: BrowserContextID; - } - export type resetPermissionsReturnValue = { - } - /** - * Set the behavior when downloading a file. - */ - export type setDownloadBehaviorParameters = { - /** - * Whether to allow all or deny all download requests, or use default Chrome behavior if -available (otherwise deny). |allowAndName| allows download and names files according to -their dowmload guids. - */ - behavior: "deny"|"allow"|"allowAndName"|"default"; - /** - * BrowserContext to set download behavior. When omitted, default browser context is used. - */ - browserContextId?: BrowserContextID; - /** - * The default path to save downloaded files to. This is requred if behavior is set to 'allow' -or 'allowAndName'. - */ - downloadPath?: string; - } - export type setDownloadBehaviorReturnValue = { - } - /** - * Close browser gracefully. - */ - export type closeParameters = { - } - export type closeReturnValue = { - } - /** - * Crashes browser on the main thread. - */ - export type crashParameters = { - } - export type crashReturnValue = { - } - /** - * Crashes GPU process. - */ - export type crashGpuProcessParameters = { - } - export type crashGpuProcessReturnValue = { - } - /** - * Returns version information. - */ - export type getVersionParameters = { - } - export type getVersionReturnValue = { - /** - * Protocol version. - */ - protocolVersion: string; - /** - * Product name. - */ - product: string; - /** - * Product revision. - */ - revision: string; - /** - * User-Agent. - */ - userAgent: string; - /** - * V8 version. - */ - jsVersion: string; - } - /** - * Returns the command line switches for the browser process if, and only if ---enable-automation is on the commandline. - */ - export type getBrowserCommandLineParameters = { - } - export type getBrowserCommandLineReturnValue = { - /** - * Commandline parameters - */ - arguments: string[]; - } - /** - * Get Chrome histograms. - */ - export type getHistogramsParameters = { - /** - * Requested substring in name. Only histograms which have query as a -substring in their name are extracted. An empty or absent query returns -all histograms. - */ - query?: string; - /** - * If true, retrieve delta since last call. - */ - delta?: boolean; - } - export type getHistogramsReturnValue = { - /** - * Histograms. - */ - histograms: Histogram[]; - } - /** - * Get a Chrome histogram by name. - */ - export type getHistogramParameters = { - /** - * Requested histogram name. - */ - name: string; - /** - * If true, retrieve delta since last call. - */ - delta?: boolean; - } - export type getHistogramReturnValue = { - /** - * Histogram. - */ - histogram: Histogram; - } - /** - * Get position and size of the browser window. - */ - export type getWindowBoundsParameters = { - /** - * Browser window id. - */ - windowId: WindowID; - } - export type getWindowBoundsReturnValue = { - /** - * Bounds information of the window. When window state is 'minimized', the restored window -position and size are returned. - */ - bounds: Bounds; - } - /** - * Get the browser window that contains the devtools target. - */ - export type getWindowForTargetParameters = { - /** - * Devtools agent host id. If called as a part of the session, associated targetId is used. - */ - targetId?: Target.TargetID; - } - export type getWindowForTargetReturnValue = { - /** - * Browser window id. - */ - windowId: WindowID; - /** - * Bounds information of the window. When window state is 'minimized', the restored window -position and size are returned. - */ - bounds: Bounds; - } - /** - * Set position and/or size of the browser window. - */ - export type setWindowBoundsParameters = { - /** - * Browser window id. - */ - windowId: WindowID; - /** - * New window bounds. The 'minimized', 'maximized' and 'fullscreen' states cannot be combined -with 'left', 'top', 'width' or 'height'. Leaves unspecified fields unchanged. - */ - bounds: Bounds; - } - export type setWindowBoundsReturnValue = { - } - /** - * Set dock tile details, platform-specific. - */ - export type setDockTileParameters = { - badgeLabel?: string; - /** - * Png encoded image. - */ - image?: binary; - } - export type setDockTileReturnValue = { - } - } - - /** - * This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles) -have an associated `id` used in subsequent operations on the related object. Each object type has -a specific `id` structure, and those are not interchangeable between objects of different kinds. -CSS objects can be loaded using the `get*ForNode()` calls (which accept a DOM node id). A client -can also keep track of stylesheets via the `styleSheetAdded`/`styleSheetRemoved` events and -subsequently load the required stylesheet contents using the `getStyleSheet[Text]()` methods. - */ - export module CSS { - export type StyleSheetId = string; - /** - * Stylesheet type: "injected" for stylesheets injected via extension, "user-agent" for user-agent -stylesheets, "inspector" for stylesheets created by the inspector (i.e. those holding the "via -inspector" rules), "regular" for regular stylesheets. - */ - export type StyleSheetOrigin = "injected"|"user-agent"|"inspector"|"regular"; - /** - * CSS rule collection for a single pseudo style. - */ - export interface PseudoElementMatches { - /** - * Pseudo element type. - */ - pseudoType: DOM.PseudoType; - /** - * Matches of CSS rules applicable to the pseudo style. - */ - matches: RuleMatch[]; - } - /** - * Inherited CSS rule collection from ancestor node. - */ - export interface InheritedStyleEntry { - /** - * The ancestor node's inline style, if any, in the style inheritance chain. - */ - inlineStyle?: CSSStyle; - /** - * Matches of CSS rules matching the ancestor node in the style inheritance chain. - */ - matchedCSSRules: RuleMatch[]; - } - /** - * Match data for a CSS rule. - */ - export interface RuleMatch { - /** - * CSS rule in the match. - */ - rule: CSSRule; - /** - * Matching selector indices in the rule's selectorList selectors (0-based). - */ - matchingSelectors: number[]; - } - /** - * Data for a simple selector (these are delimited by commas in a selector list). - */ - export interface Value { - /** - * Value text. - */ - text: string; - /** - * Value range in the underlying resource (if available). - */ - range?: SourceRange; - } - /** - * Selector list data. - */ - export interface SelectorList { - /** - * Selectors in the list. - */ - selectors: Value[]; - /** - * Rule selector text. - */ - text: string; - } - /** - * CSS stylesheet metainformation. - */ - export interface CSSStyleSheetHeader { - /** - * The stylesheet identifier. - */ - styleSheetId: StyleSheetId; - /** - * Owner frame identifier. - */ - frameId: Page.FrameId; - /** - * Stylesheet resource URL. - */ - sourceURL: string; - /** - * URL of source map associated with the stylesheet (if any). - */ - sourceMapURL?: string; - /** - * Stylesheet origin. - */ - origin: StyleSheetOrigin; - /** - * Stylesheet title. - */ - title: string; - /** - * The backend id for the owner node of the stylesheet. - */ - ownerNode?: DOM.BackendNodeId; - /** - * Denotes whether the stylesheet is disabled. - */ - disabled: boolean; - /** - * Whether the sourceURL field value comes from the sourceURL comment. - */ - hasSourceURL?: boolean; - /** - * Whether this stylesheet is created for STYLE tag by parser. This flag is not set for -document.written STYLE tags. - */ - isInline: boolean; - /** - * Line offset of the stylesheet within the resource (zero based). - */ - startLine: number; - /** - * Column offset of the stylesheet within the resource (zero based). - */ - startColumn: number; - /** - * Size of the content (in characters). - */ - length: number; - /** - * Line offset of the end of the stylesheet within the resource (zero based). - */ - endLine: number; - /** - * Column offset of the end of the stylesheet within the resource (zero based). - */ - endColumn: number; - } - /** - * CSS rule representation. - */ - export interface CSSRule { - /** - * The css style sheet identifier (absent for user agent stylesheet and user-specified -stylesheet rules) this rule came from. - */ - styleSheetId?: StyleSheetId; - /** - * Rule selector data. - */ - selectorList: SelectorList; - /** - * Parent stylesheet's origin. - */ - origin: StyleSheetOrigin; - /** - * Associated style declaration. - */ - style: CSSStyle; - /** - * Media list array (for rules involving media queries). The array enumerates media queries -starting with the innermost one, going outwards. - */ - media?: CSSMedia[]; - } - /** - * CSS coverage information. - */ - export interface RuleUsage { - /** - * The css style sheet identifier (absent for user agent stylesheet and user-specified -stylesheet rules) this rule came from. - */ - styleSheetId: StyleSheetId; - /** - * Offset of the start of the rule (including selector) from the beginning of the stylesheet. - */ - startOffset: number; - /** - * Offset of the end of the rule body from the beginning of the stylesheet. - */ - endOffset: number; - /** - * Indicates whether the rule was actually used by some element in the page. - */ - used: boolean; - } - /** - * Text range within a resource. All numbers are zero-based. - */ - export interface SourceRange { - /** - * Start line of range. - */ - startLine: number; - /** - * Start column of range (inclusive). - */ - startColumn: number; - /** - * End line of range - */ - endLine: number; - /** - * End column of range (exclusive). - */ - endColumn: number; - } - export interface ShorthandEntry { - /** - * Shorthand name. - */ - name: string; - /** - * Shorthand value. - */ - value: string; - /** - * Whether the property has "!important" annotation (implies `false` if absent). - */ - important?: boolean; - } - export interface CSSComputedStyleProperty { - /** - * Computed style property name. - */ - name: string; - /** - * Computed style property value. - */ - value: string; - } - /** - * CSS style representation. - */ - export interface CSSStyle { - /** - * The css style sheet identifier (absent for user agent stylesheet and user-specified -stylesheet rules) this rule came from. - */ - styleSheetId?: StyleSheetId; - /** - * CSS properties in the style. - */ - cssProperties: CSSProperty[]; - /** - * Computed values for all shorthands found in the style. - */ - shorthandEntries: ShorthandEntry[]; - /** - * Style declaration text (if available). - */ - cssText?: string; - /** - * Style declaration range in the enclosing stylesheet (if available). - */ - range?: SourceRange; - } - /** - * CSS property declaration data. - */ - export interface CSSProperty { - /** - * The property name. - */ - name: string; - /** - * The property value. - */ - value: string; - /** - * Whether the property has "!important" annotation (implies `false` if absent). - */ - important?: boolean; - /** - * Whether the property is implicit (implies `false` if absent). - */ - implicit?: boolean; - /** - * The full property text as specified in the style. - */ - text?: string; - /** - * Whether the property is understood by the browser (implies `true` if absent). - */ - parsedOk?: boolean; - /** - * Whether the property is disabled by the user (present for source-based properties only). - */ - disabled?: boolean; - /** - * The entire property range in the enclosing style declaration (if available). - */ - range?: SourceRange; - } - /** - * CSS media rule descriptor. - */ - export interface CSSMedia { - /** - * Media query text. - */ - text: string; - /** - * Source of the media query: "mediaRule" if specified by a @media rule, "importRule" if -specified by an @import rule, "linkedSheet" if specified by a "media" attribute in a linked -stylesheet's LINK tag, "inlineSheet" if specified by a "media" attribute in an inline -stylesheet's STYLE tag. - */ - source: "mediaRule"|"importRule"|"linkedSheet"|"inlineSheet"; - /** - * URL of the document containing the media query description. - */ - sourceURL?: string; - /** - * The associated rule (@media or @import) header range in the enclosing stylesheet (if -available). - */ - range?: SourceRange; - /** - * Identifier of the stylesheet containing this object (if exists). - */ - styleSheetId?: StyleSheetId; - /** - * Array of media queries. - */ - mediaList?: MediaQuery[]; - } - /** - * Media query descriptor. - */ - export interface MediaQuery { - /** - * Array of media query expressions. - */ - expressions: MediaQueryExpression[]; - /** - * Whether the media query condition is satisfied. - */ - active: boolean; - } - /** - * Media query expression descriptor. - */ - export interface MediaQueryExpression { - /** - * Media query expression value. - */ - value: number; - /** - * Media query expression units. - */ - unit: string; - /** - * Media query expression feature. - */ - feature: string; - /** - * The associated range of the value text in the enclosing stylesheet (if available). - */ - valueRange?: SourceRange; - /** - * Computed length of media query expression (if applicable). - */ - computedLength?: number; - } - /** - * Information about amount of glyphs that were rendered with given font. - */ - export interface PlatformFontUsage { - /** - * Font's family name reported by platform. - */ - familyName: string; - /** - * Indicates if the font was downloaded or resolved locally. - */ - isCustomFont: boolean; - /** - * Amount of glyphs that were rendered with this font. - */ - glyphCount: number; - } - /** - * Properties of a web font: https://www.w3.org/TR/2008/REC-CSS2-20080411/fonts.html#font-descriptions - */ - export interface FontFace { - /** - * The font-family. - */ - fontFamily: string; - /** - * The font-style. - */ - fontStyle: string; - /** - * The font-variant. - */ - fontVariant: string; - /** - * The font-weight. - */ - fontWeight: string; - /** - * The font-stretch. - */ - fontStretch: string; - /** - * The unicode-range. - */ - unicodeRange: string; - /** - * The src. - */ - src: string; - /** - * The resolved platform font family - */ - platformFontFamily: string; - } - /** - * CSS keyframes rule representation. - */ - export interface CSSKeyframesRule { - /** - * Animation name. - */ - animationName: Value; - /** - * List of keyframes. - */ - keyframes: CSSKeyframeRule[]; - } - /** - * CSS keyframe rule representation. - */ - export interface CSSKeyframeRule { - /** - * The css style sheet identifier (absent for user agent stylesheet and user-specified -stylesheet rules) this rule came from. - */ - styleSheetId?: StyleSheetId; - /** - * Parent stylesheet's origin. - */ - origin: StyleSheetOrigin; - /** - * Associated key text. - */ - keyText: Value; - /** - * Associated style declaration. - */ - style: CSSStyle; - } - /** - * A descriptor of operation to mutate style declaration text. - */ - export interface StyleDeclarationEdit { - /** - * The css style sheet identifier. - */ - styleSheetId: StyleSheetId; - /** - * The range of the style text in the enclosing stylesheet. - */ - range: SourceRange; - /** - * New style text. - */ - text: string; - } - - /** - * Fires whenever a web font is updated. A non-empty font parameter indicates a successfully loaded -web font - */ - export type fontsUpdatedPayload = { - /** - * The web font that has loaded. - */ - font?: FontFace; - } - /** - * Fires whenever a MediaQuery result changes (for example, after a browser window has been -resized.) The current implementation considers only viewport-dependent media features. - */ - export type mediaQueryResultChangedPayload = void; - /** - * Fired whenever an active document stylesheet is added. - */ - export type styleSheetAddedPayload = { - /** - * Added stylesheet metainfo. - */ - header: CSSStyleSheetHeader; - } - /** - * Fired whenever a stylesheet is changed as a result of the client operation. - */ - export type styleSheetChangedPayload = { - styleSheetId: StyleSheetId; - } - /** - * Fired whenever an active document stylesheet is removed. - */ - export type styleSheetRemovedPayload = { - /** - * Identifier of the removed stylesheet. - */ - styleSheetId: StyleSheetId; - } - - /** - * Inserts a new rule with the given `ruleText` in a stylesheet with given `styleSheetId`, at the -position specified by `location`. - */ - export type addRuleParameters = { - /** - * The css style sheet identifier where a new rule should be inserted. - */ - styleSheetId: StyleSheetId; - /** - * The text of a new rule. - */ - ruleText: string; - /** - * Text position of a new rule in the target style sheet. - */ - location: SourceRange; - } - export type addRuleReturnValue = { - /** - * The newly created rule. - */ - rule: CSSRule; - } - /** - * Returns all class names from specified stylesheet. - */ - export type collectClassNamesParameters = { - styleSheetId: StyleSheetId; - } - export type collectClassNamesReturnValue = { - /** - * Class name list. - */ - classNames: string[]; - } - /** - * Creates a new special "via-inspector" stylesheet in the frame with given `frameId`. - */ - export type createStyleSheetParameters = { - /** - * Identifier of the frame where "via-inspector" stylesheet should be created. - */ - frameId: Page.FrameId; - } - export type createStyleSheetReturnValue = { - /** - * Identifier of the created "via-inspector" stylesheet. - */ - styleSheetId: StyleSheetId; - } - /** - * Disables the CSS agent for the given page. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables the CSS agent for the given page. Clients should not assume that the CSS agent has been -enabled until the result of this command is received. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Ensures that the given node will have specified pseudo-classes whenever its style is computed by -the browser. - */ - export type forcePseudoStateParameters = { - /** - * The element id for which to force the pseudo state. - */ - nodeId: DOM.NodeId; - /** - * Element pseudo classes to force when computing the element's style. - */ - forcedPseudoClasses: string[]; - } - export type forcePseudoStateReturnValue = { - } - export type getBackgroundColorsParameters = { - /** - * Id of the node to get background colors for. - */ - nodeId: DOM.NodeId; - } - export type getBackgroundColorsReturnValue = { - /** - * The range of background colors behind this element, if it contains any visible text. If no -visible text is present, this will be undefined. In the case of a flat background color, -this will consist of simply that color. In the case of a gradient, this will consist of each -of the color stops. For anything more complicated, this will be an empty array. Images will -be ignored (as if the image had failed to load). - */ - backgroundColors?: string[]; - /** - * The computed font size for this node, as a CSS computed value string (e.g. '12px'). - */ - computedFontSize?: string; - /** - * The computed font weight for this node, as a CSS computed value string (e.g. 'normal' or -'100'). - */ - computedFontWeight?: string; - } - /** - * Returns the computed style for a DOM node identified by `nodeId`. - */ - export type getComputedStyleForNodeParameters = { - nodeId: DOM.NodeId; - } - export type getComputedStyleForNodeReturnValue = { - /** - * Computed style for the specified DOM node. - */ - computedStyle: CSSComputedStyleProperty[]; - } - /** - * Returns the styles defined inline (explicitly in the "style" attribute and implicitly, using DOM -attributes) for a DOM node identified by `nodeId`. - */ - export type getInlineStylesForNodeParameters = { - nodeId: DOM.NodeId; - } - export type getInlineStylesForNodeReturnValue = { - /** - * Inline style for the specified DOM node. - */ - inlineStyle?: CSSStyle; - /** - * Attribute-defined element style (e.g. resulting from "width=20 height=100%"). - */ - attributesStyle?: CSSStyle; - } - /** - * Returns requested styles for a DOM node identified by `nodeId`. - */ - export type getMatchedStylesForNodeParameters = { - nodeId: DOM.NodeId; - } - export type getMatchedStylesForNodeReturnValue = { - /** - * Inline style for the specified DOM node. - */ - inlineStyle?: CSSStyle; - /** - * Attribute-defined element style (e.g. resulting from "width=20 height=100%"). - */ - attributesStyle?: CSSStyle; - /** - * CSS rules matching this node, from all applicable stylesheets. - */ - matchedCSSRules?: RuleMatch[]; - /** - * Pseudo style matches for this node. - */ - pseudoElements?: PseudoElementMatches[]; - /** - * A chain of inherited styles (from the immediate node parent up to the DOM tree root). - */ - inherited?: InheritedStyleEntry[]; - /** - * A list of CSS keyframed animations matching this node. - */ - cssKeyframesRules?: CSSKeyframesRule[]; - } - /** - * Returns all media queries parsed by the rendering engine. - */ - export type getMediaQueriesParameters = { - } - export type getMediaQueriesReturnValue = { - medias: CSSMedia[]; - } - /** - * Requests information about platform fonts which we used to render child TextNodes in the given -node. - */ - export type getPlatformFontsForNodeParameters = { - nodeId: DOM.NodeId; - } - export type getPlatformFontsForNodeReturnValue = { - /** - * Usage statistics for every employed platform font. - */ - fonts: PlatformFontUsage[]; - } - /** - * Returns the current textual content for a stylesheet. - */ - export type getStyleSheetTextParameters = { - styleSheetId: StyleSheetId; - } - export type getStyleSheetTextReturnValue = { - /** - * The stylesheet text. - */ - text: string; - } - /** - * Find a rule with the given active property for the given node and set the new value for this -property - */ - export type setEffectivePropertyValueForNodeParameters = { - /** - * The element id for which to set property. - */ - nodeId: DOM.NodeId; - propertyName: string; - value: string; - } - export type setEffectivePropertyValueForNodeReturnValue = { - } - /** - * Modifies the keyframe rule key text. - */ - export type setKeyframeKeyParameters = { - styleSheetId: StyleSheetId; - range: SourceRange; - keyText: string; - } - export type setKeyframeKeyReturnValue = { - /** - * The resulting key text after modification. - */ - keyText: Value; - } - /** - * Modifies the rule selector. - */ - export type setMediaTextParameters = { - styleSheetId: StyleSheetId; - range: SourceRange; - text: string; - } - export type setMediaTextReturnValue = { - /** - * The resulting CSS media rule after modification. - */ - media: CSSMedia; - } - /** - * Modifies the rule selector. - */ - export type setRuleSelectorParameters = { - styleSheetId: StyleSheetId; - range: SourceRange; - selector: string; - } - export type setRuleSelectorReturnValue = { - /** - * The resulting selector list after modification. - */ - selectorList: SelectorList; - } - /** - * Sets the new stylesheet text. - */ - export type setStyleSheetTextParameters = { - styleSheetId: StyleSheetId; - text: string; - } - export type setStyleSheetTextReturnValue = { - /** - * URL of source map associated with script (if any). - */ - sourceMapURL?: string; - } - /** - * Applies specified style edits one after another in the given order. - */ - export type setStyleTextsParameters = { - edits: StyleDeclarationEdit[]; - } - export type setStyleTextsReturnValue = { - /** - * The resulting styles after modification. - */ - styles: CSSStyle[]; - } - /** - * Enables the selector recording. - */ - export type startRuleUsageTrackingParameters = { - } - export type startRuleUsageTrackingReturnValue = { - } - /** - * Stop tracking rule usage and return the list of rules that were used since last call to -`takeCoverageDelta` (or since start of coverage instrumentation) - */ - export type stopRuleUsageTrackingParameters = { - } - export type stopRuleUsageTrackingReturnValue = { - ruleUsage: RuleUsage[]; - } - /** - * Obtain list of rules that became used since last call to this method (or since start of coverage -instrumentation) - */ - export type takeCoverageDeltaParameters = { - } - export type takeCoverageDeltaReturnValue = { - coverage: RuleUsage[]; - /** - * Monotonically increasing time, in seconds. - */ - timestamp: number; - } - } - - export module CacheStorage { - /** - * Unique identifier of the Cache object. - */ - export type CacheId = string; - /** - * type of HTTP response cached - */ - export type CachedResponseType = "basic"|"cors"|"default"|"error"|"opaqueResponse"|"opaqueRedirect"; - /** - * Data entry. - */ - export interface DataEntry { - /** - * Request URL. - */ - requestURL: string; - /** - * Request method. - */ - requestMethod: string; - /** - * Request headers - */ - requestHeaders: Header[]; - /** - * Number of seconds since epoch. - */ - responseTime: number; - /** - * HTTP response status code. - */ - responseStatus: number; - /** - * HTTP response status text. - */ - responseStatusText: string; - /** - * HTTP response type - */ - responseType: CachedResponseType; - /** - * Response headers - */ - responseHeaders: Header[]; - } - /** - * Cache identifier. - */ - export interface Cache { - /** - * An opaque unique id of the cache. - */ - cacheId: CacheId; - /** - * Security origin of the cache. - */ - securityOrigin: string; - /** - * The name of the cache. - */ - cacheName: string; - } - export interface Header { - name: string; - value: string; - } - /** - * Cached response - */ - export interface CachedResponse { - /** - * Entry content, base64-encoded. - */ - body: binary; - } - - - /** - * Deletes a cache. - */ - export type deleteCacheParameters = { - /** - * Id of cache for deletion. - */ - cacheId: CacheId; - } - export type deleteCacheReturnValue = { - } - /** - * Deletes a cache entry. - */ - export type deleteEntryParameters = { - /** - * Id of cache where the entry will be deleted. - */ - cacheId: CacheId; - /** - * URL spec of the request. - */ - request: string; - } - export type deleteEntryReturnValue = { - } - /** - * Requests cache names. - */ - export type requestCacheNamesParameters = { - /** - * Security origin. - */ - securityOrigin: string; - } - export type requestCacheNamesReturnValue = { - /** - * Caches for the security origin. - */ - caches: Cache[]; - } - /** - * Fetches cache entry. - */ - export type requestCachedResponseParameters = { - /** - * Id of cache that contains the entry. - */ - cacheId: CacheId; - /** - * URL spec of the request. - */ - requestURL: string; - /** - * headers of the request. - */ - requestHeaders: Header[]; - } - export type requestCachedResponseReturnValue = { - /** - * Response read from the cache. - */ - response: CachedResponse; - } - /** - * Requests data from cache. - */ - export type requestEntriesParameters = { - /** - * ID of cache to get entries from. - */ - cacheId: CacheId; - /** - * Number of records to skip. - */ - skipCount?: number; - /** - * Number of records to fetch. - */ - pageSize?: number; - /** - * If present, only return the entries containing this substring in the path - */ - pathFilter?: string; - } - export type requestEntriesReturnValue = { - /** - * Array of object store data entries. - */ - cacheDataEntries: DataEntry[]; - /** - * Count of returned entries from this storage. If pathFilter is empty, it -is the count of all entries from this storage. - */ - returnCount: number; - } - } - - /** - * A domain for interacting with Cast, Presentation API, and Remote Playback API -functionalities. - */ - export module Cast { - export interface Sink { - name: string; - id: string; - /** - * Text describing the current session. Present only if there is an active -session on the sink. - */ - session?: string; - } - - /** - * This is fired whenever the list of available sinks changes. A sink is a -device or a software surface that you can cast to. - */ - export type sinksUpdatedPayload = { - sinks: Sink[]; - } - /** - * This is fired whenever the outstanding issue/error message changes. -|issueMessage| is empty if there is no issue. - */ - export type issueUpdatedPayload = { - issueMessage: string; - } - - /** - * Starts observing for sinks that can be used for tab mirroring, and if set, -sinks compatible with |presentationUrl| as well. When sinks are found, a -|sinksUpdated| event is fired. -Also starts observing for issue messages. When an issue is added or removed, -an |issueUpdated| event is fired. - */ - export type enableParameters = { - presentationUrl?: string; - } - export type enableReturnValue = { - } - /** - * Stops observing for sinks and issues. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Sets a sink to be used when the web page requests the browser to choose a -sink via Presentation API, Remote Playback API, or Cast SDK. - */ - export type setSinkToUseParameters = { - sinkName: string; - } - export type setSinkToUseReturnValue = { - } - /** - * Starts mirroring the tab to the sink. - */ - export type startTabMirroringParameters = { - sinkName: string; - } - export type startTabMirroringReturnValue = { - } - /** - * Stops the active Cast session on the sink. - */ - export type stopCastingParameters = { - sinkName: string; - } - export type stopCastingReturnValue = { - } - } - - /** - * This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object -that has an `id`. This `id` can be used to get additional information on the Node, resolve it into -the JavaScript object wrapper, etc. It is important that client receives DOM events only for the -nodes that are known to the client. Backend keeps track of the nodes that were sent to the client -and never sends the same node twice. It is client's responsibility to collect information about -the nodes that were sent to the client.Note that `iframe` owner elements will return -corresponding document elements as their child nodes. - */ - export module DOM { - /** - * Unique DOM node identifier. - */ - export type NodeId = number; - /** - * Unique DOM node identifier used to reference a node that may not have been pushed to the -front-end. - */ - export type BackendNodeId = number; - /** - * Backend node with a friendly name. - */ - export interface BackendNode { - /** - * `Node`'s nodeType. - */ - nodeType: number; - /** - * `Node`'s nodeName. - */ - nodeName: string; - backendNodeId: BackendNodeId; - } - /** - * Pseudo element type. - */ - export type PseudoType = "first-line"|"first-letter"|"before"|"after"|"marker"|"backdrop"|"selection"|"first-line-inherited"|"scrollbar"|"scrollbar-thumb"|"scrollbar-button"|"scrollbar-track"|"scrollbar-track-piece"|"scrollbar-corner"|"resizer"|"input-list-button"; - /** - * Shadow root type. - */ - export type ShadowRootType = "user-agent"|"open"|"closed"; - /** - * DOM interaction is implemented in terms of mirror objects that represent the actual DOM nodes. -DOMNode is a base node mirror type. - */ - export interface Node { - /** - * Node identifier that is passed into the rest of the DOM messages as the `nodeId`. Backend -will only push node with given `id` once. It is aware of all requested nodes and will only -fire DOM events for nodes known to the client. - */ - nodeId: NodeId; - /** - * The id of the parent node if any. - */ - parentId?: NodeId; - /** - * The BackendNodeId for this node. - */ - backendNodeId: BackendNodeId; - /** - * `Node`'s nodeType. - */ - nodeType: number; - /** - * `Node`'s nodeName. - */ - nodeName: string; - /** - * `Node`'s localName. - */ - localName: string; - /** - * `Node`'s nodeValue. - */ - nodeValue: string; - /** - * Child count for `Container` nodes. - */ - childNodeCount?: number; - /** - * Child nodes of this node when requested with children. - */ - children?: Node[]; - /** - * Attributes of the `Element` node in the form of flat array `[name1, value1, name2, value2]`. - */ - attributes?: string[]; - /** - * Document URL that `Document` or `FrameOwner` node points to. - */ - documentURL?: string; - /** - * Base URL that `Document` or `FrameOwner` node uses for URL completion. - */ - baseURL?: string; - /** - * `DocumentType`'s publicId. - */ - publicId?: string; - /** - * `DocumentType`'s systemId. - */ - systemId?: string; - /** - * `DocumentType`'s internalSubset. - */ - internalSubset?: string; - /** - * `Document`'s XML version in case of XML documents. - */ - xmlVersion?: string; - /** - * `Attr`'s name. - */ - name?: string; - /** - * `Attr`'s value. - */ - value?: string; - /** - * Pseudo element type for this node. - */ - pseudoType?: PseudoType; - /** - * Shadow root type. - */ - shadowRootType?: ShadowRootType; - /** - * Frame ID for frame owner elements. - */ - frameId?: Page.FrameId; - /** - * Content document for frame owner elements. - */ - contentDocument?: Node; - /** - * Shadow root list for given element host. - */ - shadowRoots?: Node[]; - /** - * Content document fragment for template elements. - */ - templateContent?: Node; - /** - * Pseudo elements associated with this node. - */ - pseudoElements?: Node[]; - /** - * Import document for the HTMLImport links. - */ - importedDocument?: Node; - /** - * Distributed nodes for given insertion point. - */ - distributedNodes?: BackendNode[]; - /** - * Whether the node is SVG. - */ - isSVG?: boolean; - } - /** - * A structure holding an RGBA color. - */ - export interface RGBA { - /** - * The red component, in the [0-255] range. - */ - r: number; - /** - * The green component, in the [0-255] range. - */ - g: number; - /** - * The blue component, in the [0-255] range. - */ - b: number; - /** - * The alpha component, in the [0-1] range (default: 1). - */ - a?: number; - } - /** - * An array of quad vertices, x immediately followed by y for each point, points clock-wise. - */ - export type Quad = number[]; - /** - * Box model. - */ - export interface BoxModel { - /** - * Content box - */ - content: Quad; - /** - * Padding box - */ - padding: Quad; - /** - * Border box - */ - border: Quad; - /** - * Margin box - */ - margin: Quad; - /** - * Node width - */ - width: number; - /** - * Node height - */ - height: number; - /** - * Shape outside coordinates - */ - shapeOutside?: ShapeOutsideInfo; - } - /** - * CSS Shape Outside details. - */ - export interface ShapeOutsideInfo { - /** - * Shape bounds - */ - bounds: Quad; - /** - * Shape coordinate details - */ - shape: any[]; - /** - * Margin shape bounds - */ - marginShape: any[]; - } - /** - * Rectangle. - */ - export interface Rect { - /** - * X coordinate - */ - x: number; - /** - * Y coordinate - */ - y: number; - /** - * Rectangle width - */ - width: number; - /** - * Rectangle height - */ - height: number; - } - - /** - * Fired when `Element`'s attribute is modified. - */ - export type attributeModifiedPayload = { - /** - * Id of the node that has changed. - */ - nodeId: NodeId; - /** - * Attribute name. - */ - name: string; - /** - * Attribute value. - */ - value: string; - } - /** - * Fired when `Element`'s attribute is removed. - */ - export type attributeRemovedPayload = { - /** - * Id of the node that has changed. - */ - nodeId: NodeId; - /** - * A ttribute name. - */ - name: string; - } - /** - * Mirrors `DOMCharacterDataModified` event. - */ - export type characterDataModifiedPayload = { - /** - * Id of the node that has changed. - */ - nodeId: NodeId; - /** - * New text value. - */ - characterData: string; - } - /** - * Fired when `Container`'s child node count has changed. - */ - export type childNodeCountUpdatedPayload = { - /** - * Id of the node that has changed. - */ - nodeId: NodeId; - /** - * New node count. - */ - childNodeCount: number; - } - /** - * Mirrors `DOMNodeInserted` event. - */ - export type childNodeInsertedPayload = { - /** - * Id of the node that has changed. - */ - parentNodeId: NodeId; - /** - * If of the previous siblint. - */ - previousNodeId: NodeId; - /** - * Inserted node data. - */ - node: Node; - } - /** - * Mirrors `DOMNodeRemoved` event. - */ - export type childNodeRemovedPayload = { - /** - * Parent id. - */ - parentNodeId: NodeId; - /** - * Id of the node that has been removed. - */ - nodeId: NodeId; - } - /** - * Called when distrubution is changed. - */ - export type distributedNodesUpdatedPayload = { - /** - * Insertion point where distrubuted nodes were updated. - */ - insertionPointId: NodeId; - /** - * Distributed nodes for given insertion point. - */ - distributedNodes: BackendNode[]; - } - /** - * Fired when `Document` has been totally updated. Node ids are no longer valid. - */ - export type documentUpdatedPayload = void; - /** - * Fired when `Element`'s inline style is modified via a CSS property modification. - */ - export type inlineStyleInvalidatedPayload = { - /** - * Ids of the nodes for which the inline styles have been invalidated. - */ - nodeIds: NodeId[]; - } - /** - * Called when a pseudo element is added to an element. - */ - export type pseudoElementAddedPayload = { - /** - * Pseudo element's parent element id. - */ - parentId: NodeId; - /** - * The added pseudo element. - */ - pseudoElement: Node; - } - /** - * Called when a pseudo element is removed from an element. - */ - export type pseudoElementRemovedPayload = { - /** - * Pseudo element's parent element id. - */ - parentId: NodeId; - /** - * The removed pseudo element id. - */ - pseudoElementId: NodeId; - } - /** - * Fired when backend wants to provide client with the missing DOM structure. This happens upon -most of the calls requesting node ids. - */ - export type setChildNodesPayload = { - /** - * Parent node id to populate with children. - */ - parentId: NodeId; - /** - * Child nodes array. - */ - nodes: Node[]; - } - /** - * Called when shadow root is popped from the element. - */ - export type shadowRootPoppedPayload = { - /** - * Host element id. - */ - hostId: NodeId; - /** - * Shadow root id. - */ - rootId: NodeId; - } - /** - * Called when shadow root is pushed into the element. - */ - export type shadowRootPushedPayload = { - /** - * Host element id. - */ - hostId: NodeId; - /** - * Shadow root. - */ - root: Node; - } - - /** - * Collects class names for the node with given id and all of it's child nodes. - */ - export type collectClassNamesFromSubtreeParameters = { - /** - * Id of the node to collect class names. - */ - nodeId: NodeId; - } - export type collectClassNamesFromSubtreeReturnValue = { - /** - * Class name list. - */ - classNames: string[]; - } - /** - * Creates a deep copy of the specified node and places it into the target container before the -given anchor. - */ - export type copyToParameters = { - /** - * Id of the node to copy. - */ - nodeId: NodeId; - /** - * Id of the element to drop the copy into. - */ - targetNodeId: NodeId; - /** - * Drop the copy before this node (if absent, the copy becomes the last child of -`targetNodeId`). - */ - insertBeforeNodeId?: NodeId; - } - export type copyToReturnValue = { - /** - * Id of the node clone. - */ - nodeId: NodeId; - } - /** - * Describes node given its id, does not require domain to be enabled. Does not start tracking any -objects, can be used for automation. - */ - export type describeNodeParameters = { - /** - * Identifier of the node. - */ - nodeId?: NodeId; - /** - * Identifier of the backend node. - */ - backendNodeId?: BackendNodeId; - /** - * JavaScript object id of the node wrapper. - */ - objectId?: Runtime.RemoteObjectId; - /** - * The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the -entire subtree or provide an integer larger than 0. - */ - depth?: number; - /** - * Whether or not iframes and shadow roots should be traversed when returning the subtree -(default is false). - */ - pierce?: boolean; - } - export type describeNodeReturnValue = { - /** - * Node description. - */ - node: Node; - } - /** - * Scrolls the specified rect of the given node into view if not already visible. -Note: exactly one between nodeId, backendNodeId and objectId should be passed -to identify the node. - */ - export type scrollIntoViewIfNeededParameters = { - /** - * Identifier of the node. - */ - nodeId?: NodeId; - /** - * Identifier of the backend node. - */ - backendNodeId?: BackendNodeId; - /** - * JavaScript object id of the node wrapper. - */ - objectId?: Runtime.RemoteObjectId; - /** - * The rect to be scrolled into view, relative to the node's border box, in CSS pixels. -When omitted, center of the node will be used, similar to Element.scrollIntoView. - */ - rect?: Rect; - } - export type scrollIntoViewIfNeededReturnValue = { - } - /** - * Disables DOM agent for the given page. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Discards search results from the session with the given id. `getSearchResults` should no longer -be called for that search. - */ - export type discardSearchResultsParameters = { - /** - * Unique search session identifier. - */ - searchId: string; - } - export type discardSearchResultsReturnValue = { - } - /** - * Enables DOM agent for the given page. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Focuses the given element. - */ - export type focusParameters = { - /** - * Identifier of the node. - */ - nodeId?: NodeId; - /** - * Identifier of the backend node. - */ - backendNodeId?: BackendNodeId; - /** - * JavaScript object id of the node wrapper. - */ - objectId?: Runtime.RemoteObjectId; - } - export type focusReturnValue = { - } - /** - * Returns attributes for the specified node. - */ - export type getAttributesParameters = { - /** - * Id of the node to retrieve attibutes for. - */ - nodeId: NodeId; - } - export type getAttributesReturnValue = { - /** - * An interleaved array of node attribute names and values. - */ - attributes: string[]; - } - /** - * Returns boxes for the given node. - */ - export type getBoxModelParameters = { - /** - * Identifier of the node. - */ - nodeId?: NodeId; - /** - * Identifier of the backend node. - */ - backendNodeId?: BackendNodeId; - /** - * JavaScript object id of the node wrapper. - */ - objectId?: Runtime.RemoteObjectId; - } - export type getBoxModelReturnValue = { - /** - * Box model for the node. - */ - model: BoxModel; - } - /** - * Returns quads that describe node position on the page. This method -might return multiple quads for inline nodes. - */ - export type getContentQuadsParameters = { - /** - * Identifier of the node. - */ - nodeId?: NodeId; - /** - * Identifier of the backend node. - */ - backendNodeId?: BackendNodeId; - /** - * JavaScript object id of the node wrapper. - */ - objectId?: Runtime.RemoteObjectId; - } - export type getContentQuadsReturnValue = { - /** - * Quads that describe node layout relative to viewport. - */ - quads: Quad[]; - } - /** - * Returns the root DOM node (and optionally the subtree) to the caller. - */ - export type getDocumentParameters = { - /** - * The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the -entire subtree or provide an integer larger than 0. - */ - depth?: number; - /** - * Whether or not iframes and shadow roots should be traversed when returning the subtree -(default is false). - */ - pierce?: boolean; - } - export type getDocumentReturnValue = { - /** - * Resulting node. - */ - root: Node; - } - /** - * Returns the root DOM node (and optionally the subtree) to the caller. - */ - export type getFlattenedDocumentParameters = { - /** - * The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the -entire subtree or provide an integer larger than 0. - */ - depth?: number; - /** - * Whether or not iframes and shadow roots should be traversed when returning the subtree -(default is false). - */ - pierce?: boolean; - } - export type getFlattenedDocumentReturnValue = { - /** - * Resulting node. - */ - nodes: Node[]; - } - /** - * Returns node id at given location. Depending on whether DOM domain is enabled, nodeId is -either returned or not. - */ - export type getNodeForLocationParameters = { - /** - * X coordinate. - */ - x: number; - /** - * Y coordinate. - */ - y: number; - /** - * False to skip to the nearest non-UA shadow root ancestor (default: false). - */ - includeUserAgentShadowDOM?: boolean; - /** - * Whether to ignore pointer-events: none on elements and hit test them. - */ - ignorePointerEventsNone?: boolean; - } - export type getNodeForLocationReturnValue = { - /** - * Resulting node. - */ - backendNodeId: BackendNodeId; - /** - * Frame this node belongs to. - */ - frameId: Page.FrameId; - /** - * Id of the node at given coordinates, only when enabled and requested document. - */ - nodeId?: NodeId; - } - /** - * Returns node's HTML markup. - */ - export type getOuterHTMLParameters = { - /** - * Identifier of the node. - */ - nodeId?: NodeId; - /** - * Identifier of the backend node. - */ - backendNodeId?: BackendNodeId; - /** - * JavaScript object id of the node wrapper. - */ - objectId?: Runtime.RemoteObjectId; - } - export type getOuterHTMLReturnValue = { - /** - * Outer HTML markup. - */ - outerHTML: string; - } - /** - * Returns the id of the nearest ancestor that is a relayout boundary. - */ - export type getRelayoutBoundaryParameters = { - /** - * Id of the node. - */ - nodeId: NodeId; - } - export type getRelayoutBoundaryReturnValue = { - /** - * Relayout boundary node id for the given node. - */ - nodeId: NodeId; - } - /** - * Returns search results from given `fromIndex` to given `toIndex` from the search with the given -identifier. - */ - export type getSearchResultsParameters = { - /** - * Unique search session identifier. - */ - searchId: string; - /** - * Start index of the search result to be returned. - */ - fromIndex: number; - /** - * End index of the search result to be returned. - */ - toIndex: number; - } - export type getSearchResultsReturnValue = { - /** - * Ids of the search result nodes. - */ - nodeIds: NodeId[]; - } - /** - * Hides any highlight. - */ - export type hideHighlightParameters = { - } - export type hideHighlightReturnValue = { - } - /** - * Highlights DOM node. - */ - export type highlightNodeParameters = { - } - export type highlightNodeReturnValue = { - } - /** - * Highlights given rectangle. - */ - export type highlightRectParameters = { - } - export type highlightRectReturnValue = { - } - /** - * Marks last undoable state. - */ - export type markUndoableStateParameters = { - } - export type markUndoableStateReturnValue = { - } - /** - * Moves node into the new container, places it before the given anchor. - */ - export type moveToParameters = { - /** - * Id of the node to move. - */ - nodeId: NodeId; - /** - * Id of the element to drop the moved node into. - */ - targetNodeId: NodeId; - /** - * Drop node before this one (if absent, the moved node becomes the last child of -`targetNodeId`). - */ - insertBeforeNodeId?: NodeId; - } - export type moveToReturnValue = { - /** - * New id of the moved node. - */ - nodeId: NodeId; - } - /** - * Searches for a given string in the DOM tree. Use `getSearchResults` to access search results or -`cancelSearch` to end this search session. - */ - export type performSearchParameters = { - /** - * Plain text or query selector or XPath search query. - */ - query: string; - /** - * True to search in user agent shadow DOM. - */ - includeUserAgentShadowDOM?: boolean; - } - export type performSearchReturnValue = { - /** - * Unique search session identifier. - */ - searchId: string; - /** - * Number of search results. - */ - resultCount: number; - } - /** - * Requests that the node is sent to the caller given its path. // FIXME, use XPath - */ - export type pushNodeByPathToFrontendParameters = { - /** - * Path to node in the proprietary format. - */ - path: string; - } - export type pushNodeByPathToFrontendReturnValue = { - /** - * Id of the node for given path. - */ - nodeId: NodeId; - } - /** - * Requests that a batch of nodes is sent to the caller given their backend node ids. - */ - export type pushNodesByBackendIdsToFrontendParameters = { - /** - * The array of backend node ids. - */ - backendNodeIds: BackendNodeId[]; - } - export type pushNodesByBackendIdsToFrontendReturnValue = { - /** - * The array of ids of pushed nodes that correspond to the backend ids specified in -backendNodeIds. - */ - nodeIds: NodeId[]; - } - /** - * Executes `querySelector` on a given node. - */ - export type querySelectorParameters = { - /** - * Id of the node to query upon. - */ - nodeId: NodeId; - /** - * Selector string. - */ - selector: string; - } - export type querySelectorReturnValue = { - /** - * Query selector result. - */ - nodeId: NodeId; - } - /** - * Executes `querySelectorAll` on a given node. - */ - export type querySelectorAllParameters = { - /** - * Id of the node to query upon. - */ - nodeId: NodeId; - /** - * Selector string. - */ - selector: string; - } - export type querySelectorAllReturnValue = { - /** - * Query selector result. - */ - nodeIds: NodeId[]; - } - /** - * Re-does the last undone action. - */ - export type redoParameters = { - } - export type redoReturnValue = { - } - /** - * Removes attribute with given name from an element with given id. - */ - export type removeAttributeParameters = { - /** - * Id of the element to remove attribute from. - */ - nodeId: NodeId; - /** - * Name of the attribute to remove. - */ - name: string; - } - export type removeAttributeReturnValue = { - } - /** - * Removes node with given id. - */ - export type removeNodeParameters = { - /** - * Id of the node to remove. - */ - nodeId: NodeId; - } - export type removeNodeReturnValue = { - } - /** - * Requests that children of the node with given id are returned to the caller in form of -`setChildNodes` events where not only immediate children are retrieved, but all children down to -the specified depth. - */ - export type requestChildNodesParameters = { - /** - * Id of the node to get children for. - */ - nodeId: NodeId; - /** - * The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the -entire subtree or provide an integer larger than 0. - */ - depth?: number; - /** - * Whether or not iframes and shadow roots should be traversed when returning the sub-tree -(default is false). - */ - pierce?: boolean; - } - export type requestChildNodesReturnValue = { - } - /** - * Requests that the node is sent to the caller given the JavaScript node object reference. All -nodes that form the path from the node to the root are also sent to the client as a series of -`setChildNodes` notifications. - */ - export type requestNodeParameters = { - /** - * JavaScript object id to convert into node. - */ - objectId: Runtime.RemoteObjectId; - } - export type requestNodeReturnValue = { - /** - * Node id for given object. - */ - nodeId: NodeId; - } - /** - * Resolves the JavaScript node object for a given NodeId or BackendNodeId. - */ - export type resolveNodeParameters = { - /** - * Id of the node to resolve. - */ - nodeId?: NodeId; - /** - * Backend identifier of the node to resolve. - */ - backendNodeId?: DOM.BackendNodeId; - /** - * Symbolic group name that can be used to release multiple objects. - */ - objectGroup?: string; - /** - * Execution context in which to resolve the node. - */ - executionContextId?: Runtime.ExecutionContextId; - } - export type resolveNodeReturnValue = { - /** - * JavaScript object wrapper for given node. - */ - object: Runtime.RemoteObject; - } - /** - * Sets attribute for an element with given id. - */ - export type setAttributeValueParameters = { - /** - * Id of the element to set attribute for. - */ - nodeId: NodeId; - /** - * Attribute name. - */ - name: string; - /** - * Attribute value. - */ - value: string; - } - export type setAttributeValueReturnValue = { - } - /** - * Sets attributes on element with given id. This method is useful when user edits some existing -attribute value and types in several attribute name/value pairs. - */ - export type setAttributesAsTextParameters = { - /** - * Id of the element to set attributes for. - */ - nodeId: NodeId; - /** - * Text with a number of attributes. Will parse this text using HTML parser. - */ - text: string; - /** - * Attribute name to replace with new attributes derived from text in case text parsed -successfully. - */ - name?: string; - } - export type setAttributesAsTextReturnValue = { - } - /** - * Sets files for the given file input element. - */ - export type setFileInputFilesParameters = { - /** - * Array of file paths to set. - */ - files: string[]; - /** - * Identifier of the node. - */ - nodeId?: NodeId; - /** - * Identifier of the backend node. - */ - backendNodeId?: BackendNodeId; - /** - * JavaScript object id of the node wrapper. - */ - objectId?: Runtime.RemoteObjectId; - } - export type setFileInputFilesReturnValue = { - } - /** - * Sets if stack traces should be captured for Nodes. See `Node.getNodeStackTraces`. Default is disabled. - */ - export type setNodeStackTracesEnabledParameters = { - /** - * Enable or disable. - */ - enable: boolean; - } - export type setNodeStackTracesEnabledReturnValue = { - } - /** - * Gets stack traces associated with a Node. As of now, only provides stack trace for Node creation. - */ - export type getNodeStackTracesParameters = { - /** - * Id of the node to get stack traces for. - */ - nodeId: NodeId; - } - export type getNodeStackTracesReturnValue = { - /** - * Creation stack trace, if available. - */ - creation?: Runtime.StackTrace; - } - /** - * Returns file information for the given -File wrapper. - */ - export type getFileInfoParameters = { - /** - * JavaScript object id of the node wrapper. - */ - objectId: Runtime.RemoteObjectId; - } - export type getFileInfoReturnValue = { - path: string; - } - /** - * Enables console to refer to the node with given id via $x (see Command Line API for more details -$x functions). - */ - export type setInspectedNodeParameters = { - /** - * DOM node id to be accessible by means of $x command line API. - */ - nodeId: NodeId; - } - export type setInspectedNodeReturnValue = { - } - /** - * Sets node name for a node with given id. - */ - export type setNodeNameParameters = { - /** - * Id of the node to set name for. - */ - nodeId: NodeId; - /** - * New node's name. - */ - name: string; - } - export type setNodeNameReturnValue = { - /** - * New node's id. - */ - nodeId: NodeId; - } - /** - * Sets node value for a node with given id. - */ - export type setNodeValueParameters = { - /** - * Id of the node to set value for. - */ - nodeId: NodeId; - /** - * New node's value. - */ - value: string; - } - export type setNodeValueReturnValue = { - } - /** - * Sets node HTML markup, returns new node id. - */ - export type setOuterHTMLParameters = { - /** - * Id of the node to set markup for. - */ - nodeId: NodeId; - /** - * Outer HTML markup to set. - */ - outerHTML: string; - } - export type setOuterHTMLReturnValue = { - } - /** - * Undoes the last performed action. - */ - export type undoParameters = { - } - export type undoReturnValue = { - } - /** - * Returns iframe node that owns iframe with the given domain. - */ - export type getFrameOwnerParameters = { - frameId: Page.FrameId; - } - export type getFrameOwnerReturnValue = { - /** - * Resulting node. - */ - backendNodeId: BackendNodeId; - /** - * Id of the node at given coordinates, only when enabled and requested document. - */ - nodeId?: NodeId; - } - } - - /** - * DOM debugging allows setting breakpoints on particular DOM operations and events. JavaScript -execution will stop on these operations as if there was a regular breakpoint set. - */ - export module DOMDebugger { - /** - * DOM breakpoint type. - */ - export type DOMBreakpointType = "subtree-modified"|"attribute-modified"|"node-removed"; - /** - * Object event listener. - */ - export interface EventListener { - /** - * `EventListener`'s type. - */ - type: string; - /** - * `EventListener`'s useCapture. - */ - useCapture: boolean; - /** - * `EventListener`'s passive flag. - */ - passive: boolean; - /** - * `EventListener`'s once flag. - */ - once: boolean; - /** - * Script id of the handler code. - */ - scriptId: Runtime.ScriptId; - /** - * Line number in the script (0-based). - */ - lineNumber: number; - /** - * Column number in the script (0-based). - */ - columnNumber: number; - /** - * Event handler function value. - */ - handler?: Runtime.RemoteObject; - /** - * Event original handler function value. - */ - originalHandler?: Runtime.RemoteObject; - /** - * Node the listener is added to (if any). - */ - backendNodeId?: DOM.BackendNodeId; - } - - - /** - * Returns event listeners of the given object. - */ - export type getEventListenersParameters = { - /** - * Identifier of the object to return listeners for. - */ - objectId: Runtime.RemoteObjectId; - /** - * The maximum depth at which Node children should be retrieved, defaults to 1. Use -1 for the -entire subtree or provide an integer larger than 0. - */ - depth?: number; - /** - * Whether or not iframes and shadow roots should be traversed when returning the subtree -(default is false). Reports listeners for all contexts if pierce is enabled. - */ - pierce?: boolean; - } - export type getEventListenersReturnValue = { - /** - * Array of relevant listeners. - */ - listeners: EventListener[]; - } - /** - * Removes DOM breakpoint that was set using `setDOMBreakpoint`. - */ - export type removeDOMBreakpointParameters = { - /** - * Identifier of the node to remove breakpoint from. - */ - nodeId: DOM.NodeId; - /** - * Type of the breakpoint to remove. - */ - type: DOMBreakpointType; - } - export type removeDOMBreakpointReturnValue = { - } - /** - * Removes breakpoint on particular DOM event. - */ - export type removeEventListenerBreakpointParameters = { - /** - * Event name. - */ - eventName: string; - /** - * EventTarget interface name. - */ - targetName?: string; - } - export type removeEventListenerBreakpointReturnValue = { - } - /** - * Removes breakpoint on particular native event. - */ - export type removeInstrumentationBreakpointParameters = { - /** - * Instrumentation name to stop on. - */ - eventName: string; - } - export type removeInstrumentationBreakpointReturnValue = { - } - /** - * Removes breakpoint from XMLHttpRequest. - */ - export type removeXHRBreakpointParameters = { - /** - * Resource URL substring. - */ - url: string; - } - export type removeXHRBreakpointReturnValue = { - } - /** - * Sets breakpoint on particular operation with DOM. - */ - export type setDOMBreakpointParameters = { - /** - * Identifier of the node to set breakpoint on. - */ - nodeId: DOM.NodeId; - /** - * Type of the operation to stop upon. - */ - type: DOMBreakpointType; - } - export type setDOMBreakpointReturnValue = { - } - /** - * Sets breakpoint on particular DOM event. - */ - export type setEventListenerBreakpointParameters = { - /** - * DOM Event name to stop on (any DOM event will do). - */ - eventName: string; - /** - * EventTarget interface name to stop on. If equal to `"*"` or not provided, will stop on any -EventTarget. - */ - targetName?: string; - } - export type setEventListenerBreakpointReturnValue = { - } - /** - * Sets breakpoint on particular native event. - */ - export type setInstrumentationBreakpointParameters = { - /** - * Instrumentation name to stop on. - */ - eventName: string; - } - export type setInstrumentationBreakpointReturnValue = { - } - /** - * Sets breakpoint on XMLHttpRequest. - */ - export type setXHRBreakpointParameters = { - /** - * Resource URL substring. All XHRs having this substring in the URL will get stopped upon. - */ - url: string; - } - export type setXHRBreakpointReturnValue = { - } - } - - /** - * This domain facilitates obtaining document snapshots with DOM, layout, and style information. - */ - export module DOMSnapshot { - /** - * A Node in the DOM tree. - */ - export interface DOMNode { - /** - * `Node`'s nodeType. - */ - nodeType: number; - /** - * `Node`'s nodeName. - */ - nodeName: string; - /** - * `Node`'s nodeValue. - */ - nodeValue: string; - /** - * Only set for textarea elements, contains the text value. - */ - textValue?: string; - /** - * Only set for input elements, contains the input's associated text value. - */ - inputValue?: string; - /** - * Only set for radio and checkbox input elements, indicates if the element has been checked - */ - inputChecked?: boolean; - /** - * Only set for option elements, indicates if the element has been selected - */ - optionSelected?: boolean; - /** - * `Node`'s id, corresponds to DOM.Node.backendNodeId. - */ - backendNodeId: DOM.BackendNodeId; - /** - * The indexes of the node's child nodes in the `domNodes` array returned by `getSnapshot`, if -any. - */ - childNodeIndexes?: number[]; - /** - * Attributes of an `Element` node. - */ - attributes?: NameValue[]; - /** - * Indexes of pseudo elements associated with this node in the `domNodes` array returned by -`getSnapshot`, if any. - */ - pseudoElementIndexes?: number[]; - /** - * The index of the node's related layout tree node in the `layoutTreeNodes` array returned by -`getSnapshot`, if any. - */ - layoutNodeIndex?: number; - /** - * Document URL that `Document` or `FrameOwner` node points to. - */ - documentURL?: string; - /** - * Base URL that `Document` or `FrameOwner` node uses for URL completion. - */ - baseURL?: string; - /** - * Only set for documents, contains the document's content language. - */ - contentLanguage?: string; - /** - * Only set for documents, contains the document's character set encoding. - */ - documentEncoding?: string; - /** - * `DocumentType` node's publicId. - */ - publicId?: string; - /** - * `DocumentType` node's systemId. - */ - systemId?: string; - /** - * Frame ID for frame owner elements and also for the document node. - */ - frameId?: Page.FrameId; - /** - * The index of a frame owner element's content document in the `domNodes` array returned by -`getSnapshot`, if any. - */ - contentDocumentIndex?: number; - /** - * Type of a pseudo element node. - */ - pseudoType?: DOM.PseudoType; - /** - * Shadow root type. - */ - shadowRootType?: DOM.ShadowRootType; - /** - * Whether this DOM node responds to mouse clicks. This includes nodes that have had click -event listeners attached via JavaScript as well as anchor tags that naturally navigate when -clicked. - */ - isClickable?: boolean; - /** - * Details of the node's event listeners, if any. - */ - eventListeners?: DOMDebugger.EventListener[]; - /** - * The selected url for nodes with a srcset attribute. - */ - currentSourceURL?: string; - /** - * The url of the script (if any) that generates this node. - */ - originURL?: string; - /** - * Scroll offsets, set when this node is a Document. - */ - scrollOffsetX?: number; - scrollOffsetY?: number; - } - /** - * Details of post layout rendered text positions. The exact layout should not be regarded as -stable and may change between versions. - */ - export interface InlineTextBox { - /** - * The bounding box in document coordinates. Note that scroll offset of the document is ignored. - */ - boundingBox: DOM.Rect; - /** - * The starting index in characters, for this post layout textbox substring. Characters that -would be represented as a surrogate pair in UTF-16 have length 2. - */ - startCharacterIndex: number; - /** - * The number of characters in this post layout textbox substring. Characters that would be -represented as a surrogate pair in UTF-16 have length 2. - */ - numCharacters: number; - } - /** - * Details of an element in the DOM tree with a LayoutObject. - */ - export interface LayoutTreeNode { - /** - * The index of the related DOM node in the `domNodes` array returned by `getSnapshot`. - */ - domNodeIndex: number; - /** - * The bounding box in document coordinates. Note that scroll offset of the document is ignored. - */ - boundingBox: DOM.Rect; - /** - * Contents of the LayoutText, if any. - */ - layoutText?: string; - /** - * The post-layout inline text nodes, if any. - */ - inlineTextNodes?: InlineTextBox[]; - /** - * Index into the `computedStyles` array returned by `getSnapshot`. - */ - styleIndex?: number; - /** - * Global paint order index, which is determined by the stacking order of the nodes. Nodes -that are painted together will have the same index. Only provided if includePaintOrder in -getSnapshot was true. - */ - paintOrder?: number; - /** - * Set to true to indicate the element begins a new stacking context. - */ - isStackingContext?: boolean; - } - /** - * A subset of the full ComputedStyle as defined by the request whitelist. - */ - export interface ComputedStyle { - /** - * Name/value pairs of computed style properties. - */ - properties: NameValue[]; - } - /** - * A name/value pair. - */ - export interface NameValue { - /** - * Attribute/property name. - */ - name: string; - /** - * Attribute/property value. - */ - value: string; - } - /** - * Index of the string in the strings table. - */ - export type StringIndex = number; - /** - * Index of the string in the strings table. - */ - export type ArrayOfStrings = StringIndex[]; - /** - * Data that is only present on rare nodes. - */ - export interface RareStringData { - index: number[]; - value: StringIndex[]; - } - export interface RareBooleanData { - index: number[]; - } - export interface RareIntegerData { - index: number[]; - value: number[]; - } - export type Rectangle = number[]; - /** - * Document snapshot. - */ - export interface DocumentSnapshot { - /** - * Document URL that `Document` or `FrameOwner` node points to. - */ - documentURL: StringIndex; - /** - * Document title. - */ - title: StringIndex; - /** - * Base URL that `Document` or `FrameOwner` node uses for URL completion. - */ - baseURL: StringIndex; - /** - * Contains the document's content language. - */ - contentLanguage: StringIndex; - /** - * Contains the document's character set encoding. - */ - encodingName: StringIndex; - /** - * `DocumentType` node's publicId. - */ - publicId: StringIndex; - /** - * `DocumentType` node's systemId. - */ - systemId: StringIndex; - /** - * Frame ID for frame owner elements and also for the document node. - */ - frameId: StringIndex; - /** - * A table with dom nodes. - */ - nodes: NodeTreeSnapshot; - /** - * The nodes in the layout tree. - */ - layout: LayoutTreeSnapshot; - /** - * The post-layout inline text nodes. - */ - textBoxes: TextBoxSnapshot; - /** - * Horizontal scroll offset. - */ - scrollOffsetX?: number; - /** - * Vertical scroll offset. - */ - scrollOffsetY?: number; - /** - * Document content width. - */ - contentWidth?: number; - /** - * Document content height. - */ - contentHeight?: number; - } - /** - * Table containing nodes. - */ - export interface NodeTreeSnapshot { - /** - * Parent node index. - */ - parentIndex?: number[]; - /** - * `Node`'s nodeType. - */ - nodeType?: number[]; - /** - * `Node`'s nodeName. - */ - nodeName?: StringIndex[]; - /** - * `Node`'s nodeValue. - */ - nodeValue?: StringIndex[]; - /** - * `Node`'s id, corresponds to DOM.Node.backendNodeId. - */ - backendNodeId?: DOM.BackendNodeId[]; - /** - * Attributes of an `Element` node. Flatten name, value pairs. - */ - attributes?: ArrayOfStrings[]; - /** - * Only set for textarea elements, contains the text value. - */ - textValue?: RareStringData; - /** - * Only set for input elements, contains the input's associated text value. - */ - inputValue?: RareStringData; - /** - * Only set for radio and checkbox input elements, indicates if the element has been checked - */ - inputChecked?: RareBooleanData; - /** - * Only set for option elements, indicates if the element has been selected - */ - optionSelected?: RareBooleanData; - /** - * The index of the document in the list of the snapshot documents. - */ - contentDocumentIndex?: RareIntegerData; - /** - * Type of a pseudo element node. - */ - pseudoType?: RareStringData; - /** - * Whether this DOM node responds to mouse clicks. This includes nodes that have had click -event listeners attached via JavaScript as well as anchor tags that naturally navigate when -clicked. - */ - isClickable?: RareBooleanData; - /** - * The selected url for nodes with a srcset attribute. - */ - currentSourceURL?: RareStringData; - /** - * The url of the script (if any) that generates this node. - */ - originURL?: RareStringData; - } - /** - * Table of details of an element in the DOM tree with a LayoutObject. - */ - export interface LayoutTreeSnapshot { - /** - * Index of the corresponding node in the `NodeTreeSnapshot` array returned by `captureSnapshot`. - */ - nodeIndex: number[]; - /** - * Array of indexes specifying computed style strings, filtered according to the `computedStyles` parameter passed to `captureSnapshot`. - */ - styles: ArrayOfStrings[]; - /** - * The absolute position bounding box. - */ - bounds: Rectangle[]; - /** - * Contents of the LayoutText, if any. - */ - text: StringIndex[]; - /** - * Stacking context information. - */ - stackingContexts: RareBooleanData; - /** - * Global paint order index, which is determined by the stacking order of the nodes. Nodes -that are painted together will have the same index. Only provided if includePaintOrder in -captureSnapshot was true. - */ - paintOrders?: number[]; - /** - * The offset rect of nodes. Only available when includeDOMRects is set to true - */ - offsetRects?: Rectangle[]; - /** - * The scroll rect of nodes. Only available when includeDOMRects is set to true - */ - scrollRects?: Rectangle[]; - /** - * The client rect of nodes. Only available when includeDOMRects is set to true - */ - clientRects?: Rectangle[]; - } - /** - * Table of details of the post layout rendered text positions. The exact layout should not be regarded as -stable and may change between versions. - */ - export interface TextBoxSnapshot { - /** - * Index of the layout tree node that owns this box collection. - */ - layoutIndex: number[]; - /** - * The absolute position bounding box. - */ - bounds: Rectangle[]; - /** - * The starting index in characters, for this post layout textbox substring. Characters that -would be represented as a surrogate pair in UTF-16 have length 2. - */ - start: number[]; - /** - * The number of characters in this post layout textbox substring. Characters that would be -represented as a surrogate pair in UTF-16 have length 2. - */ - length: number[]; - } - - - /** - * Disables DOM snapshot agent for the given page. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables DOM snapshot agent for the given page. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Returns a document snapshot, including the full DOM tree of the root node (including iframes, -template contents, and imported documents) in a flattened array, as well as layout and -white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is -flattened. - */ - export type getSnapshotParameters = { - /** - * Whitelist of computed styles to return. - */ - computedStyleWhitelist: string[]; - /** - * Whether or not to retrieve details of DOM listeners (default false). - */ - includeEventListeners?: boolean; - /** - * Whether to determine and include the paint order index of LayoutTreeNodes (default false). - */ - includePaintOrder?: boolean; - /** - * Whether to include UA shadow tree in the snapshot (default false). - */ - includeUserAgentShadowTree?: boolean; - } - export type getSnapshotReturnValue = { - /** - * The nodes in the DOM tree. The DOMNode at index 0 corresponds to the root document. - */ - domNodes: DOMNode[]; - /** - * The nodes in the layout tree. - */ - layoutTreeNodes: LayoutTreeNode[]; - /** - * Whitelisted ComputedStyle properties for each node in the layout tree. - */ - computedStyles: ComputedStyle[]; - } - /** - * Returns a document snapshot, including the full DOM tree of the root node (including iframes, -template contents, and imported documents) in a flattened array, as well as layout and -white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is -flattened. - */ - export type captureSnapshotParameters = { - /** - * Whitelist of computed styles to return. - */ - computedStyles: string[]; - /** - * Whether to include layout object paint orders into the snapshot. - */ - includePaintOrder?: boolean; - /** - * Whether to include DOM rectangles (offsetRects, clientRects, scrollRects) into the snapshot - */ - includeDOMRects?: boolean; - } - export type captureSnapshotReturnValue = { - /** - * The nodes in the DOM tree. The DOMNode at index 0 corresponds to the root document. - */ - documents: DocumentSnapshot[]; - /** - * Shared string table that all string properties refer to with indexes. - */ - strings: string[]; - } - } - - /** - * Query and modify DOM storage. - */ - export module DOMStorage { - /** - * DOM Storage identifier. - */ - export interface StorageId { - /** - * Security origin for the storage. - */ - securityOrigin: string; - /** - * Whether the storage is local storage (not session storage). - */ - isLocalStorage: boolean; - } - /** - * DOM Storage item. - */ - export type Item = string[]; - - export type domStorageItemAddedPayload = { - storageId: StorageId; - key: string; - newValue: string; - } - export type domStorageItemRemovedPayload = { - storageId: StorageId; - key: string; - } - export type domStorageItemUpdatedPayload = { - storageId: StorageId; - key: string; - oldValue: string; - newValue: string; - } - export type domStorageItemsClearedPayload = { - storageId: StorageId; - } - - export type clearParameters = { - storageId: StorageId; - } - export type clearReturnValue = { - } - /** - * Disables storage tracking, prevents storage events from being sent to the client. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables storage tracking, storage events will now be delivered to the client. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - export type getDOMStorageItemsParameters = { - storageId: StorageId; - } - export type getDOMStorageItemsReturnValue = { - entries: Item[]; - } - export type removeDOMStorageItemParameters = { - storageId: StorageId; - key: string; - } - export type removeDOMStorageItemReturnValue = { - } - export type setDOMStorageItemParameters = { - storageId: StorageId; - key: string; - value: string; - } - export type setDOMStorageItemReturnValue = { - } - } - - export module Database { - /** - * Unique identifier of Database object. - */ - export type DatabaseId = string; - /** - * Database object. - */ - export interface Database { - /** - * Database ID. - */ - id: DatabaseId; - /** - * Database domain. - */ - domain: string; - /** - * Database name. - */ - name: string; - /** - * Database version. - */ - version: string; - } - /** - * Database error. - */ - export interface Error { - /** - * Error message. - */ - message: string; - /** - * Error code. - */ - code: number; - } - - export type addDatabasePayload = { - database: Database; - } - - /** - * Disables database tracking, prevents database events from being sent to the client. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables database tracking, database events will now be delivered to the client. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - export type executeSQLParameters = { - databaseId: DatabaseId; - query: string; - } - export type executeSQLReturnValue = { - columnNames?: string[]; - values?: any[]; - sqlError?: Error; - } - export type getDatabaseTableNamesParameters = { - databaseId: DatabaseId; - } - export type getDatabaseTableNamesReturnValue = { - tableNames: string[]; - } - } - - export module DeviceOrientation { - - - /** - * Clears the overridden Device Orientation. - */ - export type clearDeviceOrientationOverrideParameters = { - } - export type clearDeviceOrientationOverrideReturnValue = { - } - /** - * Overrides the Device Orientation. - */ - export type setDeviceOrientationOverrideParameters = { - /** - * Mock alpha - */ - alpha: number; - /** - * Mock beta - */ - beta: number; - /** - * Mock gamma - */ - gamma: number; - } - export type setDeviceOrientationOverrideReturnValue = { - } - } - - /** - * This domain emulates different environments for the page. - */ - export module Emulation { - /** - * Screen orientation. - */ - export interface ScreenOrientation { - /** - * Orientation type. - */ - type: "portraitPrimary"|"portraitSecondary"|"landscapePrimary"|"landscapeSecondary"; - /** - * Orientation angle. - */ - angle: number; - } - export interface MediaFeature { - name: string; - value: string; - } - /** - * advance: If the scheduler runs out of immediate work, the virtual time base may fast forward to -allow the next delayed task (if any) to run; pause: The virtual time base may not advance; -pauseIfNetworkFetchesPending: The virtual time base may not advance if there are any pending -resource fetches. - */ - export type VirtualTimePolicy = "advance"|"pause"|"pauseIfNetworkFetchesPending"; - - /** - * Notification sent after the virtual time budget for the current VirtualTimePolicy has run out. - */ - export type virtualTimeBudgetExpiredPayload = void; - - /** - * Tells whether emulation is supported. - */ - export type canEmulateParameters = { - } - export type canEmulateReturnValue = { - /** - * True if emulation is supported. - */ - result: boolean; - } - /** - * Clears the overriden device metrics. - */ - export type clearDeviceMetricsOverrideParameters = { - } - export type clearDeviceMetricsOverrideReturnValue = { - } - /** - * Clears the overriden Geolocation Position and Error. - */ - export type clearGeolocationOverrideParameters = { - } - export type clearGeolocationOverrideReturnValue = { - } - /** - * Requests that page scale factor is reset to initial values. - */ - export type resetPageScaleFactorParameters = { - } - export type resetPageScaleFactorReturnValue = { - } - /** - * Enables or disables simulating a focused and active page. - */ - export type setFocusEmulationEnabledParameters = { - /** - * Whether to enable to disable focus emulation. - */ - enabled: boolean; - } - export type setFocusEmulationEnabledReturnValue = { - } - /** - * Enables CPU throttling to emulate slow CPUs. - */ - export type setCPUThrottlingRateParameters = { - /** - * Throttling rate as a slowdown factor (1 is no throttle, 2 is 2x slowdown, etc). - */ - rate: number; - } - export type setCPUThrottlingRateReturnValue = { - } - /** - * Sets or clears an override of the default background color of the frame. This override is used -if the content does not specify one. - */ - export type setDefaultBackgroundColorOverrideParameters = { - /** - * RGBA of the default background color. If not specified, any existing override will be -cleared. - */ - color?: DOM.RGBA; - } - export type setDefaultBackgroundColorOverrideReturnValue = { - } - /** - * Overrides the values of device screen dimensions (window.screen.width, window.screen.height, -window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media -query results). - */ - export type setDeviceMetricsOverrideParameters = { - /** - * Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override. - */ - width: number; - /** - * Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override. - */ - height: number; - /** - * Overriding device scale factor value. 0 disables the override. - */ - deviceScaleFactor: number; - /** - * Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text -autosizing and more. - */ - mobile: boolean; - /** - * Scale to apply to resulting view image. - */ - scale?: number; - /** - * Overriding screen width value in pixels (minimum 0, maximum 10000000). - */ - screenWidth?: number; - /** - * Overriding screen height value in pixels (minimum 0, maximum 10000000). - */ - screenHeight?: number; - /** - * Overriding view X position on screen in pixels (minimum 0, maximum 10000000). - */ - positionX?: number; - /** - * Overriding view Y position on screen in pixels (minimum 0, maximum 10000000). - */ - positionY?: number; - /** - * Do not set visible view size, rely upon explicit setVisibleSize call. - */ - dontSetVisibleSize?: boolean; - /** - * Screen orientation override. - */ - screenOrientation?: ScreenOrientation; - /** - * If set, the visible area of the page will be overridden to this viewport. This viewport -change is not observed by the page, e.g. viewport-relative elements do not change positions. - */ - viewport?: Page.Viewport; - } - export type setDeviceMetricsOverrideReturnValue = { - } - export type setScrollbarsHiddenParameters = { - /** - * Whether scrollbars should be always hidden. - */ - hidden: boolean; - } - export type setScrollbarsHiddenReturnValue = { - } - export type setDocumentCookieDisabledParameters = { - /** - * Whether document.coookie API should be disabled. - */ - disabled: boolean; - } - export type setDocumentCookieDisabledReturnValue = { - } - export type setEmitTouchEventsForMouseParameters = { - /** - * Whether touch emulation based on mouse input should be enabled. - */ - enabled: boolean; - /** - * Touch/gesture events configuration. Default: current platform. - */ - configuration?: "mobile"|"desktop"; - } - export type setEmitTouchEventsForMouseReturnValue = { - } - /** - * Emulates the given media type or media feature for CSS media queries. - */ - export type setEmulatedMediaParameters = { - /** - * Media type to emulate. Empty string disables the override. - */ - media?: string; - /** - * Media features to emulate. - */ - features?: MediaFeature[]; - } - export type setEmulatedMediaReturnValue = { - } - /** - * Emulates the given vision deficiency. - */ - export type setEmulatedVisionDeficiencyParameters = { - /** - * Vision deficiency to emulate. - */ - type: "none"|"achromatopsia"|"blurredVision"|"deuteranopia"|"protanopia"|"tritanopia"; - } - export type setEmulatedVisionDeficiencyReturnValue = { - } - /** - * Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position -unavailable. - */ - export type setGeolocationOverrideParameters = { - /** - * Mock latitude - */ - latitude?: number; - /** - * Mock longitude - */ - longitude?: number; - /** - * Mock accuracy - */ - accuracy?: number; - } - export type setGeolocationOverrideReturnValue = { - } - /** - * Overrides value returned by the javascript navigator object. - */ - export type setNavigatorOverridesParameters = { - /** - * The platform navigator.platform should return. - */ - platform: string; - } - export type setNavigatorOverridesReturnValue = { - } - /** - * Sets a specified page scale factor. - */ - export type setPageScaleFactorParameters = { - /** - * Page scale factor. - */ - pageScaleFactor: number; - } - export type setPageScaleFactorReturnValue = { - } - /** - * Switches script execution in the page. - */ - export type setScriptExecutionDisabledParameters = { - /** - * Whether script execution should be disabled in the page. - */ - value: boolean; - } - export type setScriptExecutionDisabledReturnValue = { - } - /** - * Enables touch on platforms which do not support them. - */ - export type setTouchEmulationEnabledParameters = { - /** - * Whether the touch event emulation should be enabled. - */ - enabled: boolean; - /** - * Maximum touch points supported. Defaults to one. - */ - maxTouchPoints?: number; - } - export type setTouchEmulationEnabledReturnValue = { - } - /** - * Turns on virtual time for all frames (replacing real-time with a synthetic time source) and sets -the current virtual time policy. Note this supersedes any previous time budget. - */ - export type setVirtualTimePolicyParameters = { - policy: VirtualTimePolicy; - /** - * If set, after this many virtual milliseconds have elapsed virtual time will be paused and a -virtualTimeBudgetExpired event is sent. - */ - budget?: number; - /** - * If set this specifies the maximum number of tasks that can be run before virtual is forced -forwards to prevent deadlock. - */ - maxVirtualTimeTaskStarvationCount?: number; - /** - * If set the virtual time policy change should be deferred until any frame starts navigating. -Note any previous deferred policy change is superseded. - */ - waitForNavigation?: boolean; - /** - * If set, base::Time::Now will be overriden to initially return this value. - */ - initialVirtualTime?: Network.TimeSinceEpoch; - } - export type setVirtualTimePolicyReturnValue = { - /** - * Absolute timestamp at which virtual time was first enabled (up time in milliseconds). - */ - virtualTimeTicksBase: number; - } - /** - * Overrides default host system locale with the specified one. - */ - export type setLocaleOverrideParameters = { - /** - * ICU style C locale (e.g. "en_US"). If not specified or empty, disables the override and -restores default host system locale. - */ - locale?: string; - } - export type setLocaleOverrideReturnValue = { - } - /** - * Overrides default host system timezone with the specified one. - */ - export type setTimezoneOverrideParameters = { - /** - * The timezone identifier. If empty, disables the override and -restores default host system timezone. - */ - timezoneId: string; - } - export type setTimezoneOverrideReturnValue = { - } - /** - * Resizes the frame/viewport of the page. Note that this does not affect the frame's container -(e.g. browser window). Can be used to produce screenshots of the specified size. Not supported -on Android. - */ - export type setVisibleSizeParameters = { - /** - * Frame width (DIP). - */ - width: number; - /** - * Frame height (DIP). - */ - height: number; - } - export type setVisibleSizeReturnValue = { - } - /** - * Allows overriding user agent with the given string. - */ - export type setUserAgentOverrideParameters = { - /** - * User agent to use. - */ - userAgent: string; - /** - * Browser langugage to emulate. - */ - acceptLanguage?: string; - /** - * The platform navigator.platform should return. - */ - platform?: string; - } - export type setUserAgentOverrideReturnValue = { - } - } - - /** - * This domain provides experimental commands only supported in headless mode. - */ - export module HeadlessExperimental { - /** - * Encoding options for a screenshot. - */ - export interface ScreenshotParams { - /** - * Image compression format (defaults to png). - */ - format?: "jpeg"|"png"; - /** - * Compression quality from range [0..100] (jpeg only). - */ - quality?: number; - } - - /** - * Issued when the target starts or stops needing BeginFrames. -Deprecated. Issue beginFrame unconditionally instead and use result from -beginFrame to detect whether the frames were suppressed. - */ - export type needsBeginFramesChangedPayload = { - /** - * True if BeginFrames are needed, false otherwise. - */ - needsBeginFrames: boolean; - } - - /** - * Sends a BeginFrame to the target and returns when the frame was completed. Optionally captures a -screenshot from the resulting frame. Requires that the target was created with enabled -BeginFrameControl. Designed for use with --run-all-compositor-stages-before-draw, see also -https://goo.gl/3zHXhB for more background. - */ - export type beginFrameParameters = { - /** - * Timestamp of this BeginFrame in Renderer TimeTicks (milliseconds of uptime). If not set, -the current time will be used. - */ - frameTimeTicks?: number; - /** - * The interval between BeginFrames that is reported to the compositor, in milliseconds. -Defaults to a 60 frames/second interval, i.e. about 16.666 milliseconds. - */ - interval?: number; - /** - * Whether updates should not be committed and drawn onto the display. False by default. If -true, only side effects of the BeginFrame will be run, such as layout and animations, but -any visual updates may not be visible on the display or in screenshots. - */ - noDisplayUpdates?: boolean; - /** - * If set, a screenshot of the frame will be captured and returned in the response. Otherwise, -no screenshot will be captured. Note that capturing a screenshot can fail, for example, -during renderer initialization. In such a case, no screenshot data will be returned. - */ - screenshot?: ScreenshotParams; - } - export type beginFrameReturnValue = { - /** - * Whether the BeginFrame resulted in damage and, thus, a new frame was committed to the -display. Reported for diagnostic uses, may be removed in the future. - */ - hasDamage: boolean; - /** - * Base64-encoded image data of the screenshot, if one was requested and successfully taken. - */ - screenshotData?: binary; - } - /** - * Disables headless events for the target. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables headless events for the target. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - } - - /** - * Input/Output operations for streams produced by DevTools. - */ - export module IO { - /** - * This is either obtained from another method or specifed as `blob:<uuid>` where -`<uuid>` is an UUID of a Blob. - */ - export type StreamHandle = string; - - - /** - * Close the stream, discard any temporary backing storage. - */ - export type closeParameters = { - /** - * Handle of the stream to close. - */ - handle: StreamHandle; - } - export type closeReturnValue = { - } - /** - * Read a chunk of the stream - */ - export type readParameters = { - /** - * Handle of the stream to read. - */ - handle: StreamHandle; - /** - * Seek to the specified offset before reading (if not specificed, proceed with offset -following the last read). Some types of streams may only support sequential reads. - */ - offset?: number; - /** - * Maximum number of bytes to read (left upon the agent discretion if not specified). - */ - size?: number; - } - export type readReturnValue = { - /** - * Set if the data is base64-encoded - */ - base64Encoded?: boolean; - /** - * Data that were read. - */ - data: string; - /** - * Set if the end-of-file condition occured while reading. - */ - eof: boolean; - } - /** - * Return UUID of Blob object specified by a remote object id. - */ - export type resolveBlobParameters = { - /** - * Object id of a Blob object wrapper. - */ - objectId: Runtime.RemoteObjectId; - } - export type resolveBlobReturnValue = { - /** - * UUID of the specified Blob. - */ - uuid: string; - } - } - - export module IndexedDB { - /** - * Database with an array of object stores. - */ - export interface DatabaseWithObjectStores { - /** - * Database name. - */ - name: string; - /** - * Database version (type is not 'integer', as the standard -requires the version number to be 'unsigned long long') - */ - version: number; - /** - * Object stores in this database. - */ - objectStores: ObjectStore[]; - } - /** - * Object store. - */ - export interface ObjectStore { - /** - * Object store name. - */ - name: string; - /** - * Object store key path. - */ - keyPath: KeyPath; - /** - * If true, object store has auto increment flag set. - */ - autoIncrement: boolean; - /** - * Indexes in this object store. - */ - indexes: ObjectStoreIndex[]; - } - /** - * Object store index. - */ - export interface ObjectStoreIndex { - /** - * Index name. - */ - name: string; - /** - * Index key path. - */ - keyPath: KeyPath; - /** - * If true, index is unique. - */ - unique: boolean; - /** - * If true, index allows multiple entries for a key. - */ - multiEntry: boolean; - } - /** - * Key. - */ - export interface Key { - /** - * Key type. - */ - type: "number"|"string"|"date"|"array"; - /** - * Number value. - */ - number?: number; - /** - * String value. - */ - string?: string; - /** - * Date value. - */ - date?: number; - /** - * Array value. - */ - array?: Key[]; - } - /** - * Key range. - */ - export interface KeyRange { - /** - * Lower bound. - */ - lower?: Key; - /** - * Upper bound. - */ - upper?: Key; - /** - * If true lower bound is open. - */ - lowerOpen: boolean; - /** - * If true upper bound is open. - */ - upperOpen: boolean; - } - /** - * Data entry. - */ - export interface DataEntry { - /** - * Key object. - */ - key: Runtime.RemoteObject; - /** - * Primary key object. - */ - primaryKey: Runtime.RemoteObject; - /** - * Value object. - */ - value: Runtime.RemoteObject; - } - /** - * Key path. - */ - export interface KeyPath { - /** - * Key path type. - */ - type: "null"|"string"|"array"; - /** - * String value. - */ - string?: string; - /** - * Array value. - */ - array?: string[]; - } - - - /** - * Clears all entries from an object store. - */ - export type clearObjectStoreParameters = { - /** - * Security origin. - */ - securityOrigin: string; - /** - * Database name. - */ - databaseName: string; - /** - * Object store name. - */ - objectStoreName: string; - } - export type clearObjectStoreReturnValue = { - } - /** - * Deletes a database. - */ - export type deleteDatabaseParameters = { - /** - * Security origin. - */ - securityOrigin: string; - /** - * Database name. - */ - databaseName: string; - } - export type deleteDatabaseReturnValue = { - } - /** - * Delete a range of entries from an object store - */ - export type deleteObjectStoreEntriesParameters = { - securityOrigin: string; - databaseName: string; - objectStoreName: string; - /** - * Range of entry keys to delete - */ - keyRange: KeyRange; - } - export type deleteObjectStoreEntriesReturnValue = { - } - /** - * Disables events from backend. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables events from backend. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Requests data from object store or index. - */ - export type requestDataParameters = { - /** - * Security origin. - */ - securityOrigin: string; - /** - * Database name. - */ - databaseName: string; - /** - * Object store name. - */ - objectStoreName: string; - /** - * Index name, empty string for object store data requests. - */ - indexName: string; - /** - * Number of records to skip. - */ - skipCount: number; - /** - * Number of records to fetch. - */ - pageSize: number; - /** - * Key range. - */ - keyRange?: KeyRange; - } - export type requestDataReturnValue = { - /** - * Array of object store data entries. - */ - objectStoreDataEntries: DataEntry[]; - /** - * If true, there are more entries to fetch in the given range. - */ - hasMore: boolean; - } - /** - * Gets metadata of an object store - */ - export type getMetadataParameters = { - /** - * Security origin. - */ - securityOrigin: string; - /** - * Database name. - */ - databaseName: string; - /** - * Object store name. - */ - objectStoreName: string; - } - export type getMetadataReturnValue = { - /** - * the entries count - */ - entriesCount: number; - /** - * the current value of key generator, to become the next inserted -key into the object store. Valid if objectStore.autoIncrement -is true. - */ - keyGeneratorValue: number; - } - /** - * Requests database with given name in given frame. - */ - export type requestDatabaseParameters = { - /** - * Security origin. - */ - securityOrigin: string; - /** - * Database name. - */ - databaseName: string; - } - export type requestDatabaseReturnValue = { - /** - * Database with an array of object stores. - */ - databaseWithObjectStores: DatabaseWithObjectStores; - } - /** - * Requests database names for given security origin. - */ - export type requestDatabaseNamesParameters = { - /** - * Security origin. - */ - securityOrigin: string; - } - export type requestDatabaseNamesReturnValue = { - /** - * Database names for origin. - */ - databaseNames: string[]; - } - } - - export module Input { - export interface TouchPoint { - /** - * X coordinate of the event relative to the main frame's viewport in CSS pixels. - */ - x: number; - /** - * Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to -the top of the viewport and Y increases as it proceeds towards the bottom of the viewport. - */ - y: number; - /** - * X radius of the touch area (default: 1.0). - */ - radiusX?: number; - /** - * Y radius of the touch area (default: 1.0). - */ - radiusY?: number; - /** - * Rotation angle (default: 0.0). - */ - rotationAngle?: number; - /** - * Force (default: 1.0). - */ - force?: number; - /** - * Identifier used to track touch sources between events, must be unique within an event. - */ - id?: number; - } - export type GestureSourceType = "default"|"touch"|"mouse"; - export type MouseButton = "none"|"left"|"middle"|"right"|"back"|"forward"; - /** - * UTC time in seconds, counted from January 1, 1970. - */ - export type TimeSinceEpoch = number; - - - /** - * Dispatches a key event to the page. - */ - export type dispatchKeyEventParameters = { - /** - * Type of the key event. - */ - type: "keyDown"|"keyUp"|"rawKeyDown"|"char"; - /** - * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 -(default: 0). - */ - modifiers?: number; - /** - * Time at which the event occurred. - */ - timestamp?: TimeSinceEpoch; - /** - * Text as generated by processing a virtual key code with a keyboard layout. Not needed for -for `keyUp` and `rawKeyDown` events (default: "") - */ - text?: string; - /** - * Text that would have been generated by the keyboard if no modifiers were pressed (except for -shift). Useful for shortcut (accelerator) key handling (default: ""). - */ - unmodifiedText?: string; - /** - * Unique key identifier (e.g., 'U+0041') (default: ""). - */ - keyIdentifier?: string; - /** - * Unique DOM defined string value for each physical key (e.g., 'KeyA') (default: ""). - */ - code?: string; - /** - * Unique DOM defined string value describing the meaning of the key in the context of active -modifiers, keyboard layout, etc (e.g., 'AltGr') (default: ""). - */ - key?: string; - /** - * Windows virtual key code (default: 0). - */ - windowsVirtualKeyCode?: number; - /** - * Native virtual key code (default: 0). - */ - nativeVirtualKeyCode?: number; - /** - * Whether the event was generated from auto repeat (default: false). - */ - autoRepeat?: boolean; - /** - * Whether the event was generated from the keypad (default: false). - */ - isKeypad?: boolean; - /** - * Whether the event was a system key event (default: false). - */ - isSystemKey?: boolean; - /** - * Whether the event was from the left or right side of the keyboard. 1=Left, 2=Right (default: -0). - */ - location?: number; - } - export type dispatchKeyEventReturnValue = { - } - /** - * This method emulates inserting text that doesn't come from a key press, -for example an emoji keyboard or an IME. - */ - export type insertTextParameters = { - /** - * The text to insert. - */ - text: string; - } - export type insertTextReturnValue = { - } - /** - * Dispatches a mouse event to the page. - */ - export type dispatchMouseEventParameters = { - /** - * Type of the mouse event. - */ - type: "mousePressed"|"mouseReleased"|"mouseMoved"|"mouseWheel"; - /** - * X coordinate of the event relative to the main frame's viewport in CSS pixels. - */ - x: number; - /** - * Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to -the top of the viewport and Y increases as it proceeds towards the bottom of the viewport. - */ - y: number; - /** - * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 -(default: 0). - */ - modifiers?: number; - /** - * Time at which the event occurred. - */ - timestamp?: TimeSinceEpoch; - /** - * Mouse button (default: "none"). - */ - button?: MouseButton; - /** - * A number indicating which buttons are pressed on the mouse when a mouse event is triggered. -Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0. - */ - buttons?: number; - /** - * Number of times the mouse button was clicked (default: 0). - */ - clickCount?: number; - /** - * X delta in CSS pixels for mouse wheel event (default: 0). - */ - deltaX?: number; - /** - * Y delta in CSS pixels for mouse wheel event (default: 0). - */ - deltaY?: number; - /** - * Pointer type (default: "mouse"). - */ - pointerType?: "mouse"|"pen"; - } - export type dispatchMouseEventReturnValue = { - } - /** - * Dispatches a touch event to the page. - */ - export type dispatchTouchEventParameters = { - /** - * Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while -TouchStart and TouchMove must contains at least one. - */ - type: "touchStart"|"touchEnd"|"touchMove"|"touchCancel"; - /** - * Active touch points on the touch device. One event per any changed point (compared to -previous touch event in a sequence) is generated, emulating pressing/moving/releasing points -one by one. - */ - touchPoints: TouchPoint[]; - /** - * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 -(default: 0). - */ - modifiers?: number; - /** - * Time at which the event occurred. - */ - timestamp?: TimeSinceEpoch; - } - export type dispatchTouchEventReturnValue = { - } - /** - * Emulates touch event from the mouse event parameters. - */ - export type emulateTouchFromMouseEventParameters = { - /** - * Type of the mouse event. - */ - type: "mousePressed"|"mouseReleased"|"mouseMoved"|"mouseWheel"; - /** - * X coordinate of the mouse pointer in DIP. - */ - x: number; - /** - * Y coordinate of the mouse pointer in DIP. - */ - y: number; - /** - * Mouse button. Only "none", "left", "right" are supported. - */ - button: MouseButton; - /** - * Time at which the event occurred (default: current time). - */ - timestamp?: TimeSinceEpoch; - /** - * X delta in DIP for mouse wheel event (default: 0). - */ - deltaX?: number; - /** - * Y delta in DIP for mouse wheel event (default: 0). - */ - deltaY?: number; - /** - * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 -(default: 0). - */ - modifiers?: number; - /** - * Number of times the mouse button was clicked (default: 0). - */ - clickCount?: number; - } - export type emulateTouchFromMouseEventReturnValue = { - } - /** - * Ignores input events (useful while auditing page). - */ - export type setIgnoreInputEventsParameters = { - /** - * Ignores input events processing when set to true. - */ - ignore: boolean; - } - export type setIgnoreInputEventsReturnValue = { - } - /** - * Synthesizes a pinch gesture over a time period by issuing appropriate touch events. - */ - export type synthesizePinchGestureParameters = { - /** - * X coordinate of the start of the gesture in CSS pixels. - */ - x: number; - /** - * Y coordinate of the start of the gesture in CSS pixels. - */ - y: number; - /** - * Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out). - */ - scaleFactor: number; - /** - * Relative pointer speed in pixels per second (default: 800). - */ - relativeSpeed?: number; - /** - * Which type of input events to be generated (default: 'default', which queries the platform -for the preferred input type). - */ - gestureSourceType?: GestureSourceType; - } - export type synthesizePinchGestureReturnValue = { - } - /** - * Synthesizes a scroll gesture over a time period by issuing appropriate touch events. - */ - export type synthesizeScrollGestureParameters = { - /** - * X coordinate of the start of the gesture in CSS pixels. - */ - x: number; - /** - * Y coordinate of the start of the gesture in CSS pixels. - */ - y: number; - /** - * The distance to scroll along the X axis (positive to scroll left). - */ - xDistance?: number; - /** - * The distance to scroll along the Y axis (positive to scroll up). - */ - yDistance?: number; - /** - * The number of additional pixels to scroll back along the X axis, in addition to the given -distance. - */ - xOverscroll?: number; - /** - * The number of additional pixels to scroll back along the Y axis, in addition to the given -distance. - */ - yOverscroll?: number; - /** - * Prevent fling (default: true). - */ - preventFling?: boolean; - /** - * Swipe speed in pixels per second (default: 800). - */ - speed?: number; - /** - * Which type of input events to be generated (default: 'default', which queries the platform -for the preferred input type). - */ - gestureSourceType?: GestureSourceType; - /** - * The number of times to repeat the gesture (default: 0). - */ - repeatCount?: number; - /** - * The number of milliseconds delay between each repeat. (default: 250). - */ - repeatDelayMs?: number; - /** - * The name of the interaction markers to generate, if not empty (default: ""). - */ - interactionMarkerName?: string; - } - export type synthesizeScrollGestureReturnValue = { - } - /** - * Synthesizes a tap gesture over a time period by issuing appropriate touch events. - */ - export type synthesizeTapGestureParameters = { - /** - * X coordinate of the start of the gesture in CSS pixels. - */ - x: number; - /** - * Y coordinate of the start of the gesture in CSS pixels. - */ - y: number; - /** - * Duration between touchdown and touchup events in ms (default: 50). - */ - duration?: number; - /** - * Number of times to perform the tap (e.g. 2 for double tap, default: 1). - */ - tapCount?: number; - /** - * Which type of input events to be generated (default: 'default', which queries the platform -for the preferred input type). - */ - gestureSourceType?: GestureSourceType; - } - export type synthesizeTapGestureReturnValue = { - } - } - - export module Inspector { - - /** - * Fired when remote debugging connection is about to be terminated. Contains detach reason. - */ - export type detachedPayload = { - /** - * The reason why connection has been terminated. - */ - reason: string; - } - /** - * Fired when debugging target has crashed - */ - export type targetCrashedPayload = void; - /** - * Fired when debugging target has reloaded after crash - */ - export type targetReloadedAfterCrashPayload = void; - - /** - * Disables inspector domain notifications. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables inspector domain notifications. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - } - - export module LayerTree { - /** - * Unique Layer identifier. - */ - export type LayerId = string; - /** - * Unique snapshot identifier. - */ - export type SnapshotId = string; - /** - * Rectangle where scrolling happens on the main thread. - */ - export interface ScrollRect { - /** - * Rectangle itself. - */ - rect: DOM.Rect; - /** - * Reason for rectangle to force scrolling on the main thread - */ - type: "RepaintsOnScroll"|"TouchEventHandler"|"WheelEventHandler"; - } - /** - * Sticky position constraints. - */ - export interface StickyPositionConstraint { - /** - * Layout rectangle of the sticky element before being shifted - */ - stickyBoxRect: DOM.Rect; - /** - * Layout rectangle of the containing block of the sticky element - */ - containingBlockRect: DOM.Rect; - /** - * The nearest sticky layer that shifts the sticky box - */ - nearestLayerShiftingStickyBox?: LayerId; - /** - * The nearest sticky layer that shifts the containing block - */ - nearestLayerShiftingContainingBlock?: LayerId; - } - /** - * Serialized fragment of layer picture along with its offset within the layer. - */ - export interface PictureTile { - /** - * Offset from owning layer left boundary - */ - x: number; - /** - * Offset from owning layer top boundary - */ - y: number; - /** - * Base64-encoded snapshot data. - */ - picture: binary; - } - /** - * Information about a compositing layer. - */ - export interface Layer { - /** - * The unique id for this layer. - */ - layerId: LayerId; - /** - * The id of parent (not present for root). - */ - parentLayerId?: LayerId; - /** - * The backend id for the node associated with this layer. - */ - backendNodeId?: DOM.BackendNodeId; - /** - * Offset from parent layer, X coordinate. - */ - offsetX: number; - /** - * Offset from parent layer, Y coordinate. - */ - offsetY: number; - /** - * Layer width. - */ - width: number; - /** - * Layer height. - */ - height: number; - /** - * Transformation matrix for layer, default is identity matrix - */ - transform?: number[]; - /** - * Transform anchor point X, absent if no transform specified - */ - anchorX?: number; - /** - * Transform anchor point Y, absent if no transform specified - */ - anchorY?: number; - /** - * Transform anchor point Z, absent if no transform specified - */ - anchorZ?: number; - /** - * Indicates how many time this layer has painted. - */ - paintCount: number; - /** - * Indicates whether this layer hosts any content, rather than being used for -transform/scrolling purposes only. - */ - drawsContent: boolean; - /** - * Set if layer is not visible. - */ - invisible?: boolean; - /** - * Rectangles scrolling on main thread only. - */ - scrollRects?: ScrollRect[]; - /** - * Sticky position constraint information - */ - stickyPositionConstraint?: StickyPositionConstraint; - } - /** - * Array of timings, one per paint step. - */ - export type PaintProfile = number[]; - - export type layerPaintedPayload = { - /** - * The id of the painted layer. - */ - layerId: LayerId; - /** - * Clip rectangle. - */ - clip: DOM.Rect; - } - export type layerTreeDidChangePayload = { - /** - * Layer tree, absent if not in the comspositing mode. - */ - layers?: Layer[]; - } - - /** - * Provides the reasons why the given layer was composited. - */ - export type compositingReasonsParameters = { - /** - * The id of the layer for which we want to get the reasons it was composited. - */ - layerId: LayerId; - } - export type compositingReasonsReturnValue = { - /** - * A list of strings specifying reasons for the given layer to become composited. - */ - compositingReasons: string[]; - /** - * A list of strings specifying reason IDs for the given layer to become composited. - */ - compositingReasonIds: string[]; - } - /** - * Disables compositing tree inspection. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables compositing tree inspection. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Returns the snapshot identifier. - */ - export type loadSnapshotParameters = { - /** - * An array of tiles composing the snapshot. - */ - tiles: PictureTile[]; - } - export type loadSnapshotReturnValue = { - /** - * The id of the snapshot. - */ - snapshotId: SnapshotId; - } - /** - * Returns the layer snapshot identifier. - */ - export type makeSnapshotParameters = { - /** - * The id of the layer. - */ - layerId: LayerId; - } - export type makeSnapshotReturnValue = { - /** - * The id of the layer snapshot. - */ - snapshotId: SnapshotId; - } - export type profileSnapshotParameters = { - /** - * The id of the layer snapshot. - */ - snapshotId: SnapshotId; - /** - * The maximum number of times to replay the snapshot (1, if not specified). - */ - minRepeatCount?: number; - /** - * The minimum duration (in seconds) to replay the snapshot. - */ - minDuration?: number; - /** - * The clip rectangle to apply when replaying the snapshot. - */ - clipRect?: DOM.Rect; - } - export type profileSnapshotReturnValue = { - /** - * The array of paint profiles, one per run. - */ - timings: PaintProfile[]; - } - /** - * Releases layer snapshot captured by the back-end. - */ - export type releaseSnapshotParameters = { - /** - * The id of the layer snapshot. - */ - snapshotId: SnapshotId; - } - export type releaseSnapshotReturnValue = { - } - /** - * Replays the layer snapshot and returns the resulting bitmap. - */ - export type replaySnapshotParameters = { - /** - * The id of the layer snapshot. - */ - snapshotId: SnapshotId; - /** - * The first step to replay from (replay from the very start if not specified). - */ - fromStep?: number; - /** - * The last step to replay to (replay till the end if not specified). - */ - toStep?: number; - /** - * The scale to apply while replaying (defaults to 1). - */ - scale?: number; - } - export type replaySnapshotReturnValue = { - /** - * A data: URL for resulting image. - */ - dataURL: string; - } - /** - * Replays the layer snapshot and returns canvas log. - */ - export type snapshotCommandLogParameters = { - /** - * The id of the layer snapshot. - */ - snapshotId: SnapshotId; - } - export type snapshotCommandLogReturnValue = { - /** - * The array of canvas function calls. - */ - commandLog: object[]; - } - } - - /** - * Provides access to log entries. - */ - export module Log { - /** - * Log entry. - */ - export interface LogEntry { - /** - * Log entry source. - */ - source: "xml"|"javascript"|"network"|"storage"|"appcache"|"rendering"|"security"|"deprecation"|"worker"|"violation"|"intervention"|"recommendation"|"other"; - /** - * Log entry severity. - */ - level: "verbose"|"info"|"warning"|"error"; - /** - * Logged text. - */ - text: string; - /** - * Timestamp when this entry was added. - */ - timestamp: Runtime.Timestamp; - /** - * URL of the resource if known. - */ - url?: string; - /** - * Line number in the resource. - */ - lineNumber?: number; - /** - * JavaScript stack trace. - */ - stackTrace?: Runtime.StackTrace; - /** - * Identifier of the network request associated with this entry. - */ - networkRequestId?: Network.RequestId; - /** - * Identifier of the worker associated with this entry. - */ - workerId?: string; - /** - * Call arguments. - */ - args?: Runtime.RemoteObject[]; - } - /** - * Violation configuration setting. - */ - export interface ViolationSetting { - /** - * Violation type. - */ - name: "longTask"|"longLayout"|"blockedEvent"|"blockedParser"|"discouragedAPIUse"|"handler"|"recurringHandler"; - /** - * Time threshold to trigger upon. - */ - threshold: number; - } - - /** - * Issued when new message was logged. - */ - export type entryAddedPayload = { - /** - * The entry. - */ - entry: LogEntry; - } - - /** - * Clears the log. - */ - export type clearParameters = { - } - export type clearReturnValue = { - } - /** - * Disables log domain, prevents further log entries from being reported to the client. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables log domain, sends the entries collected so far to the client by means of the -`entryAdded` notification. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * start violation reporting. - */ - export type startViolationsReportParameters = { - /** - * Configuration for violations. - */ - config: ViolationSetting[]; - } - export type startViolationsReportReturnValue = { - } - /** - * Stop violation reporting. - */ - export type stopViolationsReportParameters = { - } - export type stopViolationsReportReturnValue = { - } - } - - export module Memory { - /** - * Memory pressure level. - */ - export type PressureLevel = "moderate"|"critical"; - /** - * Heap profile sample. - */ - export interface SamplingProfileNode { - /** - * Size of the sampled allocation. - */ - size: number; - /** - * Total bytes attributed to this sample. - */ - total: number; - /** - * Execution stack at the point of allocation. - */ - stack: string[]; - } - /** - * Array of heap profile samples. - */ - export interface SamplingProfile { - samples: SamplingProfileNode[]; - modules: Module[]; - } - /** - * Executable module information - */ - export interface Module { - /** - * Name of the module. - */ - name: string; - /** - * UUID of the module. - */ - uuid: string; - /** - * Base address where the module is loaded into memory. Encoded as a decimal -or hexadecimal (0x prefixed) string. - */ - baseAddress: string; - /** - * Size of the module in bytes. - */ - size: number; - } - - - export type getDOMCountersParameters = { - } - export type getDOMCountersReturnValue = { - documents: number; - nodes: number; - jsEventListeners: number; - } - export type prepareForLeakDetectionParameters = { - } - export type prepareForLeakDetectionReturnValue = { - } - /** - * Simulate OomIntervention by purging V8 memory. - */ - export type forciblyPurgeJavaScriptMemoryParameters = { - } - export type forciblyPurgeJavaScriptMemoryReturnValue = { - } - /** - * Enable/disable suppressing memory pressure notifications in all processes. - */ - export type setPressureNotificationsSuppressedParameters = { - /** - * If true, memory pressure notifications will be suppressed. - */ - suppressed: boolean; - } - export type setPressureNotificationsSuppressedReturnValue = { - } - /** - * Simulate a memory pressure notification in all processes. - */ - export type simulatePressureNotificationParameters = { - /** - * Memory pressure level of the notification. - */ - level: PressureLevel; - } - export type simulatePressureNotificationReturnValue = { - } - /** - * Start collecting native memory profile. - */ - export type startSamplingParameters = { - /** - * Average number of bytes between samples. - */ - samplingInterval?: number; - /** - * Do not randomize intervals between samples. - */ - suppressRandomness?: boolean; - } - export type startSamplingReturnValue = { - } - /** - * Stop collecting native memory profile. - */ - export type stopSamplingParameters = { - } - export type stopSamplingReturnValue = { - } - /** - * Retrieve native memory allocations profile -collected since renderer process startup. - */ - export type getAllTimeSamplingProfileParameters = { - } - export type getAllTimeSamplingProfileReturnValue = { - profile: SamplingProfile; - } - /** - * Retrieve native memory allocations profile -collected since browser process startup. - */ - export type getBrowserSamplingProfileParameters = { - } - export type getBrowserSamplingProfileReturnValue = { - profile: SamplingProfile; - } - /** - * Retrieve native memory allocations profile collected since last -`startSampling` call. - */ - export type getSamplingProfileParameters = { - } - export type getSamplingProfileReturnValue = { - profile: SamplingProfile; - } - } - - /** - * Network domain allows tracking network activities of the page. It exposes information about http, -file, data and other requests and responses, their headers, bodies, timing, etc. - */ - export module Network { - /** - * Resource type as it was perceived by the rendering engine. - */ - export type ResourceType = "Document"|"Stylesheet"|"Image"|"Media"|"Font"|"Script"|"TextTrack"|"XHR"|"Fetch"|"EventSource"|"WebSocket"|"Manifest"|"SignedExchange"|"Ping"|"CSPViolationReport"|"Other"; - /** - * Unique loader identifier. - */ - export type LoaderId = string; - /** - * Unique request identifier. - */ - export type RequestId = string; - /** - * Unique intercepted request identifier. - */ - export type InterceptionId = string; - /** - * Network level fetch failure reason. - */ - export type ErrorReason = "Failed"|"Aborted"|"TimedOut"|"AccessDenied"|"ConnectionClosed"|"ConnectionReset"|"ConnectionRefused"|"ConnectionAborted"|"ConnectionFailed"|"NameNotResolved"|"InternetDisconnected"|"AddressUnreachable"|"BlockedByClient"|"BlockedByResponse"; - /** - * UTC time in seconds, counted from January 1, 1970. - */ - export type TimeSinceEpoch = number; - /** - * Monotonically increasing time in seconds since an arbitrary point in the past. - */ - export type MonotonicTime = number; - /** - * Request / response headers as keys / values of JSON object. - */ - export type Headers = object; - /** - * The underlying connection technology that the browser is supposedly using. - */ - export type ConnectionType = "none"|"cellular2g"|"cellular3g"|"cellular4g"|"bluetooth"|"ethernet"|"wifi"|"wimax"|"other"; - /** - * Represents the cookie's 'SameSite' status: -https://tools.ietf.org/html/draft-west-first-party-cookies - */ - export type CookieSameSite = "Strict"|"Lax"|"None"; - /** - * Represents the cookie's 'Priority' status: -https://tools.ietf.org/html/draft-west-cookie-priority-00 - */ - export type CookiePriority = "Low"|"Medium"|"High"; - /** - * Timing information for the request. - */ - export interface ResourceTiming { - /** - * Timing's requestTime is a baseline in seconds, while the other numbers are ticks in -milliseconds relatively to this requestTime. - */ - requestTime: number; - /** - * Started resolving proxy. - */ - proxyStart: number; - /** - * Finished resolving proxy. - */ - proxyEnd: number; - /** - * Started DNS address resolve. - */ - dnsStart: number; - /** - * Finished DNS address resolve. - */ - dnsEnd: number; - /** - * Started connecting to the remote host. - */ - connectStart: number; - /** - * Connected to the remote host. - */ - connectEnd: number; - /** - * Started SSL handshake. - */ - sslStart: number; - /** - * Finished SSL handshake. - */ - sslEnd: number; - /** - * Started running ServiceWorker. - */ - workerStart: number; - /** - * Finished Starting ServiceWorker. - */ - workerReady: number; - /** - * Started sending request. - */ - sendStart: number; - /** - * Finished sending request. - */ - sendEnd: number; - /** - * Time the server started pushing request. - */ - pushStart: number; - /** - * Time the server finished pushing request. - */ - pushEnd: number; - /** - * Finished receiving response headers. - */ - receiveHeadersEnd: number; - } - /** - * Loading priority of a resource request. - */ - export type ResourcePriority = "VeryLow"|"Low"|"Medium"|"High"|"VeryHigh"; - /** - * HTTP request data. - */ - export interface Request { - /** - * Request URL (without fragment). - */ - url: string; - /** - * Fragment of the requested URL starting with hash, if present. - */ - urlFragment?: string; - /** - * HTTP request method. - */ - method: string; - /** - * HTTP request headers. - */ - headers: Headers; - /** - * HTTP POST request data. - */ - postData?: string; - /** - * 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. - */ - hasPostData?: boolean; - /** - * The mixed content type of the request. - */ - mixedContentType?: Security.MixedContentType; - /** - * Priority of the resource request at the time request is sent. - */ - initialPriority: ResourcePriority; - /** - * The referrer policy of the request, as defined in https://www.w3.org/TR/referrer-policy/ - */ - referrerPolicy: "unsafe-url"|"no-referrer-when-downgrade"|"no-referrer"|"origin"|"origin-when-cross-origin"|"same-origin"|"strict-origin"|"strict-origin-when-cross-origin"; - /** - * Whether is loaded via link preload. - */ - isLinkPreload?: boolean; - } - /** - * Details of a signed certificate timestamp (SCT). - */ - export interface SignedCertificateTimestamp { - /** - * Validation status. - */ - status: string; - /** - * Origin. - */ - origin: string; - /** - * Log name / description. - */ - logDescription: string; - /** - * Log ID. - */ - logId: string; - /** - * Issuance date. - */ - timestamp: TimeSinceEpoch; - /** - * Hash algorithm. - */ - hashAlgorithm: string; - /** - * Signature algorithm. - */ - signatureAlgorithm: string; - /** - * Signature data. - */ - signatureData: string; - } - /** - * Security details about a request. - */ - export interface SecurityDetails { - /** - * Protocol name (e.g. "TLS 1.2" or "QUIC"). - */ - protocol: string; - /** - * Key Exchange used by the connection, or the empty string if not applicable. - */ - keyExchange: string; - /** - * (EC)DH group used by the connection, if applicable. - */ - keyExchangeGroup?: string; - /** - * Cipher name. - */ - cipher: string; - /** - * TLS MAC. Note that AEAD ciphers do not have separate MACs. - */ - mac?: string; - /** - * Certificate ID value. - */ - certificateId: Security.CertificateId; - /** - * Certificate subject name. - */ - subjectName: string; - /** - * Subject Alternative Name (SAN) DNS names and IP addresses. - */ - sanList: string[]; - /** - * Name of the issuing CA. - */ - issuer: string; - /** - * Certificate valid from date. - */ - validFrom: TimeSinceEpoch; - /** - * Certificate valid to (expiration) date - */ - validTo: TimeSinceEpoch; - /** - * List of signed certificate timestamps (SCTs). - */ - signedCertificateTimestampList: SignedCertificateTimestamp[]; - /** - * Whether the request complied with Certificate Transparency policy - */ - certificateTransparencyCompliance: CertificateTransparencyCompliance; - } - /** - * Whether the request complied with Certificate Transparency policy. - */ - export type CertificateTransparencyCompliance = "unknown"|"not-compliant"|"compliant"; - /** - * The reason why request was blocked. - */ - export type BlockedReason = "other"|"csp"|"mixed-content"|"origin"|"inspector"|"subresource-filter"|"content-type"|"collapsed-by-client"|"coep-frame-resource-needs-coep-header"|"coop-sandboxed-iframe-cannot-navigate-to-coop-page"|"corp-not-same-origin"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep"|"corp-not-same-site"; - /** - * HTTP response data. - */ - export interface Response { - /** - * Response URL. This URL can be different from CachedResource.url in case of redirect. - */ - url: string; - /** - * HTTP response status code. - */ - status: number; - /** - * HTTP response status text. - */ - statusText: string; - /** - * HTTP response headers. - */ - headers: Headers; - /** - * HTTP response headers text. - */ - headersText?: string; - /** - * Resource mimeType as determined by the browser. - */ - mimeType: string; - /** - * Refined HTTP request headers that were actually transmitted over the network. - */ - requestHeaders?: Headers; - /** - * HTTP request headers text. - */ - requestHeadersText?: string; - /** - * Specifies whether physical connection was actually reused for this request. - */ - connectionReused: boolean; - /** - * Physical connection id that was actually used for this request. - */ - connectionId: number; - /** - * Remote IP address. - */ - remoteIPAddress?: string; - /** - * Remote port. - */ - remotePort?: number; - /** - * Specifies that the request was served from the disk cache. - */ - fromDiskCache?: boolean; - /** - * Specifies that the request was served from the ServiceWorker. - */ - fromServiceWorker?: boolean; - /** - * Specifies that the request was served from the prefetch cache. - */ - fromPrefetchCache?: boolean; - /** - * Total number of bytes received for this request so far. - */ - encodedDataLength: number; - /** - * Timing information for the given request. - */ - timing?: ResourceTiming; - /** - * Protocol used to fetch this request. - */ - protocol?: string; - /** - * Security state of the request resource. - */ - securityState: Security.SecurityState; - /** - * Security details for the request. - */ - securityDetails?: SecurityDetails; - } - /** - * WebSocket request data. - */ - export interface WebSocketRequest { - /** - * HTTP request headers. - */ - headers: Headers; - } - /** - * WebSocket response data. - */ - export interface WebSocketResponse { - /** - * HTTP response status code. - */ - status: number; - /** - * HTTP response status text. - */ - statusText: string; - /** - * HTTP response headers. - */ - headers: Headers; - /** - * HTTP response headers text. - */ - headersText?: string; - /** - * HTTP request headers. - */ - requestHeaders?: Headers; - /** - * HTTP request headers text. - */ - requestHeadersText?: string; - } - /** - * WebSocket message data. This represents an entire WebSocket message, not just a fragmented frame as the name suggests. - */ - export interface WebSocketFrame { - /** - * WebSocket message opcode. - */ - opcode: number; - /** - * WebSocket message mask. - */ - mask: boolean; - /** - * WebSocket message payload data. -If the opcode is 1, this is a text message and payloadData is a UTF-8 string. -If the opcode isn't 1, then payloadData is a base64 encoded string representing binary data. - */ - payloadData: string; - } - /** - * Information about the cached resource. - */ - export interface CachedResource { - /** - * Resource URL. This is the url of the original network request. - */ - url: string; - /** - * Type of this resource. - */ - type: ResourceType; - /** - * Cached response data. - */ - response?: Response; - /** - * Cached response body size. - */ - bodySize: number; - } - /** - * Information about the request initiator. - */ - export interface Initiator { - /** - * Type of this initiator. - */ - type: "parser"|"script"|"preload"|"SignedExchange"|"other"; - /** - * Initiator JavaScript stack trace, set for Script only. - */ - stack?: Runtime.StackTrace; - /** - * Initiator URL, set for Parser type or for Script type (when script is importing module) or for SignedExchange type. - */ - url?: string; - /** - * Initiator line number, set for Parser type or for Script type (when script is importing -module) (0-based). - */ - lineNumber?: number; - } - /** - * Cookie object - */ - export interface Cookie { - /** - * Cookie name. - */ - name: string; - /** - * Cookie value. - */ - value: string; - /** - * Cookie domain. - */ - domain: string; - /** - * Cookie path. - */ - path: string; - /** - * Cookie expiration date as the number of seconds since the UNIX epoch. - */ - expires: number; - /** - * Cookie size. - */ - size: number; - /** - * True if cookie is http-only. - */ - httpOnly: boolean; - /** - * True if cookie is secure. - */ - secure: boolean; - /** - * True in case of session cookie. - */ - session: boolean; - /** - * Cookie SameSite type. - */ - sameSite?: CookieSameSite; - /** - * Cookie Priority - */ - priority: CookiePriority; - } - /** - * Types of reasons why a cookie may not be stored from a response. - */ - export type SetCookieBlockedReason = "SecureOnly"|"SameSiteStrict"|"SameSiteLax"|"SameSiteUnspecifiedTreatedAsLax"|"SameSiteNoneInsecure"|"UserPreferences"|"SyntaxError"|"SchemeNotSupported"|"OverwriteSecure"|"InvalidDomain"|"InvalidPrefix"|"UnknownError"; - /** - * Types of reasons why a cookie may not be sent with a request. - */ - export type CookieBlockedReason = "SecureOnly"|"NotOnPath"|"DomainMismatch"|"SameSiteStrict"|"SameSiteLax"|"SameSiteUnspecifiedTreatedAsLax"|"SameSiteNoneInsecure"|"UserPreferences"|"UnknownError"; - /** - * A cookie which was not stored from a response with the corresponding reason. - */ - export interface BlockedSetCookieWithReason { - /** - * The reason(s) this cookie was blocked. - */ - blockedReasons: SetCookieBlockedReason[]; - /** - * The string representing this individual cookie as it would appear in the header. -This is not the entire "cookie" or "set-cookie" header which could have multiple cookies. - */ - cookieLine: string; - /** - * The cookie object which represents the cookie which was not stored. It is optional because -sometimes complete cookie information is not available, such as in the case of parsing -errors. - */ - cookie?: Cookie; - } - /** - * A cookie with was not sent with a request with the corresponding reason. - */ - export interface BlockedCookieWithReason { - /** - * The reason(s) the cookie was blocked. - */ - blockedReasons: CookieBlockedReason[]; - /** - * The cookie object representing the cookie which was not sent. - */ - cookie: Cookie; - } - /** - * Cookie parameter object - */ - export interface CookieParam { - /** - * Cookie name. - */ - name: string; - /** - * Cookie value. - */ - value: string; - /** - * The request-URI to associate with the setting of the cookie. This value can affect the -default domain and path values of the created cookie. - */ - url?: string; - /** - * Cookie domain. - */ - domain?: string; - /** - * Cookie path. - */ - path?: string; - /** - * True if cookie is secure. - */ - secure?: boolean; - /** - * True if cookie is http-only. - */ - httpOnly?: boolean; - /** - * Cookie SameSite type. - */ - sameSite?: CookieSameSite; - /** - * Cookie expiration date, session cookie if not set - */ - expires?: TimeSinceEpoch; - /** - * Cookie Priority. - */ - priority?: CookiePriority; - } - /** - * Authorization challenge for HTTP status code 401 or 407. - */ - export interface AuthChallenge { - /** - * Source of the authentication challenge. - */ - source?: "Server"|"Proxy"; - /** - * Origin of the challenger. - */ - origin: string; - /** - * The authentication scheme used, such as basic or digest - */ - scheme: string; - /** - * The realm of the challenge. May be empty. - */ - realm: string; - } - /** - * Response to an AuthChallenge. - */ - export interface AuthChallengeResponse { - /** - * The decision on what to do in response to the authorization challenge. Default means -deferring to the default behavior of the net stack, which will likely either the Cancel -authentication or display a popup dialog box. - */ - response: "Default"|"CancelAuth"|"ProvideCredentials"; - /** - * The username to provide, possibly empty. Should only be set if response is -ProvideCredentials. - */ - username?: string; - /** - * The password to provide, possibly empty. Should only be set if response is -ProvideCredentials. - */ - password?: string; - } - /** - * Stages of the interception to begin intercepting. Request will intercept before the request is -sent. Response will intercept after the response is received. - */ - export type InterceptionStage = "Request"|"HeadersReceived"; - /** - * Request pattern for interception. - */ - export interface RequestPattern { - /** - * Wildcards ('*' -> zero or more, '?' -> exactly one) are allowed. Escape character is -backslash. Omitting is equivalent to "*". - */ - urlPattern?: string; - /** - * If set, only requests for matching resource types will be intercepted. - */ - resourceType?: ResourceType; - /** - * Stage at wich to begin intercepting requests. Default is Request. - */ - interceptionStage?: InterceptionStage; - } - /** - * Information about a signed exchange signature. -https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#rfc.section.3.1 - */ - export interface SignedExchangeSignature { - /** - * Signed exchange signature label. - */ - label: string; - /** - * The hex string of signed exchange signature. - */ - signature: string; - /** - * Signed exchange signature integrity. - */ - integrity: string; - /** - * Signed exchange signature cert Url. - */ - certUrl?: string; - /** - * The hex string of signed exchange signature cert sha256. - */ - certSha256?: string; - /** - * Signed exchange signature validity Url. - */ - validityUrl: string; - /** - * Signed exchange signature date. - */ - date: number; - /** - * Signed exchange signature expires. - */ - expires: number; - /** - * The encoded certificates. - */ - certificates?: string[]; - } - /** - * Information about a signed exchange header. -https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#cbor-representation - */ - export interface SignedExchangeHeader { - /** - * Signed exchange request URL. - */ - requestUrl: string; - /** - * Signed exchange response code. - */ - responseCode: number; - /** - * Signed exchange response headers. - */ - responseHeaders: Headers; - /** - * Signed exchange response signature. - */ - signatures: SignedExchangeSignature[]; - /** - * Signed exchange header integrity hash in the form of "sha256-". - */ - headerIntegrity: string; - } - /** - * Field type for a signed exchange related error. - */ - export type SignedExchangeErrorField = "signatureSig"|"signatureIntegrity"|"signatureCertUrl"|"signatureCertSha256"|"signatureValidityUrl"|"signatureTimestamps"; - /** - * Information about a signed exchange response. - */ - export interface SignedExchangeError { - /** - * Error message. - */ - message: string; - /** - * The index of the signature which caused the error. - */ - signatureIndex?: number; - /** - * The field which caused the error. - */ - errorField?: SignedExchangeErrorField; - } - /** - * Information about a signed exchange response. - */ - export interface SignedExchangeInfo { - /** - * The outer response of signed HTTP exchange which was received from network. - */ - outerResponse: Response; - /** - * Information about the signed exchange header. - */ - header?: SignedExchangeHeader; - /** - * Security details for the signed exchange header. - */ - securityDetails?: SecurityDetails; - /** - * Errors occurred while handling the signed exchagne. - */ - errors?: SignedExchangeError[]; - } - - /** - * Fired when data chunk was received over the network. - */ - export type dataReceivedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * Data chunk length. - */ - dataLength: number; - /** - * Actual bytes received (might be less than dataLength for compressed encodings). - */ - encodedDataLength: number; - } - /** - * Fired when EventSource message is received. - */ - export type eventSourceMessageReceivedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * Message type. - */ - eventName: string; - /** - * Message identifier. - */ - eventId: string; - /** - * Message content. - */ - data: string; - } - /** - * Fired when HTTP request has failed to load. - */ - export type loadingFailedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * Resource type. - */ - type: ResourceType; - /** - * User friendly error message. - */ - errorText: string; - /** - * True if loading was canceled. - */ - canceled?: boolean; - /** - * The reason why loading was blocked, if any. - */ - blockedReason?: BlockedReason; - } - /** - * Fired when HTTP request has finished loading. - */ - export type loadingFinishedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * Total number of bytes received for this request. - */ - encodedDataLength: number; - /** - * Set when 1) response was blocked by Cross-Origin Read Blocking and also -2) this needs to be reported to the DevTools console. - */ - shouldReportCorbBlocking?: boolean; - } - /** - * Details of an intercepted HTTP request, which must be either allowed, blocked, modified or -mocked. -Deprecated, use Fetch.requestPaused instead. - */ - export type requestInterceptedPayload = { - /** - * Each request the page makes will have a unique id, however if any redirects are encountered -while processing that fetch, they will be reported with the same id as the original fetch. -Likewise if HTTP authentication is needed then the same fetch id will be used. - */ - interceptionId: InterceptionId; - request: Request; - /** - * The id of the frame that initiated the request. - */ - frameId: Page.FrameId; - /** - * How the requested resource will be used. - */ - resourceType: ResourceType; - /** - * Whether this is a navigation request, which can abort the navigation completely. - */ - isNavigationRequest: boolean; - /** - * Set if the request is a navigation that will result in a download. -Only present after response is received from the server (i.e. HeadersReceived stage). - */ - isDownload?: boolean; - /** - * Redirect location, only sent if a redirect was intercepted. - */ - redirectUrl?: string; - /** - * Details of the Authorization Challenge encountered. If this is set then -continueInterceptedRequest must contain an authChallengeResponse. - */ - authChallenge?: AuthChallenge; - /** - * Response error if intercepted at response stage or if redirect occurred while intercepting -request. - */ - responseErrorReason?: ErrorReason; - /** - * Response code if intercepted at response stage or if redirect occurred while intercepting -request or auth retry occurred. - */ - responseStatusCode?: number; - /** - * Response headers if intercepted at the response stage or if redirect occurred while -intercepting request or auth retry occurred. - */ - responseHeaders?: Headers; - /** - * If the intercepted request had a corresponding requestWillBeSent event fired for it, then -this requestId will be the same as the requestId present in the requestWillBeSent event. - */ - requestId?: RequestId; - } - /** - * Fired if request ended up loading from cache. - */ - export type requestServedFromCachePayload = { - /** - * Request identifier. - */ - requestId: RequestId; - } - /** - * Fired when page is about to send HTTP request. - */ - export type requestWillBeSentPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Loader identifier. Empty string if the request is fetched from worker. - */ - loaderId: LoaderId; - /** - * URL of the document this request is loaded for. - */ - documentURL: string; - /** - * Request data. - */ - request: Request; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * Timestamp. - */ - wallTime: TimeSinceEpoch; - /** - * Request initiator. - */ - initiator: Initiator; - /** - * Redirect response data. - */ - redirectResponse?: Response; - /** - * Type of this resource. - */ - type?: ResourceType; - /** - * Frame identifier. - */ - frameId?: Page.FrameId; - /** - * Whether the request is initiated by a user gesture. Defaults to false. - */ - hasUserGesture?: boolean; - } - /** - * Fired when resource loading priority is changed - */ - export type resourceChangedPriorityPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * New priority - */ - newPriority: ResourcePriority; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - } - /** - * Fired when a signed exchange was received over the network - */ - export type signedExchangeReceivedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Information about the signed exchange response. - */ - info: SignedExchangeInfo; - } - /** - * Fired when HTTP response is available. - */ - export type responseReceivedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Loader identifier. Empty string if the request is fetched from worker. - */ - loaderId: LoaderId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * Resource type. - */ - type: ResourceType; - /** - * Response data. - */ - response: Response; - /** - * Frame identifier. - */ - frameId?: Page.FrameId; - } - /** - * Fired when WebSocket is closed. - */ - export type webSocketClosedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - } - /** - * Fired upon WebSocket creation. - */ - export type webSocketCreatedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * WebSocket request URL. - */ - url: string; - /** - * Request initiator. - */ - initiator?: Initiator; - } - /** - * Fired when WebSocket message error occurs. - */ - export type webSocketFrameErrorPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * WebSocket error message. - */ - errorMessage: string; - } - /** - * Fired when WebSocket message is received. - */ - export type webSocketFrameReceivedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * WebSocket response data. - */ - response: WebSocketFrame; - } - /** - * Fired when WebSocket message is sent. - */ - export type webSocketFrameSentPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * WebSocket response data. - */ - response: WebSocketFrame; - } - /** - * Fired when WebSocket handshake response becomes available. - */ - export type webSocketHandshakeResponseReceivedPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * WebSocket response data. - */ - response: WebSocketResponse; - } - /** - * Fired when WebSocket is about to initiate handshake. - */ - export type webSocketWillSendHandshakeRequestPayload = { - /** - * Request identifier. - */ - requestId: RequestId; - /** - * Timestamp. - */ - timestamp: MonotonicTime; - /** - * UTC Timestamp. - */ - wallTime: TimeSinceEpoch; - /** - * WebSocket request data. - */ - request: WebSocketRequest; - } - /** - * Fired when additional information about a requestWillBeSent event is available from the -network stack. Not every requestWillBeSent event will have an additional -requestWillBeSentExtraInfo fired for it, and there is no guarantee whether requestWillBeSent -or requestWillBeSentExtraInfo will be fired first for the same request. - */ - export type requestWillBeSentExtraInfoPayload = { - /** - * Request identifier. Used to match this information to an existing requestWillBeSent event. - */ - requestId: RequestId; - /** - * A list of cookies which will not be sent with this request along with corresponding reasons -for blocking. - */ - blockedCookies: BlockedCookieWithReason[]; - /** - * Raw request headers as they will be sent over the wire. - */ - headers: Headers; - } - /** - * Fired when additional information about a responseReceived event is available from the network -stack. Not every responseReceived event will have an additional responseReceivedExtraInfo for -it, and responseReceivedExtraInfo may be fired before or after responseReceived. - */ - export type responseReceivedExtraInfoPayload = { - /** - * Request identifier. Used to match this information to another responseReceived event. - */ - requestId: RequestId; - /** - * A list of cookies which were not stored from the response along with the corresponding -reasons for blocking. The cookies here may not be valid due to syntax errors, which -are represented by the invalid cookie line string instead of a proper cookie. - */ - blockedCookies: BlockedSetCookieWithReason[]; - /** - * Raw response headers as they were received over the wire. - */ - headers: Headers; - /** - * Raw response header text as it was received over the wire. The raw text may not always be -available, such as in the case of HTTP/2 or QUIC. - */ - headersText?: string; - } - - /** - * Tells whether clearing browser cache is supported. - */ - export type canClearBrowserCacheParameters = { - } - export type canClearBrowserCacheReturnValue = { - /** - * True if browser cache can be cleared. - */ - result: boolean; - } - /** - * Tells whether clearing browser cookies is supported. - */ - export type canClearBrowserCookiesParameters = { - } - export type canClearBrowserCookiesReturnValue = { - /** - * True if browser cookies can be cleared. - */ - result: boolean; - } - /** - * Tells whether emulation of network conditions is supported. - */ - export type canEmulateNetworkConditionsParameters = { - } - export type canEmulateNetworkConditionsReturnValue = { - /** - * True if emulation of network conditions is supported. - */ - result: boolean; - } - /** - * Clears browser cache. - */ - export type clearBrowserCacheParameters = { - } - export type clearBrowserCacheReturnValue = { - } - /** - * Clears browser cookies. - */ - export type clearBrowserCookiesParameters = { - } - export type clearBrowserCookiesReturnValue = { - } - /** - * Response to Network.requestIntercepted which either modifies the request to continue with any -modifications, or blocks it, or completes it with the provided response bytes. If a network -fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted -event will be sent with the same InterceptionId. -Deprecated, use Fetch.continueRequest, Fetch.fulfillRequest and Fetch.failRequest instead. - */ - export type continueInterceptedRequestParameters = { - interceptionId: InterceptionId; - /** - * If set this causes the request to fail with the given reason. Passing `Aborted` for requests -marked with `isNavigationRequest` also cancels the navigation. Must not be set in response -to an authChallenge. - */ - errorReason?: ErrorReason; - /** - * If set the requests completes using with the provided base64 encoded raw response, including -HTTP status line and headers etc... Must not be set in response to an authChallenge. - */ - rawResponse?: binary; - /** - * If set the request url will be modified in a way that's not observable by page. Must not be -set in response to an authChallenge. - */ - url?: string; - /** - * If set this allows the request method to be overridden. Must not be set in response to an -authChallenge. - */ - method?: string; - /** - * If set this allows postData to be set. Must not be set in response to an authChallenge. - */ - postData?: string; - /** - * If set this allows the request headers to be changed. Must not be set in response to an -authChallenge. - */ - headers?: Headers; - /** - * Response to a requestIntercepted with an authChallenge. Must not be set otherwise. - */ - authChallengeResponse?: AuthChallengeResponse; - } - export type continueInterceptedRequestReturnValue = { - } - /** - * Deletes browser cookies with matching name and url or domain/path pair. - */ - export type deleteCookiesParameters = { - /** - * Name of the cookies to remove. - */ - name: string; - /** - * If specified, deletes all the cookies with the given name where domain and path match -provided URL. - */ - url?: string; - /** - * If specified, deletes only cookies with the exact domain. - */ - domain?: string; - /** - * If specified, deletes only cookies with the exact path. - */ - path?: string; - } - export type deleteCookiesReturnValue = { - } - /** - * Disables network tracking, prevents network events from being sent to the client. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Activates emulation of network conditions. - */ - export type emulateNetworkConditionsParameters = { - /** - * True to emulate internet disconnection. - */ - offline: boolean; - /** - * Minimum latency from request sent to response headers received (ms). - */ - latency: number; - /** - * Maximal aggregated download throughput (bytes/sec). -1 disables download throttling. - */ - downloadThroughput: number; - /** - * Maximal aggregated upload throughput (bytes/sec). -1 disables upload throttling. - */ - uploadThroughput: number; - /** - * Connection type if known. - */ - connectionType?: ConnectionType; - } - export type emulateNetworkConditionsReturnValue = { - } - /** - * Enables network tracking, network events will now be delivered to the client. - */ - export type enableParameters = { - /** - * Buffer size in bytes to use when preserving network payloads (XHRs, etc). - */ - maxTotalBufferSize?: number; - /** - * Per-resource buffer size in bytes to use when preserving network payloads (XHRs, etc). - */ - maxResourceBufferSize?: number; - /** - * Longest post body size (in bytes) that would be included in requestWillBeSent notification - */ - maxPostDataSize?: number; - } - export type enableReturnValue = { - } - /** - * Returns all browser cookies. Depending on the backend support, will return detailed cookie -information in the `cookies` field. - */ - export type getAllCookiesParameters = { - } - export type getAllCookiesReturnValue = { - /** - * Array of cookie objects. - */ - cookies: Cookie[]; - } - /** - * Returns the DER-encoded certificate. - */ - export type getCertificateParameters = { - /** - * Origin to get certificate for. - */ - origin: string; - } - export type getCertificateReturnValue = { - tableNames: string[]; - } - /** - * Returns all browser cookies for the current URL. Depending on the backend support, will return -detailed cookie information in the `cookies` field. - */ - export type getCookiesParameters = { - /** - * The list of URLs for which applicable cookies will be fetched - */ - urls?: string[]; - } - export type getCookiesReturnValue = { - /** - * Array of cookie objects. - */ - cookies: Cookie[]; - } - /** - * Returns content served for the given request. - */ - export type getResponseBodyParameters = { - /** - * Identifier of the network request to get content for. - */ - requestId: RequestId; - } - export type getResponseBodyReturnValue = { - /** - * Response body. - */ - body: string; - /** - * True, if content was sent as base64. - */ - base64Encoded: boolean; - } - /** - * Returns post data sent with the request. Returns an error when no data was sent with the request. - */ - export type getRequestPostDataParameters = { - /** - * Identifier of the network request to get content for. - */ - requestId: RequestId; - } - export type getRequestPostDataReturnValue = { - /** - * Request body string, omitting files from multipart requests - */ - postData: string; - } - /** - * Returns content served for the given currently intercepted request. - */ - export type getResponseBodyForInterceptionParameters = { - /** - * Identifier for the intercepted request to get body for. - */ - interceptionId: InterceptionId; - } - export type getResponseBodyForInterceptionReturnValue = { - /** - * Response body. - */ - body: string; - /** - * True, if content was sent as base64. - */ - base64Encoded: boolean; - } - /** - * Returns a handle to the stream representing the response body. Note that after this command, -the intercepted request can't be continued as is -- you either need to cancel it or to provide -the response body. The stream only supports sequential read, IO.read will fail if the position -is specified. - */ - export type takeResponseBodyForInterceptionAsStreamParameters = { - interceptionId: InterceptionId; - } - export type takeResponseBodyForInterceptionAsStreamReturnValue = { - stream: IO.StreamHandle; - } - /** - * This method sends a new XMLHttpRequest which is identical to the original one. The following -parameters should be identical: method, url, async, request body, extra headers, withCredentials -attribute, user, password. - */ - export type replayXHRParameters = { - /** - * Identifier of XHR to replay. - */ - requestId: RequestId; - } - export type replayXHRReturnValue = { - } - /** - * Searches for given string in response content. - */ - export type searchInResponseBodyParameters = { - /** - * Identifier of the network response to search. - */ - requestId: RequestId; - /** - * String to search for. - */ - query: string; - /** - * If true, search is case sensitive. - */ - caseSensitive?: boolean; - /** - * If true, treats string parameter as regex. - */ - isRegex?: boolean; - } - export type searchInResponseBodyReturnValue = { - /** - * List of search matches. - */ - result: Debugger.SearchMatch[]; - } - /** - * Blocks URLs from loading. - */ - export type setBlockedURLsParameters = { - /** - * URL patterns to block. Wildcards ('*') are allowed. - */ - urls: string[]; - } - export type setBlockedURLsReturnValue = { - } - /** - * Toggles ignoring of service worker for each request. - */ - export type setBypassServiceWorkerParameters = { - /** - * Bypass service worker and load from network. - */ - bypass: boolean; - } - export type setBypassServiceWorkerReturnValue = { - } - /** - * Toggles ignoring cache for each request. If `true`, cache will not be used. - */ - export type setCacheDisabledParameters = { - /** - * Cache disabled state. - */ - cacheDisabled: boolean; - } - export type setCacheDisabledReturnValue = { - } - /** - * Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist. - */ - export type setCookieParameters = { - /** - * Cookie name. - */ - name: string; - /** - * Cookie value. - */ - value: string; - /** - * The request-URI to associate with the setting of the cookie. This value can affect the -default domain and path values of the created cookie. - */ - url?: string; - /** - * Cookie domain. - */ - domain?: string; - /** - * Cookie path. - */ - path?: string; - /** - * True if cookie is secure. - */ - secure?: boolean; - /** - * True if cookie is http-only. - */ - httpOnly?: boolean; - /** - * Cookie SameSite type. - */ - sameSite?: CookieSameSite; - /** - * Cookie expiration date, session cookie if not set - */ - expires?: TimeSinceEpoch; - /** - * Cookie Priority type. - */ - priority?: CookiePriority; - } - export type setCookieReturnValue = { - /** - * True if successfully set cookie. - */ - success: boolean; - } - /** - * Sets given cookies. - */ - export type setCookiesParameters = { - /** - * Cookies to be set. - */ - cookies: CookieParam[]; - } - export type setCookiesReturnValue = { - } - /** - * For testing. - */ - export type setDataSizeLimitsForTestParameters = { - /** - * Maximum total buffer size. - */ - maxTotalSize: number; - /** - * Maximum per-resource size. - */ - maxResourceSize: number; - } - export type setDataSizeLimitsForTestReturnValue = { - } - /** - * Specifies whether to always send extra HTTP headers with the requests from this page. - */ - export type setExtraHTTPHeadersParameters = { - /** - * Map with extra HTTP headers. - */ - headers: Headers; - } - export type setExtraHTTPHeadersReturnValue = { - } - /** - * Sets the requests to intercept that match the provided patterns and optionally resource types. -Deprecated, please use Fetch.enable instead. - */ - export type setRequestInterceptionParameters = { - /** - * Requests matching any of these patterns will be forwarded and wait for the corresponding -continueInterceptedRequest call. - */ - patterns: RequestPattern[]; - } - export type setRequestInterceptionReturnValue = { - } - /** - * Allows overriding user agent with the given string. - */ - export type setUserAgentOverrideParameters = { - /** - * User agent to use. - */ - userAgent: string; - /** - * Browser langugage to emulate. - */ - acceptLanguage?: string; - /** - * The platform navigator.platform should return. - */ - platform?: string; - } - export type setUserAgentOverrideReturnValue = { - } - } - - /** - * This domain provides various functionality related to drawing atop the inspected page. - */ - export module Overlay { - /** - * Configuration data for the highlighting of page elements. - */ - export interface HighlightConfig { - /** - * Whether the node info tooltip should be shown (default: false). - */ - showInfo?: boolean; - /** - * Whether the node styles in the tooltip (default: false). - */ - showStyles?: boolean; - /** - * Whether the rulers should be shown (default: false). - */ - showRulers?: boolean; - /** - * Whether the extension lines from node to the rulers should be shown (default: false). - */ - showExtensionLines?: boolean; - /** - * The content box highlight fill color (default: transparent). - */ - contentColor?: DOM.RGBA; - /** - * The padding highlight fill color (default: transparent). - */ - paddingColor?: DOM.RGBA; - /** - * The border highlight fill color (default: transparent). - */ - borderColor?: DOM.RGBA; - /** - * The margin highlight fill color (default: transparent). - */ - marginColor?: DOM.RGBA; - /** - * The event target element highlight fill color (default: transparent). - */ - eventTargetColor?: DOM.RGBA; - /** - * The shape outside fill color (default: transparent). - */ - shapeColor?: DOM.RGBA; - /** - * The shape margin fill color (default: transparent). - */ - shapeMarginColor?: DOM.RGBA; - /** - * The grid layout color (default: transparent). - */ - cssGridColor?: DOM.RGBA; - } - export type InspectMode = "searchForNode"|"searchForUAShadowDOM"|"captureAreaScreenshot"|"showDistances"|"none"; - - /** - * Fired when the node should be inspected. This happens after call to `setInspectMode` or when -user manually inspects an element. - */ - export type inspectNodeRequestedPayload = { - /** - * Id of the node to inspect. - */ - backendNodeId: DOM.BackendNodeId; - } - /** - * Fired when the node should be highlighted. This happens after call to `setInspectMode`. - */ - export type nodeHighlightRequestedPayload = { - nodeId: DOM.NodeId; - } - /** - * Fired when user asks to capture screenshot of some area on the page. - */ - export type screenshotRequestedPayload = { - /** - * Viewport to capture, in device independent pixels (dip). - */ - viewport: Page.Viewport; - } - /** - * Fired when user cancels the inspect mode. - */ - export type inspectModeCanceledPayload = void; - - /** - * Disables domain notifications. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables domain notifications. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * For testing. - */ - export type getHighlightObjectForTestParameters = { - /** - * Id of the node to get highlight object for. - */ - nodeId: DOM.NodeId; - /** - * Whether to include distance info. - */ - includeDistance?: boolean; - /** - * Whether to include style info. - */ - includeStyle?: boolean; - } - export type getHighlightObjectForTestReturnValue = { - /** - * Highlight data for the node. - */ - highlight: object; - } - /** - * Hides any highlight. - */ - export type hideHighlightParameters = { - } - export type hideHighlightReturnValue = { - } - /** - * Highlights owner element of the frame with given id. - */ - export type highlightFrameParameters = { - /** - * Identifier of the frame to highlight. - */ - frameId: Page.FrameId; - /** - * The content box highlight fill color (default: transparent). - */ - contentColor?: DOM.RGBA; - /** - * The content box highlight outline color (default: transparent). - */ - contentOutlineColor?: DOM.RGBA; - } - export type highlightFrameReturnValue = { - } - /** - * Highlights DOM node with given id or with the given JavaScript object wrapper. Either nodeId or -objectId must be specified. - */ - export type highlightNodeParameters = { - /** - * A descriptor for the highlight appearance. - */ - highlightConfig: HighlightConfig; - /** - * Identifier of the node to highlight. - */ - nodeId?: DOM.NodeId; - /** - * Identifier of the backend node to highlight. - */ - backendNodeId?: DOM.BackendNodeId; - /** - * JavaScript object id of the node to be highlighted. - */ - objectId?: Runtime.RemoteObjectId; - /** - * Selectors to highlight relevant nodes. - */ - selector?: string; - } - export type highlightNodeReturnValue = { - } - /** - * Highlights given quad. Coordinates are absolute with respect to the main frame viewport. - */ - export type highlightQuadParameters = { - /** - * Quad to highlight - */ - quad: DOM.Quad; - /** - * The highlight fill color (default: transparent). - */ - color?: DOM.RGBA; - /** - * The highlight outline color (default: transparent). - */ - outlineColor?: DOM.RGBA; - } - export type highlightQuadReturnValue = { - } - /** - * Highlights given rectangle. Coordinates are absolute with respect to the main frame viewport. - */ - export type highlightRectParameters = { - /** - * X coordinate - */ - x: number; - /** - * Y coordinate - */ - y: number; - /** - * Rectangle width - */ - width: number; - /** - * Rectangle height - */ - height: number; - /** - * The highlight fill color (default: transparent). - */ - color?: DOM.RGBA; - /** - * The highlight outline color (default: transparent). - */ - outlineColor?: DOM.RGBA; - } - export type highlightRectReturnValue = { - } - /** - * Enters the 'inspect' mode. In this mode, elements that user is hovering over are highlighted. -Backend then generates 'inspectNodeRequested' event upon element selection. - */ - export type setInspectModeParameters = { - /** - * Set an inspection mode. - */ - mode: InspectMode; - /** - * A descriptor for the highlight appearance of hovered-over nodes. May be omitted if `enabled -== false`. - */ - highlightConfig?: HighlightConfig; - } - export type setInspectModeReturnValue = { - } - /** - * Highlights owner element of all frames detected to be ads. - */ - export type setShowAdHighlightsParameters = { - /** - * True for showing ad highlights - */ - show: boolean; - } - export type setShowAdHighlightsReturnValue = { - } - export type setPausedInDebuggerMessageParameters = { - /** - * The message to display, also triggers resume and step over controls. - */ - message?: string; - } - export type setPausedInDebuggerMessageReturnValue = { - } - /** - * Requests that backend shows debug borders on layers - */ - export type setShowDebugBordersParameters = { - /** - * True for showing debug borders - */ - show: boolean; - } - export type setShowDebugBordersReturnValue = { - } - /** - * Requests that backend shows the FPS counter - */ - export type setShowFPSCounterParameters = { - /** - * True for showing the FPS counter - */ - show: boolean; - } - export type setShowFPSCounterReturnValue = { - } - /** - * Requests that backend shows paint rectangles - */ - export type setShowPaintRectsParameters = { - /** - * True for showing paint rectangles - */ - result: boolean; - } - export type setShowPaintRectsReturnValue = { - } - /** - * Requests that backend shows layout shift regions - */ - export type setShowLayoutShiftRegionsParameters = { - /** - * True for showing layout shift regions - */ - result: boolean; - } - export type setShowLayoutShiftRegionsReturnValue = { - } - /** - * Requests that backend shows scroll bottleneck rects - */ - export type setShowScrollBottleneckRectsParameters = { - /** - * True for showing scroll bottleneck rects - */ - show: boolean; - } - export type setShowScrollBottleneckRectsReturnValue = { - } - /** - * Requests that backend shows hit-test borders on layers - */ - export type setShowHitTestBordersParameters = { - /** - * True for showing hit-test borders - */ - show: boolean; - } - export type setShowHitTestBordersReturnValue = { - } - /** - * Paints viewport size upon main frame resize. - */ - export type setShowViewportSizeOnResizeParameters = { - /** - * Whether to paint size or not. - */ - show: boolean; - } - export type setShowViewportSizeOnResizeReturnValue = { - } - } - - /** - * Actions and events related to the inspected page belong to the page domain. - */ - export module Page { - /** - * Unique frame identifier. - */ - export type FrameId = string; - /** - * Information about the Frame on the page. - */ - export interface Frame { - /** - * Frame unique identifier. - */ - id: FrameId; - /** - * Parent frame identifier. - */ - parentId?: string; - /** - * Identifier of the loader associated with this frame. - */ - loaderId: Network.LoaderId; - /** - * Frame's name as specified in the tag. - */ - name?: string; - /** - * Frame document's URL without fragment. - */ - url: string; - /** - * Frame document's URL fragment including the '#'. - */ - urlFragment?: string; - /** - * Frame document's security origin. - */ - securityOrigin: string; - /** - * Frame document's mimeType as determined by the browser. - */ - mimeType: string; - /** - * 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. - */ - unreachableUrl?: string; - } - /** - * Information about the Resource on the page. - */ - export interface FrameResource { - /** - * Resource URL. - */ - url: string; - /** - * Type of this resource. - */ - type: Network.ResourceType; - /** - * Resource mimeType as determined by the browser. - */ - mimeType: string; - /** - * last-modified timestamp as reported by server. - */ - lastModified?: Network.TimeSinceEpoch; - /** - * Resource content size. - */ - contentSize?: number; - /** - * True if the resource failed to load. - */ - failed?: boolean; - /** - * True if the resource was canceled during loading. - */ - canceled?: boolean; - } - /** - * Information about the Frame hierarchy along with their cached resources. - */ - export interface FrameResourceTree { - /** - * Frame information for this tree item. - */ - frame: Frame; - /** - * Child frames. - */ - childFrames?: FrameResourceTree[]; - /** - * Information about frame resources. - */ - resources: FrameResource[]; - } - /** - * Information about the Frame hierarchy. - */ - export interface FrameTree { - /** - * Frame information for this tree item. - */ - frame: Frame; - /** - * Child frames. - */ - childFrames?: FrameTree[]; - } - /** - * Unique script identifier. - */ - export type ScriptIdentifier = string; - /** - * Transition type. - */ - export type TransitionType = "link"|"typed"|"address_bar"|"auto_bookmark"|"auto_subframe"|"manual_subframe"|"generated"|"auto_toplevel"|"form_submit"|"reload"|"keyword"|"keyword_generated"|"other"; - /** - * Navigation history entry. - */ - export interface NavigationEntry { - /** - * Unique id of the navigation history entry. - */ - id: number; - /** - * URL of the navigation history entry. - */ - url: string; - /** - * URL that the user typed in the url bar. - */ - userTypedURL: string; - /** - * Title of the navigation history entry. - */ - title: string; - /** - * Transition type. - */ - transitionType: TransitionType; - } - /** - * Screencast frame metadata. - */ - export interface ScreencastFrameMetadata { - /** - * Top offset in DIP. - */ - offsetTop: number; - /** - * Page scale factor. - */ - pageScaleFactor: number; - /** - * Device screen width in DIP. - */ - deviceWidth: number; - /** - * Device screen height in DIP. - */ - deviceHeight: number; - /** - * Position of horizontal scroll in CSS pixels. - */ - scrollOffsetX: number; - /** - * Position of vertical scroll in CSS pixels. - */ - scrollOffsetY: number; - /** - * Frame swap timestamp. - */ - timestamp?: Network.TimeSinceEpoch; - } - /** - * Javascript dialog type. - */ - export type DialogType = "alert"|"confirm"|"prompt"|"beforeunload"; - /** - * Error while paring app manifest. - */ - export interface AppManifestError { - /** - * Error message. - */ - message: string; - /** - * If criticial, this is a non-recoverable parse error. - */ - critical: number; - /** - * Error line. - */ - line: number; - /** - * Error column. - */ - column: number; - } - /** - * Parsed app manifest properties. - */ - export interface AppManifestParsedProperties { - /** - * Computed scope value - */ - scope: string; - } - /** - * Layout viewport position and dimensions. - */ - export interface LayoutViewport { - /** - * Horizontal offset relative to the document (CSS pixels). - */ - pageX: number; - /** - * Vertical offset relative to the document (CSS pixels). - */ - pageY: number; - /** - * Width (CSS pixels), excludes scrollbar if present. - */ - clientWidth: number; - /** - * Height (CSS pixels), excludes scrollbar if present. - */ - clientHeight: number; - } - /** - * Visual viewport position, dimensions, and scale. - */ - export interface VisualViewport { - /** - * Horizontal offset relative to the layout viewport (CSS pixels). - */ - offsetX: number; - /** - * Vertical offset relative to the layout viewport (CSS pixels). - */ - offsetY: number; - /** - * Horizontal offset relative to the document (CSS pixels). - */ - pageX: number; - /** - * Vertical offset relative to the document (CSS pixels). - */ - pageY: number; - /** - * Width (CSS pixels), excludes scrollbar if present. - */ - clientWidth: number; - /** - * Height (CSS pixels), excludes scrollbar if present. - */ - clientHeight: number; - /** - * Scale relative to the ideal viewport (size at width=device-width). - */ - scale: number; - /** - * Page zoom factor (CSS to device independent pixels ratio). - */ - zoom?: number; - } - /** - * Viewport for capturing screenshot. - */ - export interface Viewport { - /** - * X offset in device independent pixels (dip). - */ - x: number; - /** - * Y offset in device independent pixels (dip). - */ - y: number; - /** - * Rectangle width in device independent pixels (dip). - */ - width: number; - /** - * Rectangle height in device independent pixels (dip). - */ - height: number; - /** - * Page scale factor. - */ - scale: number; - } - /** - * Generic font families collection. - */ - export interface FontFamilies { - /** - * The standard font-family. - */ - standard?: string; - /** - * The fixed font-family. - */ - fixed?: string; - /** - * The serif font-family. - */ - serif?: string; - /** - * The sansSerif font-family. - */ - sansSerif?: string; - /** - * The cursive font-family. - */ - cursive?: string; - /** - * The fantasy font-family. - */ - fantasy?: string; - /** - * The pictograph font-family. - */ - pictograph?: string; - } - /** - * Default font sizes. - */ - export interface FontSizes { - /** - * Default standard font size. - */ - standard?: number; - /** - * Default fixed font size. - */ - fixed?: number; - } - export type ClientNavigationReason = "formSubmissionGet"|"formSubmissionPost"|"httpHeaderRefresh"|"scriptInitiated"|"metaTagRefresh"|"pageBlockInterstitial"|"reload"|"anchorClick"; - export interface InstallabilityErrorArgument { - /** - * Argument name (e.g. name:'minimum-icon-size-in-pixels'). - */ - name: string; - /** - * Argument value (e.g. value:'64'). - */ - value: string; - } - /** - * The installability error - */ - export interface InstallabilityError { - /** - * The error id (e.g. 'manifest-missing-suitable-icon'). - */ - errorId: string; - /** - * The list of error arguments (e.g. {name:'minimum-icon-size-in-pixels', value:'64'}). - */ - errorArguments: InstallabilityErrorArgument[]; - } - /** - * The referring-policy used for the navigation. - */ - export type ReferrerPolicy = "noReferrer"|"noReferrerWhenDowngrade"|"origin"|"originWhenCrossOrigin"|"sameOrigin"|"strictOrigin"|"strictOriginWhenCrossOrigin"|"unsafeUrl"; - - export type domContentEventFiredPayload = { - timestamp: Network.MonotonicTime; - } - /** - * Emitted only when `page.interceptFileChooser` is enabled. - */ - export type fileChooserOpenedPayload = { - /** - * Id of the frame containing input node. - */ - frameId: FrameId; - /** - * Input node id. - */ - backendNodeId: DOM.BackendNodeId; - /** - * Input mode. - */ - mode: "selectSingle"|"selectMultiple"; - } - /** - * Fired when frame has been attached to its parent. - */ - export type frameAttachedPayload = { - /** - * Id of the frame that has been attached. - */ - frameId: FrameId; - /** - * Parent frame identifier. - */ - parentFrameId: FrameId; - /** - * JavaScript stack trace of when frame was attached, only set if frame initiated from script. - */ - stack?: Runtime.StackTrace; - } - /** - * Fired when frame no longer has a scheduled navigation. - */ - export type frameClearedScheduledNavigationPayload = { - /** - * Id of the frame that has cleared its scheduled navigation. - */ - frameId: FrameId; - } - /** - * Fired when frame has been detached from its parent. - */ - export type frameDetachedPayload = { - /** - * Id of the frame that has been detached. - */ - frameId: FrameId; - } - /** - * Fired once navigation of the frame has completed. Frame is now associated with the new loader. - */ - export type frameNavigatedPayload = { - /** - * Frame object. - */ - frame: Frame; - } - export type frameResizedPayload = void; - /** - * Fired when a renderer-initiated navigation is requested. -Navigation may still be cancelled after the event is issued. - */ - export type frameRequestedNavigationPayload = { - /** - * Id of the frame that is being navigated. - */ - frameId: FrameId; - /** - * The reason for the navigation. - */ - reason: ClientNavigationReason; - /** - * The destination URL for the requested navigation. - */ - url: string; - } - /** - * Fired when frame schedules a potential navigation. - */ - export type frameScheduledNavigationPayload = { - /** - * Id of the frame that has scheduled a navigation. - */ - frameId: FrameId; - /** - * Delay (in seconds) until the navigation is scheduled to begin. The navigation is not -guaranteed to start. - */ - delay: number; - /** - * The reason for the navigation. - */ - reason: ClientNavigationReason; - /** - * The destination URL for the scheduled navigation. - */ - url: string; - } - /** - * Fired when frame has started loading. - */ - export type frameStartedLoadingPayload = { - /** - * Id of the frame that has started loading. - */ - frameId: FrameId; - } - /** - * Fired when frame has stopped loading. - */ - export type frameStoppedLoadingPayload = { - /** - * Id of the frame that has stopped loading. - */ - frameId: FrameId; - } - /** - * Fired when page is about to start a download. - */ - export type downloadWillBeginPayload = { - /** - * Id of the frame that caused download to begin. - */ - frameId: FrameId; - /** - * Global unique identifier of the download. - */ - guid: string; - /** - * URL of the resource being downloaded. - */ - url: string; - } - /** - * Fired when download makes progress. Last call has |done| == true. - */ - export type downloadProgressPayload = { - /** - * Global unique identifier of the download. - */ - guid: string; - /** - * Total expected bytes to download. - */ - totalBytes: number; - /** - * Total bytes received. - */ - receivedBytes: number; - /** - * Download status. - */ - state: "inProgress"|"completed"|"canceled"; - } - /** - * Fired when interstitial page was hidden - */ - export type interstitialHiddenPayload = void; - /** - * Fired when interstitial page was shown - */ - export type interstitialShownPayload = void; - /** - * Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) has been -closed. - */ - export type javascriptDialogClosedPayload = { - /** - * Whether dialog was confirmed. - */ - result: boolean; - /** - * User input in case of prompt. - */ - userInput: string; - } - /** - * Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) is about to -open. - */ - export type javascriptDialogOpeningPayload = { - /** - * Frame url. - */ - url: string; - /** - * Message that will be displayed by the dialog. - */ - message: string; - /** - * Dialog type. - */ - type: DialogType; - /** - * True iff browser is capable showing or acting on the given dialog. When browser has no -dialog handler for given target, calling alert while Page domain is engaged will stall -the page execution. Execution can be resumed via calling Page.handleJavaScriptDialog. - */ - hasBrowserHandler: boolean; - /** - * Default dialog prompt. - */ - defaultPrompt?: string; - } - /** - * Fired for top level page lifecycle events such as navigation, load, paint, etc. - */ - export type lifecycleEventPayload = { - /** - * Id of the frame. - */ - frameId: FrameId; - /** - * Loader identifier. Empty string if the request is fetched from worker. - */ - loaderId: Network.LoaderId; - name: string; - timestamp: Network.MonotonicTime; - } - export type loadEventFiredPayload = { - timestamp: Network.MonotonicTime; - } - /** - * Fired when same-document navigation happens, e.g. due to history API usage or anchor navigation. - */ - export type navigatedWithinDocumentPayload = { - /** - * Id of the frame. - */ - frameId: FrameId; - /** - * Frame's new url. - */ - url: string; - } - /** - * Compressed image data requested by the `startScreencast`. - */ - export type screencastFramePayload = { - /** - * Base64-encoded compressed image. - */ - data: binary; - /** - * Screencast frame metadata. - */ - metadata: ScreencastFrameMetadata; - /** - * Frame number. - */ - sessionId: number; - } - /** - * Fired when the page with currently enabled screencast was shown or hidden `. - */ - export type screencastVisibilityChangedPayload = { - /** - * True if the page is visible. - */ - visible: boolean; - } - /** - * Fired when a new window is going to be opened, via window.open(), link click, form submission, -etc. - */ - export type windowOpenPayload = { - /** - * The URL for the new window. - */ - url: string; - /** - * Window name. - */ - windowName: string; - /** - * An array of enabled window features. - */ - windowFeatures: string[]; - /** - * Whether or not it was triggered by user gesture. - */ - userGesture: boolean; - } - /** - * Issued for every compilation cache generated. Is only available -if Page.setGenerateCompilationCache is enabled. - */ - export type compilationCacheProducedPayload = { - url: string; - /** - * Base64-encoded data - */ - data: binary; - } - - /** - * Deprecated, please use addScriptToEvaluateOnNewDocument instead. - */ - export type addScriptToEvaluateOnLoadParameters = { - scriptSource: string; - } - export type addScriptToEvaluateOnLoadReturnValue = { - /** - * Identifier of the added script. - */ - identifier: ScriptIdentifier; - } - /** - * Evaluates given script in every frame upon creation (before loading frame's scripts). - */ - export type addScriptToEvaluateOnNewDocumentParameters = { - source: string; - /** - * If specified, creates an isolated world with the given name and evaluates given script in it. -This world name will be used as the ExecutionContextDescription::name when the corresponding -event is emitted. - */ - worldName?: string; - } - export type addScriptToEvaluateOnNewDocumentReturnValue = { - /** - * Identifier of the added script. - */ - identifier: ScriptIdentifier; - } - /** - * Brings page to front (activates tab). - */ - export type bringToFrontParameters = { - } - export type bringToFrontReturnValue = { - } - /** - * Capture page screenshot. - */ - export type captureScreenshotParameters = { - /** - * Image compression format (defaults to png). - */ - format?: "jpeg"|"png"; - /** - * Compression quality from range [0..100] (jpeg only). - */ - quality?: number; - /** - * Capture the screenshot of a given region only. - */ - clip?: Viewport; - /** - * Capture the screenshot from the surface, rather than the view. Defaults to true. - */ - fromSurface?: boolean; - } - export type captureScreenshotReturnValue = { - /** - * Base64-encoded image data. - */ - data: binary; - } - /** - * Returns a snapshot of the page as a string. For MHTML format, the serialization includes -iframes, shadow DOM, external resources, and element-inline styles. - */ - export type captureSnapshotParameters = { - /** - * Format (defaults to mhtml). - */ - format?: "mhtml"; - } - export type captureSnapshotReturnValue = { - /** - * Serialized page data. - */ - data: string; - } - /** - * Clears the overriden device metrics. - */ - export type clearDeviceMetricsOverrideParameters = { - } - export type clearDeviceMetricsOverrideReturnValue = { - } - /** - * Clears the overridden Device Orientation. - */ - export type clearDeviceOrientationOverrideParameters = { - } - export type clearDeviceOrientationOverrideReturnValue = { - } - /** - * Clears the overriden Geolocation Position and Error. - */ - export type clearGeolocationOverrideParameters = { - } - export type clearGeolocationOverrideReturnValue = { - } - /** - * Creates an isolated world for the given frame. - */ - export type createIsolatedWorldParameters = { - /** - * Id of the frame in which the isolated world should be created. - */ - frameId: FrameId; - /** - * An optional name which is reported in the Execution Context. - */ - worldName?: string; - /** - * Whether or not universal access should be granted to the isolated world. This is a powerful -option, use with caution. - */ - grantUniveralAccess?: boolean; - } - export type createIsolatedWorldReturnValue = { - /** - * Execution context of the isolated world. - */ - executionContextId: Runtime.ExecutionContextId; - } - /** - * Deletes browser cookie with given name, domain and path. - */ - export type deleteCookieParameters = { - /** - * Name of the cookie to remove. - */ - cookieName: string; - /** - * URL to match cooke domain and path. - */ - url: string; - } - export type deleteCookieReturnValue = { - } - /** - * Disables page domain notifications. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables page domain notifications. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - export type getAppManifestParameters = { - } - export type getAppManifestReturnValue = { - /** - * Manifest location. - */ - url: string; - errors: AppManifestError[]; - /** - * Manifest content. - */ - data?: string; - /** - * Parsed manifest properties - */ - parsed?: AppManifestParsedProperties; - } - export type getInstallabilityErrorsParameters = { - } - export type getInstallabilityErrorsReturnValue = { - installabilityErrors: InstallabilityError[]; - } - export type getManifestIconsParameters = { - } - export type getManifestIconsReturnValue = { - primaryIcon?: binary; - } - /** - * Returns all browser cookies. Depending on the backend support, will return detailed cookie -information in the `cookies` field. - */ - export type getCookiesParameters = { - } - export type getCookiesReturnValue = { - /** - * Array of cookie objects. - */ - cookies: Network.Cookie[]; - } - /** - * Returns present frame tree structure. - */ - export type getFrameTreeParameters = { - } - export type getFrameTreeReturnValue = { - /** - * Present frame tree structure. - */ - frameTree: FrameTree; - } - /** - * Returns metrics relating to the layouting of the page, such as viewport bounds/scale. - */ - export type getLayoutMetricsParameters = { - } - export type getLayoutMetricsReturnValue = { - /** - * Metrics relating to the layout viewport. - */ - layoutViewport: LayoutViewport; - /** - * Metrics relating to the visual viewport. - */ - visualViewport: VisualViewport; - /** - * Size of scrollable area. - */ - contentSize: DOM.Rect; - } - /** - * Returns navigation history for the current page. - */ - export type getNavigationHistoryParameters = { - } - export type getNavigationHistoryReturnValue = { - /** - * Index of the current navigation history entry. - */ - currentIndex: number; - /** - * Array of navigation history entries. - */ - entries: NavigationEntry[]; - } - /** - * Resets navigation history for the current page. - */ - export type resetNavigationHistoryParameters = { - } - export type resetNavigationHistoryReturnValue = { - } - /** - * Returns content of the given resource. - */ - export type getResourceContentParameters = { - /** - * Frame id to get resource for. - */ - frameId: FrameId; - /** - * URL of the resource to get content for. - */ - url: string; - } - export type getResourceContentReturnValue = { - /** - * Resource content. - */ - content: string; - /** - * True, if content was served as base64. - */ - base64Encoded: boolean; - } - /** - * Returns present frame / resource tree structure. - */ - export type getResourceTreeParameters = { - } - export type getResourceTreeReturnValue = { - /** - * Present frame / resource tree structure. - */ - frameTree: FrameResourceTree; - } - /** - * Accepts or dismisses a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload). - */ - export type handleJavaScriptDialogParameters = { - /** - * Whether to accept or dismiss the dialog. - */ - accept: boolean; - /** - * The text to enter into the dialog prompt before accepting. Used only if this is a prompt -dialog. - */ - promptText?: string; - } - export type handleJavaScriptDialogReturnValue = { - } - /** - * Navigates current page to the given URL. - */ - export type navigateParameters = { - /** - * URL to navigate the page to. - */ - url: string; - /** - * Referrer URL. - */ - referrer?: string; - /** - * Intended transition type. - */ - transitionType?: TransitionType; - /** - * Frame id to navigate, if not specified navigates the top frame. - */ - frameId?: FrameId; - /** - * Referrer-policy used for the navigation. - */ - referrerPolicy?: ReferrerPolicy; - } - export type navigateReturnValue = { - /** - * Frame id that has navigated (or failed to navigate) - */ - frameId: FrameId; - /** - * Loader identifier. - */ - loaderId?: Network.LoaderId; - /** - * User friendly error message, present if and only if navigation has failed. - */ - errorText?: string; - } - /** - * Navigates current page to the given history entry. - */ - export type navigateToHistoryEntryParameters = { - /** - * Unique id of the entry to navigate to. - */ - entryId: number; - } - export type navigateToHistoryEntryReturnValue = { - } - /** - * Print page as PDF. - */ - export type printToPDFParameters = { - /** - * Paper orientation. Defaults to false. - */ - landscape?: boolean; - /** - * Display header and footer. Defaults to false. - */ - displayHeaderFooter?: boolean; - /** - * Print background graphics. Defaults to false. - */ - printBackground?: boolean; - /** - * Scale of the webpage rendering. Defaults to 1. - */ - scale?: number; - /** - * Paper width in inches. Defaults to 8.5 inches. - */ - paperWidth?: number; - /** - * Paper height in inches. Defaults to 11 inches. - */ - paperHeight?: number; - /** - * Top margin in inches. Defaults to 1cm (~0.4 inches). - */ - marginTop?: number; - /** - * Bottom margin in inches. Defaults to 1cm (~0.4 inches). - */ - marginBottom?: number; - /** - * Left margin in inches. Defaults to 1cm (~0.4 inches). - */ - marginLeft?: number; - /** - * Right margin in inches. Defaults to 1cm (~0.4 inches). - */ - marginRight?: number; - /** - * Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means -print all pages. - */ - pageRanges?: string; - /** - * Whether to silently ignore invalid but successfully parsed page ranges, such as '3-2'. -Defaults to false. - */ - ignoreInvalidPageRanges?: boolean; - /** - * HTML template for the print header. Should be valid HTML markup with following -classes used to inject printing values into them: -- `date`: formatted print date -- `title`: document title -- `url`: document location -- `pageNumber`: current page number -- `totalPages`: total pages in the document - -For example, `` would generate span containing the title. - */ - headerTemplate?: string; - /** - * HTML template for the print footer. Should use the same format as the `headerTemplate`. - */ - footerTemplate?: string; - /** - * Whether or not to prefer page size as defined by css. Defaults to false, -in which case the content will be scaled to fit the paper size. - */ - preferCSSPageSize?: boolean; - /** - * return as stream - */ - transferMode?: "ReturnAsBase64"|"ReturnAsStream"; - } - export type printToPDFReturnValue = { - /** - * Base64-encoded pdf data. Empty if |returnAsStream| is specified. - */ - data: binary; - /** - * A handle of the stream that holds resulting PDF data. - */ - stream?: IO.StreamHandle; - } - /** - * Reloads given page optionally ignoring the cache. - */ - export type reloadParameters = { - /** - * If true, browser cache is ignored (as if the user pressed Shift+refresh). - */ - ignoreCache?: boolean; - /** - * If set, the script will be injected into all frames of the inspected page after reload. -Argument will be ignored if reloading dataURL origin. - */ - scriptToEvaluateOnLoad?: string; - } - export type reloadReturnValue = { - } - /** - * Deprecated, please use removeScriptToEvaluateOnNewDocument instead. - */ - export type removeScriptToEvaluateOnLoadParameters = { - identifier: ScriptIdentifier; - } - export type removeScriptToEvaluateOnLoadReturnValue = { - } - /** - * Removes given script from the list. - */ - export type removeScriptToEvaluateOnNewDocumentParameters = { - identifier: ScriptIdentifier; - } - export type removeScriptToEvaluateOnNewDocumentReturnValue = { - } - /** - * Acknowledges that a screencast frame has been received by the frontend. - */ - export type screencastFrameAckParameters = { - /** - * Frame number. - */ - sessionId: number; - } - export type screencastFrameAckReturnValue = { - } - /** - * Searches for given string in resource content. - */ - export type searchInResourceParameters = { - /** - * Frame id for resource to search in. - */ - frameId: FrameId; - /** - * URL of the resource to search in. - */ - url: string; - /** - * String to search for. - */ - query: string; - /** - * If true, search is case sensitive. - */ - caseSensitive?: boolean; - /** - * If true, treats string parameter as regex. - */ - isRegex?: boolean; - } - export type searchInResourceReturnValue = { - /** - * List of search matches. - */ - result: Debugger.SearchMatch[]; - } - /** - * Enable Chrome's experimental ad filter on all sites. - */ - export type setAdBlockingEnabledParameters = { - /** - * Whether to block ads. - */ - enabled: boolean; - } - export type setAdBlockingEnabledReturnValue = { - } - /** - * Enable page Content Security Policy by-passing. - */ - export type setBypassCSPParameters = { - /** - * Whether to bypass page CSP. - */ - enabled: boolean; - } - export type setBypassCSPReturnValue = { - } - /** - * Overrides the values of device screen dimensions (window.screen.width, window.screen.height, -window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media -query results). - */ - export type setDeviceMetricsOverrideParameters = { - /** - * Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override. - */ - width: number; - /** - * Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override. - */ - height: number; - /** - * Overriding device scale factor value. 0 disables the override. - */ - deviceScaleFactor: number; - /** - * Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text -autosizing and more. - */ - mobile: boolean; - /** - * Scale to apply to resulting view image. - */ - scale?: number; - /** - * Overriding screen width value in pixels (minimum 0, maximum 10000000). - */ - screenWidth?: number; - /** - * Overriding screen height value in pixels (minimum 0, maximum 10000000). - */ - screenHeight?: number; - /** - * Overriding view X position on screen in pixels (minimum 0, maximum 10000000). - */ - positionX?: number; - /** - * Overriding view Y position on screen in pixels (minimum 0, maximum 10000000). - */ - positionY?: number; - /** - * Do not set visible view size, rely upon explicit setVisibleSize call. - */ - dontSetVisibleSize?: boolean; - /** - * Screen orientation override. - */ - screenOrientation?: Emulation.ScreenOrientation; - /** - * The viewport dimensions and scale. If not set, the override is cleared. - */ - viewport?: Viewport; - } - export type setDeviceMetricsOverrideReturnValue = { - } - /** - * Overrides the Device Orientation. - */ - export type setDeviceOrientationOverrideParameters = { - /** - * Mock alpha - */ - alpha: number; - /** - * Mock beta - */ - beta: number; - /** - * Mock gamma - */ - gamma: number; - } - export type setDeviceOrientationOverrideReturnValue = { - } - /** - * Set generic font families. - */ - export type setFontFamiliesParameters = { - /** - * Specifies font families to set. If a font family is not specified, it won't be changed. - */ - fontFamilies: FontFamilies; - } - export type setFontFamiliesReturnValue = { - } - /** - * Set default font sizes. - */ - export type setFontSizesParameters = { - /** - * Specifies font sizes to set. If a font size is not specified, it won't be changed. - */ - fontSizes: FontSizes; - } - export type setFontSizesReturnValue = { - } - /** - * Sets given markup as the document's HTML. - */ - export type setDocumentContentParameters = { - /** - * Frame id to set HTML for. - */ - frameId: FrameId; - /** - * HTML content to set. - */ - html: string; - } - export type setDocumentContentReturnValue = { - } - /** - * Set the behavior when downloading a file. - */ - export type setDownloadBehaviorParameters = { - /** - * Whether to allow all or deny all download requests, or use default Chrome behavior if -available (otherwise deny). - */ - behavior: "deny"|"allow"|"default"; - /** - * The default path to save downloaded files to. This is requred if behavior is set to 'allow' - */ - downloadPath?: string; - } - export type setDownloadBehaviorReturnValue = { - } - /** - * Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position -unavailable. - */ - export type setGeolocationOverrideParameters = { - /** - * Mock latitude - */ - latitude?: number; - /** - * Mock longitude - */ - longitude?: number; - /** - * Mock accuracy - */ - accuracy?: number; - } - export type setGeolocationOverrideReturnValue = { - } - /** - * Controls whether page will emit lifecycle events. - */ - export type setLifecycleEventsEnabledParameters = { - /** - * If true, starts emitting lifecycle events. - */ - enabled: boolean; - } - export type setLifecycleEventsEnabledReturnValue = { - } - /** - * Toggles mouse event-based touch event emulation. - */ - export type setTouchEmulationEnabledParameters = { - /** - * Whether the touch event emulation should be enabled. - */ - enabled: boolean; - /** - * Touch/gesture events configuration. Default: current platform. - */ - configuration?: "mobile"|"desktop"; - } - export type setTouchEmulationEnabledReturnValue = { - } - /** - * Starts sending each frame using the `screencastFrame` event. - */ - export type startScreencastParameters = { - /** - * Image compression format. - */ - format?: "jpeg"|"png"; - /** - * Compression quality from range [0..100]. - */ - quality?: number; - /** - * Maximum screenshot width. - */ - maxWidth?: number; - /** - * Maximum screenshot height. - */ - maxHeight?: number; - /** - * Send every n-th frame. - */ - everyNthFrame?: number; - } - export type startScreencastReturnValue = { - } - /** - * Force the page stop all navigations and pending resource fetches. - */ - export type stopLoadingParameters = { - } - export type stopLoadingReturnValue = { - } - /** - * Crashes renderer on the IO thread, generates minidumps. - */ - export type crashParameters = { - } - export type crashReturnValue = { - } - /** - * Tries to close page, running its beforeunload hooks, if any. - */ - export type closeParameters = { - } - export type closeReturnValue = { - } - /** - * Tries to update the web lifecycle state of the page. -It will transition the page to the given state according to: -https://github.com/WICG/web-lifecycle/ - */ - export type setWebLifecycleStateParameters = { - /** - * Target lifecycle state - */ - state: "frozen"|"active"; - } - export type setWebLifecycleStateReturnValue = { - } - /** - * Stops sending each frame in the `screencastFrame`. - */ - export type stopScreencastParameters = { - } - export type stopScreencastReturnValue = { - } - /** - * Forces compilation cache to be generated for every subresource script. - */ - export type setProduceCompilationCacheParameters = { - enabled: boolean; - } - export type setProduceCompilationCacheReturnValue = { - } - /** - * Seeds compilation cache for given url. Compilation cache does not survive -cross-process navigation. - */ - export type addCompilationCacheParameters = { - url: string; - /** - * Base64-encoded data - */ - data: binary; - } - export type addCompilationCacheReturnValue = { - } - /** - * Clears seeded compilation cache. - */ - export type clearCompilationCacheParameters = { - } - export type clearCompilationCacheReturnValue = { - } - /** - * Generates a report for testing. - */ - export type generateTestReportParameters = { - /** - * Message to be displayed in the report. - */ - message: string; - /** - * Specifies the endpoint group to deliver the report to. - */ - group?: string; - } - export type generateTestReportReturnValue = { - } - /** - * Pauses page execution. Can be resumed using generic Runtime.runIfWaitingForDebugger. - */ - export type waitForDebuggerParameters = { - } - export type waitForDebuggerReturnValue = { - } - /** - * Intercept file chooser requests and transfer control to protocol clients. -When file chooser interception is enabled, native file chooser dialog is not shown. -Instead, a protocol event `Page.fileChooserOpened` is emitted. - */ - export type setInterceptFileChooserDialogParameters = { - enabled: boolean; - } - export type setInterceptFileChooserDialogReturnValue = { - } - } - - export module Performance { - /** - * Run-time execution metric. - */ - export interface Metric { - /** - * Metric name. - */ - name: string; - /** - * Metric value. - */ - value: number; - } - - /** - * Current values of the metrics. - */ - export type metricsPayload = { - /** - * Current values of the metrics. - */ - metrics: Metric[]; - /** - * Timestamp title. - */ - title: string; - } - - /** - * Disable collecting and reporting metrics. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enable collecting and reporting metrics. - */ - export type enableParameters = { - /** - * Time domain to use for collecting and reporting duration metrics. - */ - timeDomain?: "timeTicks"|"threadTicks"; - } - export type enableReturnValue = { - } - /** - * Sets time domain to use for collecting and reporting duration metrics. -Note that this must be called before enabling metrics collection. Calling -this method while metrics collection is enabled returns an error. - */ - export type setTimeDomainParameters = { - /** - * Time domain - */ - timeDomain: "timeTicks"|"threadTicks"; - } - export type setTimeDomainReturnValue = { - } - /** - * Retrieve current values of run-time metrics. - */ - export type getMetricsParameters = { - } - export type getMetricsReturnValue = { - /** - * Current values for run-time metrics. - */ - metrics: Metric[]; - } - } - - /** - * Security - */ - export module Security { - /** - * An internal certificate ID value. - */ - export type CertificateId = number; - /** - * A description of mixed content (HTTP resources on HTTPS pages), as defined by -https://www.w3.org/TR/mixed-content/#categories - */ - export type MixedContentType = "blockable"|"optionally-blockable"|"none"; - /** - * The security level of a page or resource. - */ - export type SecurityState = "unknown"|"neutral"|"insecure"|"secure"|"info"|"insecure-broken"; - /** - * Details about the security state of the page certificate. - */ - export interface CertificateSecurityState { - /** - * Protocol name (e.g. "TLS 1.2" or "QUIC"). - */ - protocol: string; - /** - * Key Exchange used by the connection, or the empty string if not applicable. - */ - keyExchange: string; - /** - * (EC)DH group used by the connection, if applicable. - */ - keyExchangeGroup?: string; - /** - * Cipher name. - */ - cipher: string; - /** - * TLS MAC. Note that AEAD ciphers do not have separate MACs. - */ - mac?: string; - /** - * Page certificate. - */ - certificate: string[]; - /** - * Certificate subject name. - */ - subjectName: string; - /** - * Name of the issuing CA. - */ - issuer: string; - /** - * Certificate valid from date. - */ - validFrom: Network.TimeSinceEpoch; - /** - * Certificate valid to (expiration) date - */ - validTo: Network.TimeSinceEpoch; - /** - * The highest priority network error code, if the certificate has an error. - */ - certificateNetworkError?: string; - /** - * True if the certificate uses a weak signature aglorithm. - */ - certificateHasWeakSignature: boolean; - /** - * True if the certificate has a SHA1 signature in the chain. - */ - certificateHasSha1Signature: boolean; - /** - * True if modern SSL - */ - modernSSL: boolean; - /** - * True if the connection is using an obsolete SSL protocol. - */ - obsoleteSslProtocol: boolean; - /** - * True if the connection is using an obsolete SSL key exchange. - */ - obsoleteSslKeyExchange: boolean; - /** - * True if the connection is using an obsolete SSL cipher. - */ - obsoleteSslCipher: boolean; - /** - * True if the connection is using an obsolete SSL signature. - */ - obsoleteSslSignature: boolean; - } - export type SafetyTipStatus = "badReputation"|"lookalike"; - export interface SafetyTipInfo { - /** - * Describes whether the page triggers any safety tips or reputation warnings. Default is unknown. - */ - safetyTipStatus: SafetyTipStatus; - /** - * The URL the safety tip suggested ("Did you mean?"). Only filled in for lookalike matches. - */ - safeUrl?: string; - } - /** - * Security state information about the page. - */ - export interface VisibleSecurityState { - /** - * The security level of the page. - */ - securityState: SecurityState; - /** - * Security state details about the page certificate. - */ - certificateSecurityState?: CertificateSecurityState; - /** - * 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. - */ - safetyTipInfo?: SafetyTipInfo; - /** - * Array of security state issues ids. - */ - securityStateIssueIds: string[]; - } - /** - * An explanation of an factor contributing to the security state. - */ - export interface SecurityStateExplanation { - /** - * Security state representing the severity of the factor being explained. - */ - securityState: SecurityState; - /** - * Title describing the type of factor. - */ - title: string; - /** - * Short phrase describing the type of factor. - */ - summary: string; - /** - * Full text explanation of the factor. - */ - description: string; - /** - * The type of mixed content described by the explanation. - */ - mixedContentType: MixedContentType; - /** - * Page certificate. - */ - certificate: string[]; - /** - * Recommendations to fix any issues. - */ - recommendations?: string[]; - } - /** - * Information about insecure content on the page. - */ - export interface InsecureContentStatus { - /** - * Always false. - */ - ranMixedContent: boolean; - /** - * Always false. - */ - displayedMixedContent: boolean; - /** - * Always false. - */ - containedMixedForm: boolean; - /** - * Always false. - */ - ranContentWithCertErrors: boolean; - /** - * Always false. - */ - displayedContentWithCertErrors: boolean; - /** - * Always set to unknown. - */ - ranInsecureContentStyle: SecurityState; - /** - * Always set to unknown. - */ - displayedInsecureContentStyle: SecurityState; - } - /** - * The action to take when a certificate error occurs. continue will continue processing the -request and cancel will cancel the request. - */ - export type CertificateErrorAction = "continue"|"cancel"; - - /** - * There is a certificate error. If overriding certificate errors is enabled, then it should be -handled with the `handleCertificateError` command. Note: this event does not fire if the -certificate error has been allowed internally. Only one client per target should override -certificate errors at the same time. - */ - export type certificateErrorPayload = { - /** - * The ID of the event. - */ - eventId: number; - /** - * The type of the error. - */ - errorType: string; - /** - * The url that was requested. - */ - requestURL: string; - } - /** - * The security state of the page changed. - */ - export type visibleSecurityStateChangedPayload = { - /** - * Security state information about the page. - */ - visibleSecurityState: VisibleSecurityState; - } - /** - * The security state of the page changed. - */ - export type securityStateChangedPayload = { - /** - * Security state. - */ - securityState: SecurityState; - /** - * True if the page was loaded over cryptographic transport such as HTTPS. - */ - schemeIsCryptographic: boolean; - /** - * List of explanations for the security state. If the overall security state is `insecure` or -`warning`, at least one corresponding explanation should be included. - */ - explanations: SecurityStateExplanation[]; - /** - * Information about insecure content on the page. - */ - insecureContentStatus: InsecureContentStatus; - /** - * Overrides user-visible description of the state. - */ - summary?: string; - } - - /** - * Disables tracking security state changes. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables tracking security state changes. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Enable/disable whether all certificate errors should be ignored. - */ - export type setIgnoreCertificateErrorsParameters = { - /** - * If true, all certificate errors will be ignored. - */ - ignore: boolean; - } - export type setIgnoreCertificateErrorsReturnValue = { - } - /** - * Handles a certificate error that fired a certificateError event. - */ - export type handleCertificateErrorParameters = { - /** - * The ID of the event. - */ - eventId: number; - /** - * The action to take on the certificate error. - */ - action: CertificateErrorAction; - } - export type handleCertificateErrorReturnValue = { - } - /** - * Enable/disable overriding certificate errors. If enabled, all certificate error events need to -be handled by the DevTools client and should be answered with `handleCertificateError` commands. - */ - export type setOverrideCertificateErrorsParameters = { - /** - * If true, certificate errors will be overridden. - */ - override: boolean; - } - export type setOverrideCertificateErrorsReturnValue = { - } - } - - export module ServiceWorker { - export type RegistrationID = string; - /** - * ServiceWorker registration. - */ - export interface ServiceWorkerRegistration { - registrationId: RegistrationID; - scopeURL: string; - isDeleted: boolean; - } - export type ServiceWorkerVersionRunningStatus = "stopped"|"starting"|"running"|"stopping"; - export type ServiceWorkerVersionStatus = "new"|"installing"|"installed"|"activating"|"activated"|"redundant"; - /** - * ServiceWorker version. - */ - export interface ServiceWorkerVersion { - versionId: string; - registrationId: RegistrationID; - scriptURL: string; - runningStatus: ServiceWorkerVersionRunningStatus; - status: ServiceWorkerVersionStatus; - /** - * The Last-Modified header value of the main script. - */ - scriptLastModified?: number; - /** - * The time at which the response headers of the main script were received from the server. -For cached script it is the last time the cache entry was validated. - */ - scriptResponseTime?: number; - controlledClients?: Target.TargetID[]; - targetId?: Target.TargetID; - } - /** - * ServiceWorker error message. - */ - export interface ServiceWorkerErrorMessage { - errorMessage: string; - registrationId: RegistrationID; - versionId: string; - sourceURL: string; - lineNumber: number; - columnNumber: number; - } - - export type workerErrorReportedPayload = { - errorMessage: ServiceWorkerErrorMessage; - } - export type workerRegistrationUpdatedPayload = { - registrations: ServiceWorkerRegistration[]; - } - export type workerVersionUpdatedPayload = { - versions: ServiceWorkerVersion[]; - } - - export type deliverPushMessageParameters = { - origin: string; - registrationId: RegistrationID; - data: string; - } - export type deliverPushMessageReturnValue = { - } - export type disableParameters = { - } - export type disableReturnValue = { - } - export type dispatchSyncEventParameters = { - origin: string; - registrationId: RegistrationID; - tag: string; - lastChance: boolean; - } - export type dispatchSyncEventReturnValue = { - } - export type dispatchPeriodicSyncEventParameters = { - origin: string; - registrationId: RegistrationID; - tag: string; - } - export type dispatchPeriodicSyncEventReturnValue = { - } - export type enableParameters = { - } - export type enableReturnValue = { - } - export type inspectWorkerParameters = { - versionId: string; - } - export type inspectWorkerReturnValue = { - } - export type setForceUpdateOnPageLoadParameters = { - forceUpdateOnPageLoad: boolean; - } - export type setForceUpdateOnPageLoadReturnValue = { - } - export type skipWaitingParameters = { - scopeURL: string; - } - export type skipWaitingReturnValue = { - } - export type startWorkerParameters = { - scopeURL: string; - } - export type startWorkerReturnValue = { - } - export type stopAllWorkersParameters = { - } - export type stopAllWorkersReturnValue = { - } - export type stopWorkerParameters = { - versionId: string; - } - export type stopWorkerReturnValue = { - } - export type unregisterParameters = { - scopeURL: string; - } - export type unregisterReturnValue = { - } - export type updateRegistrationParameters = { - scopeURL: string; - } - export type updateRegistrationReturnValue = { - } - } - - export module Storage { - /** - * Enum of possible storage types. - */ - export type StorageType = "appcache"|"cookies"|"file_systems"|"indexeddb"|"local_storage"|"shader_cache"|"websql"|"service_workers"|"cache_storage"|"all"|"other"; - /** - * Usage for a storage type. - */ - export interface UsageForType { - /** - * Name of storage type. - */ - storageType: StorageType; - /** - * Storage usage (bytes). - */ - usage: number; - } - - /** - * A cache's contents have been modified. - */ - export type cacheStorageContentUpdatedPayload = { - /** - * Origin to update. - */ - origin: string; - /** - * Name of cache in origin. - */ - cacheName: string; - } - /** - * A cache has been added/deleted. - */ - export type cacheStorageListUpdatedPayload = { - /** - * Origin to update. - */ - origin: string; - } - /** - * The origin's IndexedDB object store has been modified. - */ - export type indexedDBContentUpdatedPayload = { - /** - * Origin to update. - */ - origin: string; - /** - * Database to update. - */ - databaseName: string; - /** - * ObjectStore to update. - */ - objectStoreName: string; - } - /** - * The origin's IndexedDB database list has been modified. - */ - export type indexedDBListUpdatedPayload = { - /** - * Origin to update. - */ - origin: string; - } - - /** - * Clears storage for origin. - */ - export type clearDataForOriginParameters = { - /** - * Security origin. - */ - origin: string; - /** - * Comma separated list of StorageType to clear. - */ - storageTypes: string; - } - export type clearDataForOriginReturnValue = { - } - /** - * Returns all browser cookies. - */ - export type getCookiesParameters = { - /** - * Browser context to use when called on the browser endpoint. - */ - browserContextId?: Browser.BrowserContextID; - } - export type getCookiesReturnValue = { - /** - * Array of cookie objects. - */ - cookies: Network.Cookie[]; - } - /** - * Sets given cookies. - */ - export type setCookiesParameters = { - /** - * Cookies to be set. - */ - cookies: Network.CookieParam[]; - /** - * Browser context to use when called on the browser endpoint. - */ - browserContextId?: Browser.BrowserContextID; - } - export type setCookiesReturnValue = { - } - /** - * Clears cookies. - */ - export type clearCookiesParameters = { - /** - * Browser context to use when called on the browser endpoint. - */ - browserContextId?: Browser.BrowserContextID; - } - export type clearCookiesReturnValue = { - } - /** - * Returns usage and quota in bytes. - */ - export type getUsageAndQuotaParameters = { - /** - * Security origin. - */ - origin: string; - } - export type getUsageAndQuotaReturnValue = { - /** - * Storage usage (bytes). - */ - usage: number; - /** - * Storage quota (bytes). - */ - quota: number; - /** - * Storage usage per type (bytes). - */ - usageBreakdown: UsageForType[]; - } - /** - * Registers origin to be notified when an update occurs to its cache storage list. - */ - export type trackCacheStorageForOriginParameters = { - /** - * Security origin. - */ - origin: string; - } - export type trackCacheStorageForOriginReturnValue = { - } - /** - * Registers origin to be notified when an update occurs to its IndexedDB. - */ - export type trackIndexedDBForOriginParameters = { - /** - * Security origin. - */ - origin: string; - } - export type trackIndexedDBForOriginReturnValue = { - } - /** - * Unregisters origin from receiving notifications for cache storage. - */ - export type untrackCacheStorageForOriginParameters = { - /** - * Security origin. - */ - origin: string; - } - export type untrackCacheStorageForOriginReturnValue = { - } - /** - * Unregisters origin from receiving notifications for IndexedDB. - */ - export type untrackIndexedDBForOriginParameters = { - /** - * Security origin. - */ - origin: string; - } - export type untrackIndexedDBForOriginReturnValue = { - } - } - - /** - * The SystemInfo domain defines methods and events for querying low-level system information. - */ - export module SystemInfo { - /** - * Describes a single graphics processor (GPU). - */ - export interface GPUDevice { - /** - * PCI ID of the GPU vendor, if available; 0 otherwise. - */ - vendorId: number; - /** - * PCI ID of the GPU device, if available; 0 otherwise. - */ - deviceId: number; - /** - * Sub sys ID of the GPU, only available on Windows. - */ - subSysId?: number; - /** - * Revision of the GPU, only available on Windows. - */ - revision?: number; - /** - * String description of the GPU vendor, if the PCI ID is not available. - */ - vendorString: string; - /** - * String description of the GPU device, if the PCI ID is not available. - */ - deviceString: string; - /** - * String description of the GPU driver vendor. - */ - driverVendor: string; - /** - * String description of the GPU driver version. - */ - driverVersion: string; - } - /** - * Describes the width and height dimensions of an entity. - */ - export interface Size { - /** - * Width in pixels. - */ - width: number; - /** - * Height in pixels. - */ - height: number; - } - /** - * Describes a supported video decoding profile with its associated minimum and -maximum resolutions. - */ - export interface VideoDecodeAcceleratorCapability { - /** - * Video codec profile that is supported, e.g. VP9 Profile 2. - */ - profile: string; - /** - * Maximum video dimensions in pixels supported for this |profile|. - */ - maxResolution: Size; - /** - * Minimum video dimensions in pixels supported for this |profile|. - */ - minResolution: Size; - } - /** - * Describes a supported video encoding profile with its associated maximum -resolution and maximum framerate. - */ - export interface VideoEncodeAcceleratorCapability { - /** - * Video codec profile that is supported, e.g H264 Main. - */ - profile: string; - /** - * Maximum video dimensions in pixels supported for this |profile|. - */ - maxResolution: Size; - /** - * Maximum encoding framerate in frames per second supported for this -|profile|, as fraction's numerator and denominator, e.g. 24/1 fps, -24000/1001 fps, etc. - */ - maxFramerateNumerator: number; - maxFramerateDenominator: number; - } - /** - * YUV subsampling type of the pixels of a given image. - */ - export type SubsamplingFormat = "yuv420"|"yuv422"|"yuv444"; - /** - * Image format of a given image. - */ - export type ImageType = "jpeg"|"webp"|"unknown"; - /** - * Describes a supported image decoding profile with its associated minimum and -maximum resolutions and subsampling. - */ - export interface ImageDecodeAcceleratorCapability { - /** - * Image coded, e.g. Jpeg. - */ - imageType: ImageType; - /** - * Maximum supported dimensions of the image in pixels. - */ - maxDimensions: Size; - /** - * Minimum supported dimensions of the image in pixels. - */ - minDimensions: Size; - /** - * Optional array of supported subsampling formats, e.g. 4:2:0, if known. - */ - subsamplings: SubsamplingFormat[]; - } - /** - * Provides information about the GPU(s) on the system. - */ - export interface GPUInfo { - /** - * The graphics devices on the system. Element 0 is the primary GPU. - */ - devices: GPUDevice[]; - /** - * An optional dictionary of additional GPU related attributes. - */ - auxAttributes?: object; - /** - * An optional dictionary of graphics features and their status. - */ - featureStatus?: object; - /** - * An optional array of GPU driver bug workarounds. - */ - driverBugWorkarounds: string[]; - /** - * Supported accelerated video decoding capabilities. - */ - videoDecoding: VideoDecodeAcceleratorCapability[]; - /** - * Supported accelerated video encoding capabilities. - */ - videoEncoding: VideoEncodeAcceleratorCapability[]; - /** - * Supported accelerated image decoding capabilities. - */ - imageDecoding: ImageDecodeAcceleratorCapability[]; - } - /** - * Represents process info. - */ - export interface ProcessInfo { - /** - * Specifies process type. - */ - type: string; - /** - * Specifies process id. - */ - id: number; - /** - * Specifies cumulative CPU usage in seconds across all threads of the -process since the process start. - */ - cpuTime: number; - } - - - /** - * Returns information about the system. - */ - export type getInfoParameters = { - } - export type getInfoReturnValue = { - /** - * Information about the GPUs on the system. - */ - gpu: GPUInfo; - /** - * A platform-dependent description of the model of the machine. On Mac OS, this is, for -example, 'MacBookPro'. Will be the empty string if not supported. - */ - modelName: string; - /** - * A platform-dependent description of the version of the machine. On Mac OS, this is, for -example, '10.1'. Will be the empty string if not supported. - */ - modelVersion: string; - /** - * The command line string used to launch the browser. Will be the empty string if not -supported. - */ - commandLine: string; - } - /** - * Returns information about all running processes. - */ - export type getProcessInfoParameters = { - } - export type getProcessInfoReturnValue = { - /** - * An array of process info blocks. - */ - processInfo: ProcessInfo[]; - } - } - - /** - * Supports additional targets discovery and allows to attach to them. - */ - export module Target { - export type TargetID = string; - /** - * Unique identifier of attached debugging session. - */ - export type SessionID = string; - export interface TargetInfo { - targetId: TargetID; - type: string; - title: string; - url: string; - /** - * Whether the target has an attached client. - */ - attached: boolean; - /** - * Opener target Id - */ - openerId?: TargetID; - browserContextId?: Browser.BrowserContextID; - } - export interface RemoteLocation { - host: string; - port: number; - } - - /** - * Issued when attached to target because of auto-attach or `attachToTarget` command. - */ - export type attachedToTargetPayload = { - /** - * Identifier assigned to the session used to send/receive messages. - */ - sessionId: SessionID; - targetInfo: TargetInfo; - waitingForDebugger: boolean; - } - /** - * Issued when detached from target for any reason (including `detachFromTarget` command). Can be -issued multiple times per target if multiple sessions have been attached to it. - */ - export type detachedFromTargetPayload = { - /** - * Detached session identifier. - */ - sessionId: SessionID; - /** - * Deprecated. - */ - targetId?: TargetID; - } - /** - * Notifies about a new protocol message received from the session (as reported in -`attachedToTarget` event). - */ - export type receivedMessageFromTargetPayload = { - /** - * Identifier of a session which sends a message. - */ - sessionId: SessionID; - message: string; - /** - * Deprecated. - */ - targetId?: TargetID; - } - /** - * Issued when a possible inspection target is created. - */ - export type targetCreatedPayload = { - targetInfo: TargetInfo; - } - /** - * Issued when a target is destroyed. - */ - export type targetDestroyedPayload = { - targetId: TargetID; - } - /** - * Issued when a target has crashed. - */ - export type targetCrashedPayload = { - targetId: TargetID; - /** - * Termination status type. - */ - status: string; - /** - * Termination error code. - */ - errorCode: number; - } - /** - * Issued when some information about a target has changed. This only happens between -`targetCreated` and `targetDestroyed`. - */ - export type targetInfoChangedPayload = { - targetInfo: TargetInfo; - } - - /** - * Activates (focuses) the target. - */ - export type activateTargetParameters = { - targetId: TargetID; - } - export type activateTargetReturnValue = { - } - /** - * Attaches to the target with given id. - */ - export type attachToTargetParameters = { - targetId: TargetID; - /** - * Enables "flat" access to the session via specifying sessionId attribute in the commands. -We plan to make this the default, deprecate non-flattened mode, -and eventually retire it. See crbug.com/991325. - */ - flatten?: boolean; - } - export type attachToTargetReturnValue = { - /** - * Id assigned to the session. - */ - sessionId: SessionID; - } - /** - * Attaches to the browser target, only uses flat sessionId mode. - */ - export type attachToBrowserTargetParameters = { - } - export type attachToBrowserTargetReturnValue = { - /** - * Id assigned to the session. - */ - sessionId: SessionID; - } - /** - * Closes the target. If the target is a page that gets closed too. - */ - export type closeTargetParameters = { - targetId: TargetID; - } - export type closeTargetReturnValue = { - success: boolean; - } - /** - * Inject object to the target's main frame that provides a communication -channel with browser target. - -Injected object will be available as `window[bindingName]`. - -The object has the follwing API: -- `binding.send(json)` - a method to send messages over the remote debugging protocol -- `binding.onmessage = json => handleMessage(json)` - a callback that will be called for the protocol notifications and command responses. - */ - export type exposeDevToolsProtocolParameters = { - targetId: TargetID; - /** - * Binding name, 'cdp' if not specified. - */ - bindingName?: string; - } - export type exposeDevToolsProtocolReturnValue = { - } - /** - * Creates a new empty BrowserContext. Similar to an incognito profile but you can have more than -one. - */ - export type createBrowserContextParameters = { - /** - * If specified, disposes this context when debugging session disconnects. - */ - disposeOnDetach?: boolean; - } - export type createBrowserContextReturnValue = { - /** - * The id of the context created. - */ - browserContextId: Browser.BrowserContextID; - } - /** - * Returns all browser contexts created with `Target.createBrowserContext` method. - */ - export type getBrowserContextsParameters = { - } - export type getBrowserContextsReturnValue = { - /** - * An array of browser context ids. - */ - browserContextIds: Browser.BrowserContextID[]; - } - /** - * Creates a new page. - */ - export type createTargetParameters = { - /** - * The initial URL the page will be navigated to. - */ - url: string; - /** - * Frame width in DIP (headless chrome only). - */ - width?: number; - /** - * Frame height in DIP (headless chrome only). - */ - height?: number; - /** - * The browser context to create the page in. - */ - browserContextId?: Browser.BrowserContextID; - /** - * Whether BeginFrames for this target will be controlled via DevTools (headless chrome only, -not supported on MacOS yet, false by default). - */ - enableBeginFrameControl?: boolean; - /** - * Whether to create a new Window or Tab (chrome-only, false by default). - */ - newWindow?: boolean; - /** - * Whether to create the target in background or foreground (chrome-only, -false by default). - */ - background?: boolean; - } - export type createTargetReturnValue = { - /** - * The id of the page opened. - */ - targetId: TargetID; - } - /** - * Detaches session with given id. - */ - export type detachFromTargetParameters = { - /** - * Session to detach. - */ - sessionId?: SessionID; - /** - * Deprecated. - */ - targetId?: TargetID; - } - export type detachFromTargetReturnValue = { - } - /** - * Deletes a BrowserContext. All the belonging pages will be closed without calling their -beforeunload hooks. - */ - export type disposeBrowserContextParameters = { - browserContextId: Browser.BrowserContextID; - } - export type disposeBrowserContextReturnValue = { - } - /** - * Returns information about a target. - */ - export type getTargetInfoParameters = { - targetId?: TargetID; - } - export type getTargetInfoReturnValue = { - targetInfo: TargetInfo; - } - /** - * Retrieves a list of available targets. - */ - export type getTargetsParameters = { - } - export type getTargetsReturnValue = { - /** - * The list of targets. - */ - targetInfos: TargetInfo[]; - } - /** - * Sends protocol message over session with given id. -Consider using flat mode instead; see commands attachToTarget, setAutoAttach, -and crbug.com/991325. - */ - export type sendMessageToTargetParameters = { - message: string; - /** - * Identifier of the session. - */ - sessionId?: SessionID; - /** - * Deprecated. - */ - targetId?: TargetID; - } - export type sendMessageToTargetReturnValue = { - } - /** - * Controls whether to automatically attach to new targets which are considered to be related to -this one. When turned on, attaches to all existing related targets as well. When turned off, -automatically detaches from all currently attached targets. - */ - export type setAutoAttachParameters = { - /** - * Whether to auto-attach to related targets. - */ - autoAttach: boolean; - /** - * Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger` -to run paused targets. - */ - waitForDebuggerOnStart: boolean; - /** - * Enables "flat" access to the session via specifying sessionId attribute in the commands. -We plan to make this the default, deprecate non-flattened mode, -and eventually retire it. See crbug.com/991325. - */ - flatten?: boolean; - } - export type setAutoAttachReturnValue = { - } - /** - * Controls whether to discover available targets and notify via -`targetCreated/targetInfoChanged/targetDestroyed` events. - */ - export type setDiscoverTargetsParameters = { - /** - * Whether to discover available targets. - */ - discover: boolean; - } - export type setDiscoverTargetsReturnValue = { - } - /** - * Enables target discovery for the specified locations, when `setDiscoverTargets` was set to -`true`. - */ - export type setRemoteLocationsParameters = { - /** - * List of remote locations. - */ - locations: RemoteLocation[]; - } - export type setRemoteLocationsReturnValue = { - } - } - - /** - * The Tethering domain defines methods and events for browser port binding. - */ - export module Tethering { - - /** - * Informs that port was successfully bound and got a specified connection id. - */ - export type acceptedPayload = { - /** - * Port number that was successfully bound. - */ - port: number; - /** - * Connection id to be used. - */ - connectionId: string; - } - - /** - * Request browser port binding. - */ - export type bindParameters = { - /** - * Port number to bind. - */ - port: number; - } - export type bindReturnValue = { - } - /** - * Request browser port unbinding. - */ - export type unbindParameters = { - /** - * Port number to unbind. - */ - port: number; - } - export type unbindReturnValue = { - } - } - - export module Tracing { - /** - * Configuration for memory dump. Used only when "memory-infra" category is enabled. - */ - export type MemoryDumpConfig = object; - export interface TraceConfig { - /** - * Controls how the trace buffer stores data. - */ - recordMode?: "recordUntilFull"|"recordContinuously"|"recordAsMuchAsPossible"|"echoToConsole"; - /** - * Turns on JavaScript stack sampling. - */ - enableSampling?: boolean; - /** - * Turns on system tracing. - */ - enableSystrace?: boolean; - /** - * Turns on argument filter. - */ - enableArgumentFilter?: boolean; - /** - * Included category filters. - */ - includedCategories?: string[]; - /** - * Excluded category filters. - */ - excludedCategories?: string[]; - /** - * Configuration to synthesize the delays in tracing. - */ - syntheticDelays?: string[]; - /** - * Configuration for memory dump triggers. Used only when "memory-infra" category is enabled. - */ - memoryDumpConfig?: MemoryDumpConfig; - } - /** - * Data format of a trace. Can be either the legacy JSON format or the -protocol buffer format. Note that the JSON format will be deprecated soon. - */ - export type StreamFormat = "json"|"proto"; - /** - * Compression type to use for traces returned via streams. - */ - export type StreamCompression = "none"|"gzip"; - - export type bufferUsagePayload = { - /** - * A number in range [0..1] that indicates the used size of event buffer as a fraction of its -total size. - */ - percentFull?: number; - /** - * An approximate number of events in the trace log. - */ - eventCount?: number; - /** - * A number in range [0..1] that indicates the used size of event buffer as a fraction of its -total size. - */ - value?: number; - } - /** - * Contains an bucket of collected trace events. When tracing is stopped collected events will be -send as a sequence of dataCollected events followed by tracingComplete event. - */ - export type dataCollectedPayload = { - value: object[]; - } - /** - * Signals that tracing is stopped and there is no trace buffers pending flush, all data were -delivered via dataCollected events. - */ - export type tracingCompletePayload = { - /** - * Indicates whether some trace data is known to have been lost, e.g. because the trace ring -buffer wrapped around. - */ - dataLossOccurred: boolean; - /** - * A handle of the stream that holds resulting trace data. - */ - stream?: IO.StreamHandle; - /** - * Trace data format of returned stream. - */ - traceFormat?: StreamFormat; - /** - * Compression format of returned stream. - */ - streamCompression?: StreamCompression; - } - - /** - * Stop trace events collection. - */ - export type endParameters = { - } - export type endReturnValue = { - } - /** - * Gets supported tracing categories. - */ - export type getCategoriesParameters = { - } - export type getCategoriesReturnValue = { - /** - * A list of supported tracing categories. - */ - categories: string[]; - } - /** - * Record a clock sync marker in the trace. - */ - export type recordClockSyncMarkerParameters = { - /** - * The ID of this clock sync marker - */ - syncId: string; - } - export type recordClockSyncMarkerReturnValue = { - } - /** - * Request a global memory dump. - */ - export type requestMemoryDumpParameters = { - /** - * Enables more deterministic results by forcing garbage collection - */ - deterministic?: boolean; - } - export type requestMemoryDumpReturnValue = { - /** - * GUID of the resulting global memory dump. - */ - dumpGuid: string; - /** - * True iff the global memory dump succeeded. - */ - success: boolean; - } - /** - * Start trace events collection. - */ - export type startParameters = { - /** - * Category/tag filter - */ - categories?: string; - /** - * Tracing options - */ - options?: string; - /** - * If set, the agent will issue bufferUsage events at this interval, specified in milliseconds - */ - bufferUsageReportingInterval?: number; - /** - * Whether to report trace events as series of dataCollected events or to save trace to a -stream (defaults to `ReportEvents`). - */ - transferMode?: "ReportEvents"|"ReturnAsStream"; - /** - * Trace data format to use. This only applies when using `ReturnAsStream` -transfer mode (defaults to `json`). - */ - streamFormat?: StreamFormat; - /** - * Compression format to use. This only applies when using `ReturnAsStream` -transfer mode (defaults to `none`) - */ - streamCompression?: StreamCompression; - traceConfig?: TraceConfig; - } - export type startReturnValue = { - } - } - - /** - * A domain for letting clients substitute browser's network layer with client code. - */ - export module Fetch { - /** - * Unique request identifier. - */ - export type RequestId = string; - /** - * Stages of the request to handle. Request will intercept before the request is -sent. Response will intercept after the response is received (but before response -body is received. - */ - export type RequestStage = "Request"|"Response"; - export interface RequestPattern { - /** - * Wildcards ('*' -> zero or more, '?' -> exactly one) are allowed. Escape character is -backslash. Omitting is equivalent to "*". - */ - urlPattern?: string; - /** - * If set, only requests for matching resource types will be intercepted. - */ - resourceType?: Network.ResourceType; - /** - * Stage at wich to begin intercepting requests. Default is Request. - */ - requestStage?: RequestStage; - } - /** - * Response HTTP header entry - */ - export interface HeaderEntry { - name: string; - value: string; - } - /** - * Authorization challenge for HTTP status code 401 or 407. - */ - export interface AuthChallenge { - /** - * Source of the authentication challenge. - */ - source?: "Server"|"Proxy"; - /** - * Origin of the challenger. - */ - origin: string; - /** - * The authentication scheme used, such as basic or digest - */ - scheme: string; - /** - * The realm of the challenge. May be empty. - */ - realm: string; - } - /** - * Response to an AuthChallenge. - */ - export interface AuthChallengeResponse { - /** - * The decision on what to do in response to the authorization challenge. Default means -deferring to the default behavior of the net stack, which will likely either the Cancel -authentication or display a popup dialog box. - */ - response: "Default"|"CancelAuth"|"ProvideCredentials"; - /** - * The username to provide, possibly empty. Should only be set if response is -ProvideCredentials. - */ - username?: string; - /** - * The password to provide, possibly empty. Should only be set if response is -ProvideCredentials. - */ - password?: string; - } - - /** - * Issued when the domain is enabled and the request URL matches the -specified filter. The request is paused until the client responds -with one of continueRequest, failRequest or fulfillRequest. -The stage of the request can be determined by presence of responseErrorReason -and responseStatusCode -- the request is at the response stage if either -of these fields is present and in the request stage otherwise. - */ - export type requestPausedPayload = { - /** - * Each request the page makes will have a unique id. - */ - requestId: RequestId; - /** - * The details of the request. - */ - request: Network.Request; - /** - * The id of the frame that initiated the request. - */ - frameId: Page.FrameId; - /** - * How the requested resource will be used. - */ - resourceType: Network.ResourceType; - /** - * Response error if intercepted at response stage. - */ - responseErrorReason?: Network.ErrorReason; - /** - * Response code if intercepted at response stage. - */ - responseStatusCode?: number; - /** - * Response headers if intercepted at the response stage. - */ - responseHeaders?: HeaderEntry[]; - /** - * If the intercepted request had a corresponding Network.requestWillBeSent event fired for it, -then this networkId will be the same as the requestId present in the requestWillBeSent event. - */ - networkId?: RequestId; - } - /** - * Issued when the domain is enabled with handleAuthRequests set to true. -The request is paused until client responds with continueWithAuth. - */ - export type authRequiredPayload = { - /** - * Each request the page makes will have a unique id. - */ - requestId: RequestId; - /** - * The details of the request. - */ - request: Network.Request; - /** - * The id of the frame that initiated the request. - */ - frameId: Page.FrameId; - /** - * How the requested resource will be used. - */ - resourceType: Network.ResourceType; - /** - * Details of the Authorization Challenge encountered. -If this is set, client should respond with continueRequest that -contains AuthChallengeResponse. - */ - authChallenge: AuthChallenge; - } - - /** - * Disables the fetch domain. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables issuing of requestPaused events. A request will be paused until client -calls one of failRequest, fulfillRequest or continueRequest/continueWithAuth. - */ - export type enableParameters = { - /** - * If specified, only requests matching any of these patterns will produce -fetchRequested event and will be paused until clients response. If not set, -all requests will be affected. - */ - patterns?: RequestPattern[]; - /** - * If true, authRequired events will be issued and requests will be paused -expecting a call to continueWithAuth. - */ - handleAuthRequests?: boolean; - } - export type enableReturnValue = { - } - /** - * Causes the request to fail with specified reason. - */ - export type failRequestParameters = { - /** - * An id the client received in requestPaused event. - */ - requestId: RequestId; - /** - * Causes the request to fail with the given reason. - */ - errorReason: Network.ErrorReason; - } - export type failRequestReturnValue = { - } - /** - * Provides response to the request. - */ - export type fulfillRequestParameters = { - /** - * An id the client received in requestPaused event. - */ - requestId: RequestId; - /** - * An HTTP response code. - */ - responseCode: number; - /** - * Response headers. - */ - responseHeaders?: HeaderEntry[]; - /** - * Alternative way of specifying response headers as a \0-separated -series of name: value pairs. Prefer the above method unless you -need to represent some non-UTF8 values that can't be transmitted -over the protocol as text. - */ - binaryResponseHeaders?: binary; - /** - * A response body. - */ - body?: binary; - /** - * A textual representation of responseCode. -If absent, a standard phrase matching responseCode is used. - */ - responsePhrase?: string; - } - export type fulfillRequestReturnValue = { - } - /** - * Continues the request, optionally modifying some of its parameters. - */ - export type continueRequestParameters = { - /** - * An id the client received in requestPaused event. - */ - requestId: RequestId; - /** - * If set, the request url will be modified in a way that's not observable by page. - */ - url?: string; - /** - * If set, the request method is overridden. - */ - method?: string; - /** - * If set, overrides the post data in the request. - */ - postData?: string; - /** - * If set, overrides the request headers. - */ - headers?: HeaderEntry[]; - } - export type continueRequestReturnValue = { - } - /** - * Continues a request supplying authChallengeResponse following authRequired event. - */ - export type continueWithAuthParameters = { - /** - * An id the client received in authRequired event. - */ - requestId: RequestId; - /** - * Response to with an authChallenge. - */ - authChallengeResponse: AuthChallengeResponse; - } - export type continueWithAuthReturnValue = { - } - /** - * Causes the body of the response to be received from the server and -returned as a single string. May only be issued for a request that -is paused in the Response stage and is mutually exclusive with -takeResponseBodyForInterceptionAsStream. Calling other methods that -affect the request or disabling fetch domain before body is received -results in an undefined behavior. - */ - export type getResponseBodyParameters = { - /** - * Identifier for the intercepted request to get body for. - */ - requestId: RequestId; - } - export type getResponseBodyReturnValue = { - /** - * Response body. - */ - body: string; - /** - * True, if content was sent as base64. - */ - base64Encoded: boolean; - } - /** - * Returns a handle to the stream representing the response body. -The request must be paused in the HeadersReceived stage. -Note that after this command the request can't be continued -as is -- client either needs to cancel it or to provide the -response body. -The stream only supports sequential read, IO.read will fail if the position -is specified. -This method is mutually exclusive with getResponseBody. -Calling other methods that affect the request or disabling fetch -domain before body is received results in an undefined behavior. - */ - export type takeResponseBodyAsStreamParameters = { - requestId: RequestId; - } - export type takeResponseBodyAsStreamReturnValue = { - stream: IO.StreamHandle; - } - } - - /** - * This domain allows inspection of Web Audio API. -https://webaudio.github.io/web-audio-api/ - */ - export module WebAudio { - /** - * An unique ID for a graph object (AudioContext, AudioNode, AudioParam) in Web Audio API - */ - export type GraphObjectId = string; - /** - * Enum of BaseAudioContext types - */ - export type ContextType = "realtime"|"offline"; - /** - * Enum of AudioContextState from the spec - */ - export type ContextState = "suspended"|"running"|"closed"; - /** - * Enum of AudioNode types - */ - export type NodeType = string; - /** - * Enum of AudioNode::ChannelCountMode from the spec - */ - export type ChannelCountMode = "clamped-max"|"explicit"|"max"; - /** - * Enum of AudioNode::ChannelInterpretation from the spec - */ - export type ChannelInterpretation = "discrete"|"speakers"; - /** - * Enum of AudioParam types - */ - export type ParamType = string; - /** - * Enum of AudioParam::AutomationRate from the spec - */ - export type AutomationRate = "a-rate"|"k-rate"; - /** - * Fields in AudioContext that change in real-time. - */ - export interface ContextRealtimeData { - /** - * The current context time in second in BaseAudioContext. - */ - currentTime: number; - /** - * The time spent on rendering graph divided by render qunatum duration, -and multiplied by 100. 100 means the audio renderer reached the full -capacity and glitch may occur. - */ - renderCapacity: number; - /** - * A running mean of callback interval. - */ - callbackIntervalMean: number; - /** - * A running variance of callback interval. - */ - callbackIntervalVariance: number; - } - /** - * Protocol object for BaseAudioContext - */ - export interface BaseAudioContext { - contextId: GraphObjectId; - contextType: ContextType; - contextState: ContextState; - realtimeData?: ContextRealtimeData; - /** - * Platform-dependent callback buffer size. - */ - callbackBufferSize: number; - /** - * Number of output channels supported by audio hardware in use. - */ - maxOutputChannelCount: number; - /** - * Context sample rate. - */ - sampleRate: number; - } - /** - * Protocol object for AudioListner - */ - export interface AudioListener { - listenerId: GraphObjectId; - contextId: GraphObjectId; - } - /** - * Protocol object for AudioNode - */ - export interface AudioNode { - nodeId: GraphObjectId; - contextId: GraphObjectId; - nodeType: NodeType; - numberOfInputs: number; - numberOfOutputs: number; - channelCount: number; - channelCountMode: ChannelCountMode; - channelInterpretation: ChannelInterpretation; - } - /** - * Protocol object for AudioParam - */ - export interface AudioParam { - paramId: GraphObjectId; - nodeId: GraphObjectId; - contextId: GraphObjectId; - paramType: ParamType; - rate: AutomationRate; - defaultValue: number; - minValue: number; - maxValue: number; - } - - /** - * Notifies that a new BaseAudioContext has been created. - */ - export type contextCreatedPayload = { - context: BaseAudioContext; - } - /** - * Notifies that an existing BaseAudioContext will be destroyed. - */ - export type contextWillBeDestroyedPayload = { - contextId: GraphObjectId; - } - /** - * Notifies that existing BaseAudioContext has changed some properties (id stays the same).. - */ - export type contextChangedPayload = { - context: BaseAudioContext; - } - /** - * Notifies that the construction of an AudioListener has finished. - */ - export type audioListenerCreatedPayload = { - listener: AudioListener; - } - /** - * Notifies that a new AudioListener has been created. - */ - export type audioListenerWillBeDestroyedPayload = { - contextId: GraphObjectId; - listenerId: GraphObjectId; - } - /** - * Notifies that a new AudioNode has been created. - */ - export type audioNodeCreatedPayload = { - node: AudioNode; - } - /** - * Notifies that an existing AudioNode has been destroyed. - */ - export type audioNodeWillBeDestroyedPayload = { - contextId: GraphObjectId; - nodeId: GraphObjectId; - } - /** - * Notifies that a new AudioParam has been created. - */ - export type audioParamCreatedPayload = { - param: AudioParam; - } - /** - * Notifies that an existing AudioParam has been destroyed. - */ - export type audioParamWillBeDestroyedPayload = { - contextId: GraphObjectId; - nodeId: GraphObjectId; - paramId: GraphObjectId; - } - /** - * Notifies that two AudioNodes are connected. - */ - export type nodesConnectedPayload = { - contextId: GraphObjectId; - sourceId: GraphObjectId; - destinationId: GraphObjectId; - sourceOutputIndex?: number; - destinationInputIndex?: number; - } - /** - * Notifies that AudioNodes are disconnected. The destination can be null, and it means all the outgoing connections from the source are disconnected. - */ - export type nodesDisconnectedPayload = { - contextId: GraphObjectId; - sourceId: GraphObjectId; - destinationId: GraphObjectId; - sourceOutputIndex?: number; - destinationInputIndex?: number; - } - /** - * Notifies that an AudioNode is connected to an AudioParam. - */ - export type nodeParamConnectedPayload = { - contextId: GraphObjectId; - sourceId: GraphObjectId; - destinationId: GraphObjectId; - sourceOutputIndex?: number; - } - /** - * Notifies that an AudioNode is disconnected to an AudioParam. - */ - export type nodeParamDisconnectedPayload = { - contextId: GraphObjectId; - sourceId: GraphObjectId; - destinationId: GraphObjectId; - sourceOutputIndex?: number; - } - - /** - * Enables the WebAudio domain and starts sending context lifetime events. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Disables the WebAudio domain. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Fetch the realtime data from the registered contexts. - */ - export type getRealtimeDataParameters = { - contextId: GraphObjectId; - } - export type getRealtimeDataReturnValue = { - realtimeData: ContextRealtimeData; - } - } - - /** - * This domain allows configuring virtual authenticators to test the WebAuthn -API. - */ - export module WebAuthn { - export type AuthenticatorId = string; - export type AuthenticatorProtocol = "u2f"|"ctap2"; - export type AuthenticatorTransport = "usb"|"nfc"|"ble"|"cable"|"internal"; - export interface VirtualAuthenticatorOptions { - protocol: AuthenticatorProtocol; - transport: AuthenticatorTransport; - /** - * Defaults to false. - */ - hasResidentKey?: boolean; - /** - * Defaults to false. - */ - hasUserVerification?: boolean; - /** - * If set to true, tests of user presence will succeed immediately. -Otherwise, they will not be resolved. Defaults to true. - */ - automaticPresenceSimulation?: boolean; - /** - * Sets whether User Verification succeeds or fails for an authenticator. -Defaults to false. - */ - isUserVerified?: boolean; - } - export interface Credential { - credentialId: binary; - isResidentCredential: boolean; - /** - * Relying Party ID the credential is scoped to. Must be set when adding a -credential. - */ - rpId?: string; - /** - * The ECDSA P-256 private key in PKCS#8 format. - */ - privateKey: binary; - /** - * An opaque byte sequence with a maximum size of 64 bytes mapping the -credential to a specific user. - */ - userHandle?: binary; - /** - * Signature counter. This is incremented by one for each successful -assertion. -See https://w3c.github.io/webauthn/#signature-counter - */ - signCount: number; - } - - - /** - * Enable the WebAuthn domain and start intercepting credential storage and -retrieval with a virtual authenticator. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Disable the WebAuthn domain. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Creates and adds a virtual authenticator. - */ - export type addVirtualAuthenticatorParameters = { - options: VirtualAuthenticatorOptions; - } - export type addVirtualAuthenticatorReturnValue = { - authenticatorId: AuthenticatorId; - } - /** - * Removes the given authenticator. - */ - export type removeVirtualAuthenticatorParameters = { - authenticatorId: AuthenticatorId; - } - export type removeVirtualAuthenticatorReturnValue = { - } - /** - * Adds the credential to the specified authenticator. - */ - export type addCredentialParameters = { - authenticatorId: AuthenticatorId; - credential: Credential; - } - export type addCredentialReturnValue = { - } - /** - * Returns a single credential stored in the given virtual authenticator that -matches the credential ID. - */ - export type getCredentialParameters = { - authenticatorId: AuthenticatorId; - credentialId: binary; - } - export type getCredentialReturnValue = { - credential: Credential; - } - /** - * Returns all the credentials stored in the given virtual authenticator. - */ - export type getCredentialsParameters = { - authenticatorId: AuthenticatorId; - } - export type getCredentialsReturnValue = { - credentials: Credential[]; - } - /** - * Removes a credential from the authenticator. - */ - export type removeCredentialParameters = { - authenticatorId: AuthenticatorId; - credentialId: binary; - } - export type removeCredentialReturnValue = { - } - /** - * Clears all the credentials from the specified device. - */ - export type clearCredentialsParameters = { - authenticatorId: AuthenticatorId; - } - export type clearCredentialsReturnValue = { - } - /** - * Sets whether User Verification succeeds or fails for an authenticator. -The default is true. - */ - export type setUserVerifiedParameters = { - authenticatorId: AuthenticatorId; - isUserVerified: boolean; - } - export type setUserVerifiedReturnValue = { - } - } - - /** - * This domain allows detailed inspection of media elements - */ - export module Media { - /** - * Players will get an ID that is unique within the agent context. - */ - export type PlayerId = string; - export type Timestamp = number; - /** - * Player Property type - */ - export interface PlayerProperty { - name: string; - value?: string; - } - /** - * Break out events into different types - */ - export type PlayerEventType = "errorEvent"|"triggeredEvent"|"messageEvent"; - export interface PlayerEvent { - type: PlayerEventType; - /** - * Events are timestamped relative to the start of the player creation -not relative to the start of playback. - */ - timestamp: Timestamp; - name: string; - value: string; - } - - /** - * This can be called multiple times, and can be used to set / override / -remove player properties. A null propValue indicates removal. - */ - export type playerPropertiesChangedPayload = { - playerId: PlayerId; - properties: PlayerProperty[]; - } - /** - * Send events as a list, allowing them to be batched on the browser for less -congestion. If batched, events must ALWAYS be in chronological order. - */ - export type playerEventsAddedPayload = { - playerId: PlayerId; - events: PlayerEvent[]; - } - /** - * Called whenever a player is created, or when a new agent joins and recieves -a list of active players. If an agent is restored, it will recieve the full -list of player ids and all events again. - */ - export type playersCreatedPayload = { - players: PlayerId[]; - } - - /** - * Enables the Media domain - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Disables the Media domain. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - } - - /** - * This domain is deprecated - use Runtime or Log instead. - */ - export module Console { - /** - * Console message. - */ - export interface ConsoleMessage { - /** - * Message source. - */ - source: "xml"|"javascript"|"network"|"console-api"|"storage"|"appcache"|"rendering"|"security"|"other"|"deprecation"|"worker"; - /** - * Message severity. - */ - level: "log"|"warning"|"error"|"debug"|"info"; - /** - * Message text. - */ - text: string; - /** - * URL of the message origin. - */ - url?: string; - /** - * Line number in the resource that generated this message (1-based). - */ - line?: number; - /** - * Column number in the resource that generated this message (1-based). - */ - column?: number; - } - - /** - * Issued when new console message is added. - */ - export type messageAddedPayload = { - /** - * Console message that has been added. - */ - message: ConsoleMessage; - } - - /** - * Does nothing. - */ - export type clearMessagesParameters = { - } - export type clearMessagesReturnValue = { - } - /** - * Disables console domain, prevents further console messages from being reported to the client. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables console domain, sends the messages collected so far to the client by means of the -`messageAdded` notification. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - } - - /** - * Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing -breakpoints, stepping through execution, exploring stack traces, etc. - */ - export module Debugger { - /** - * Breakpoint identifier. - */ - export type BreakpointId = string; - /** - * Call frame identifier. - */ - export type CallFrameId = string; - /** - * Location in the source code. - */ - export interface Location { - /** - * Script identifier as reported in the `Debugger.scriptParsed`. - */ - scriptId: Runtime.ScriptId; - /** - * Line number in the script (0-based). - */ - lineNumber: number; - /** - * Column number in the script (0-based). - */ - columnNumber?: number; - } - /** - * Location in the source code. - */ - export interface ScriptPosition { - lineNumber: number; - columnNumber: number; - } - /** - * JavaScript call frame. Array of call frames form the call stack. - */ - export interface CallFrame { - /** - * Call frame identifier. This identifier is only valid while the virtual machine is paused. - */ - callFrameId: CallFrameId; - /** - * Name of the JavaScript function called on this call frame. - */ - functionName: string; - /** - * Location in the source code. - */ - functionLocation?: Location; - /** - * Location in the source code. - */ - location: Location; - /** - * JavaScript script name or url. - */ - url: string; - /** - * Scope chain for this call frame. - */ - scopeChain: Scope[]; - /** - * `this` object for this call frame. - */ - this: Runtime.RemoteObject; - /** - * The value being returned, if the function is at return point. - */ - returnValue?: Runtime.RemoteObject; - } - /** - * Scope description. - */ - export interface Scope { - /** - * Scope type. - */ - type: "global"|"local"|"with"|"closure"|"catch"|"block"|"script"|"eval"|"module"|"wasm-expression-stack"; - /** - * Object representing the scope. For `global` and `with` scopes it represents the actual -object; for the rest of the scopes, it is artificial transient object enumerating scope -variables as its properties. - */ - object: Runtime.RemoteObject; - name?: string; - /** - * Location in the source code where scope starts - */ - startLocation?: Location; - /** - * Location in the source code where scope ends - */ - endLocation?: Location; - } - /** - * Search match for resource. - */ - export interface SearchMatch { - /** - * Line number in resource content. - */ - lineNumber: number; - /** - * Line with match content. - */ - lineContent: string; - } - export interface BreakLocation { - /** - * Script identifier as reported in the `Debugger.scriptParsed`. - */ - scriptId: Runtime.ScriptId; - /** - * Line number in the script (0-based). - */ - lineNumber: number; - /** - * Column number in the script (0-based). - */ - columnNumber?: number; - type?: "debuggerStatement"|"call"|"return"; - } - /** - * Enum of possible script languages. - */ - export type ScriptLanguage = "JavaScript"|"WebAssembly"; - - /** - * Fired when breakpoint is resolved to an actual script and location. - */ - export type breakpointResolvedPayload = { - /** - * Breakpoint unique identifier. - */ - breakpointId: BreakpointId; - /** - * Actual breakpoint location. - */ - location: Location; - } - /** - * Fired when the virtual machine stopped on breakpoint or exception or any other stop criteria. - */ - export type pausedPayload = { - /** - * Call stack the virtual machine stopped on. - */ - callFrames: CallFrame[]; - /** - * Pause reason. - */ - reason: "ambiguous"|"assert"|"debugCommand"|"DOM"|"EventListener"|"exception"|"instrumentation"|"OOM"|"other"|"promiseRejection"|"XHR"; - /** - * Object containing break-specific auxiliary properties. - */ - data?: object; - /** - * Hit breakpoints IDs - */ - hitBreakpoints?: string[]; - /** - * Async stack trace, if any. - */ - asyncStackTrace?: Runtime.StackTrace; - /** - * Async stack trace, if any. - */ - asyncStackTraceId?: Runtime.StackTraceId; - /** - * Never present, will be removed. - */ - asyncCallStackTraceId?: Runtime.StackTraceId; - } - /** - * Fired when the virtual machine resumed execution. - */ - export type resumedPayload = void; - /** - * Fired when virtual machine fails to parse the script. - */ - export type scriptFailedToParsePayload = { - /** - * Identifier of the script parsed. - */ - scriptId: Runtime.ScriptId; - /** - * URL or name of the script parsed (if any). - */ - url: string; - /** - * Line offset of the script within the resource with given URL (for script tags). - */ - startLine: number; - /** - * Column offset of the script within the resource with given URL. - */ - startColumn: number; - /** - * Last line of the script. - */ - endLine: number; - /** - * Length of the last line of the script. - */ - endColumn: number; - /** - * Specifies script creation context. - */ - executionContextId: Runtime.ExecutionContextId; - /** - * Content hash of the script. - */ - hash: string; - /** - * Embedder-specific auxiliary data. - */ - executionContextAuxData?: object; - /** - * URL of source map associated with script (if any). - */ - sourceMapURL?: string; - /** - * True, if this script has sourceURL. - */ - hasSourceURL?: boolean; - /** - * True, if this script is ES6 module. - */ - isModule?: boolean; - /** - * This script length. - */ - length?: number; - /** - * JavaScript top stack frame of where the script parsed event was triggered if available. - */ - stackTrace?: Runtime.StackTrace; - /** - * If the scriptLanguage is WebAssembly, the code section offset in the module. - */ - codeOffset?: number; - /** - * The language of the script. - */ - scriptLanguage?: Debugger.ScriptLanguage; - } - /** - * Fired when virtual machine parses script. This event is also fired for all known and uncollected -scripts upon enabling debugger. - */ - export type scriptParsedPayload = { - /** - * Identifier of the script parsed. - */ - scriptId: Runtime.ScriptId; - /** - * URL or name of the script parsed (if any). - */ - url: string; - /** - * Line offset of the script within the resource with given URL (for script tags). - */ - startLine: number; - /** - * Column offset of the script within the resource with given URL. - */ - startColumn: number; - /** - * Last line of the script. - */ - endLine: number; - /** - * Length of the last line of the script. - */ - endColumn: number; - /** - * Specifies script creation context. - */ - executionContextId: Runtime.ExecutionContextId; - /** - * Content hash of the script. - */ - hash: string; - /** - * Embedder-specific auxiliary data. - */ - executionContextAuxData?: object; - /** - * True, if this script is generated as a result of the live edit operation. - */ - isLiveEdit?: boolean; - /** - * URL of source map associated with script (if any). - */ - sourceMapURL?: string; - /** - * True, if this script has sourceURL. - */ - hasSourceURL?: boolean; - /** - * True, if this script is ES6 module. - */ - isModule?: boolean; - /** - * This script length. - */ - length?: number; - /** - * JavaScript top stack frame of where the script parsed event was triggered if available. - */ - stackTrace?: Runtime.StackTrace; - /** - * If the scriptLanguage is WebAssembly, the code section offset in the module. - */ - codeOffset?: number; - /** - * The language of the script. - */ - scriptLanguage?: Debugger.ScriptLanguage; - } - - /** - * Continues execution until specific location is reached. - */ - export type continueToLocationParameters = { - /** - * Location to continue to. - */ - location: Location; - targetCallFrames?: "any"|"current"; - } - export type continueToLocationReturnValue = { - } - /** - * Disables debugger for given page. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Enables debugger for the given page. Clients should not assume that the debugging has been -enabled until the result for this command is received. - */ - export type enableParameters = { - /** - * The maximum size in bytes of collected scripts (not referenced by other heap objects) -the debugger can hold. Puts no limit if paramter is omitted. - */ - maxScriptsCacheSize?: number; - } - export type enableReturnValue = { - /** - * Unique identifier of the debugger. - */ - debuggerId: Runtime.UniqueDebuggerId; - } - /** - * Evaluates expression on a given call frame. - */ - export type evaluateOnCallFrameParameters = { - /** - * Call frame identifier to evaluate on. - */ - callFrameId: CallFrameId; - /** - * Expression to evaluate. - */ - expression: string; - /** - * String object group name to put result into (allows rapid releasing resulting object handles -using `releaseObjectGroup`). - */ - objectGroup?: string; - /** - * Specifies whether command line API should be available to the evaluated expression, defaults -to false. - */ - includeCommandLineAPI?: boolean; - /** - * In silent mode exceptions thrown during evaluation are not reported and do not pause -execution. Overrides `setPauseOnException` state. - */ - silent?: boolean; - /** - * Whether the result is expected to be a JSON object that should be sent by value. - */ - returnByValue?: boolean; - /** - * Whether preview should be generated for the result. - */ - generatePreview?: boolean; - /** - * Whether to throw an exception if side effect cannot be ruled out during evaluation. - */ - throwOnSideEffect?: boolean; - /** - * Terminate execution after timing out (number of milliseconds). - */ - timeout?: Runtime.TimeDelta; - } - export type evaluateOnCallFrameReturnValue = { - /** - * Object wrapper for the evaluation result. - */ - result: Runtime.RemoteObject; - /** - * Exception details. - */ - exceptionDetails?: Runtime.ExceptionDetails; - } - /** - * Returns possible locations for breakpoint. scriptId in start and end range locations should be -the same. - */ - export type getPossibleBreakpointsParameters = { - /** - * Start of range to search possible breakpoint locations in. - */ - start: Location; - /** - * End of range to search possible breakpoint locations in (excluding). When not specified, end -of scripts is used as end of range. - */ - end?: Location; - /** - * Only consider locations which are in the same (non-nested) function as start. - */ - restrictToFunction?: boolean; - } - export type getPossibleBreakpointsReturnValue = { - /** - * List of the possible breakpoint locations. - */ - locations: BreakLocation[]; - } - /** - * Returns source for the script with given id. - */ - export type getScriptSourceParameters = { - /** - * Id of the script to get source for. - */ - scriptId: Runtime.ScriptId; - } - export type getScriptSourceReturnValue = { - /** - * Script source (empty in case of Wasm bytecode). - */ - scriptSource: string; - /** - * Wasm bytecode. - */ - bytecode?: binary; - } - /** - * This command is deprecated. Use getScriptSource instead. - */ - export type getWasmBytecodeParameters = { - /** - * Id of the Wasm script to get source for. - */ - scriptId: Runtime.ScriptId; - } - export type getWasmBytecodeReturnValue = { - /** - * Script source. - */ - bytecode: binary; - } - /** - * Returns stack trace with given `stackTraceId`. - */ - export type getStackTraceParameters = { - stackTraceId: Runtime.StackTraceId; - } - export type getStackTraceReturnValue = { - stackTrace: Runtime.StackTrace; - } - /** - * Stops on the next JavaScript statement. - */ - export type pauseParameters = { - } - export type pauseReturnValue = { - } - export type pauseOnAsyncCallParameters = { - /** - * Debugger will pause when async call with given stack trace is started. - */ - parentStackTraceId: Runtime.StackTraceId; - } - export type pauseOnAsyncCallReturnValue = { - } - /** - * Removes JavaScript breakpoint. - */ - export type removeBreakpointParameters = { - breakpointId: BreakpointId; - } - export type removeBreakpointReturnValue = { - } - /** - * Restarts particular call frame from the beginning. - */ - export type restartFrameParameters = { - /** - * Call frame identifier to evaluate on. - */ - callFrameId: CallFrameId; - } - export type restartFrameReturnValue = { - /** - * New stack trace. - */ - callFrames: CallFrame[]; - /** - * Async stack trace, if any. - */ - asyncStackTrace?: Runtime.StackTrace; - /** - * Async stack trace, if any. - */ - asyncStackTraceId?: Runtime.StackTraceId; - } - /** - * Resumes JavaScript execution. - */ - export type resumeParameters = { - /** - * Set to true to terminate execution upon resuming execution. In contrast -to Runtime.terminateExecution, this will allows to execute further -JavaScript (i.e. via evaluation) until execution of the paused code -is actually resumed, at which point termination is triggered. -If execution is currently not paused, this parameter has no effect. - */ - terminateOnResume?: boolean; - } - export type resumeReturnValue = { - } - /** - * Searches for given string in script content. - */ - export type searchInContentParameters = { - /** - * Id of the script to search in. - */ - scriptId: Runtime.ScriptId; - /** - * String to search for. - */ - query: string; - /** - * If true, search is case sensitive. - */ - caseSensitive?: boolean; - /** - * If true, treats string parameter as regex. - */ - isRegex?: boolean; - } - export type searchInContentReturnValue = { - /** - * List of search matches. - */ - result: SearchMatch[]; - } - /** - * Enables or disables async call stacks tracking. - */ - export type setAsyncCallStackDepthParameters = { - /** - * Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async -call stacks (default). - */ - maxDepth: number; - } - export type setAsyncCallStackDepthReturnValue = { - } - /** - * Replace previous blackbox patterns with passed ones. Forces backend to skip stepping/pausing in -scripts with url matching one of the patterns. VM will try to leave blackboxed script by -performing 'step in' several times, finally resorting to 'step out' if unsuccessful. - */ - export type setBlackboxPatternsParameters = { - /** - * Array of regexps that will be used to check script url for blackbox state. - */ - patterns: string[]; - } - export type setBlackboxPatternsReturnValue = { - } - /** - * Makes backend skip steps in the script in blackboxed ranges. VM will try leave blacklisted -scripts by performing 'step in' several times, finally resorting to 'step out' if unsuccessful. -Positions array contains positions where blackbox state is changed. First interval isn't -blackboxed. Array should be sorted. - */ - export type setBlackboxedRangesParameters = { - /** - * Id of the script. - */ - scriptId: Runtime.ScriptId; - positions: ScriptPosition[]; - } - export type setBlackboxedRangesReturnValue = { - } - /** - * Sets JavaScript breakpoint at a given location. - */ - export type setBreakpointParameters = { - /** - * Location to set breakpoint in. - */ - location: Location; - /** - * Expression to use as a breakpoint condition. When specified, debugger will only stop on the -breakpoint if this expression evaluates to true. - */ - condition?: string; - } - export type setBreakpointReturnValue = { - /** - * Id of the created breakpoint for further reference. - */ - breakpointId: BreakpointId; - /** - * Location this breakpoint resolved into. - */ - actualLocation: Location; - } - /** - * Sets instrumentation breakpoint. - */ - export type setInstrumentationBreakpointParameters = { - /** - * Instrumentation name. - */ - instrumentation: "beforeScriptExecution"|"beforeScriptWithSourceMapExecution"; - } - export type setInstrumentationBreakpointReturnValue = { - /** - * Id of the created breakpoint for further reference. - */ - breakpointId: BreakpointId; - } - /** - * Sets JavaScript breakpoint at given location specified either by URL or URL regex. Once this -command is issued, all existing parsed scripts will have breakpoints resolved and returned in -`locations` property. Further matching script parsing will result in subsequent -`breakpointResolved` events issued. This logical breakpoint will survive page reloads. - */ - export type setBreakpointByUrlParameters = { - /** - * Line number to set breakpoint at. - */ - lineNumber: number; - /** - * URL of the resources to set breakpoint on. - */ - url?: string; - /** - * Regex pattern for the URLs of the resources to set breakpoints on. Either `url` or -`urlRegex` must be specified. - */ - urlRegex?: string; - /** - * Script hash of the resources to set breakpoint on. - */ - scriptHash?: string; - /** - * Offset in the line to set breakpoint at. - */ - columnNumber?: number; - /** - * Expression to use as a breakpoint condition. When specified, debugger will only stop on the -breakpoint if this expression evaluates to true. - */ - condition?: string; - } - export type setBreakpointByUrlReturnValue = { - /** - * Id of the created breakpoint for further reference. - */ - breakpointId: BreakpointId; - /** - * List of the locations this breakpoint resolved into upon addition. - */ - locations: Location[]; - } - /** - * Sets JavaScript breakpoint before each call to the given function. -If another function was created from the same source as a given one, -calling it will also trigger the breakpoint. - */ - export type setBreakpointOnFunctionCallParameters = { - /** - * Function object id. - */ - objectId: Runtime.RemoteObjectId; - /** - * Expression to use as a breakpoint condition. When specified, debugger will -stop on the breakpoint if this expression evaluates to true. - */ - condition?: string; - } - export type setBreakpointOnFunctionCallReturnValue = { - /** - * Id of the created breakpoint for further reference. - */ - breakpointId: BreakpointId; - } - /** - * Activates / deactivates all breakpoints on the page. - */ - export type setBreakpointsActiveParameters = { - /** - * New value for breakpoints active state. - */ - active: boolean; - } - export type setBreakpointsActiveReturnValue = { - } - /** - * Defines pause on exceptions state. Can be set to stop on all exceptions, uncaught exceptions or -no exceptions. Initial pause on exceptions state is `none`. - */ - export type setPauseOnExceptionsParameters = { - /** - * Pause on exceptions mode. - */ - state: "none"|"uncaught"|"all"; - } - export type setPauseOnExceptionsReturnValue = { - } - /** - * Changes return value in top frame. Available only at return break position. - */ - export type setReturnValueParameters = { - /** - * New return value. - */ - newValue: Runtime.CallArgument; - } - export type setReturnValueReturnValue = { - } - /** - * Edits JavaScript source live. - */ - export type setScriptSourceParameters = { - /** - * Id of the script to edit. - */ - scriptId: Runtime.ScriptId; - /** - * New content of the script. - */ - scriptSource: string; - /** - * If true the change will not actually be applied. Dry run may be used to get result -description without actually modifying the code. - */ - dryRun?: boolean; - } - export type setScriptSourceReturnValue = { - /** - * New stack trace in case editing has happened while VM was stopped. - */ - callFrames?: CallFrame[]; - /** - * Whether current call stack was modified after applying the changes. - */ - stackChanged?: boolean; - /** - * Async stack trace, if any. - */ - asyncStackTrace?: Runtime.StackTrace; - /** - * Async stack trace, if any. - */ - asyncStackTraceId?: Runtime.StackTraceId; - /** - * Exception details if any. - */ - exceptionDetails?: Runtime.ExceptionDetails; - } - /** - * Makes page not interrupt on any pauses (breakpoint, exception, dom exception etc). - */ - export type setSkipAllPausesParameters = { - /** - * New value for skip pauses state. - */ - skip: boolean; - } - export type setSkipAllPausesReturnValue = { - } - /** - * Changes value of variable in a callframe. Object-based scopes are not supported and must be -mutated manually. - */ - export type setVariableValueParameters = { - /** - * 0-based number of scope as was listed in scope chain. Only 'local', 'closure' and 'catch' -scope types are allowed. Other scopes could be manipulated manually. - */ - scopeNumber: number; - /** - * Variable name. - */ - variableName: string; - /** - * New variable value. - */ - newValue: Runtime.CallArgument; - /** - * Id of callframe that holds variable. - */ - callFrameId: CallFrameId; - } - export type setVariableValueReturnValue = { - } - /** - * Steps into the function call. - */ - export type stepIntoParameters = { - /** - * Debugger will pause on the execution of the first async task which was scheduled -before next pause. - */ - breakOnAsyncCall?: boolean; - } - export type stepIntoReturnValue = { - } - /** - * Steps out of the function call. - */ - export type stepOutParameters = { - } - export type stepOutReturnValue = { - } - /** - * Steps over the statement. - */ - export type stepOverParameters = { - } - export type stepOverReturnValue = { - } - } - - export module HeapProfiler { - /** - * Heap snapshot object id. - */ - export type HeapSnapshotObjectId = string; - /** - * Sampling Heap Profile node. Holds callsite information, allocation statistics and child nodes. - */ - export interface SamplingHeapProfileNode { - /** - * Function location. - */ - callFrame: Runtime.CallFrame; - /** - * Allocations size in bytes for the node excluding children. - */ - selfSize: number; - /** - * Node id. Ids are unique across all profiles collected between startSampling and stopSampling. - */ - id: number; - /** - * Child nodes. - */ - children: SamplingHeapProfileNode[]; - } - /** - * A single sample from a sampling profile. - */ - export interface SamplingHeapProfileSample { - /** - * Allocation size in bytes attributed to the sample. - */ - size: number; - /** - * Id of the corresponding profile tree node. - */ - nodeId: number; - /** - * Time-ordered sample ordinal number. It is unique across all profiles retrieved -between startSampling and stopSampling. - */ - ordinal: number; - } - /** - * Sampling profile. - */ - export interface SamplingHeapProfile { - head: SamplingHeapProfileNode; - samples: SamplingHeapProfileSample[]; - } - - export type addHeapSnapshotChunkPayload = { - chunk: string; - } - /** - * If heap objects tracking has been started then backend may send update for one or more fragments - */ - export type heapStatsUpdatePayload = { - /** - * An array of triplets. Each triplet describes a fragment. The first integer is the fragment -index, the second integer is a total count of objects for the fragment, the third integer is -a total size of the objects for the fragment. - */ - statsUpdate: number[]; - } - /** - * If heap objects tracking has been started then backend regularly sends a current value for last -seen object id and corresponding timestamp. If the were changes in the heap since last event -then one or more heapStatsUpdate events will be sent before a new lastSeenObjectId event. - */ - export type lastSeenObjectIdPayload = { - lastSeenObjectId: number; - timestamp: number; - } - export type reportHeapSnapshotProgressPayload = { - done: number; - total: number; - finished?: boolean; - } - export type resetProfilesPayload = void; - - /** - * Enables console to refer to the node with given id via $x (see Command Line API for more details -$x functions). - */ - export type addInspectedHeapObjectParameters = { - /** - * Heap snapshot object id to be accessible by means of $x command line API. - */ - heapObjectId: HeapSnapshotObjectId; - } - export type addInspectedHeapObjectReturnValue = { - } - export type collectGarbageParameters = { - } - export type collectGarbageReturnValue = { - } - export type disableParameters = { - } - export type disableReturnValue = { - } - export type enableParameters = { - } - export type enableReturnValue = { - } - export type getHeapObjectIdParameters = { - /** - * Identifier of the object to get heap object id for. - */ - objectId: Runtime.RemoteObjectId; - } - export type getHeapObjectIdReturnValue = { - /** - * Id of the heap snapshot object corresponding to the passed remote object id. - */ - heapSnapshotObjectId: HeapSnapshotObjectId; - } - export type getObjectByHeapObjectIdParameters = { - objectId: HeapSnapshotObjectId; - /** - * Symbolic group name that can be used to release multiple objects. - */ - objectGroup?: string; - } - export type getObjectByHeapObjectIdReturnValue = { - /** - * Evaluation result. - */ - result: Runtime.RemoteObject; - } - export type getSamplingProfileParameters = { - } - export type getSamplingProfileReturnValue = { - /** - * Return the sampling profile being collected. - */ - profile: SamplingHeapProfile; - } - export type startSamplingParameters = { - /** - * Average sample interval in bytes. Poisson distribution is used for the intervals. The -default value is 32768 bytes. - */ - samplingInterval?: number; - } - export type startSamplingReturnValue = { - } - export type startTrackingHeapObjectsParameters = { - trackAllocations?: boolean; - } - export type startTrackingHeapObjectsReturnValue = { - } - export type stopSamplingParameters = { - } - export type stopSamplingReturnValue = { - /** - * Recorded sampling heap profile. - */ - profile: SamplingHeapProfile; - } - export type stopTrackingHeapObjectsParameters = { - /** - * If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken -when the tracking is stopped. - */ - reportProgress?: boolean; - treatGlobalObjectsAsRoots?: boolean; - } - export type stopTrackingHeapObjectsReturnValue = { - } - export type takeHeapSnapshotParameters = { - /** - * If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken. - */ - reportProgress?: boolean; - /** - * If true, a raw snapshot without artifical roots will be generated - */ - treatGlobalObjectsAsRoots?: boolean; - } - export type takeHeapSnapshotReturnValue = { - } - } - - export module Profiler { - /** - * Profile node. Holds callsite information, execution statistics and child nodes. - */ - export interface ProfileNode { - /** - * Unique id of the node. - */ - id: number; - /** - * Function location. - */ - callFrame: Runtime.CallFrame; - /** - * Number of samples where this node was on top of the call stack. - */ - hitCount?: number; - /** - * Child node ids. - */ - children?: number[]; - /** - * The reason of being not optimized. The function may be deoptimized or marked as don't -optimize. - */ - deoptReason?: string; - /** - * An array of source position ticks. - */ - positionTicks?: PositionTickInfo[]; - } - /** - * Profile. - */ - export interface Profile { - /** - * The list of profile nodes. First item is the root node. - */ - nodes: ProfileNode[]; - /** - * Profiling start timestamp in microseconds. - */ - startTime: number; - /** - * Profiling end timestamp in microseconds. - */ - endTime: number; - /** - * Ids of samples top nodes. - */ - samples?: number[]; - /** - * Time intervals between adjacent samples in microseconds. The first delta is relative to the -profile startTime. - */ - timeDeltas?: number[]; - } - /** - * Specifies a number of samples attributed to a certain source position. - */ - export interface PositionTickInfo { - /** - * Source line number (1-based). - */ - line: number; - /** - * Number of samples attributed to the source line. - */ - ticks: number; - } - /** - * Coverage data for a source range. - */ - export interface CoverageRange { - /** - * JavaScript script source offset for the range start. - */ - startOffset: number; - /** - * JavaScript script source offset for the range end. - */ - endOffset: number; - /** - * Collected execution count of the source range. - */ - count: number; - } - /** - * Coverage data for a JavaScript function. - */ - export interface FunctionCoverage { - /** - * JavaScript function name. - */ - functionName: string; - /** - * Source ranges inside the function with coverage data. - */ - ranges: CoverageRange[]; - /** - * Whether coverage data for this function has block granularity. - */ - isBlockCoverage: boolean; - } - /** - * Coverage data for a JavaScript script. - */ - export interface ScriptCoverage { - /** - * JavaScript script id. - */ - scriptId: Runtime.ScriptId; - /** - * JavaScript script name or url. - */ - url: string; - /** - * Functions contained in the script that has coverage data. - */ - functions: FunctionCoverage[]; - } - /** - * Describes a type collected during runtime. - */ - export interface TypeObject { - /** - * Name of a type collected with type profiling. - */ - name: string; - } - /** - * Source offset and types for a parameter or return value. - */ - export interface TypeProfileEntry { - /** - * Source offset of the parameter or end of function for return values. - */ - offset: number; - /** - * The types for this parameter or return value. - */ - types: TypeObject[]; - } - /** - * Type profile data collected during runtime for a JavaScript script. - */ - export interface ScriptTypeProfile { - /** - * JavaScript script id. - */ - scriptId: Runtime.ScriptId; - /** - * JavaScript script name or url. - */ - url: string; - /** - * Type profile entries for parameters and return values of the functions in the script. - */ - entries: TypeProfileEntry[]; - } - /** - * Collected counter information. - */ - export interface CounterInfo { - /** - * Counter name. - */ - name: string; - /** - * Counter value. - */ - value: number; - } - - export type consoleProfileFinishedPayload = { - id: string; - /** - * Location of console.profileEnd(). - */ - location: Debugger.Location; - profile: Profile; - /** - * Profile title passed as an argument to console.profile(). - */ - title?: string; - } - /** - * Sent when new profile recording is started using console.profile() call. - */ - export type consoleProfileStartedPayload = { - id: string; - /** - * Location of console.profile(). - */ - location: Debugger.Location; - /** - * Profile title passed as an argument to console.profile(). - */ - title?: string; - } - /** - * Reports coverage delta since the last poll (either from an event like this, or from -`takePreciseCoverage` for the current isolate. May only be sent if precise code -coverage has been started. This event can be trigged by the embedder to, for example, -trigger collection of coverage data immediatelly at a certain point in time. - */ - export type preciseCoverageDeltaUpdatePayload = { - /** - * Monotonically increasing time (in seconds) when the coverage update was taken in the backend. - */ - timestamp: number; - /** - * Identifier for distinguishing coverage events. - */ - occassion: string; - /** - * Coverage data for the current isolate. - */ - result: ScriptCoverage[]; - } - - export type disableParameters = { - } - export type disableReturnValue = { - } - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Collect coverage data for the current isolate. The coverage data may be incomplete due to -garbage collection. - */ - export type getBestEffortCoverageParameters = { - } - export type getBestEffortCoverageReturnValue = { - /** - * Coverage data for the current isolate. - */ - result: ScriptCoverage[]; - } - /** - * Changes CPU profiler sampling interval. Must be called before CPU profiles recording started. - */ - export type setSamplingIntervalParameters = { - /** - * New sampling interval in microseconds. - */ - interval: number; - } - export type setSamplingIntervalReturnValue = { - } - export type startParameters = { - } - export type startReturnValue = { - } - /** - * Enable precise code coverage. Coverage data for JavaScript executed before enabling precise code -coverage may be incomplete. Enabling prevents running optimized code and resets execution -counters. - */ - export type startPreciseCoverageParameters = { - /** - * Collect accurate call counts beyond simple 'covered' or 'not covered'. - */ - callCount?: boolean; - /** - * Collect block-based coverage. - */ - detailed?: boolean; - /** - * Allow the backend to send updates on its own initiative - */ - allowTriggeredUpdates?: boolean; - } - export type startPreciseCoverageReturnValue = { - /** - * Monotonically increasing time (in seconds) when the coverage update was taken in the backend. - */ - timestamp: number; - } - /** - * Enable type profile. - */ - export type startTypeProfileParameters = { - } - export type startTypeProfileReturnValue = { - } - export type stopParameters = { - } - export type stopReturnValue = { - /** - * Recorded profile. - */ - profile: Profile; - } - /** - * Disable precise code coverage. Disabling releases unnecessary execution count records and allows -executing optimized code. - */ - export type stopPreciseCoverageParameters = { - } - export type stopPreciseCoverageReturnValue = { - } - /** - * Disable type profile. Disabling releases type profile data collected so far. - */ - export type stopTypeProfileParameters = { - } - export type stopTypeProfileReturnValue = { - } - /** - * Collect coverage data for the current isolate, and resets execution counters. Precise code -coverage needs to have started. - */ - export type takePreciseCoverageParameters = { - } - export type takePreciseCoverageReturnValue = { - /** - * Coverage data for the current isolate. - */ - result: ScriptCoverage[]; - /** - * Monotonically increasing time (in seconds) when the coverage update was taken in the backend. - */ - timestamp: number; - } - /** - * Collect type profile. - */ - export type takeTypeProfileParameters = { - } - export type takeTypeProfileReturnValue = { - /** - * Type profile for all scripts since startTypeProfile() was turned on. - */ - result: ScriptTypeProfile[]; - } - /** - * Enable run time call stats collection. - */ - export type enableRuntimeCallStatsParameters = { - } - export type enableRuntimeCallStatsReturnValue = { - } - /** - * Disable run time call stats collection. - */ - export type disableRuntimeCallStatsParameters = { - } - export type disableRuntimeCallStatsReturnValue = { - } - /** - * Retrieve run time call stats. - */ - export type getRuntimeCallStatsParameters = { - } - export type getRuntimeCallStatsReturnValue = { - /** - * Collected counter information. - */ - result: CounterInfo[]; - } - } - - /** - * Runtime domain exposes JavaScript runtime by means of remote evaluation and mirror objects. -Evaluation results are returned as mirror object that expose object type, string representation -and unique identifier that can be used for further object reference. Original objects are -maintained in memory unless they are either explicitly released or are released along with the -other objects in their object group. - */ - export module Runtime { - /** - * Unique script identifier. - */ - export type ScriptId = string; - /** - * Unique object identifier. - */ - export type RemoteObjectId = string; - /** - * Primitive value which cannot be JSON-stringified. Includes values `-0`, `NaN`, `Infinity`, -`-Infinity`, and bigint literals. - */ - export type UnserializableValue = string; - /** - * Mirror object referencing original JavaScript object. - */ - export interface RemoteObject { - /** - * Object type. - */ - type: "object"|"function"|"undefined"|"string"|"number"|"boolean"|"symbol"|"bigint"|"wasm"; - /** - * Object subtype hint. Specified for `object` or `wasm` type values only. - */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"i32"|"i64"|"f32"|"f64"|"v128"; - /** - * Object class (constructor) name. Specified for `object` type values only. - */ - className?: string; - /** - * Remote object value in case of primitive values or JSON values (if it was requested). - */ - value?: any; - /** - * Primitive value which can not be JSON-stringified does not have `value`, but gets this -property. - */ - unserializableValue?: UnserializableValue; - /** - * String representation of the object. - */ - description?: string; - /** - * Unique object identifier (for non-primitive values). - */ - objectId?: RemoteObjectId; - /** - * Preview containing abbreviated property values. Specified for `object` type values only. - */ - preview?: ObjectPreview; - customPreview?: CustomPreview; - } - export interface CustomPreview { - /** - * The JSON-stringified result of formatter.header(object, config) call. -It contains json ML array that represents RemoteObject. - */ - header: string; - /** - * If formatter returns true as a result of formatter.hasBody call then bodyGetterId will -contain RemoteObjectId for the function that returns result of formatter.body(object, config) call. -The result value is json ML array. - */ - bodyGetterId?: RemoteObjectId; - } - /** - * Object containing abbreviated remote object value. - */ - export interface ObjectPreview { - /** - * Object type. - */ - type: "object"|"function"|"undefined"|"string"|"number"|"boolean"|"symbol"|"bigint"; - /** - * Object subtype hint. Specified for `object` type values only. - */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"; - /** - * String representation of the object. - */ - description?: string; - /** - * True iff some of the properties or entries of the original object did not fit. - */ - overflow: boolean; - /** - * List of the properties. - */ - properties: PropertyPreview[]; - /** - * List of the entries. Specified for `map` and `set` subtype values only. - */ - entries?: EntryPreview[]; - } - export interface PropertyPreview { - /** - * Property name. - */ - name: string; - /** - * Object type. Accessor means that the property itself is an accessor property. - */ - type: "object"|"function"|"undefined"|"string"|"number"|"boolean"|"symbol"|"accessor"|"bigint"; - /** - * User-friendly property value string. - */ - value?: string; - /** - * Nested value preview. - */ - valuePreview?: ObjectPreview; - /** - * Object subtype hint. Specified for `object` type values only. - */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"; - } - export interface EntryPreview { - /** - * Preview of the key. Specified for map-like collection entries. - */ - key?: ObjectPreview; - /** - * Preview of the value. - */ - value: ObjectPreview; - } - /** - * Object property descriptor. - */ - export interface PropertyDescriptor { - /** - * Property name or symbol description. - */ - name: string; - /** - * The value associated with the property. - */ - value?: RemoteObject; - /** - * True if the value associated with the property may be changed (data descriptors only). - */ - writable?: boolean; - /** - * A function which serves as a getter for the property, or `undefined` if there is no getter -(accessor descriptors only). - */ - get?: RemoteObject; - /** - * A function which serves as a setter for the property, or `undefined` if there is no setter -(accessor descriptors only). - */ - set?: RemoteObject; - /** - * True if the type of this property descriptor may be changed and if the property may be -deleted from the corresponding object. - */ - configurable: boolean; - /** - * True if this property shows up during enumeration of the properties on the corresponding -object. - */ - enumerable: boolean; - /** - * True if the result was thrown during the evaluation. - */ - wasThrown?: boolean; - /** - * True if the property is owned for the object. - */ - isOwn?: boolean; - /** - * Property symbol object, if the property is of the `symbol` type. - */ - symbol?: RemoteObject; - } - /** - * Object internal property descriptor. This property isn't normally visible in JavaScript code. - */ - export interface InternalPropertyDescriptor { - /** - * Conventional property name. - */ - name: string; - /** - * The value associated with the property. - */ - value?: RemoteObject; - } - /** - * Object private field descriptor. - */ - export interface PrivatePropertyDescriptor { - /** - * Private property name. - */ - name: string; - /** - * The value associated with the private property. - */ - value?: RemoteObject; - /** - * A function which serves as a getter for the private property, -or `undefined` if there is no getter (accessor descriptors only). - */ - get?: RemoteObject; - /** - * A function which serves as a setter for the private property, -or `undefined` if there is no setter (accessor descriptors only). - */ - set?: RemoteObject; - } - /** - * Represents function call argument. Either remote object id `objectId`, primitive `value`, -unserializable primitive value or neither of (for undefined) them should be specified. - */ - export interface CallArgument { - /** - * Primitive value or serializable javascript object. - */ - value?: any; - /** - * Primitive value which can not be JSON-stringified. - */ - unserializableValue?: UnserializableValue; - /** - * Remote object handle. - */ - objectId?: RemoteObjectId; - } - /** - * Id of an execution context. - */ - export type ExecutionContextId = number; - /** - * Description of an isolated world. - */ - export interface ExecutionContextDescription { - /** - * Unique id of the execution context. It can be used to specify in which execution context -script evaluation should be performed. - */ - id: ExecutionContextId; - /** - * Execution context origin. - */ - origin: string; - /** - * Human readable name describing given context. - */ - name: string; - /** - * Embedder-specific auxiliary data. - */ - auxData?: object; - } - /** - * Detailed information about exception (or error) that was thrown during script compilation or -execution. - */ - export interface ExceptionDetails { - /** - * Exception id. - */ - exceptionId: number; - /** - * Exception text, which should be used together with exception object when available. - */ - text: string; - /** - * Line number of the exception location (0-based). - */ - lineNumber: number; - /** - * Column number of the exception location (0-based). - */ - columnNumber: number; - /** - * Script ID of the exception location. - */ - scriptId?: ScriptId; - /** - * URL of the exception location, to be used when the script was not reported. - */ - url?: string; - /** - * JavaScript stack trace if available. - */ - stackTrace?: StackTrace; - /** - * Exception object if available. - */ - exception?: RemoteObject; - /** - * Identifier of the context where exception happened. - */ - executionContextId?: ExecutionContextId; - } - /** - * Number of milliseconds since epoch. - */ - export type Timestamp = number; - /** - * Number of milliseconds. - */ - export type TimeDelta = number; - /** - * Stack entry for runtime errors and assertions. - */ - export interface CallFrame { - /** - * JavaScript function name. - */ - functionName: string; - /** - * JavaScript script id. - */ - scriptId: ScriptId; - /** - * JavaScript script name or url. - */ - url: string; - /** - * JavaScript script line number (0-based). - */ - lineNumber: number; - /** - * JavaScript script column number (0-based). - */ - columnNumber: number; - } - /** - * Call frames for assertions or error messages. - */ - export interface StackTrace { - /** - * String label of this stack trace. For async traces this may be a name of the function that -initiated the async call. - */ - description?: string; - /** - * JavaScript function name. - */ - callFrames: CallFrame[]; - /** - * Asynchronous JavaScript stack trace that preceded this stack, if available. - */ - parent?: StackTrace; - /** - * Asynchronous JavaScript stack trace that preceded this stack, if available. - */ - parentId?: StackTraceId; - } - /** - * Unique identifier of current debugger. - */ - export type UniqueDebuggerId = string; - /** - * If `debuggerId` is set stack trace comes from another debugger and can be resolved there. This -allows to track cross-debugger calls. See `Runtime.StackTrace` and `Debugger.paused` for usages. - */ - export interface StackTraceId { - id: string; - debuggerId?: UniqueDebuggerId; - } - - /** - * Notification is issued every time when binding is called. - */ - export type bindingCalledPayload = { - name: string; - payload: string; - /** - * Identifier of the context where the call was made. - */ - executionContextId: ExecutionContextId; - } - /** - * Issued when console API was called. - */ - export type consoleAPICalledPayload = { - /** - * Type of the call. - */ - type: "log"|"debug"|"info"|"error"|"warning"|"dir"|"dirxml"|"table"|"trace"|"clear"|"startGroup"|"startGroupCollapsed"|"endGroup"|"assert"|"profile"|"profileEnd"|"count"|"timeEnd"; - /** - * Call arguments. - */ - args: RemoteObject[]; - /** - * Identifier of the context where the call was made. - */ - executionContextId: ExecutionContextId; - /** - * Call timestamp. - */ - timestamp: Timestamp; - /** - * Stack trace captured when the call was made. The async stack chain is automatically reported for -the following call types: `assert`, `error`, `trace`, `warning`. For other types the async call -chain can be retrieved using `Debugger.getStackTrace` and `stackTrace.parentId` field. - */ - stackTrace?: StackTrace; - /** - * Console context descriptor for calls on non-default console context (not console.*): -'anonymous#unique-logger-id' for call on unnamed context, 'name#unique-logger-id' for call -on named context. - */ - context?: string; - } - /** - * Issued when unhandled exception was revoked. - */ - export type exceptionRevokedPayload = { - /** - * Reason describing why exception was revoked. - */ - reason: string; - /** - * The id of revoked exception, as reported in `exceptionThrown`. - */ - exceptionId: number; - } - /** - * Issued when exception was thrown and unhandled. - */ - export type exceptionThrownPayload = { - /** - * Timestamp of the exception. - */ - timestamp: Timestamp; - exceptionDetails: ExceptionDetails; - } - /** - * Issued when new execution context is created. - */ - export type executionContextCreatedPayload = { - /** - * A newly created execution context. - */ - context: ExecutionContextDescription; - } - /** - * Issued when execution context is destroyed. - */ - export type executionContextDestroyedPayload = { - /** - * Id of the destroyed context - */ - executionContextId: ExecutionContextId; - } - /** - * Issued when all executionContexts were cleared in browser - */ - export type executionContextsClearedPayload = void; - /** - * Issued when object should be inspected (for example, as a result of inspect() command line API -call). - */ - export type inspectRequestedPayload = { - object: RemoteObject; - hints: object; - } - - /** - * Add handler to promise with given promise object id. - */ - export type awaitPromiseParameters = { - /** - * Identifier of the promise. - */ - promiseObjectId: RemoteObjectId; - /** - * Whether the result is expected to be a JSON object that should be sent by value. - */ - returnByValue?: boolean; - /** - * Whether preview should be generated for the result. - */ - generatePreview?: boolean; - } - export type awaitPromiseReturnValue = { - /** - * Promise result. Will contain rejected value if promise was rejected. - */ - result: RemoteObject; - /** - * Exception details if stack strace is available. - */ - exceptionDetails?: ExceptionDetails; - } - /** - * Calls function with given declaration on the given object. Object group of the result is -inherited from the target object. - */ - export type callFunctionOnParameters = { - /** - * Declaration of the function to call. - */ - functionDeclaration: string; - /** - * Identifier of the object to call function on. Either objectId or executionContextId should -be specified. - */ - objectId?: RemoteObjectId; - /** - * Call arguments. All call arguments must belong to the same JavaScript world as the target -object. - */ - arguments?: CallArgument[]; - /** - * In silent mode exceptions thrown during evaluation are not reported and do not pause -execution. Overrides `setPauseOnException` state. - */ - silent?: boolean; - /** - * Whether the result is expected to be a JSON object which should be sent by value. - */ - returnByValue?: boolean; - /** - * Whether preview should be generated for the result. - */ - generatePreview?: boolean; - /** - * Whether execution should be treated as initiated by user in the UI. - */ - userGesture?: boolean; - /** - * Whether execution should `await` for resulting value and return once awaited promise is -resolved. - */ - awaitPromise?: boolean; - /** - * Specifies execution context which global object will be used to call function on. Either -executionContextId or objectId should be specified. - */ - executionContextId?: ExecutionContextId; - /** - * Symbolic group name that can be used to release multiple objects. If objectGroup is not -specified and objectId is, objectGroup will be inherited from object. - */ - objectGroup?: string; - } - export type callFunctionOnReturnValue = { - /** - * Call result. - */ - result: RemoteObject; - /** - * Exception details. - */ - exceptionDetails?: ExceptionDetails; - } - /** - * Compiles expression. - */ - export type compileScriptParameters = { - /** - * Expression to compile. - */ - expression: string; - /** - * Source url to be set for the script. - */ - sourceURL: string; - /** - * Specifies whether the compiled script should be persisted. - */ - persistScript: boolean; - /** - * Specifies in which execution context to perform script run. If the parameter is omitted the -evaluation will be performed in the context of the inspected page. - */ - executionContextId?: ExecutionContextId; - } - export type compileScriptReturnValue = { - /** - * Id of the script. - */ - scriptId?: ScriptId; - /** - * Exception details. - */ - exceptionDetails?: ExceptionDetails; - } - /** - * Disables reporting of execution contexts creation. - */ - export type disableParameters = { - } - export type disableReturnValue = { - } - /** - * Discards collected exceptions and console API calls. - */ - export type discardConsoleEntriesParameters = { - } - export type discardConsoleEntriesReturnValue = { - } - /** - * Enables reporting of execution contexts creation by means of `executionContextCreated` event. -When the reporting gets enabled the event will be sent immediately for each existing execution -context. - */ - export type enableParameters = { - } - export type enableReturnValue = { - } - /** - * Evaluates expression on global object. - */ - export type evaluateParameters = { - /** - * Expression to evaluate. - */ - expression: string; - /** - * Symbolic group name that can be used to release multiple objects. - */ - objectGroup?: string; - /** - * Determines whether Command Line API should be available during the evaluation. - */ - includeCommandLineAPI?: boolean; - /** - * In silent mode exceptions thrown during evaluation are not reported and do not pause -execution. Overrides `setPauseOnException` state. - */ - silent?: boolean; - /** - * Specifies in which execution context to perform evaluation. If the parameter is omitted the -evaluation will be performed in the context of the inspected page. - */ - contextId?: ExecutionContextId; - /** - * Whether the result is expected to be a JSON object that should be sent by value. - */ - returnByValue?: boolean; - /** - * Whether preview should be generated for the result. - */ - generatePreview?: boolean; - /** - * Whether execution should be treated as initiated by user in the UI. - */ - userGesture?: boolean; - /** - * Whether execution should `await` for resulting value and return once awaited promise is -resolved. - */ - awaitPromise?: boolean; - /** - * Whether to throw an exception if side effect cannot be ruled out during evaluation. -This implies `disableBreaks` below. - */ - throwOnSideEffect?: boolean; - /** - * Terminate execution after timing out (number of milliseconds). - */ - timeout?: TimeDelta; - /** - * Disable breakpoints during execution. - */ - disableBreaks?: boolean; - /** - * Setting this flag to true enables `let` re-declaration and top-level `await`. -Note that `let` variables can only be re-declared if they originate from -`replMode` themselves. - */ - replMode?: boolean; - } - export type evaluateReturnValue = { - /** - * Evaluation result. - */ - result: RemoteObject; - /** - * Exception details. - */ - exceptionDetails?: ExceptionDetails; - } - /** - * Returns the isolate id. - */ - export type getIsolateIdParameters = { - } - export type getIsolateIdReturnValue = { - /** - * The isolate id. - */ - id: string; - } - /** - * Returns the JavaScript heap usage. -It is the total usage of the corresponding isolate not scoped to a particular Runtime. - */ - export type getHeapUsageParameters = { - } - export type getHeapUsageReturnValue = { - /** - * Used heap size in bytes. - */ - usedSize: number; - /** - * Allocated heap size in bytes. - */ - totalSize: number; - } - /** - * Returns properties of a given object. Object group of the result is inherited from the target -object. - */ - export type getPropertiesParameters = { - /** - * Identifier of the object to return properties for. - */ - objectId: RemoteObjectId; - /** - * If true, returns properties belonging only to the element itself, not to its prototype -chain. - */ - ownProperties?: boolean; - /** - * If true, returns accessor properties (with getter/setter) only; internal properties are not -returned either. - */ - accessorPropertiesOnly?: boolean; - /** - * Whether preview should be generated for the results. - */ - generatePreview?: boolean; - } - export type getPropertiesReturnValue = { - /** - * Object properties. - */ - result: PropertyDescriptor[]; - /** - * Internal object properties (only of the element itself). - */ - internalProperties?: InternalPropertyDescriptor[]; - /** - * Object private properties. - */ - privateProperties?: PrivatePropertyDescriptor[]; - /** - * Exception details. - */ - exceptionDetails?: ExceptionDetails; - } - /** - * Returns all let, const and class variables from global scope. - */ - export type globalLexicalScopeNamesParameters = { - /** - * Specifies in which execution context to lookup global scope variables. - */ - executionContextId?: ExecutionContextId; - } - export type globalLexicalScopeNamesReturnValue = { - names: string[]; - } - export type queryObjectsParameters = { - /** - * Identifier of the prototype to return objects for. - */ - prototypeObjectId: RemoteObjectId; - /** - * Symbolic group name that can be used to release the results. - */ - objectGroup?: string; - } - export type queryObjectsReturnValue = { - /** - * Array with objects. - */ - objects: RemoteObject; - } - /** - * Releases remote object with given id. - */ - export type releaseObjectParameters = { - /** - * Identifier of the object to release. - */ - objectId: RemoteObjectId; - } - export type releaseObjectReturnValue = { - } - /** - * Releases all remote objects that belong to a given group. - */ - export type releaseObjectGroupParameters = { - /** - * Symbolic object group name. - */ - objectGroup: string; - } - export type releaseObjectGroupReturnValue = { - } - /** - * Tells inspected instance to run if it was waiting for debugger to attach. - */ - export type runIfWaitingForDebuggerParameters = { - } - export type runIfWaitingForDebuggerReturnValue = { - } - /** - * Runs script with given id in a given context. - */ - export type runScriptParameters = { - /** - * Id of the script to run. - */ - scriptId: ScriptId; - /** - * Specifies in which execution context to perform script run. If the parameter is omitted the -evaluation will be performed in the context of the inspected page. - */ - executionContextId?: ExecutionContextId; - /** - * Symbolic group name that can be used to release multiple objects. - */ - objectGroup?: string; - /** - * In silent mode exceptions thrown during evaluation are not reported and do not pause -execution. Overrides `setPauseOnException` state. - */ - silent?: boolean; - /** - * Determines whether Command Line API should be available during the evaluation. - */ - includeCommandLineAPI?: boolean; - /** - * Whether the result is expected to be a JSON object which should be sent by value. - */ - returnByValue?: boolean; - /** - * Whether preview should be generated for the result. - */ - generatePreview?: boolean; - /** - * Whether execution should `await` for resulting value and return once awaited promise is -resolved. - */ - awaitPromise?: boolean; - } - export type runScriptReturnValue = { - /** - * Run result. - */ - result: RemoteObject; - /** - * Exception details. - */ - exceptionDetails?: ExceptionDetails; - } - /** - * Enables or disables async call stacks tracking. - */ - export type setAsyncCallStackDepthParameters = { - /** - * Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async -call stacks (default). - */ - maxDepth: number; - } - export type setAsyncCallStackDepthReturnValue = { - } - export type setCustomObjectFormatterEnabledParameters = { - enabled: boolean; - } - export type setCustomObjectFormatterEnabledReturnValue = { - } - export type setMaxCallStackSizeToCaptureParameters = { - size: number; - } - export type setMaxCallStackSizeToCaptureReturnValue = { - } - /** - * Terminate current or next JavaScript execution. -Will cancel the termination when the outer-most script execution ends. - */ - export type terminateExecutionParameters = { - } - export type terminateExecutionReturnValue = { - } - /** - * If executionContextId is empty, adds binding with the given name on the -global objects of all inspected contexts, including those created later, -bindings survive reloads. -If executionContextId is specified, adds binding only on global object of -given execution context. -Binding function takes exactly one argument, this argument should be string, -in case of any other input, function throws an exception. -Each binding function call produces Runtime.bindingCalled notification. - */ - export type addBindingParameters = { - name: string; - executionContextId?: ExecutionContextId; - } - export type addBindingReturnValue = { - } - /** - * This method does not remove binding function from global object but -unsubscribes current runtime agent from Runtime.bindingCalled notifications. - */ - export type removeBindingParameters = { - name: string; - } - export type removeBindingReturnValue = { - } - } - - /** - * This domain is deprecated. - */ - export module Schema { - /** - * Description of the protocol domain. - */ - export interface Domain { - /** - * Domain name. - */ - name: string; - /** - * Domain version. - */ - version: string; - } - - - /** - * Returns supported domains. - */ - export type getDomainsParameters = { - } - export type getDomainsReturnValue = { - /** - * List of supported domains. - */ - domains: Domain[]; - } - } - - export interface Events { - "Animation.animationCanceled": Animation.animationCanceledPayload; - "Animation.animationCreated": Animation.animationCreatedPayload; - "Animation.animationStarted": Animation.animationStartedPayload; - "ApplicationCache.applicationCacheStatusUpdated": ApplicationCache.applicationCacheStatusUpdatedPayload; - "ApplicationCache.networkStateUpdated": ApplicationCache.networkStateUpdatedPayload; - "Audits.issueAdded": Audits.issueAddedPayload; - "BackgroundService.recordingStateChanged": BackgroundService.recordingStateChangedPayload; - "BackgroundService.backgroundServiceEventReceived": BackgroundService.backgroundServiceEventReceivedPayload; - "CSS.fontsUpdated": CSS.fontsUpdatedPayload; - "CSS.mediaQueryResultChanged": CSS.mediaQueryResultChangedPayload; - "CSS.styleSheetAdded": CSS.styleSheetAddedPayload; - "CSS.styleSheetChanged": CSS.styleSheetChangedPayload; - "CSS.styleSheetRemoved": CSS.styleSheetRemovedPayload; - "Cast.sinksUpdated": Cast.sinksUpdatedPayload; - "Cast.issueUpdated": Cast.issueUpdatedPayload; - "DOM.attributeModified": DOM.attributeModifiedPayload; - "DOM.attributeRemoved": DOM.attributeRemovedPayload; - "DOM.characterDataModified": DOM.characterDataModifiedPayload; - "DOM.childNodeCountUpdated": DOM.childNodeCountUpdatedPayload; - "DOM.childNodeInserted": DOM.childNodeInsertedPayload; - "DOM.childNodeRemoved": DOM.childNodeRemovedPayload; - "DOM.distributedNodesUpdated": DOM.distributedNodesUpdatedPayload; - "DOM.documentUpdated": DOM.documentUpdatedPayload; - "DOM.inlineStyleInvalidated": DOM.inlineStyleInvalidatedPayload; - "DOM.pseudoElementAdded": DOM.pseudoElementAddedPayload; - "DOM.pseudoElementRemoved": DOM.pseudoElementRemovedPayload; - "DOM.setChildNodes": DOM.setChildNodesPayload; - "DOM.shadowRootPopped": DOM.shadowRootPoppedPayload; - "DOM.shadowRootPushed": DOM.shadowRootPushedPayload; - "DOMStorage.domStorageItemAdded": DOMStorage.domStorageItemAddedPayload; - "DOMStorage.domStorageItemRemoved": DOMStorage.domStorageItemRemovedPayload; - "DOMStorage.domStorageItemUpdated": DOMStorage.domStorageItemUpdatedPayload; - "DOMStorage.domStorageItemsCleared": DOMStorage.domStorageItemsClearedPayload; - "Database.addDatabase": Database.addDatabasePayload; - "Emulation.virtualTimeBudgetExpired": Emulation.virtualTimeBudgetExpiredPayload; - "HeadlessExperimental.needsBeginFramesChanged": HeadlessExperimental.needsBeginFramesChangedPayload; - "Inspector.detached": Inspector.detachedPayload; - "Inspector.targetCrashed": Inspector.targetCrashedPayload; - "Inspector.targetReloadedAfterCrash": Inspector.targetReloadedAfterCrashPayload; - "LayerTree.layerPainted": LayerTree.layerPaintedPayload; - "LayerTree.layerTreeDidChange": LayerTree.layerTreeDidChangePayload; - "Log.entryAdded": Log.entryAddedPayload; - "Network.dataReceived": Network.dataReceivedPayload; - "Network.eventSourceMessageReceived": Network.eventSourceMessageReceivedPayload; - "Network.loadingFailed": Network.loadingFailedPayload; - "Network.loadingFinished": Network.loadingFinishedPayload; - "Network.requestIntercepted": Network.requestInterceptedPayload; - "Network.requestServedFromCache": Network.requestServedFromCachePayload; - "Network.requestWillBeSent": Network.requestWillBeSentPayload; - "Network.resourceChangedPriority": Network.resourceChangedPriorityPayload; - "Network.signedExchangeReceived": Network.signedExchangeReceivedPayload; - "Network.responseReceived": Network.responseReceivedPayload; - "Network.webSocketClosed": Network.webSocketClosedPayload; - "Network.webSocketCreated": Network.webSocketCreatedPayload; - "Network.webSocketFrameError": Network.webSocketFrameErrorPayload; - "Network.webSocketFrameReceived": Network.webSocketFrameReceivedPayload; - "Network.webSocketFrameSent": Network.webSocketFrameSentPayload; - "Network.webSocketHandshakeResponseReceived": Network.webSocketHandshakeResponseReceivedPayload; - "Network.webSocketWillSendHandshakeRequest": Network.webSocketWillSendHandshakeRequestPayload; - "Network.requestWillBeSentExtraInfo": Network.requestWillBeSentExtraInfoPayload; - "Network.responseReceivedExtraInfo": Network.responseReceivedExtraInfoPayload; - "Overlay.inspectNodeRequested": Overlay.inspectNodeRequestedPayload; - "Overlay.nodeHighlightRequested": Overlay.nodeHighlightRequestedPayload; - "Overlay.screenshotRequested": Overlay.screenshotRequestedPayload; - "Overlay.inspectModeCanceled": Overlay.inspectModeCanceledPayload; - "Page.domContentEventFired": Page.domContentEventFiredPayload; - "Page.fileChooserOpened": Page.fileChooserOpenedPayload; - "Page.frameAttached": Page.frameAttachedPayload; - "Page.frameClearedScheduledNavigation": Page.frameClearedScheduledNavigationPayload; - "Page.frameDetached": Page.frameDetachedPayload; - "Page.frameNavigated": Page.frameNavigatedPayload; - "Page.frameResized": Page.frameResizedPayload; - "Page.frameRequestedNavigation": Page.frameRequestedNavigationPayload; - "Page.frameScheduledNavigation": Page.frameScheduledNavigationPayload; - "Page.frameStartedLoading": Page.frameStartedLoadingPayload; - "Page.frameStoppedLoading": Page.frameStoppedLoadingPayload; - "Page.downloadWillBegin": Page.downloadWillBeginPayload; - "Page.downloadProgress": Page.downloadProgressPayload; - "Page.interstitialHidden": Page.interstitialHiddenPayload; - "Page.interstitialShown": Page.interstitialShownPayload; - "Page.javascriptDialogClosed": Page.javascriptDialogClosedPayload; - "Page.javascriptDialogOpening": Page.javascriptDialogOpeningPayload; - "Page.lifecycleEvent": Page.lifecycleEventPayload; - "Page.loadEventFired": Page.loadEventFiredPayload; - "Page.navigatedWithinDocument": Page.navigatedWithinDocumentPayload; - "Page.screencastFrame": Page.screencastFramePayload; - "Page.screencastVisibilityChanged": Page.screencastVisibilityChangedPayload; - "Page.windowOpen": Page.windowOpenPayload; - "Page.compilationCacheProduced": Page.compilationCacheProducedPayload; - "Performance.metrics": Performance.metricsPayload; - "Security.certificateError": Security.certificateErrorPayload; - "Security.visibleSecurityStateChanged": Security.visibleSecurityStateChangedPayload; - "Security.securityStateChanged": Security.securityStateChangedPayload; - "ServiceWorker.workerErrorReported": ServiceWorker.workerErrorReportedPayload; - "ServiceWorker.workerRegistrationUpdated": ServiceWorker.workerRegistrationUpdatedPayload; - "ServiceWorker.workerVersionUpdated": ServiceWorker.workerVersionUpdatedPayload; - "Storage.cacheStorageContentUpdated": Storage.cacheStorageContentUpdatedPayload; - "Storage.cacheStorageListUpdated": Storage.cacheStorageListUpdatedPayload; - "Storage.indexedDBContentUpdated": Storage.indexedDBContentUpdatedPayload; - "Storage.indexedDBListUpdated": Storage.indexedDBListUpdatedPayload; - "Target.attachedToTarget": Target.attachedToTargetPayload; - "Target.detachedFromTarget": Target.detachedFromTargetPayload; - "Target.receivedMessageFromTarget": Target.receivedMessageFromTargetPayload; - "Target.targetCreated": Target.targetCreatedPayload; - "Target.targetDestroyed": Target.targetDestroyedPayload; - "Target.targetCrashed": Target.targetCrashedPayload; - "Target.targetInfoChanged": Target.targetInfoChangedPayload; - "Tethering.accepted": Tethering.acceptedPayload; - "Tracing.bufferUsage": Tracing.bufferUsagePayload; - "Tracing.dataCollected": Tracing.dataCollectedPayload; - "Tracing.tracingComplete": Tracing.tracingCompletePayload; - "Fetch.requestPaused": Fetch.requestPausedPayload; - "Fetch.authRequired": Fetch.authRequiredPayload; - "WebAudio.contextCreated": WebAudio.contextCreatedPayload; - "WebAudio.contextWillBeDestroyed": WebAudio.contextWillBeDestroyedPayload; - "WebAudio.contextChanged": WebAudio.contextChangedPayload; - "WebAudio.audioListenerCreated": WebAudio.audioListenerCreatedPayload; - "WebAudio.audioListenerWillBeDestroyed": WebAudio.audioListenerWillBeDestroyedPayload; - "WebAudio.audioNodeCreated": WebAudio.audioNodeCreatedPayload; - "WebAudio.audioNodeWillBeDestroyed": WebAudio.audioNodeWillBeDestroyedPayload; - "WebAudio.audioParamCreated": WebAudio.audioParamCreatedPayload; - "WebAudio.audioParamWillBeDestroyed": WebAudio.audioParamWillBeDestroyedPayload; - "WebAudio.nodesConnected": WebAudio.nodesConnectedPayload; - "WebAudio.nodesDisconnected": WebAudio.nodesDisconnectedPayload; - "WebAudio.nodeParamConnected": WebAudio.nodeParamConnectedPayload; - "WebAudio.nodeParamDisconnected": WebAudio.nodeParamDisconnectedPayload; - "Media.playerPropertiesChanged": Media.playerPropertiesChangedPayload; - "Media.playerEventsAdded": Media.playerEventsAddedPayload; - "Media.playersCreated": Media.playersCreatedPayload; - "Console.messageAdded": Console.messageAddedPayload; - "Debugger.breakpointResolved": Debugger.breakpointResolvedPayload; - "Debugger.paused": Debugger.pausedPayload; - "Debugger.resumed": Debugger.resumedPayload; - "Debugger.scriptFailedToParse": Debugger.scriptFailedToParsePayload; - "Debugger.scriptParsed": Debugger.scriptParsedPayload; - "HeapProfiler.addHeapSnapshotChunk": HeapProfiler.addHeapSnapshotChunkPayload; - "HeapProfiler.heapStatsUpdate": HeapProfiler.heapStatsUpdatePayload; - "HeapProfiler.lastSeenObjectId": HeapProfiler.lastSeenObjectIdPayload; - "HeapProfiler.reportHeapSnapshotProgress": HeapProfiler.reportHeapSnapshotProgressPayload; - "HeapProfiler.resetProfiles": HeapProfiler.resetProfilesPayload; - "Profiler.consoleProfileFinished": Profiler.consoleProfileFinishedPayload; - "Profiler.consoleProfileStarted": Profiler.consoleProfileStartedPayload; - "Profiler.preciseCoverageDeltaUpdate": Profiler.preciseCoverageDeltaUpdatePayload; - "Runtime.bindingCalled": Runtime.bindingCalledPayload; - "Runtime.consoleAPICalled": Runtime.consoleAPICalledPayload; - "Runtime.exceptionRevoked": Runtime.exceptionRevokedPayload; - "Runtime.exceptionThrown": Runtime.exceptionThrownPayload; - "Runtime.executionContextCreated": Runtime.executionContextCreatedPayload; - "Runtime.executionContextDestroyed": Runtime.executionContextDestroyedPayload; - "Runtime.executionContextsCleared": Runtime.executionContextsClearedPayload; - "Runtime.inspectRequested": Runtime.inspectRequestedPayload; - } - export interface CommandParameters { - "Accessibility.disable": Accessibility.disableParameters; - "Accessibility.enable": Accessibility.enableParameters; - "Accessibility.getPartialAXTree": Accessibility.getPartialAXTreeParameters; - "Accessibility.getFullAXTree": Accessibility.getFullAXTreeParameters; - "Animation.disable": Animation.disableParameters; - "Animation.enable": Animation.enableParameters; - "Animation.getCurrentTime": Animation.getCurrentTimeParameters; - "Animation.getPlaybackRate": Animation.getPlaybackRateParameters; - "Animation.releaseAnimations": Animation.releaseAnimationsParameters; - "Animation.resolveAnimation": Animation.resolveAnimationParameters; - "Animation.seekAnimations": Animation.seekAnimationsParameters; - "Animation.setPaused": Animation.setPausedParameters; - "Animation.setPlaybackRate": Animation.setPlaybackRateParameters; - "Animation.setTiming": Animation.setTimingParameters; - "ApplicationCache.enable": ApplicationCache.enableParameters; - "ApplicationCache.getApplicationCacheForFrame": ApplicationCache.getApplicationCacheForFrameParameters; - "ApplicationCache.getFramesWithManifests": ApplicationCache.getFramesWithManifestsParameters; - "ApplicationCache.getManifestForFrame": ApplicationCache.getManifestForFrameParameters; - "Audits.getEncodedResponse": Audits.getEncodedResponseParameters; - "Audits.disable": Audits.disableParameters; - "Audits.enable": Audits.enableParameters; - "BackgroundService.startObserving": BackgroundService.startObservingParameters; - "BackgroundService.stopObserving": BackgroundService.stopObservingParameters; - "BackgroundService.setRecording": BackgroundService.setRecordingParameters; - "BackgroundService.clearEvents": BackgroundService.clearEventsParameters; - "Browser.setPermission": Browser.setPermissionParameters; - "Browser.grantPermissions": Browser.grantPermissionsParameters; - "Browser.resetPermissions": Browser.resetPermissionsParameters; - "Browser.setDownloadBehavior": Browser.setDownloadBehaviorParameters; - "Browser.close": Browser.closeParameters; - "Browser.crash": Browser.crashParameters; - "Browser.crashGpuProcess": Browser.crashGpuProcessParameters; - "Browser.getVersion": Browser.getVersionParameters; - "Browser.getBrowserCommandLine": Browser.getBrowserCommandLineParameters; - "Browser.getHistograms": Browser.getHistogramsParameters; - "Browser.getHistogram": Browser.getHistogramParameters; - "Browser.getWindowBounds": Browser.getWindowBoundsParameters; - "Browser.getWindowForTarget": Browser.getWindowForTargetParameters; - "Browser.setWindowBounds": Browser.setWindowBoundsParameters; - "Browser.setDockTile": Browser.setDockTileParameters; - "CSS.addRule": CSS.addRuleParameters; - "CSS.collectClassNames": CSS.collectClassNamesParameters; - "CSS.createStyleSheet": CSS.createStyleSheetParameters; - "CSS.disable": CSS.disableParameters; - "CSS.enable": CSS.enableParameters; - "CSS.forcePseudoState": CSS.forcePseudoStateParameters; - "CSS.getBackgroundColors": CSS.getBackgroundColorsParameters; - "CSS.getComputedStyleForNode": CSS.getComputedStyleForNodeParameters; - "CSS.getInlineStylesForNode": CSS.getInlineStylesForNodeParameters; - "CSS.getMatchedStylesForNode": CSS.getMatchedStylesForNodeParameters; - "CSS.getMediaQueries": CSS.getMediaQueriesParameters; - "CSS.getPlatformFontsForNode": CSS.getPlatformFontsForNodeParameters; - "CSS.getStyleSheetText": CSS.getStyleSheetTextParameters; - "CSS.setEffectivePropertyValueForNode": CSS.setEffectivePropertyValueForNodeParameters; - "CSS.setKeyframeKey": CSS.setKeyframeKeyParameters; - "CSS.setMediaText": CSS.setMediaTextParameters; - "CSS.setRuleSelector": CSS.setRuleSelectorParameters; - "CSS.setStyleSheetText": CSS.setStyleSheetTextParameters; - "CSS.setStyleTexts": CSS.setStyleTextsParameters; - "CSS.startRuleUsageTracking": CSS.startRuleUsageTrackingParameters; - "CSS.stopRuleUsageTracking": CSS.stopRuleUsageTrackingParameters; - "CSS.takeCoverageDelta": CSS.takeCoverageDeltaParameters; - "CacheStorage.deleteCache": CacheStorage.deleteCacheParameters; - "CacheStorage.deleteEntry": CacheStorage.deleteEntryParameters; - "CacheStorage.requestCacheNames": CacheStorage.requestCacheNamesParameters; - "CacheStorage.requestCachedResponse": CacheStorage.requestCachedResponseParameters; - "CacheStorage.requestEntries": CacheStorage.requestEntriesParameters; - "Cast.enable": Cast.enableParameters; - "Cast.disable": Cast.disableParameters; - "Cast.setSinkToUse": Cast.setSinkToUseParameters; - "Cast.startTabMirroring": Cast.startTabMirroringParameters; - "Cast.stopCasting": Cast.stopCastingParameters; - "DOM.collectClassNamesFromSubtree": DOM.collectClassNamesFromSubtreeParameters; - "DOM.copyTo": DOM.copyToParameters; - "DOM.describeNode": DOM.describeNodeParameters; - "DOM.scrollIntoViewIfNeeded": DOM.scrollIntoViewIfNeededParameters; - "DOM.disable": DOM.disableParameters; - "DOM.discardSearchResults": DOM.discardSearchResultsParameters; - "DOM.enable": DOM.enableParameters; - "DOM.focus": DOM.focusParameters; - "DOM.getAttributes": DOM.getAttributesParameters; - "DOM.getBoxModel": DOM.getBoxModelParameters; - "DOM.getContentQuads": DOM.getContentQuadsParameters; - "DOM.getDocument": DOM.getDocumentParameters; - "DOM.getFlattenedDocument": DOM.getFlattenedDocumentParameters; - "DOM.getNodeForLocation": DOM.getNodeForLocationParameters; - "DOM.getOuterHTML": DOM.getOuterHTMLParameters; - "DOM.getRelayoutBoundary": DOM.getRelayoutBoundaryParameters; - "DOM.getSearchResults": DOM.getSearchResultsParameters; - "DOM.hideHighlight": DOM.hideHighlightParameters; - "DOM.highlightNode": DOM.highlightNodeParameters; - "DOM.highlightRect": DOM.highlightRectParameters; - "DOM.markUndoableState": DOM.markUndoableStateParameters; - "DOM.moveTo": DOM.moveToParameters; - "DOM.performSearch": DOM.performSearchParameters; - "DOM.pushNodeByPathToFrontend": DOM.pushNodeByPathToFrontendParameters; - "DOM.pushNodesByBackendIdsToFrontend": DOM.pushNodesByBackendIdsToFrontendParameters; - "DOM.querySelector": DOM.querySelectorParameters; - "DOM.querySelectorAll": DOM.querySelectorAllParameters; - "DOM.redo": DOM.redoParameters; - "DOM.removeAttribute": DOM.removeAttributeParameters; - "DOM.removeNode": DOM.removeNodeParameters; - "DOM.requestChildNodes": DOM.requestChildNodesParameters; - "DOM.requestNode": DOM.requestNodeParameters; - "DOM.resolveNode": DOM.resolveNodeParameters; - "DOM.setAttributeValue": DOM.setAttributeValueParameters; - "DOM.setAttributesAsText": DOM.setAttributesAsTextParameters; - "DOM.setFileInputFiles": DOM.setFileInputFilesParameters; - "DOM.setNodeStackTracesEnabled": DOM.setNodeStackTracesEnabledParameters; - "DOM.getNodeStackTraces": DOM.getNodeStackTracesParameters; - "DOM.getFileInfo": DOM.getFileInfoParameters; - "DOM.setInspectedNode": DOM.setInspectedNodeParameters; - "DOM.setNodeName": DOM.setNodeNameParameters; - "DOM.setNodeValue": DOM.setNodeValueParameters; - "DOM.setOuterHTML": DOM.setOuterHTMLParameters; - "DOM.undo": DOM.undoParameters; - "DOM.getFrameOwner": DOM.getFrameOwnerParameters; - "DOMDebugger.getEventListeners": DOMDebugger.getEventListenersParameters; - "DOMDebugger.removeDOMBreakpoint": DOMDebugger.removeDOMBreakpointParameters; - "DOMDebugger.removeEventListenerBreakpoint": DOMDebugger.removeEventListenerBreakpointParameters; - "DOMDebugger.removeInstrumentationBreakpoint": DOMDebugger.removeInstrumentationBreakpointParameters; - "DOMDebugger.removeXHRBreakpoint": DOMDebugger.removeXHRBreakpointParameters; - "DOMDebugger.setDOMBreakpoint": DOMDebugger.setDOMBreakpointParameters; - "DOMDebugger.setEventListenerBreakpoint": DOMDebugger.setEventListenerBreakpointParameters; - "DOMDebugger.setInstrumentationBreakpoint": DOMDebugger.setInstrumentationBreakpointParameters; - "DOMDebugger.setXHRBreakpoint": DOMDebugger.setXHRBreakpointParameters; - "DOMSnapshot.disable": DOMSnapshot.disableParameters; - "DOMSnapshot.enable": DOMSnapshot.enableParameters; - "DOMSnapshot.getSnapshot": DOMSnapshot.getSnapshotParameters; - "DOMSnapshot.captureSnapshot": DOMSnapshot.captureSnapshotParameters; - "DOMStorage.clear": DOMStorage.clearParameters; - "DOMStorage.disable": DOMStorage.disableParameters; - "DOMStorage.enable": DOMStorage.enableParameters; - "DOMStorage.getDOMStorageItems": DOMStorage.getDOMStorageItemsParameters; - "DOMStorage.removeDOMStorageItem": DOMStorage.removeDOMStorageItemParameters; - "DOMStorage.setDOMStorageItem": DOMStorage.setDOMStorageItemParameters; - "Database.disable": Database.disableParameters; - "Database.enable": Database.enableParameters; - "Database.executeSQL": Database.executeSQLParameters; - "Database.getDatabaseTableNames": Database.getDatabaseTableNamesParameters; - "DeviceOrientation.clearDeviceOrientationOverride": DeviceOrientation.clearDeviceOrientationOverrideParameters; - "DeviceOrientation.setDeviceOrientationOverride": DeviceOrientation.setDeviceOrientationOverrideParameters; - "Emulation.canEmulate": Emulation.canEmulateParameters; - "Emulation.clearDeviceMetricsOverride": Emulation.clearDeviceMetricsOverrideParameters; - "Emulation.clearGeolocationOverride": Emulation.clearGeolocationOverrideParameters; - "Emulation.resetPageScaleFactor": Emulation.resetPageScaleFactorParameters; - "Emulation.setFocusEmulationEnabled": Emulation.setFocusEmulationEnabledParameters; - "Emulation.setCPUThrottlingRate": Emulation.setCPUThrottlingRateParameters; - "Emulation.setDefaultBackgroundColorOverride": Emulation.setDefaultBackgroundColorOverrideParameters; - "Emulation.setDeviceMetricsOverride": Emulation.setDeviceMetricsOverrideParameters; - "Emulation.setScrollbarsHidden": Emulation.setScrollbarsHiddenParameters; - "Emulation.setDocumentCookieDisabled": Emulation.setDocumentCookieDisabledParameters; - "Emulation.setEmitTouchEventsForMouse": Emulation.setEmitTouchEventsForMouseParameters; - "Emulation.setEmulatedMedia": Emulation.setEmulatedMediaParameters; - "Emulation.setEmulatedVisionDeficiency": Emulation.setEmulatedVisionDeficiencyParameters; - "Emulation.setGeolocationOverride": Emulation.setGeolocationOverrideParameters; - "Emulation.setNavigatorOverrides": Emulation.setNavigatorOverridesParameters; - "Emulation.setPageScaleFactor": Emulation.setPageScaleFactorParameters; - "Emulation.setScriptExecutionDisabled": Emulation.setScriptExecutionDisabledParameters; - "Emulation.setTouchEmulationEnabled": Emulation.setTouchEmulationEnabledParameters; - "Emulation.setVirtualTimePolicy": Emulation.setVirtualTimePolicyParameters; - "Emulation.setLocaleOverride": Emulation.setLocaleOverrideParameters; - "Emulation.setTimezoneOverride": Emulation.setTimezoneOverrideParameters; - "Emulation.setVisibleSize": Emulation.setVisibleSizeParameters; - "Emulation.setUserAgentOverride": Emulation.setUserAgentOverrideParameters; - "HeadlessExperimental.beginFrame": HeadlessExperimental.beginFrameParameters; - "HeadlessExperimental.disable": HeadlessExperimental.disableParameters; - "HeadlessExperimental.enable": HeadlessExperimental.enableParameters; - "IO.close": IO.closeParameters; - "IO.read": IO.readParameters; - "IO.resolveBlob": IO.resolveBlobParameters; - "IndexedDB.clearObjectStore": IndexedDB.clearObjectStoreParameters; - "IndexedDB.deleteDatabase": IndexedDB.deleteDatabaseParameters; - "IndexedDB.deleteObjectStoreEntries": IndexedDB.deleteObjectStoreEntriesParameters; - "IndexedDB.disable": IndexedDB.disableParameters; - "IndexedDB.enable": IndexedDB.enableParameters; - "IndexedDB.requestData": IndexedDB.requestDataParameters; - "IndexedDB.getMetadata": IndexedDB.getMetadataParameters; - "IndexedDB.requestDatabase": IndexedDB.requestDatabaseParameters; - "IndexedDB.requestDatabaseNames": IndexedDB.requestDatabaseNamesParameters; - "Input.dispatchKeyEvent": Input.dispatchKeyEventParameters; - "Input.insertText": Input.insertTextParameters; - "Input.dispatchMouseEvent": Input.dispatchMouseEventParameters; - "Input.dispatchTouchEvent": Input.dispatchTouchEventParameters; - "Input.emulateTouchFromMouseEvent": Input.emulateTouchFromMouseEventParameters; - "Input.setIgnoreInputEvents": Input.setIgnoreInputEventsParameters; - "Input.synthesizePinchGesture": Input.synthesizePinchGestureParameters; - "Input.synthesizeScrollGesture": Input.synthesizeScrollGestureParameters; - "Input.synthesizeTapGesture": Input.synthesizeTapGestureParameters; - "Inspector.disable": Inspector.disableParameters; - "Inspector.enable": Inspector.enableParameters; - "LayerTree.compositingReasons": LayerTree.compositingReasonsParameters; - "LayerTree.disable": LayerTree.disableParameters; - "LayerTree.enable": LayerTree.enableParameters; - "LayerTree.loadSnapshot": LayerTree.loadSnapshotParameters; - "LayerTree.makeSnapshot": LayerTree.makeSnapshotParameters; - "LayerTree.profileSnapshot": LayerTree.profileSnapshotParameters; - "LayerTree.releaseSnapshot": LayerTree.releaseSnapshotParameters; - "LayerTree.replaySnapshot": LayerTree.replaySnapshotParameters; - "LayerTree.snapshotCommandLog": LayerTree.snapshotCommandLogParameters; - "Log.clear": Log.clearParameters; - "Log.disable": Log.disableParameters; - "Log.enable": Log.enableParameters; - "Log.startViolationsReport": Log.startViolationsReportParameters; - "Log.stopViolationsReport": Log.stopViolationsReportParameters; - "Memory.getDOMCounters": Memory.getDOMCountersParameters; - "Memory.prepareForLeakDetection": Memory.prepareForLeakDetectionParameters; - "Memory.forciblyPurgeJavaScriptMemory": Memory.forciblyPurgeJavaScriptMemoryParameters; - "Memory.setPressureNotificationsSuppressed": Memory.setPressureNotificationsSuppressedParameters; - "Memory.simulatePressureNotification": Memory.simulatePressureNotificationParameters; - "Memory.startSampling": Memory.startSamplingParameters; - "Memory.stopSampling": Memory.stopSamplingParameters; - "Memory.getAllTimeSamplingProfile": Memory.getAllTimeSamplingProfileParameters; - "Memory.getBrowserSamplingProfile": Memory.getBrowserSamplingProfileParameters; - "Memory.getSamplingProfile": Memory.getSamplingProfileParameters; - "Network.canClearBrowserCache": Network.canClearBrowserCacheParameters; - "Network.canClearBrowserCookies": Network.canClearBrowserCookiesParameters; - "Network.canEmulateNetworkConditions": Network.canEmulateNetworkConditionsParameters; - "Network.clearBrowserCache": Network.clearBrowserCacheParameters; - "Network.clearBrowserCookies": Network.clearBrowserCookiesParameters; - "Network.continueInterceptedRequest": Network.continueInterceptedRequestParameters; - "Network.deleteCookies": Network.deleteCookiesParameters; - "Network.disable": Network.disableParameters; - "Network.emulateNetworkConditions": Network.emulateNetworkConditionsParameters; - "Network.enable": Network.enableParameters; - "Network.getAllCookies": Network.getAllCookiesParameters; - "Network.getCertificate": Network.getCertificateParameters; - "Network.getCookies": Network.getCookiesParameters; - "Network.getResponseBody": Network.getResponseBodyParameters; - "Network.getRequestPostData": Network.getRequestPostDataParameters; - "Network.getResponseBodyForInterception": Network.getResponseBodyForInterceptionParameters; - "Network.takeResponseBodyForInterceptionAsStream": Network.takeResponseBodyForInterceptionAsStreamParameters; - "Network.replayXHR": Network.replayXHRParameters; - "Network.searchInResponseBody": Network.searchInResponseBodyParameters; - "Network.setBlockedURLs": Network.setBlockedURLsParameters; - "Network.setBypassServiceWorker": Network.setBypassServiceWorkerParameters; - "Network.setCacheDisabled": Network.setCacheDisabledParameters; - "Network.setCookie": Network.setCookieParameters; - "Network.setCookies": Network.setCookiesParameters; - "Network.setDataSizeLimitsForTest": Network.setDataSizeLimitsForTestParameters; - "Network.setExtraHTTPHeaders": Network.setExtraHTTPHeadersParameters; - "Network.setRequestInterception": Network.setRequestInterceptionParameters; - "Network.setUserAgentOverride": Network.setUserAgentOverrideParameters; - "Overlay.disable": Overlay.disableParameters; - "Overlay.enable": Overlay.enableParameters; - "Overlay.getHighlightObjectForTest": Overlay.getHighlightObjectForTestParameters; - "Overlay.hideHighlight": Overlay.hideHighlightParameters; - "Overlay.highlightFrame": Overlay.highlightFrameParameters; - "Overlay.highlightNode": Overlay.highlightNodeParameters; - "Overlay.highlightQuad": Overlay.highlightQuadParameters; - "Overlay.highlightRect": Overlay.highlightRectParameters; - "Overlay.setInspectMode": Overlay.setInspectModeParameters; - "Overlay.setShowAdHighlights": Overlay.setShowAdHighlightsParameters; - "Overlay.setPausedInDebuggerMessage": Overlay.setPausedInDebuggerMessageParameters; - "Overlay.setShowDebugBorders": Overlay.setShowDebugBordersParameters; - "Overlay.setShowFPSCounter": Overlay.setShowFPSCounterParameters; - "Overlay.setShowPaintRects": Overlay.setShowPaintRectsParameters; - "Overlay.setShowLayoutShiftRegions": Overlay.setShowLayoutShiftRegionsParameters; - "Overlay.setShowScrollBottleneckRects": Overlay.setShowScrollBottleneckRectsParameters; - "Overlay.setShowHitTestBorders": Overlay.setShowHitTestBordersParameters; - "Overlay.setShowViewportSizeOnResize": Overlay.setShowViewportSizeOnResizeParameters; - "Page.addScriptToEvaluateOnLoad": Page.addScriptToEvaluateOnLoadParameters; - "Page.addScriptToEvaluateOnNewDocument": Page.addScriptToEvaluateOnNewDocumentParameters; - "Page.bringToFront": Page.bringToFrontParameters; - "Page.captureScreenshot": Page.captureScreenshotParameters; - "Page.captureSnapshot": Page.captureSnapshotParameters; - "Page.clearDeviceMetricsOverride": Page.clearDeviceMetricsOverrideParameters; - "Page.clearDeviceOrientationOverride": Page.clearDeviceOrientationOverrideParameters; - "Page.clearGeolocationOverride": Page.clearGeolocationOverrideParameters; - "Page.createIsolatedWorld": Page.createIsolatedWorldParameters; - "Page.deleteCookie": Page.deleteCookieParameters; - "Page.disable": Page.disableParameters; - "Page.enable": Page.enableParameters; - "Page.getAppManifest": Page.getAppManifestParameters; - "Page.getInstallabilityErrors": Page.getInstallabilityErrorsParameters; - "Page.getManifestIcons": Page.getManifestIconsParameters; - "Page.getCookies": Page.getCookiesParameters; - "Page.getFrameTree": Page.getFrameTreeParameters; - "Page.getLayoutMetrics": Page.getLayoutMetricsParameters; - "Page.getNavigationHistory": Page.getNavigationHistoryParameters; - "Page.resetNavigationHistory": Page.resetNavigationHistoryParameters; - "Page.getResourceContent": Page.getResourceContentParameters; - "Page.getResourceTree": Page.getResourceTreeParameters; - "Page.handleJavaScriptDialog": Page.handleJavaScriptDialogParameters; - "Page.navigate": Page.navigateParameters; - "Page.navigateToHistoryEntry": Page.navigateToHistoryEntryParameters; - "Page.printToPDF": Page.printToPDFParameters; - "Page.reload": Page.reloadParameters; - "Page.removeScriptToEvaluateOnLoad": Page.removeScriptToEvaluateOnLoadParameters; - "Page.removeScriptToEvaluateOnNewDocument": Page.removeScriptToEvaluateOnNewDocumentParameters; - "Page.screencastFrameAck": Page.screencastFrameAckParameters; - "Page.searchInResource": Page.searchInResourceParameters; - "Page.setAdBlockingEnabled": Page.setAdBlockingEnabledParameters; - "Page.setBypassCSP": Page.setBypassCSPParameters; - "Page.setDeviceMetricsOverride": Page.setDeviceMetricsOverrideParameters; - "Page.setDeviceOrientationOverride": Page.setDeviceOrientationOverrideParameters; - "Page.setFontFamilies": Page.setFontFamiliesParameters; - "Page.setFontSizes": Page.setFontSizesParameters; - "Page.setDocumentContent": Page.setDocumentContentParameters; - "Page.setDownloadBehavior": Page.setDownloadBehaviorParameters; - "Page.setGeolocationOverride": Page.setGeolocationOverrideParameters; - "Page.setLifecycleEventsEnabled": Page.setLifecycleEventsEnabledParameters; - "Page.setTouchEmulationEnabled": Page.setTouchEmulationEnabledParameters; - "Page.startScreencast": Page.startScreencastParameters; - "Page.stopLoading": Page.stopLoadingParameters; - "Page.crash": Page.crashParameters; - "Page.close": Page.closeParameters; - "Page.setWebLifecycleState": Page.setWebLifecycleStateParameters; - "Page.stopScreencast": Page.stopScreencastParameters; - "Page.setProduceCompilationCache": Page.setProduceCompilationCacheParameters; - "Page.addCompilationCache": Page.addCompilationCacheParameters; - "Page.clearCompilationCache": Page.clearCompilationCacheParameters; - "Page.generateTestReport": Page.generateTestReportParameters; - "Page.waitForDebugger": Page.waitForDebuggerParameters; - "Page.setInterceptFileChooserDialog": Page.setInterceptFileChooserDialogParameters; - "Performance.disable": Performance.disableParameters; - "Performance.enable": Performance.enableParameters; - "Performance.setTimeDomain": Performance.setTimeDomainParameters; - "Performance.getMetrics": Performance.getMetricsParameters; - "Security.disable": Security.disableParameters; - "Security.enable": Security.enableParameters; - "Security.setIgnoreCertificateErrors": Security.setIgnoreCertificateErrorsParameters; - "Security.handleCertificateError": Security.handleCertificateErrorParameters; - "Security.setOverrideCertificateErrors": Security.setOverrideCertificateErrorsParameters; - "ServiceWorker.deliverPushMessage": ServiceWorker.deliverPushMessageParameters; - "ServiceWorker.disable": ServiceWorker.disableParameters; - "ServiceWorker.dispatchSyncEvent": ServiceWorker.dispatchSyncEventParameters; - "ServiceWorker.dispatchPeriodicSyncEvent": ServiceWorker.dispatchPeriodicSyncEventParameters; - "ServiceWorker.enable": ServiceWorker.enableParameters; - "ServiceWorker.inspectWorker": ServiceWorker.inspectWorkerParameters; - "ServiceWorker.setForceUpdateOnPageLoad": ServiceWorker.setForceUpdateOnPageLoadParameters; - "ServiceWorker.skipWaiting": ServiceWorker.skipWaitingParameters; - "ServiceWorker.startWorker": ServiceWorker.startWorkerParameters; - "ServiceWorker.stopAllWorkers": ServiceWorker.stopAllWorkersParameters; - "ServiceWorker.stopWorker": ServiceWorker.stopWorkerParameters; - "ServiceWorker.unregister": ServiceWorker.unregisterParameters; - "ServiceWorker.updateRegistration": ServiceWorker.updateRegistrationParameters; - "Storage.clearDataForOrigin": Storage.clearDataForOriginParameters; - "Storage.getCookies": Storage.getCookiesParameters; - "Storage.setCookies": Storage.setCookiesParameters; - "Storage.clearCookies": Storage.clearCookiesParameters; - "Storage.getUsageAndQuota": Storage.getUsageAndQuotaParameters; - "Storage.trackCacheStorageForOrigin": Storage.trackCacheStorageForOriginParameters; - "Storage.trackIndexedDBForOrigin": Storage.trackIndexedDBForOriginParameters; - "Storage.untrackCacheStorageForOrigin": Storage.untrackCacheStorageForOriginParameters; - "Storage.untrackIndexedDBForOrigin": Storage.untrackIndexedDBForOriginParameters; - "SystemInfo.getInfo": SystemInfo.getInfoParameters; - "SystemInfo.getProcessInfo": SystemInfo.getProcessInfoParameters; - "Target.activateTarget": Target.activateTargetParameters; - "Target.attachToTarget": Target.attachToTargetParameters; - "Target.attachToBrowserTarget": Target.attachToBrowserTargetParameters; - "Target.closeTarget": Target.closeTargetParameters; - "Target.exposeDevToolsProtocol": Target.exposeDevToolsProtocolParameters; - "Target.createBrowserContext": Target.createBrowserContextParameters; - "Target.getBrowserContexts": Target.getBrowserContextsParameters; - "Target.createTarget": Target.createTargetParameters; - "Target.detachFromTarget": Target.detachFromTargetParameters; - "Target.disposeBrowserContext": Target.disposeBrowserContextParameters; - "Target.getTargetInfo": Target.getTargetInfoParameters; - "Target.getTargets": Target.getTargetsParameters; - "Target.sendMessageToTarget": Target.sendMessageToTargetParameters; - "Target.setAutoAttach": Target.setAutoAttachParameters; - "Target.setDiscoverTargets": Target.setDiscoverTargetsParameters; - "Target.setRemoteLocations": Target.setRemoteLocationsParameters; - "Tethering.bind": Tethering.bindParameters; - "Tethering.unbind": Tethering.unbindParameters; - "Tracing.end": Tracing.endParameters; - "Tracing.getCategories": Tracing.getCategoriesParameters; - "Tracing.recordClockSyncMarker": Tracing.recordClockSyncMarkerParameters; - "Tracing.requestMemoryDump": Tracing.requestMemoryDumpParameters; - "Tracing.start": Tracing.startParameters; - "Fetch.disable": Fetch.disableParameters; - "Fetch.enable": Fetch.enableParameters; - "Fetch.failRequest": Fetch.failRequestParameters; - "Fetch.fulfillRequest": Fetch.fulfillRequestParameters; - "Fetch.continueRequest": Fetch.continueRequestParameters; - "Fetch.continueWithAuth": Fetch.continueWithAuthParameters; - "Fetch.getResponseBody": Fetch.getResponseBodyParameters; - "Fetch.takeResponseBodyAsStream": Fetch.takeResponseBodyAsStreamParameters; - "WebAudio.enable": WebAudio.enableParameters; - "WebAudio.disable": WebAudio.disableParameters; - "WebAudio.getRealtimeData": WebAudio.getRealtimeDataParameters; - "WebAuthn.enable": WebAuthn.enableParameters; - "WebAuthn.disable": WebAuthn.disableParameters; - "WebAuthn.addVirtualAuthenticator": WebAuthn.addVirtualAuthenticatorParameters; - "WebAuthn.removeVirtualAuthenticator": WebAuthn.removeVirtualAuthenticatorParameters; - "WebAuthn.addCredential": WebAuthn.addCredentialParameters; - "WebAuthn.getCredential": WebAuthn.getCredentialParameters; - "WebAuthn.getCredentials": WebAuthn.getCredentialsParameters; - "WebAuthn.removeCredential": WebAuthn.removeCredentialParameters; - "WebAuthn.clearCredentials": WebAuthn.clearCredentialsParameters; - "WebAuthn.setUserVerified": WebAuthn.setUserVerifiedParameters; - "Media.enable": Media.enableParameters; - "Media.disable": Media.disableParameters; - "Console.clearMessages": Console.clearMessagesParameters; - "Console.disable": Console.disableParameters; - "Console.enable": Console.enableParameters; - "Debugger.continueToLocation": Debugger.continueToLocationParameters; - "Debugger.disable": Debugger.disableParameters; - "Debugger.enable": Debugger.enableParameters; - "Debugger.evaluateOnCallFrame": Debugger.evaluateOnCallFrameParameters; - "Debugger.getPossibleBreakpoints": Debugger.getPossibleBreakpointsParameters; - "Debugger.getScriptSource": Debugger.getScriptSourceParameters; - "Debugger.getWasmBytecode": Debugger.getWasmBytecodeParameters; - "Debugger.getStackTrace": Debugger.getStackTraceParameters; - "Debugger.pause": Debugger.pauseParameters; - "Debugger.pauseOnAsyncCall": Debugger.pauseOnAsyncCallParameters; - "Debugger.removeBreakpoint": Debugger.removeBreakpointParameters; - "Debugger.restartFrame": Debugger.restartFrameParameters; - "Debugger.resume": Debugger.resumeParameters; - "Debugger.searchInContent": Debugger.searchInContentParameters; - "Debugger.setAsyncCallStackDepth": Debugger.setAsyncCallStackDepthParameters; - "Debugger.setBlackboxPatterns": Debugger.setBlackboxPatternsParameters; - "Debugger.setBlackboxedRanges": Debugger.setBlackboxedRangesParameters; - "Debugger.setBreakpoint": Debugger.setBreakpointParameters; - "Debugger.setInstrumentationBreakpoint": Debugger.setInstrumentationBreakpointParameters; - "Debugger.setBreakpointByUrl": Debugger.setBreakpointByUrlParameters; - "Debugger.setBreakpointOnFunctionCall": Debugger.setBreakpointOnFunctionCallParameters; - "Debugger.setBreakpointsActive": Debugger.setBreakpointsActiveParameters; - "Debugger.setPauseOnExceptions": Debugger.setPauseOnExceptionsParameters; - "Debugger.setReturnValue": Debugger.setReturnValueParameters; - "Debugger.setScriptSource": Debugger.setScriptSourceParameters; - "Debugger.setSkipAllPauses": Debugger.setSkipAllPausesParameters; - "Debugger.setVariableValue": Debugger.setVariableValueParameters; - "Debugger.stepInto": Debugger.stepIntoParameters; - "Debugger.stepOut": Debugger.stepOutParameters; - "Debugger.stepOver": Debugger.stepOverParameters; - "HeapProfiler.addInspectedHeapObject": HeapProfiler.addInspectedHeapObjectParameters; - "HeapProfiler.collectGarbage": HeapProfiler.collectGarbageParameters; - "HeapProfiler.disable": HeapProfiler.disableParameters; - "HeapProfiler.enable": HeapProfiler.enableParameters; - "HeapProfiler.getHeapObjectId": HeapProfiler.getHeapObjectIdParameters; - "HeapProfiler.getObjectByHeapObjectId": HeapProfiler.getObjectByHeapObjectIdParameters; - "HeapProfiler.getSamplingProfile": HeapProfiler.getSamplingProfileParameters; - "HeapProfiler.startSampling": HeapProfiler.startSamplingParameters; - "HeapProfiler.startTrackingHeapObjects": HeapProfiler.startTrackingHeapObjectsParameters; - "HeapProfiler.stopSampling": HeapProfiler.stopSamplingParameters; - "HeapProfiler.stopTrackingHeapObjects": HeapProfiler.stopTrackingHeapObjectsParameters; - "HeapProfiler.takeHeapSnapshot": HeapProfiler.takeHeapSnapshotParameters; - "Profiler.disable": Profiler.disableParameters; - "Profiler.enable": Profiler.enableParameters; - "Profiler.getBestEffortCoverage": Profiler.getBestEffortCoverageParameters; - "Profiler.setSamplingInterval": Profiler.setSamplingIntervalParameters; - "Profiler.start": Profiler.startParameters; - "Profiler.startPreciseCoverage": Profiler.startPreciseCoverageParameters; - "Profiler.startTypeProfile": Profiler.startTypeProfileParameters; - "Profiler.stop": Profiler.stopParameters; - "Profiler.stopPreciseCoverage": Profiler.stopPreciseCoverageParameters; - "Profiler.stopTypeProfile": Profiler.stopTypeProfileParameters; - "Profiler.takePreciseCoverage": Profiler.takePreciseCoverageParameters; - "Profiler.takeTypeProfile": Profiler.takeTypeProfileParameters; - "Profiler.enableRuntimeCallStats": Profiler.enableRuntimeCallStatsParameters; - "Profiler.disableRuntimeCallStats": Profiler.disableRuntimeCallStatsParameters; - "Profiler.getRuntimeCallStats": Profiler.getRuntimeCallStatsParameters; - "Runtime.awaitPromise": Runtime.awaitPromiseParameters; - "Runtime.callFunctionOn": Runtime.callFunctionOnParameters; - "Runtime.compileScript": Runtime.compileScriptParameters; - "Runtime.disable": Runtime.disableParameters; - "Runtime.discardConsoleEntries": Runtime.discardConsoleEntriesParameters; - "Runtime.enable": Runtime.enableParameters; - "Runtime.evaluate": Runtime.evaluateParameters; - "Runtime.getIsolateId": Runtime.getIsolateIdParameters; - "Runtime.getHeapUsage": Runtime.getHeapUsageParameters; - "Runtime.getProperties": Runtime.getPropertiesParameters; - "Runtime.globalLexicalScopeNames": Runtime.globalLexicalScopeNamesParameters; - "Runtime.queryObjects": Runtime.queryObjectsParameters; - "Runtime.releaseObject": Runtime.releaseObjectParameters; - "Runtime.releaseObjectGroup": Runtime.releaseObjectGroupParameters; - "Runtime.runIfWaitingForDebugger": Runtime.runIfWaitingForDebuggerParameters; - "Runtime.runScript": Runtime.runScriptParameters; - "Runtime.setAsyncCallStackDepth": Runtime.setAsyncCallStackDepthParameters; - "Runtime.setCustomObjectFormatterEnabled": Runtime.setCustomObjectFormatterEnabledParameters; - "Runtime.setMaxCallStackSizeToCapture": Runtime.setMaxCallStackSizeToCaptureParameters; - "Runtime.terminateExecution": Runtime.terminateExecutionParameters; - "Runtime.addBinding": Runtime.addBindingParameters; - "Runtime.removeBinding": Runtime.removeBindingParameters; - "Schema.getDomains": Schema.getDomainsParameters; - } - export interface CommandReturnValues { - "Accessibility.disable": Accessibility.disableReturnValue; - "Accessibility.enable": Accessibility.enableReturnValue; - "Accessibility.getPartialAXTree": Accessibility.getPartialAXTreeReturnValue; - "Accessibility.getFullAXTree": Accessibility.getFullAXTreeReturnValue; - "Animation.disable": Animation.disableReturnValue; - "Animation.enable": Animation.enableReturnValue; - "Animation.getCurrentTime": Animation.getCurrentTimeReturnValue; - "Animation.getPlaybackRate": Animation.getPlaybackRateReturnValue; - "Animation.releaseAnimations": Animation.releaseAnimationsReturnValue; - "Animation.resolveAnimation": Animation.resolveAnimationReturnValue; - "Animation.seekAnimations": Animation.seekAnimationsReturnValue; - "Animation.setPaused": Animation.setPausedReturnValue; - "Animation.setPlaybackRate": Animation.setPlaybackRateReturnValue; - "Animation.setTiming": Animation.setTimingReturnValue; - "ApplicationCache.enable": ApplicationCache.enableReturnValue; - "ApplicationCache.getApplicationCacheForFrame": ApplicationCache.getApplicationCacheForFrameReturnValue; - "ApplicationCache.getFramesWithManifests": ApplicationCache.getFramesWithManifestsReturnValue; - "ApplicationCache.getManifestForFrame": ApplicationCache.getManifestForFrameReturnValue; - "Audits.getEncodedResponse": Audits.getEncodedResponseReturnValue; - "Audits.disable": Audits.disableReturnValue; - "Audits.enable": Audits.enableReturnValue; - "BackgroundService.startObserving": BackgroundService.startObservingReturnValue; - "BackgroundService.stopObserving": BackgroundService.stopObservingReturnValue; - "BackgroundService.setRecording": BackgroundService.setRecordingReturnValue; - "BackgroundService.clearEvents": BackgroundService.clearEventsReturnValue; - "Browser.setPermission": Browser.setPermissionReturnValue; - "Browser.grantPermissions": Browser.grantPermissionsReturnValue; - "Browser.resetPermissions": Browser.resetPermissionsReturnValue; - "Browser.setDownloadBehavior": Browser.setDownloadBehaviorReturnValue; - "Browser.close": Browser.closeReturnValue; - "Browser.crash": Browser.crashReturnValue; - "Browser.crashGpuProcess": Browser.crashGpuProcessReturnValue; - "Browser.getVersion": Browser.getVersionReturnValue; - "Browser.getBrowserCommandLine": Browser.getBrowserCommandLineReturnValue; - "Browser.getHistograms": Browser.getHistogramsReturnValue; - "Browser.getHistogram": Browser.getHistogramReturnValue; - "Browser.getWindowBounds": Browser.getWindowBoundsReturnValue; - "Browser.getWindowForTarget": Browser.getWindowForTargetReturnValue; - "Browser.setWindowBounds": Browser.setWindowBoundsReturnValue; - "Browser.setDockTile": Browser.setDockTileReturnValue; - "CSS.addRule": CSS.addRuleReturnValue; - "CSS.collectClassNames": CSS.collectClassNamesReturnValue; - "CSS.createStyleSheet": CSS.createStyleSheetReturnValue; - "CSS.disable": CSS.disableReturnValue; - "CSS.enable": CSS.enableReturnValue; - "CSS.forcePseudoState": CSS.forcePseudoStateReturnValue; - "CSS.getBackgroundColors": CSS.getBackgroundColorsReturnValue; - "CSS.getComputedStyleForNode": CSS.getComputedStyleForNodeReturnValue; - "CSS.getInlineStylesForNode": CSS.getInlineStylesForNodeReturnValue; - "CSS.getMatchedStylesForNode": CSS.getMatchedStylesForNodeReturnValue; - "CSS.getMediaQueries": CSS.getMediaQueriesReturnValue; - "CSS.getPlatformFontsForNode": CSS.getPlatformFontsForNodeReturnValue; - "CSS.getStyleSheetText": CSS.getStyleSheetTextReturnValue; - "CSS.setEffectivePropertyValueForNode": CSS.setEffectivePropertyValueForNodeReturnValue; - "CSS.setKeyframeKey": CSS.setKeyframeKeyReturnValue; - "CSS.setMediaText": CSS.setMediaTextReturnValue; - "CSS.setRuleSelector": CSS.setRuleSelectorReturnValue; - "CSS.setStyleSheetText": CSS.setStyleSheetTextReturnValue; - "CSS.setStyleTexts": CSS.setStyleTextsReturnValue; - "CSS.startRuleUsageTracking": CSS.startRuleUsageTrackingReturnValue; - "CSS.stopRuleUsageTracking": CSS.stopRuleUsageTrackingReturnValue; - "CSS.takeCoverageDelta": CSS.takeCoverageDeltaReturnValue; - "CacheStorage.deleteCache": CacheStorage.deleteCacheReturnValue; - "CacheStorage.deleteEntry": CacheStorage.deleteEntryReturnValue; - "CacheStorage.requestCacheNames": CacheStorage.requestCacheNamesReturnValue; - "CacheStorage.requestCachedResponse": CacheStorage.requestCachedResponseReturnValue; - "CacheStorage.requestEntries": CacheStorage.requestEntriesReturnValue; - "Cast.enable": Cast.enableReturnValue; - "Cast.disable": Cast.disableReturnValue; - "Cast.setSinkToUse": Cast.setSinkToUseReturnValue; - "Cast.startTabMirroring": Cast.startTabMirroringReturnValue; - "Cast.stopCasting": Cast.stopCastingReturnValue; - "DOM.collectClassNamesFromSubtree": DOM.collectClassNamesFromSubtreeReturnValue; - "DOM.copyTo": DOM.copyToReturnValue; - "DOM.describeNode": DOM.describeNodeReturnValue; - "DOM.scrollIntoViewIfNeeded": DOM.scrollIntoViewIfNeededReturnValue; - "DOM.disable": DOM.disableReturnValue; - "DOM.discardSearchResults": DOM.discardSearchResultsReturnValue; - "DOM.enable": DOM.enableReturnValue; - "DOM.focus": DOM.focusReturnValue; - "DOM.getAttributes": DOM.getAttributesReturnValue; - "DOM.getBoxModel": DOM.getBoxModelReturnValue; - "DOM.getContentQuads": DOM.getContentQuadsReturnValue; - "DOM.getDocument": DOM.getDocumentReturnValue; - "DOM.getFlattenedDocument": DOM.getFlattenedDocumentReturnValue; - "DOM.getNodeForLocation": DOM.getNodeForLocationReturnValue; - "DOM.getOuterHTML": DOM.getOuterHTMLReturnValue; - "DOM.getRelayoutBoundary": DOM.getRelayoutBoundaryReturnValue; - "DOM.getSearchResults": DOM.getSearchResultsReturnValue; - "DOM.hideHighlight": DOM.hideHighlightReturnValue; - "DOM.highlightNode": DOM.highlightNodeReturnValue; - "DOM.highlightRect": DOM.highlightRectReturnValue; - "DOM.markUndoableState": DOM.markUndoableStateReturnValue; - "DOM.moveTo": DOM.moveToReturnValue; - "DOM.performSearch": DOM.performSearchReturnValue; - "DOM.pushNodeByPathToFrontend": DOM.pushNodeByPathToFrontendReturnValue; - "DOM.pushNodesByBackendIdsToFrontend": DOM.pushNodesByBackendIdsToFrontendReturnValue; - "DOM.querySelector": DOM.querySelectorReturnValue; - "DOM.querySelectorAll": DOM.querySelectorAllReturnValue; - "DOM.redo": DOM.redoReturnValue; - "DOM.removeAttribute": DOM.removeAttributeReturnValue; - "DOM.removeNode": DOM.removeNodeReturnValue; - "DOM.requestChildNodes": DOM.requestChildNodesReturnValue; - "DOM.requestNode": DOM.requestNodeReturnValue; - "DOM.resolveNode": DOM.resolveNodeReturnValue; - "DOM.setAttributeValue": DOM.setAttributeValueReturnValue; - "DOM.setAttributesAsText": DOM.setAttributesAsTextReturnValue; - "DOM.setFileInputFiles": DOM.setFileInputFilesReturnValue; - "DOM.setNodeStackTracesEnabled": DOM.setNodeStackTracesEnabledReturnValue; - "DOM.getNodeStackTraces": DOM.getNodeStackTracesReturnValue; - "DOM.getFileInfo": DOM.getFileInfoReturnValue; - "DOM.setInspectedNode": DOM.setInspectedNodeReturnValue; - "DOM.setNodeName": DOM.setNodeNameReturnValue; - "DOM.setNodeValue": DOM.setNodeValueReturnValue; - "DOM.setOuterHTML": DOM.setOuterHTMLReturnValue; - "DOM.undo": DOM.undoReturnValue; - "DOM.getFrameOwner": DOM.getFrameOwnerReturnValue; - "DOMDebugger.getEventListeners": DOMDebugger.getEventListenersReturnValue; - "DOMDebugger.removeDOMBreakpoint": DOMDebugger.removeDOMBreakpointReturnValue; - "DOMDebugger.removeEventListenerBreakpoint": DOMDebugger.removeEventListenerBreakpointReturnValue; - "DOMDebugger.removeInstrumentationBreakpoint": DOMDebugger.removeInstrumentationBreakpointReturnValue; - "DOMDebugger.removeXHRBreakpoint": DOMDebugger.removeXHRBreakpointReturnValue; - "DOMDebugger.setDOMBreakpoint": DOMDebugger.setDOMBreakpointReturnValue; - "DOMDebugger.setEventListenerBreakpoint": DOMDebugger.setEventListenerBreakpointReturnValue; - "DOMDebugger.setInstrumentationBreakpoint": DOMDebugger.setInstrumentationBreakpointReturnValue; - "DOMDebugger.setXHRBreakpoint": DOMDebugger.setXHRBreakpointReturnValue; - "DOMSnapshot.disable": DOMSnapshot.disableReturnValue; - "DOMSnapshot.enable": DOMSnapshot.enableReturnValue; - "DOMSnapshot.getSnapshot": DOMSnapshot.getSnapshotReturnValue; - "DOMSnapshot.captureSnapshot": DOMSnapshot.captureSnapshotReturnValue; - "DOMStorage.clear": DOMStorage.clearReturnValue; - "DOMStorage.disable": DOMStorage.disableReturnValue; - "DOMStorage.enable": DOMStorage.enableReturnValue; - "DOMStorage.getDOMStorageItems": DOMStorage.getDOMStorageItemsReturnValue; - "DOMStorage.removeDOMStorageItem": DOMStorage.removeDOMStorageItemReturnValue; - "DOMStorage.setDOMStorageItem": DOMStorage.setDOMStorageItemReturnValue; - "Database.disable": Database.disableReturnValue; - "Database.enable": Database.enableReturnValue; - "Database.executeSQL": Database.executeSQLReturnValue; - "Database.getDatabaseTableNames": Database.getDatabaseTableNamesReturnValue; - "DeviceOrientation.clearDeviceOrientationOverride": DeviceOrientation.clearDeviceOrientationOverrideReturnValue; - "DeviceOrientation.setDeviceOrientationOverride": DeviceOrientation.setDeviceOrientationOverrideReturnValue; - "Emulation.canEmulate": Emulation.canEmulateReturnValue; - "Emulation.clearDeviceMetricsOverride": Emulation.clearDeviceMetricsOverrideReturnValue; - "Emulation.clearGeolocationOverride": Emulation.clearGeolocationOverrideReturnValue; - "Emulation.resetPageScaleFactor": Emulation.resetPageScaleFactorReturnValue; - "Emulation.setFocusEmulationEnabled": Emulation.setFocusEmulationEnabledReturnValue; - "Emulation.setCPUThrottlingRate": Emulation.setCPUThrottlingRateReturnValue; - "Emulation.setDefaultBackgroundColorOverride": Emulation.setDefaultBackgroundColorOverrideReturnValue; - "Emulation.setDeviceMetricsOverride": Emulation.setDeviceMetricsOverrideReturnValue; - "Emulation.setScrollbarsHidden": Emulation.setScrollbarsHiddenReturnValue; - "Emulation.setDocumentCookieDisabled": Emulation.setDocumentCookieDisabledReturnValue; - "Emulation.setEmitTouchEventsForMouse": Emulation.setEmitTouchEventsForMouseReturnValue; - "Emulation.setEmulatedMedia": Emulation.setEmulatedMediaReturnValue; - "Emulation.setEmulatedVisionDeficiency": Emulation.setEmulatedVisionDeficiencyReturnValue; - "Emulation.setGeolocationOverride": Emulation.setGeolocationOverrideReturnValue; - "Emulation.setNavigatorOverrides": Emulation.setNavigatorOverridesReturnValue; - "Emulation.setPageScaleFactor": Emulation.setPageScaleFactorReturnValue; - "Emulation.setScriptExecutionDisabled": Emulation.setScriptExecutionDisabledReturnValue; - "Emulation.setTouchEmulationEnabled": Emulation.setTouchEmulationEnabledReturnValue; - "Emulation.setVirtualTimePolicy": Emulation.setVirtualTimePolicyReturnValue; - "Emulation.setLocaleOverride": Emulation.setLocaleOverrideReturnValue; - "Emulation.setTimezoneOverride": Emulation.setTimezoneOverrideReturnValue; - "Emulation.setVisibleSize": Emulation.setVisibleSizeReturnValue; - "Emulation.setUserAgentOverride": Emulation.setUserAgentOverrideReturnValue; - "HeadlessExperimental.beginFrame": HeadlessExperimental.beginFrameReturnValue; - "HeadlessExperimental.disable": HeadlessExperimental.disableReturnValue; - "HeadlessExperimental.enable": HeadlessExperimental.enableReturnValue; - "IO.close": IO.closeReturnValue; - "IO.read": IO.readReturnValue; - "IO.resolveBlob": IO.resolveBlobReturnValue; - "IndexedDB.clearObjectStore": IndexedDB.clearObjectStoreReturnValue; - "IndexedDB.deleteDatabase": IndexedDB.deleteDatabaseReturnValue; - "IndexedDB.deleteObjectStoreEntries": IndexedDB.deleteObjectStoreEntriesReturnValue; - "IndexedDB.disable": IndexedDB.disableReturnValue; - "IndexedDB.enable": IndexedDB.enableReturnValue; - "IndexedDB.requestData": IndexedDB.requestDataReturnValue; - "IndexedDB.getMetadata": IndexedDB.getMetadataReturnValue; - "IndexedDB.requestDatabase": IndexedDB.requestDatabaseReturnValue; - "IndexedDB.requestDatabaseNames": IndexedDB.requestDatabaseNamesReturnValue; - "Input.dispatchKeyEvent": Input.dispatchKeyEventReturnValue; - "Input.insertText": Input.insertTextReturnValue; - "Input.dispatchMouseEvent": Input.dispatchMouseEventReturnValue; - "Input.dispatchTouchEvent": Input.dispatchTouchEventReturnValue; - "Input.emulateTouchFromMouseEvent": Input.emulateTouchFromMouseEventReturnValue; - "Input.setIgnoreInputEvents": Input.setIgnoreInputEventsReturnValue; - "Input.synthesizePinchGesture": Input.synthesizePinchGestureReturnValue; - "Input.synthesizeScrollGesture": Input.synthesizeScrollGestureReturnValue; - "Input.synthesizeTapGesture": Input.synthesizeTapGestureReturnValue; - "Inspector.disable": Inspector.disableReturnValue; - "Inspector.enable": Inspector.enableReturnValue; - "LayerTree.compositingReasons": LayerTree.compositingReasonsReturnValue; - "LayerTree.disable": LayerTree.disableReturnValue; - "LayerTree.enable": LayerTree.enableReturnValue; - "LayerTree.loadSnapshot": LayerTree.loadSnapshotReturnValue; - "LayerTree.makeSnapshot": LayerTree.makeSnapshotReturnValue; - "LayerTree.profileSnapshot": LayerTree.profileSnapshotReturnValue; - "LayerTree.releaseSnapshot": LayerTree.releaseSnapshotReturnValue; - "LayerTree.replaySnapshot": LayerTree.replaySnapshotReturnValue; - "LayerTree.snapshotCommandLog": LayerTree.snapshotCommandLogReturnValue; - "Log.clear": Log.clearReturnValue; - "Log.disable": Log.disableReturnValue; - "Log.enable": Log.enableReturnValue; - "Log.startViolationsReport": Log.startViolationsReportReturnValue; - "Log.stopViolationsReport": Log.stopViolationsReportReturnValue; - "Memory.getDOMCounters": Memory.getDOMCountersReturnValue; - "Memory.prepareForLeakDetection": Memory.prepareForLeakDetectionReturnValue; - "Memory.forciblyPurgeJavaScriptMemory": Memory.forciblyPurgeJavaScriptMemoryReturnValue; - "Memory.setPressureNotificationsSuppressed": Memory.setPressureNotificationsSuppressedReturnValue; - "Memory.simulatePressureNotification": Memory.simulatePressureNotificationReturnValue; - "Memory.startSampling": Memory.startSamplingReturnValue; - "Memory.stopSampling": Memory.stopSamplingReturnValue; - "Memory.getAllTimeSamplingProfile": Memory.getAllTimeSamplingProfileReturnValue; - "Memory.getBrowserSamplingProfile": Memory.getBrowserSamplingProfileReturnValue; - "Memory.getSamplingProfile": Memory.getSamplingProfileReturnValue; - "Network.canClearBrowserCache": Network.canClearBrowserCacheReturnValue; - "Network.canClearBrowserCookies": Network.canClearBrowserCookiesReturnValue; - "Network.canEmulateNetworkConditions": Network.canEmulateNetworkConditionsReturnValue; - "Network.clearBrowserCache": Network.clearBrowserCacheReturnValue; - "Network.clearBrowserCookies": Network.clearBrowserCookiesReturnValue; - "Network.continueInterceptedRequest": Network.continueInterceptedRequestReturnValue; - "Network.deleteCookies": Network.deleteCookiesReturnValue; - "Network.disable": Network.disableReturnValue; - "Network.emulateNetworkConditions": Network.emulateNetworkConditionsReturnValue; - "Network.enable": Network.enableReturnValue; - "Network.getAllCookies": Network.getAllCookiesReturnValue; - "Network.getCertificate": Network.getCertificateReturnValue; - "Network.getCookies": Network.getCookiesReturnValue; - "Network.getResponseBody": Network.getResponseBodyReturnValue; - "Network.getRequestPostData": Network.getRequestPostDataReturnValue; - "Network.getResponseBodyForInterception": Network.getResponseBodyForInterceptionReturnValue; - "Network.takeResponseBodyForInterceptionAsStream": Network.takeResponseBodyForInterceptionAsStreamReturnValue; - "Network.replayXHR": Network.replayXHRReturnValue; - "Network.searchInResponseBody": Network.searchInResponseBodyReturnValue; - "Network.setBlockedURLs": Network.setBlockedURLsReturnValue; - "Network.setBypassServiceWorker": Network.setBypassServiceWorkerReturnValue; - "Network.setCacheDisabled": Network.setCacheDisabledReturnValue; - "Network.setCookie": Network.setCookieReturnValue; - "Network.setCookies": Network.setCookiesReturnValue; - "Network.setDataSizeLimitsForTest": Network.setDataSizeLimitsForTestReturnValue; - "Network.setExtraHTTPHeaders": Network.setExtraHTTPHeadersReturnValue; - "Network.setRequestInterception": Network.setRequestInterceptionReturnValue; - "Network.setUserAgentOverride": Network.setUserAgentOverrideReturnValue; - "Overlay.disable": Overlay.disableReturnValue; - "Overlay.enable": Overlay.enableReturnValue; - "Overlay.getHighlightObjectForTest": Overlay.getHighlightObjectForTestReturnValue; - "Overlay.hideHighlight": Overlay.hideHighlightReturnValue; - "Overlay.highlightFrame": Overlay.highlightFrameReturnValue; - "Overlay.highlightNode": Overlay.highlightNodeReturnValue; - "Overlay.highlightQuad": Overlay.highlightQuadReturnValue; - "Overlay.highlightRect": Overlay.highlightRectReturnValue; - "Overlay.setInspectMode": Overlay.setInspectModeReturnValue; - "Overlay.setShowAdHighlights": Overlay.setShowAdHighlightsReturnValue; - "Overlay.setPausedInDebuggerMessage": Overlay.setPausedInDebuggerMessageReturnValue; - "Overlay.setShowDebugBorders": Overlay.setShowDebugBordersReturnValue; - "Overlay.setShowFPSCounter": Overlay.setShowFPSCounterReturnValue; - "Overlay.setShowPaintRects": Overlay.setShowPaintRectsReturnValue; - "Overlay.setShowLayoutShiftRegions": Overlay.setShowLayoutShiftRegionsReturnValue; - "Overlay.setShowScrollBottleneckRects": Overlay.setShowScrollBottleneckRectsReturnValue; - "Overlay.setShowHitTestBorders": Overlay.setShowHitTestBordersReturnValue; - "Overlay.setShowViewportSizeOnResize": Overlay.setShowViewportSizeOnResizeReturnValue; - "Page.addScriptToEvaluateOnLoad": Page.addScriptToEvaluateOnLoadReturnValue; - "Page.addScriptToEvaluateOnNewDocument": Page.addScriptToEvaluateOnNewDocumentReturnValue; - "Page.bringToFront": Page.bringToFrontReturnValue; - "Page.captureScreenshot": Page.captureScreenshotReturnValue; - "Page.captureSnapshot": Page.captureSnapshotReturnValue; - "Page.clearDeviceMetricsOverride": Page.clearDeviceMetricsOverrideReturnValue; - "Page.clearDeviceOrientationOverride": Page.clearDeviceOrientationOverrideReturnValue; - "Page.clearGeolocationOverride": Page.clearGeolocationOverrideReturnValue; - "Page.createIsolatedWorld": Page.createIsolatedWorldReturnValue; - "Page.deleteCookie": Page.deleteCookieReturnValue; - "Page.disable": Page.disableReturnValue; - "Page.enable": Page.enableReturnValue; - "Page.getAppManifest": Page.getAppManifestReturnValue; - "Page.getInstallabilityErrors": Page.getInstallabilityErrorsReturnValue; - "Page.getManifestIcons": Page.getManifestIconsReturnValue; - "Page.getCookies": Page.getCookiesReturnValue; - "Page.getFrameTree": Page.getFrameTreeReturnValue; - "Page.getLayoutMetrics": Page.getLayoutMetricsReturnValue; - "Page.getNavigationHistory": Page.getNavigationHistoryReturnValue; - "Page.resetNavigationHistory": Page.resetNavigationHistoryReturnValue; - "Page.getResourceContent": Page.getResourceContentReturnValue; - "Page.getResourceTree": Page.getResourceTreeReturnValue; - "Page.handleJavaScriptDialog": Page.handleJavaScriptDialogReturnValue; - "Page.navigate": Page.navigateReturnValue; - "Page.navigateToHistoryEntry": Page.navigateToHistoryEntryReturnValue; - "Page.printToPDF": Page.printToPDFReturnValue; - "Page.reload": Page.reloadReturnValue; - "Page.removeScriptToEvaluateOnLoad": Page.removeScriptToEvaluateOnLoadReturnValue; - "Page.removeScriptToEvaluateOnNewDocument": Page.removeScriptToEvaluateOnNewDocumentReturnValue; - "Page.screencastFrameAck": Page.screencastFrameAckReturnValue; - "Page.searchInResource": Page.searchInResourceReturnValue; - "Page.setAdBlockingEnabled": Page.setAdBlockingEnabledReturnValue; - "Page.setBypassCSP": Page.setBypassCSPReturnValue; - "Page.setDeviceMetricsOverride": Page.setDeviceMetricsOverrideReturnValue; - "Page.setDeviceOrientationOverride": Page.setDeviceOrientationOverrideReturnValue; - "Page.setFontFamilies": Page.setFontFamiliesReturnValue; - "Page.setFontSizes": Page.setFontSizesReturnValue; - "Page.setDocumentContent": Page.setDocumentContentReturnValue; - "Page.setDownloadBehavior": Page.setDownloadBehaviorReturnValue; - "Page.setGeolocationOverride": Page.setGeolocationOverrideReturnValue; - "Page.setLifecycleEventsEnabled": Page.setLifecycleEventsEnabledReturnValue; - "Page.setTouchEmulationEnabled": Page.setTouchEmulationEnabledReturnValue; - "Page.startScreencast": Page.startScreencastReturnValue; - "Page.stopLoading": Page.stopLoadingReturnValue; - "Page.crash": Page.crashReturnValue; - "Page.close": Page.closeReturnValue; - "Page.setWebLifecycleState": Page.setWebLifecycleStateReturnValue; - "Page.stopScreencast": Page.stopScreencastReturnValue; - "Page.setProduceCompilationCache": Page.setProduceCompilationCacheReturnValue; - "Page.addCompilationCache": Page.addCompilationCacheReturnValue; - "Page.clearCompilationCache": Page.clearCompilationCacheReturnValue; - "Page.generateTestReport": Page.generateTestReportReturnValue; - "Page.waitForDebugger": Page.waitForDebuggerReturnValue; - "Page.setInterceptFileChooserDialog": Page.setInterceptFileChooserDialogReturnValue; - "Performance.disable": Performance.disableReturnValue; - "Performance.enable": Performance.enableReturnValue; - "Performance.setTimeDomain": Performance.setTimeDomainReturnValue; - "Performance.getMetrics": Performance.getMetricsReturnValue; - "Security.disable": Security.disableReturnValue; - "Security.enable": Security.enableReturnValue; - "Security.setIgnoreCertificateErrors": Security.setIgnoreCertificateErrorsReturnValue; - "Security.handleCertificateError": Security.handleCertificateErrorReturnValue; - "Security.setOverrideCertificateErrors": Security.setOverrideCertificateErrorsReturnValue; - "ServiceWorker.deliverPushMessage": ServiceWorker.deliverPushMessageReturnValue; - "ServiceWorker.disable": ServiceWorker.disableReturnValue; - "ServiceWorker.dispatchSyncEvent": ServiceWorker.dispatchSyncEventReturnValue; - "ServiceWorker.dispatchPeriodicSyncEvent": ServiceWorker.dispatchPeriodicSyncEventReturnValue; - "ServiceWorker.enable": ServiceWorker.enableReturnValue; - "ServiceWorker.inspectWorker": ServiceWorker.inspectWorkerReturnValue; - "ServiceWorker.setForceUpdateOnPageLoad": ServiceWorker.setForceUpdateOnPageLoadReturnValue; - "ServiceWorker.skipWaiting": ServiceWorker.skipWaitingReturnValue; - "ServiceWorker.startWorker": ServiceWorker.startWorkerReturnValue; - "ServiceWorker.stopAllWorkers": ServiceWorker.stopAllWorkersReturnValue; - "ServiceWorker.stopWorker": ServiceWorker.stopWorkerReturnValue; - "ServiceWorker.unregister": ServiceWorker.unregisterReturnValue; - "ServiceWorker.updateRegistration": ServiceWorker.updateRegistrationReturnValue; - "Storage.clearDataForOrigin": Storage.clearDataForOriginReturnValue; - "Storage.getCookies": Storage.getCookiesReturnValue; - "Storage.setCookies": Storage.setCookiesReturnValue; - "Storage.clearCookies": Storage.clearCookiesReturnValue; - "Storage.getUsageAndQuota": Storage.getUsageAndQuotaReturnValue; - "Storage.trackCacheStorageForOrigin": Storage.trackCacheStorageForOriginReturnValue; - "Storage.trackIndexedDBForOrigin": Storage.trackIndexedDBForOriginReturnValue; - "Storage.untrackCacheStorageForOrigin": Storage.untrackCacheStorageForOriginReturnValue; - "Storage.untrackIndexedDBForOrigin": Storage.untrackIndexedDBForOriginReturnValue; - "SystemInfo.getInfo": SystemInfo.getInfoReturnValue; - "SystemInfo.getProcessInfo": SystemInfo.getProcessInfoReturnValue; - "Target.activateTarget": Target.activateTargetReturnValue; - "Target.attachToTarget": Target.attachToTargetReturnValue; - "Target.attachToBrowserTarget": Target.attachToBrowserTargetReturnValue; - "Target.closeTarget": Target.closeTargetReturnValue; - "Target.exposeDevToolsProtocol": Target.exposeDevToolsProtocolReturnValue; - "Target.createBrowserContext": Target.createBrowserContextReturnValue; - "Target.getBrowserContexts": Target.getBrowserContextsReturnValue; - "Target.createTarget": Target.createTargetReturnValue; - "Target.detachFromTarget": Target.detachFromTargetReturnValue; - "Target.disposeBrowserContext": Target.disposeBrowserContextReturnValue; - "Target.getTargetInfo": Target.getTargetInfoReturnValue; - "Target.getTargets": Target.getTargetsReturnValue; - "Target.sendMessageToTarget": Target.sendMessageToTargetReturnValue; - "Target.setAutoAttach": Target.setAutoAttachReturnValue; - "Target.setDiscoverTargets": Target.setDiscoverTargetsReturnValue; - "Target.setRemoteLocations": Target.setRemoteLocationsReturnValue; - "Tethering.bind": Tethering.bindReturnValue; - "Tethering.unbind": Tethering.unbindReturnValue; - "Tracing.end": Tracing.endReturnValue; - "Tracing.getCategories": Tracing.getCategoriesReturnValue; - "Tracing.recordClockSyncMarker": Tracing.recordClockSyncMarkerReturnValue; - "Tracing.requestMemoryDump": Tracing.requestMemoryDumpReturnValue; - "Tracing.start": Tracing.startReturnValue; - "Fetch.disable": Fetch.disableReturnValue; - "Fetch.enable": Fetch.enableReturnValue; - "Fetch.failRequest": Fetch.failRequestReturnValue; - "Fetch.fulfillRequest": Fetch.fulfillRequestReturnValue; - "Fetch.continueRequest": Fetch.continueRequestReturnValue; - "Fetch.continueWithAuth": Fetch.continueWithAuthReturnValue; - "Fetch.getResponseBody": Fetch.getResponseBodyReturnValue; - "Fetch.takeResponseBodyAsStream": Fetch.takeResponseBodyAsStreamReturnValue; - "WebAudio.enable": WebAudio.enableReturnValue; - "WebAudio.disable": WebAudio.disableReturnValue; - "WebAudio.getRealtimeData": WebAudio.getRealtimeDataReturnValue; - "WebAuthn.enable": WebAuthn.enableReturnValue; - "WebAuthn.disable": WebAuthn.disableReturnValue; - "WebAuthn.addVirtualAuthenticator": WebAuthn.addVirtualAuthenticatorReturnValue; - "WebAuthn.removeVirtualAuthenticator": WebAuthn.removeVirtualAuthenticatorReturnValue; - "WebAuthn.addCredential": WebAuthn.addCredentialReturnValue; - "WebAuthn.getCredential": WebAuthn.getCredentialReturnValue; - "WebAuthn.getCredentials": WebAuthn.getCredentialsReturnValue; - "WebAuthn.removeCredential": WebAuthn.removeCredentialReturnValue; - "WebAuthn.clearCredentials": WebAuthn.clearCredentialsReturnValue; - "WebAuthn.setUserVerified": WebAuthn.setUserVerifiedReturnValue; - "Media.enable": Media.enableReturnValue; - "Media.disable": Media.disableReturnValue; - "Console.clearMessages": Console.clearMessagesReturnValue; - "Console.disable": Console.disableReturnValue; - "Console.enable": Console.enableReturnValue; - "Debugger.continueToLocation": Debugger.continueToLocationReturnValue; - "Debugger.disable": Debugger.disableReturnValue; - "Debugger.enable": Debugger.enableReturnValue; - "Debugger.evaluateOnCallFrame": Debugger.evaluateOnCallFrameReturnValue; - "Debugger.getPossibleBreakpoints": Debugger.getPossibleBreakpointsReturnValue; - "Debugger.getScriptSource": Debugger.getScriptSourceReturnValue; - "Debugger.getWasmBytecode": Debugger.getWasmBytecodeReturnValue; - "Debugger.getStackTrace": Debugger.getStackTraceReturnValue; - "Debugger.pause": Debugger.pauseReturnValue; - "Debugger.pauseOnAsyncCall": Debugger.pauseOnAsyncCallReturnValue; - "Debugger.removeBreakpoint": Debugger.removeBreakpointReturnValue; - "Debugger.restartFrame": Debugger.restartFrameReturnValue; - "Debugger.resume": Debugger.resumeReturnValue; - "Debugger.searchInContent": Debugger.searchInContentReturnValue; - "Debugger.setAsyncCallStackDepth": Debugger.setAsyncCallStackDepthReturnValue; - "Debugger.setBlackboxPatterns": Debugger.setBlackboxPatternsReturnValue; - "Debugger.setBlackboxedRanges": Debugger.setBlackboxedRangesReturnValue; - "Debugger.setBreakpoint": Debugger.setBreakpointReturnValue; - "Debugger.setInstrumentationBreakpoint": Debugger.setInstrumentationBreakpointReturnValue; - "Debugger.setBreakpointByUrl": Debugger.setBreakpointByUrlReturnValue; - "Debugger.setBreakpointOnFunctionCall": Debugger.setBreakpointOnFunctionCallReturnValue; - "Debugger.setBreakpointsActive": Debugger.setBreakpointsActiveReturnValue; - "Debugger.setPauseOnExceptions": Debugger.setPauseOnExceptionsReturnValue; - "Debugger.setReturnValue": Debugger.setReturnValueReturnValue; - "Debugger.setScriptSource": Debugger.setScriptSourceReturnValue; - "Debugger.setSkipAllPauses": Debugger.setSkipAllPausesReturnValue; - "Debugger.setVariableValue": Debugger.setVariableValueReturnValue; - "Debugger.stepInto": Debugger.stepIntoReturnValue; - "Debugger.stepOut": Debugger.stepOutReturnValue; - "Debugger.stepOver": Debugger.stepOverReturnValue; - "HeapProfiler.addInspectedHeapObject": HeapProfiler.addInspectedHeapObjectReturnValue; - "HeapProfiler.collectGarbage": HeapProfiler.collectGarbageReturnValue; - "HeapProfiler.disable": HeapProfiler.disableReturnValue; - "HeapProfiler.enable": HeapProfiler.enableReturnValue; - "HeapProfiler.getHeapObjectId": HeapProfiler.getHeapObjectIdReturnValue; - "HeapProfiler.getObjectByHeapObjectId": HeapProfiler.getObjectByHeapObjectIdReturnValue; - "HeapProfiler.getSamplingProfile": HeapProfiler.getSamplingProfileReturnValue; - "HeapProfiler.startSampling": HeapProfiler.startSamplingReturnValue; - "HeapProfiler.startTrackingHeapObjects": HeapProfiler.startTrackingHeapObjectsReturnValue; - "HeapProfiler.stopSampling": HeapProfiler.stopSamplingReturnValue; - "HeapProfiler.stopTrackingHeapObjects": HeapProfiler.stopTrackingHeapObjectsReturnValue; - "HeapProfiler.takeHeapSnapshot": HeapProfiler.takeHeapSnapshotReturnValue; - "Profiler.disable": Profiler.disableReturnValue; - "Profiler.enable": Profiler.enableReturnValue; - "Profiler.getBestEffortCoverage": Profiler.getBestEffortCoverageReturnValue; - "Profiler.setSamplingInterval": Profiler.setSamplingIntervalReturnValue; - "Profiler.start": Profiler.startReturnValue; - "Profiler.startPreciseCoverage": Profiler.startPreciseCoverageReturnValue; - "Profiler.startTypeProfile": Profiler.startTypeProfileReturnValue; - "Profiler.stop": Profiler.stopReturnValue; - "Profiler.stopPreciseCoverage": Profiler.stopPreciseCoverageReturnValue; - "Profiler.stopTypeProfile": Profiler.stopTypeProfileReturnValue; - "Profiler.takePreciseCoverage": Profiler.takePreciseCoverageReturnValue; - "Profiler.takeTypeProfile": Profiler.takeTypeProfileReturnValue; - "Profiler.enableRuntimeCallStats": Profiler.enableRuntimeCallStatsReturnValue; - "Profiler.disableRuntimeCallStats": Profiler.disableRuntimeCallStatsReturnValue; - "Profiler.getRuntimeCallStats": Profiler.getRuntimeCallStatsReturnValue; - "Runtime.awaitPromise": Runtime.awaitPromiseReturnValue; - "Runtime.callFunctionOn": Runtime.callFunctionOnReturnValue; - "Runtime.compileScript": Runtime.compileScriptReturnValue; - "Runtime.disable": Runtime.disableReturnValue; - "Runtime.discardConsoleEntries": Runtime.discardConsoleEntriesReturnValue; - "Runtime.enable": Runtime.enableReturnValue; - "Runtime.evaluate": Runtime.evaluateReturnValue; - "Runtime.getIsolateId": Runtime.getIsolateIdReturnValue; - "Runtime.getHeapUsage": Runtime.getHeapUsageReturnValue; - "Runtime.getProperties": Runtime.getPropertiesReturnValue; - "Runtime.globalLexicalScopeNames": Runtime.globalLexicalScopeNamesReturnValue; - "Runtime.queryObjects": Runtime.queryObjectsReturnValue; - "Runtime.releaseObject": Runtime.releaseObjectReturnValue; - "Runtime.releaseObjectGroup": Runtime.releaseObjectGroupReturnValue; - "Runtime.runIfWaitingForDebugger": Runtime.runIfWaitingForDebuggerReturnValue; - "Runtime.runScript": Runtime.runScriptReturnValue; - "Runtime.setAsyncCallStackDepth": Runtime.setAsyncCallStackDepthReturnValue; - "Runtime.setCustomObjectFormatterEnabled": Runtime.setCustomObjectFormatterEnabledReturnValue; - "Runtime.setMaxCallStackSizeToCapture": Runtime.setMaxCallStackSizeToCaptureReturnValue; - "Runtime.terminateExecution": Runtime.terminateExecutionReturnValue; - "Runtime.addBinding": Runtime.addBindingReturnValue; - "Runtime.removeBinding": Runtime.removeBindingReturnValue; - "Schema.getDomains": Schema.getDomainsReturnValue; - } - } - -export default Protocol; diff --git a/utils/apply_next_version.js b/utils/apply_next_version.js index 53e32f5c381..bc49bdff807 100644 --- a/utils/apply_next_version.js +++ b/utils/apply_next_version.js @@ -26,3 +26,7 @@ fs.writeFileSync( path.join(__dirname, '..', 'package.json'), JSON.stringify(package, undefined, 2) + '\n' ); + +console.log( + 'IMPORTANT: you should update the pinned version of devtools-protocol to match the new revsion.' +); diff --git a/utils/doclint/check_public_api/JSBuilder.js b/utils/doclint/check_public_api/JSBuilder.js index a1744125b90..0994dffcff5 100644 --- a/utils/doclint/check_public_api/JSBuilder.js +++ b/utils/doclint/check_public_api/JSBuilder.js @@ -128,9 +128,19 @@ function checkSources(sources) { ); const name = symbol.getName(); if (symbol.valueDeclaration && symbol.valueDeclaration.dotDotDotToken) { - const innerType = serializeType(type.typeArguments[0], circular); - innerType.name = '...' + innerType.name; - return Documentation.Member.createProperty('...' + name, innerType); + try { + const innerType = serializeType(type.typeArguments[0], circular); + innerType.name = '...' + innerType.name; + return Documentation.Member.createProperty('...' + name, innerType); + } catch (error) { + /** + * DocLint struggles with the paramArgs type on CDPSession.send because + * it uses a complex type from the devtools-protocol method. Doclint + * isn't going to be here for much longer so we'll just silence this + * warning than try to add support which would warrant a huge rewrite. + */ + if (name !== 'paramArgs') throw error; + } } return Documentation.Member.createProperty( name, diff --git a/utils/doclint/check_public_api/index.js b/utils/doclint/check_public_api/index.js index 7638aa2f166..2bd41d4a282 100644 --- a/utils/doclint/check_public_api/index.js +++ b/utils/doclint/check_public_api/index.js @@ -251,15 +251,23 @@ function compareDocumentations(actual, expected) { const actualArgs = Array.from(actualMethod.args.keys()); const expectedArgs = Array.from(expectedMethod.args.keys()); const argsDiff = diff(actualArgs, expectedArgs); + if (argsDiff.extra.length || argsDiff.missing.length) { - const text = [ - `Method ${className}.${methodName}() fails to describe its parameters:`, - ]; - for (const arg of argsDiff.missing) - text.push(`- Argument not found: ${arg}`); - for (const arg of argsDiff.extra) - text.push(`- Non-existing argument found: ${arg}`); - errors.push(text.join('\n')); + /* Doclint cannot handle the parameter type of the CDPSession send method. + * so we just ignore it. + */ + const isCdpSessionSend = + className === 'CDPSession' && methodName === 'send'; + if (!isCdpSessionSend) { + const text = [ + `Method ${className}.${methodName}() fails to describe its parameters:`, + ]; + for (const arg of argsDiff.missing) + text.push(`- Argument not found: ${arg}`); + for (const arg of argsDiff.extra) + text.push(`- Non-existing argument found: ${arg}`); + errors.push(text.join('\n')); + } } for (const arg of argsDiff.equal) @@ -788,6 +796,13 @@ function compareDocumentations(actual, expected) { expectedName: 'FrameWaitForFunctionOptions', }, ], + [ + 'Method BrowserContext.overridePermissions() permissions', + { + actualName: 'Array', + expectedName: 'Array', + }, + ], ]); const expectedForSource = expectedNamingMismatches.get(source); @@ -825,6 +840,16 @@ function compareDocumentations(actual, expected) { * as they will likely be considered "wrong" by DocLint too. */ if (namingMismatchIsExpected) return; + + /* Some methods cause errors in the property checks for an unknown reason + * so we support a list of methods whose parameters are not checked. + */ + const skipPropertyChecksOnMethods = new Set([ + 'Method Page.deleteCookie() ...cookies', + 'Method Page.setCookie() ...cookies', + ]); + if (skipPropertyChecksOnMethods.has(source)) return; + const actualPropertiesMap = new Map( actual.properties.map((property) => [property.name, property.type]) ); diff --git a/utils/protocol-types-generator/index.js b/utils/protocol-types-generator/index.js deleted file mode 100644 index 5f551e6d8b1..00000000000 --- a/utils/protocol-types-generator/index.js +++ /dev/null @@ -1,276 +0,0 @@ -// @ts-check -const path = require('path'); -const puppeteer = require('../..'); -const { execSync } = require('child_process'); - -const fetchAndGenerateProtocolDefinitions = () => - puppeteer - .launch({ - pipe: false, - executablePath: process.env.BINARY, - }) - .then(async (browser) => { - const origin = browser - .wsEndpoint() - .match(/ws:\/\/([0-9A-Za-z:\.]*)\//)[1]; - const page = await browser.newPage(); - await page.goto(`http://${origin}/json/protocol`); - const json = JSON.parse( - await page.evaluate(() => document.documentElement.innerText) - ); - const version = await browser.version(); - await browser.close(); - const output = `// This is generated from /utils/protocol-types-generator/index.js - type binary = string; - -declare module Protocol {${json.domains - .map( - (domain) => `${ - domain.description - ? ` - /** - * ${domain.description} - */` - : '' - } - export module ${domain.domain} {${(domain.types || []) - .map( - (type) => - `${ - type.description - ? ` - /** - * ${type.description} - */` - : '' - }${ - type.properties - ? ` - export interface ${type.id} {${(type.properties || []) - .map( - (property) => `${ - property.description - ? ` - /** - * ${property.description} - */` - : '' - } - ${property.name}${property.optional ? '?' : ''}: ${typeOfProperty( - property - )};` - ) - .join(``)} - }` - : ` - export type ${type.id} = ${typeOfProperty(type)};` - }` - ) - .join('')} - ${(domain.events || []) - .map( - (event) => - `${ - event.description - ? ` - /** - * ${event.description} - */` - : '' - }${ - event.parameters - ? ` - export type ${event.name}Payload = {${event.parameters - .map( - (parameter) => `${ - parameter.description - ? ` - /** - * ${parameter.description} - */` - : '' - } - ${parameter.name}${parameter.optional ? '?' : ''}: ${typeOfProperty( - parameter - )};` - ) - .join(``)} - }` - : ` - export type ${event.name}Payload = void;` - }` - ) - .join('')} - ${(domain.commands || []) - .map( - (command) => `${ - command.description - ? ` - /** - * ${command.description} - */` - : '' - } - export type ${command.name}Parameters = {${(command.parameters || []) - .map( - (parameter) => `${ - parameter.description - ? ` - /** - * ${parameter.description} - */` - : '' - } - ${parameter.name}${parameter.optional ? '?' : ''}: ${typeOfProperty( - parameter - )};` - ) - .join(``)} - } - export type ${command.name}ReturnValue = {${(command.returns || []) - .map( - (retVal) => `${ - retVal.description - ? ` - /** - * ${retVal.description} - */` - : '' - } - ${retVal.name}${retVal.optional ? '?' : ''}: ${typeOfProperty( - retVal - )};` - ) - .join(``)} - }` - ) - .join('')} - } - ` - ) - .join('')} - export interface Events {${json.domains - .map((domain) => - (domain.events || []) - .map( - (event) => ` - "${domain.domain}.${event.name}": ${domain.domain}.${event.name}Payload;` - ) - .join('') - ) - .join('')} - } - export interface CommandParameters {${json.domains - .map((domain) => - (domain.commands || []) - .map( - (command) => ` - "${domain.domain}.${command.name}": ${domain.domain}.${command.name}Parameters;` - ) - .join('') - ) - .join('')} - } - export interface CommandReturnValues {${json.domains - .map((domain) => - (domain.commands || []) - .map( - (command) => ` - "${domain.domain}.${command.name}": ${domain.domain}.${command.name}ReturnValue;` - ) - .join('') - ) - .join('')} - } - } - -export default Protocol; -`; - - return { output, version }; - }); - -const protocolOutputPath = path.join(__dirname, '../../src/protocol.d.ts'); -const relativeProtocolOutputPath = path.relative( - process.cwd(), - protocolOutputPath -); - -const writeOutputToDisk = ({ output, version }) => { - require('fs').writeFileSync(protocolOutputPath, output); - console.log( - `Wrote protocol.d.ts for ${version} to ${relativeProtocolOutputPath}` - ); - console.log(`You should commit the changes.`); -}; - -const lastCommitMessage = () => { - return execSync('git log --no-merges -n 1', { encoding: 'utf8' }); -}; - -const cli = async () => { - const scriptToRun = process.argv[2]; - const changeExpected = lastCommitMessage().includes('EXPECTED_PROTOCOL_DIFF'); - - if (scriptToRun === 'update') { - writeOutputToDisk(await fetchAndGenerateProtocolDefinitions()); - } else if (scriptToRun === 'compare') { - const { output } = await fetchAndGenerateProtocolDefinitions(); - const outputOnDisk = require('fs').readFileSync(protocolOutputPath, { - encoding: 'utf8', - }); - if (output === outputOnDisk) { - console.log(`Success: ${relativeProtocolOutputPath} is up to date.`); - } else if (changeExpected) { - console.log(`Warning: ${relativeProtocolOutputPath} is out of date`); - - console.log( - ' continuing because EXPECTED_PROTOCOL_DIFF was found in the last commit message.' - ); - } else { - console.log(`Error: ${relativeProtocolOutputPath} is out of date.`); - console.log( - 'You should run `npm run update-protocol-d-ts` and commit the changes.' - ); - process.exit(1); - } - } else { - console.log(`Unknown protocol script ${scriptToRun}.`); - console.log(`Valid scripts are: - - update: fetch and update ${relativeProtocolOutputPath} - - compare: check ${relativeProtocolOutputPath} is up to date with the latest CDP. - `); - process.exit(1); - } -}; - -cli(); - -/** - * @typedef {Object} Property - * @property {string=} $ref - * @property {!Array=} enum - * @property {string=} type - * @property {!Property=} items - * @property {string=} description - */ - -/** - * @param {!Property} property - * @param {string=} domain - */ -function typeOfProperty(property, domain) { - if (property.$ref) - return property.$ref.includes('.') || !domain - ? property.$ref - : domain + '.' + property.$ref; - if (property.enum) - return property.enum.map((value) => JSON.stringify(value)).join('|'); - switch (property.type) { - case 'array': - return typeOfProperty(property.items, domain) + '[]'; - case 'integer': - return 'number'; - } - return property.type; -}
Note that `iframe` owner elements will return -corresponding document elements as their child nodes.