/** * !!! PLEASE DO NOT EDIT THIS FILE !!! * * This source file, even though checked in, is auto-generated based on the * current development within the WebDriver Bidi spec. Any changes to this * file need to come from the specification. You can generate this file by calling * * ``` * $ npm run generate:bidi * ``` * * from the project root. You can find the scripts that generates this file in * ./scripts/bidi/** */ export type Message = CommandResponse | ErrorResponse | Event; export interface CommandResponse extends Extensible { type: 'success'; id: JsUint; result: ResultData; } export interface ErrorResponse extends Extensible { type: 'error'; id: JsUint | null; error: ErrorCode; message: string; stacktrace?: string; } export type ResultData = BrowsingContextResult | EmptyResult | NetworkResult | ScriptResult | SessionResult | StorageResult; export interface EmptyResult extends Extensible { } export interface Event extends Extensible { type: 'event'; } export type EventData = BrowsingContextEvent | LogEvent | NetworkEvent | ScriptEvent; export type Extensible = Record; export type JsInt = number; export type JsUint = number; export type ErrorCode = 'invalid argument' | 'invalid selector' | 'invalid session id' | 'move target out of bounds' | 'no such alert' | 'no such element' | 'no such frame' | 'no such handle' | 'no such history entry' | 'no such intercept' | 'no such node' | 'no such request' | 'no such script' | 'no such storage partition' | 'no such user context' | 'session not created' | 'unable to capture screen' | 'unable to close browser' | 'unable to set cookie' | 'unable to set file input' | 'underspecified storage partition' | 'unknown command' | 'unknown error' | 'unsupported operation'; export type SessionResult = SessionNewResult | SessionStatusResult; export interface SessionCapabilitiesRequest { alwaysMatch?: SessionCapabilityRequest; firstMatch?: SessionCapabilityRequest[]; } export interface SessionCapabilityRequest extends Extensible { acceptInsecureCerts?: boolean; browserName?: string; browserVersion?: string; platformName?: string; proxy?: SessionProxyConfiguration; webSocketUrl?: boolean; } export type SessionProxyConfiguration = SessionAutodetectProxyConfiguration | SessionDirectProxyConfiguration | SessionManualProxyConfiguration | SessionPacProxyConfiguration | SessionSystemProxyConfiguration; export interface SessionAutodetectProxyConfiguration extends Extensible { proxyType: 'autodetect'; } export interface SessionDirectProxyConfiguration extends Extensible { proxyType: 'direct'; } export interface SessionManualProxyConfiguration extends SessionSocksProxyConfiguration, Extensible { proxyType: 'manual'; ftpProxy?: string; httpProxy?: string; sslProxy?: string; noProxy?: string[]; } export interface SessionSocksProxyConfiguration { socksProxy: string; socksVersion: number; } export interface SessionPacProxyConfiguration extends Extensible { proxyType: 'pac'; proxyAutoconfigUrl: string; } export interface SessionSystemProxyConfiguration extends Extensible { proxyType: 'system'; } export interface SessionStatusResult { ready: boolean; message: string; } export interface SessionNewResult { sessionId: string; capabilities: { acceptInsecureCerts: boolean; browserName: string; browserVersion: string; platformName: string; setWindowRect: boolean; userAgent: string; proxy?: SessionProxyConfiguration; webSocketUrl?: string; }; } export type BrowserResult = BrowserCreateUserContextResult | BrowserGetUserContextsResult; export type BrowserUserContext = string; export interface BrowserUserContextInfo { userContext: BrowserUserContext; } export type BrowserCreateUserContextResult = BrowserUserContextInfo; export interface BrowserGetUserContextsResult { userContexts: BrowserUserContextInfo[]; } export type BrowsingContextResult = BrowsingContextCaptureScreenshotResult | BrowsingContextCreateResult | BrowsingContextGetTreeResult | BrowsingContextLocateNodesResult | BrowsingContextNavigateResult | BrowsingContextPrintResult | BrowsingContextTraverseHistoryResult; export type BrowsingContextEvent = BrowsingContextContextCreated | BrowsingContextContextDestroyed | BrowsingContextDomContentLoaded | BrowsingContextDownloadWillBegin | BrowsingContextFragmentNavigated | BrowsingContextLoad | BrowsingContextNavigationAborted | BrowsingContextNavigationFailed | BrowsingContextNavigationStarted | BrowsingContextUserPromptClosed | BrowsingContextUserPromptOpened; export type BrowsingContextBrowsingContext = string; export type BrowsingContextInfoList = (BrowsingContextInfo)[]; export interface BrowsingContextInfo { children: BrowsingContextInfoList | null; context: BrowsingContextBrowsingContext; url: string; userContext: BrowserUserContext; parent?: BrowsingContextBrowsingContext | null; } export type BrowsingContextLocator = BrowsingContextAccessibilityLocator | BrowsingContextCssLocator | BrowsingContextInnerTextLocator | BrowsingContextXPathLocator; export interface BrowsingContextAccessibilityLocator { type: 'accessibility'; value: { name?: string; role?: string; }; } export interface BrowsingContextCssLocator { type: 'css'; value: string; } export interface BrowsingContextInnerTextLocator { type: 'innerText'; value: string; ignoreCase?: boolean; matchType?: 'full' | 'partial'; maxDepth?: JsUint; } export interface BrowsingContextXPathLocator { type: 'xpath'; value: string; } export type BrowsingContextNavigation = string; export interface BrowsingContextNavigationInfo { context: BrowsingContextBrowsingContext; navigation: BrowsingContextNavigation | null; timestamp: JsUint; url: string; } export interface BrowsingContextCaptureScreenshotResult { data: string; } export interface BrowsingContextCreateResult { context: BrowsingContextBrowsingContext; } export interface BrowsingContextGetTreeResult { contexts: BrowsingContextInfoList; } export interface BrowsingContextLocateNodesResult { nodes: ScriptNodeRemoteValue[]; } export interface BrowsingContextNavigateResult { navigation: BrowsingContextNavigation | null; url: string; } export interface BrowsingContextPrintResult { data: string; } export interface BrowsingContextTraverseHistoryResult { } export interface BrowsingContextContextCreated { method: 'browsingContext.contextCreated'; params: BrowsingContextInfo; } export interface BrowsingContextContextDestroyed { method: 'browsingContext.contextDestroyed'; params: BrowsingContextInfo; } export interface BrowsingContextNavigationStarted { method: 'browsingContext.navigationStarted'; params: BrowsingContextNavigationInfo; } export interface BrowsingContextFragmentNavigated { method: 'browsingContext.fragmentNavigated'; params: BrowsingContextNavigationInfo; } export interface BrowsingContextDomContentLoaded { method: 'browsingContext.domContentLoaded'; params: BrowsingContextNavigationInfo; } export interface BrowsingContextLoad { method: 'browsingContext.load'; params: BrowsingContextNavigationInfo; } export interface BrowsingContextDownloadWillBegin { method: 'browsingContext.downloadWillBegin'; params: BrowsingContextNavigationInfo; } export interface BrowsingContextNavigationAborted { method: 'browsingContext.navigationAborted'; params: BrowsingContextNavigationInfo; } export interface BrowsingContextNavigationFailed { method: 'browsingContext.navigationFailed'; params: BrowsingContextNavigationInfo; } export interface BrowsingContextUserPromptClosed { method: 'browsingContext.userPromptClosed'; params: BrowsingContextUserPromptClosedParameters; } export interface BrowsingContextUserPromptClosedParameters { context: BrowsingContextBrowsingContext; accepted: boolean; userText?: string; } export interface BrowsingContextUserPromptOpened { method: 'browsingContext.userPromptOpened'; params: BrowsingContextUserPromptOpenedParameters; } export interface BrowsingContextUserPromptOpenedParameters { context: BrowsingContextBrowsingContext; type: 'alert' | 'confirm' | 'prompt' | 'beforeunload'; message: string; defaultValue?: string; } export interface NetworkResult extends NetworkAddInterceptResult { } export type NetworkEvent = NetworkAuthRequired | NetworkBeforeRequestSent | NetworkFetchError | NetworkResponseCompleted | NetworkResponseStarted; export interface NetworkAuthChallenge { scheme: string; realm: string; } export interface NetworkBaseParameters { context: BrowsingContextBrowsingContext | null; isBlocked: boolean; navigation: BrowsingContextNavigation | null; redirectCount: JsUint; request: NetworkRequestData; timestamp: JsUint; intercepts?: NetworkIntercept[]; } export type NetworkBytesValue = NetworkStringValue | NetworkBase64Value; export interface NetworkStringValue { type: 'string'; value: string; } export interface NetworkBase64Value { type: 'base64'; value: string; } export type NetworkSameSite = 'strict' | 'lax' | 'none'; export interface NetworkCookie extends Extensible { name: string; value: NetworkBytesValue; domain: string; path: string; size: JsUint; httpOnly: boolean; secure: boolean; sameSite: NetworkSameSite; expiry?: JsUint; } export interface NetworkFetchTimingInfo { timeOrigin: number; requestTime: number; redirectStart: number; redirectEnd: number; fetchStart: number; dnsStart: number; dnsEnd: number; connectStart: number; connectEnd: number; tlsStart: number; requestStart: number; responseStart: number; responseEnd: number; } export interface NetworkHeader { name: string; value: NetworkBytesValue; } export interface NetworkInitiator { type: 'parser' | 'script' | 'preflight' | 'other'; columnNumber?: JsUint; lineNumber?: JsUint; stackTrace?: ScriptStackTrace; request?: NetworkRequest; } export type NetworkIntercept = string; export type NetworkRequest = string; export interface NetworkRequestData { request: NetworkRequest; url: string; method: string; headers: NetworkHeader[]; cookies: NetworkCookie[]; headersSize: JsUint; bodySize: JsUint | null; timings: NetworkFetchTimingInfo; } export interface NetworkResponseContent { size: JsUint; } export interface NetworkResponseData { url: string; protocol: string; status: JsUint; statusText: string; fromCache: boolean; headers: NetworkHeader[]; mimeType: string; bytesReceived: JsUint; headersSize: JsUint | null; bodySize: JsUint | null; content: NetworkResponseContent; authChallenges?: NetworkAuthChallenge[]; } export interface NetworkAddInterceptResult { intercept: NetworkIntercept; } export interface NetworkAuthRequired { method: 'network.authRequired'; params: NetworkAuthRequiredParameters; } export interface NetworkAuthRequiredParameters extends NetworkBaseParameters { response: NetworkResponseData; } export interface NetworkBeforeRequestSent { method: 'network.beforeRequestSent'; params: NetworkBeforeRequestSentParameters; } export interface NetworkBeforeRequestSentParameters extends NetworkBaseParameters { initiator: NetworkInitiator; } export interface NetworkFetchError { method: 'network.fetchError'; params: NetworkFetchErrorParameters; } export interface NetworkFetchErrorParameters extends NetworkBaseParameters { errorText: string; } export interface NetworkResponseCompleted { method: 'network.responseCompleted'; params: NetworkResponseCompletedParameters; } export interface NetworkResponseCompletedParameters extends NetworkBaseParameters { response: NetworkResponseData; } export interface NetworkResponseStarted { method: 'network.responseStarted'; params: NetworkResponseStartedParameters; } export interface NetworkResponseStartedParameters extends NetworkBaseParameters { response: NetworkResponseData; } export type ScriptResult = ScriptAddPreloadScriptResult | ScriptEvaluateResult | ScriptGetRealmsResult; export type ScriptEvent = ScriptMessage | ScriptRealmCreated | ScriptRealmDestroyed; export type ScriptChannel = string; export interface ScriptChannelValue { type: 'channel'; value: ScriptChannelProperties; } export interface ScriptChannelProperties { channel: ScriptChannel; serializationOptions?: ScriptSerializationOptions; ownership?: ScriptResultOwnership; } export type ScriptEvaluateResult = ScriptEvaluateResultSuccess | ScriptEvaluateResultException; export interface ScriptEvaluateResultSuccess { type: 'success'; result: ScriptRemoteValue; realm: ScriptRealm; } export interface ScriptEvaluateResultException { type: 'exception'; exceptionDetails: ScriptExceptionDetails; realm: ScriptRealm; } export interface ScriptExceptionDetails { columnNumber: JsUint; exception: ScriptRemoteValue; lineNumber: JsUint; stackTrace: ScriptStackTrace; text: string; } export type ScriptHandle = string; export type ScriptInternalId = string; export type ScriptLocalValue = ScriptRemoteReference | ScriptPrimitiveProtocolValue | ScriptChannelValue | ScriptArrayLocalValue | ScriptDateLocalValue | ScriptMapLocalValue | ScriptObjectLocalValue | ScriptRegExpLocalValue | ScriptSetLocalValue; export type ScriptListLocalValue = (ScriptLocalValue)[]; export interface ScriptArrayLocalValue { type: 'array'; value: ScriptListLocalValue; } export interface ScriptDateLocalValue { type: 'date'; value: string; } export type ScriptMappingLocalValue = (ScriptLocalValue | ScriptLocalValue)[]; export interface ScriptMapLocalValue { type: 'map'; value: ScriptMappingLocalValue; } export interface ScriptObjectLocalValue { type: 'object'; value: ScriptMappingLocalValue; } export interface ScriptRegExpValue { pattern: string; flags?: string; } export interface ScriptRegExpLocalValue { type: 'regexp'; value: ScriptRegExpValue; } export interface ScriptSetLocalValue { type: 'set'; value: ScriptListLocalValue; } export type ScriptPreloadScript = string; export type ScriptRealm = string; export type ScriptPrimitiveProtocolValue = ScriptUndefinedValue | ScriptNullValue | ScriptStringValue | ScriptNumberValue | ScriptBooleanValue | ScriptBigIntValue; export interface ScriptUndefinedValue { type: 'undefined'; } export interface ScriptNullValue { type: null; } export interface ScriptStringValue { type: 'string'; value: string; } export type ScriptSpecialNumber = 'NaN' | '-0' | 'Infinity' | '-Infinity'; export interface ScriptNumberValue { type: 'number'; value: number | ScriptSpecialNumber; } export interface ScriptBooleanValue { type: 'boolean'; value: boolean; } export interface ScriptBigIntValue { type: 'bigint'; value: string; } export type ScriptRealmInfo = ScriptWindowRealmInfo | ScriptDedicatedWorkerRealmInfo | ScriptSharedWorkerRealmInfo | ScriptServiceWorkerRealmInfo | ScriptWorkerRealmInfo | ScriptPaintWorkletRealmInfo | ScriptAudioWorkletRealmInfo | ScriptWorkletRealmInfo; export interface ScriptBaseRealmInfo { realm: ScriptRealm; origin: string; } export interface ScriptWindowRealmInfo extends ScriptBaseRealmInfo { type: 'window'; context: BrowsingContextBrowsingContext; sandbox?: string; } export interface ScriptDedicatedWorkerRealmInfo extends ScriptBaseRealmInfo { type: 'dedicated-worker'; owners: ScriptRealm[]; } export interface ScriptSharedWorkerRealmInfo extends ScriptBaseRealmInfo { type: 'shared-worker'; } export interface ScriptServiceWorkerRealmInfo extends ScriptBaseRealmInfo { type: 'service-worker'; } export interface ScriptWorkerRealmInfo extends ScriptBaseRealmInfo { type: 'worker'; } export interface ScriptPaintWorkletRealmInfo extends ScriptBaseRealmInfo { type: 'paint-worklet'; } export interface ScriptAudioWorkletRealmInfo extends ScriptBaseRealmInfo { type: 'audio-worklet'; } export interface ScriptWorkletRealmInfo extends ScriptBaseRealmInfo { type: 'worklet'; } export type ScriptRealmType = 'window' | 'dedicated-worker' | 'shared-worker' | 'service-worker' | 'worker' | 'paint-worklet' | 'audio-worklet' | 'worklet'; export type ScriptRemoteReference = ScriptSharedReference | ScriptRemoteObjectReference; export interface ScriptSharedReference extends Extensible { sharedId: ScriptSharedId; handle?: ScriptHandle; } export interface ScriptRemoteObjectReference extends Extensible { handle: ScriptHandle; sharedId?: ScriptSharedId; } export type ScriptRemoteValue = ScriptPrimitiveProtocolValue | ScriptSymbolRemoteValue | ScriptArrayRemoteValue | ScriptObjectRemoteValue | ScriptFunctionRemoteValue | ScriptRegExpRemoteValue | ScriptDateRemoteValue | ScriptMapRemoteValue | ScriptSetRemoteValue | ScriptWeakMapRemoteValue | ScriptWeakSetRemoteValue | ScriptGeneratorRemoteValue | ScriptErrorRemoteValue | ScriptProxyRemoteValue | ScriptPromiseRemoteValue | ScriptTypedArrayRemoteValue | ScriptArrayBufferRemoteValue | ScriptNodeListRemoteValue | ScriptHtmlCollectionRemoteValue | ScriptNodeRemoteValue | ScriptWindowProxyRemoteValue; export type ScriptListRemoteValue = (ScriptRemoteValue)[]; export type ScriptMappingRemoteValue = (ScriptRemoteValue | ScriptRemoteValue)[]; export interface ScriptSymbolRemoteValue { type: 'symbol'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptArrayRemoteValue { type: 'array'; handle?: ScriptHandle; internalId?: ScriptInternalId; value?: ScriptListRemoteValue; } export interface ScriptObjectRemoteValue { type: 'object'; handle?: ScriptHandle; internalId?: ScriptInternalId; value?: ScriptMappingRemoteValue; } export interface ScriptFunctionRemoteValue { type: 'function'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptRegExpRemoteValue extends ScriptRegExpLocalValue { handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptDateRemoteValue extends ScriptDateLocalValue { handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptMapRemoteValue { type: 'map'; handle?: ScriptHandle; internalId?: ScriptInternalId; value?: ScriptMappingRemoteValue; } export interface ScriptSetRemoteValue { type: 'set'; handle?: ScriptHandle; internalId?: ScriptInternalId; value?: ScriptListRemoteValue; } export interface ScriptWeakMapRemoteValue { type: 'weakmap'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptWeakSetRemoteValue { type: 'weakset'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptGeneratorRemoteValue { type: 'generator'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptErrorRemoteValue { type: 'error'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptProxyRemoteValue { type: 'proxy'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptPromiseRemoteValue { type: 'promise'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptTypedArrayRemoteValue { type: 'typedarray'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptArrayBufferRemoteValue { type: 'arraybuffer'; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptNodeListRemoteValue { type: 'nodelist'; handle?: ScriptHandle; internalId?: ScriptInternalId; value?: ScriptListRemoteValue; } export interface ScriptHtmlCollectionRemoteValue { type: 'htmlcollection'; handle?: ScriptHandle; internalId?: ScriptInternalId; value?: ScriptListRemoteValue; } export interface ScriptNodeRemoteValue { type: 'node'; sharedId?: ScriptSharedId; handle?: ScriptHandle; internalId?: ScriptInternalId; value?: ScriptNodeProperties; } export interface ScriptNodeProperties { nodeType: JsUint; childNodeCount: JsUint; attributes?: Record; children?: ScriptNodeRemoteValue[]; localName?: string; mode?: 'open' | 'closed'; namespaceUri?: string; nodeValue?: string; shadowRoot?: ScriptNodeRemoteValue | null; } export interface ScriptWindowProxyRemoteValue { type: 'window'; value: ScriptWindowProxyProperties; handle?: ScriptHandle; internalId?: ScriptInternalId; } export interface ScriptWindowProxyProperties { context: BrowsingContextBrowsingContext; } export type ScriptResultOwnership = 'root' | 'none'; export interface ScriptSerializationOptions { maxDomDepth?: JsUint | null; /** * @default null */ maxObjectDepth?: JsUint | null; /** * @default 'none' */ includeShadowTree?: 'none' | 'open' | 'all'; } export type ScriptSharedId = string; export interface ScriptStackFrame { columnNumber: JsUint; functionName: string; lineNumber: JsUint; url: string; } export interface ScriptStackTrace { callFrames: ScriptStackFrame[]; } export interface ScriptSource { realm: ScriptRealm; context?: BrowsingContextBrowsingContext; } export interface ScriptAddPreloadScriptResult { script: ScriptPreloadScript; } export interface ScriptGetRealmsResult { realms: ScriptRealmInfo[]; } export interface ScriptMessage { method: 'script.message'; params: ScriptMessageParameters; } export interface ScriptMessageParameters { channel: ScriptChannel; data: ScriptRemoteValue; source: ScriptSource; } export interface ScriptRealmCreated { method: 'script.realmCreated'; params: ScriptRealmInfo; } export interface ScriptRealmDestroyed { method: 'script.realmDestroyed'; params: ScriptRealmDestroyedParameters; } export interface ScriptRealmDestroyedParameters { realm: ScriptRealm; } export type StorageResult = StorageDeleteCookiesResult | StorageGetCookiesResult | StorageSetCookieResult; export interface StoragePartitionKey extends Extensible { userContext?: string; sourceOrigin?: string; } export interface StorageGetCookiesResult { cookies: NetworkCookie[]; partitionKey: StoragePartitionKey; } export interface StorageSetCookieResult { partitionKey: StoragePartitionKey; } export interface StorageDeleteCookiesResult { partitionKey: StoragePartitionKey; } export interface LogEvent extends LogEntryAdded { } export type LogLevel = 'debug' | 'info' | 'warn' | 'error'; export type LogEntry = LogGenericLogEntry | LogConsoleLogEntry | LogJavascriptLogEntry; export interface LogBaseLogEntry { level: LogLevel; source: ScriptSource; text: string | null; timestamp: JsUint; stackTrace?: ScriptStackTrace; } export interface LogGenericLogEntry extends LogBaseLogEntry { type: string; } export interface LogConsoleLogEntry extends LogBaseLogEntry { type: 'console'; method: string; args: ScriptRemoteValue[]; } export interface LogJavascriptLogEntry extends LogBaseLogEntry { type: 'javascript'; } export interface LogEntryAdded { method: 'log.entryAdded'; params: LogEntry; } //# sourceMappingURL=localTypes.d.ts.map