@types/node
Version:
TypeScript definitions for Node.js
1,574 lines (1,467 loc) • 114 kB
TypeScript
// Type definitions for inspector
// These definitions are auto-generated.
// Please see https://github.com/DefinitelyTyped/DefinitelyTyped/pull/19330
// for more information.
/**
* The inspector module provides an API for interacting with the V8 inspector.
*/
declare module "inspector" {
import { EventEmitter } from 'events';
export interface InspectorNotification<T> {
method: string;
params: T;
}
export namespace Console {
/**
* Console message.
*/
export interface ConsoleMessage {
/**
* Message source.
*/
source: string;
/**
* Message severity.
*/
level: string;
/**
* 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;
}
export interface MessageAddedEventDataType {
/**
* Console message that has been added.
*/
message: Console.ConsoleMessage;
}
}
export namespace 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.
* @experimental
*/
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: Debugger.CallFrameId;
/**
* Name of the JavaScript function called on this call frame.
*/
functionName: string;
/**
* Location in the source code.
*/
functionLocation?: Debugger.Location;
/**
* Location in the source code.
*/
location: Debugger.Location;
/**
* JavaScript script name or url.
*/
url: string;
/**
* Scope chain for this call frame.
*/
scopeChain: Debugger.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: string;
/**
* 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?: Debugger.Location;
/**
* Location in the source code where scope ends
*/
endLocation?: Debugger.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?: string;
}
export interface ContinueToLocationParameterType {
/**
* Location to continue to.
*/
location: Debugger.Location;
targetCallFrames?: string;
}
export interface EvaluateOnCallFrameParameterType {
/**
* Call frame identifier to evaluate on.
*/
callFrameId: Debugger.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.
* @experimental
*/
generatePreview?: boolean;
/**
* Whether to throw an exception if side effect cannot be ruled out during evaluation.
*/
throwOnSideEffect?: boolean;
}
export interface GetPossibleBreakpointsParameterType {
/**
* Start of range to search possible breakpoint locations in.
*/
start: Debugger.Location;
/**
* End of range to search possible breakpoint locations in (excluding). When not specified, end
of scripts is used as end of range.
*/
end?: Debugger.Location;
/**
* Only consider locations which are in the same (non-nested) function as start.
*/
restrictToFunction?: boolean;
}
export interface GetScriptSourceParameterType {
/**
* Id of the script to get source for.
*/
scriptId: Runtime.ScriptId;
}
export interface GetStackTraceParameterType {
stackTraceId: Runtime.StackTraceId;
}
export interface PauseOnAsyncCallParameterType {
/**
* Debugger will pause when async call with given stack trace is started.
*/
parentStackTraceId: Runtime.StackTraceId;
}
export interface RemoveBreakpointParameterType {
breakpointId: Debugger.BreakpointId;
}
export interface RestartFrameParameterType {
/**
* Call frame identifier to evaluate on.
*/
callFrameId: Debugger.CallFrameId;
}
export interface SearchInContentParameterType {
/**
* 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 interface SetAsyncCallStackDepthParameterType {
/**
* Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async
call stacks (default).
*/
maxDepth: number;
}
export interface SetBlackboxPatternsParameterType {
/**
* Array of regexps that will be used to check script url for blackbox state.
*/
patterns: string[];
}
export interface SetBlackboxedRangesParameterType {
/**
* Id of the script.
*/
scriptId: Runtime.ScriptId;
positions: Debugger.ScriptPosition[];
}
export interface SetBreakpointParameterType {
/**
* Location to set breakpoint in.
*/
location: Debugger.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 interface SetBreakpointByUrlParameterType {
/**
* 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 interface SetBreakpointsActiveParameterType {
/**
* New value for breakpoints active state.
*/
active: boolean;
}
export interface SetPauseOnExceptionsParameterType {
/**
* Pause on exceptions mode.
*/
state: string;
}
export interface SetReturnValueParameterType {
/**
* New return value.
*/
newValue: Runtime.CallArgument;
}
export interface SetScriptSourceParameterType {
/**
* 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 interface SetSkipAllPausesParameterType {
/**
* New value for skip pauses state.
*/
skip: boolean;
}
export interface SetVariableValueParameterType {
/**
* 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: Debugger.CallFrameId;
}
export interface StepIntoParameterType {
/**
* Debugger will issue additional Debugger.paused notification if any async task is scheduled
before next pause.
* @experimental
*/
breakOnAsyncCall?: boolean;
}
export interface EnableReturnType {
/**
* Unique identifier of the debugger.
* @experimental
*/
debuggerId: Runtime.UniqueDebuggerId;
}
export interface EvaluateOnCallFrameReturnType {
/**
* Object wrapper for the evaluation result.
*/
result: Runtime.RemoteObject;
/**
* Exception details.
*/
exceptionDetails?: Runtime.ExceptionDetails;
}
export interface GetPossibleBreakpointsReturnType {
/**
* List of the possible breakpoint locations.
*/
locations: Debugger.BreakLocation[];
}
export interface GetScriptSourceReturnType {
/**
* Script source.
*/
scriptSource: string;
}
export interface GetStackTraceReturnType {
stackTrace: Runtime.StackTrace;
}
export interface RestartFrameReturnType {
/**
* New stack trace.
*/
callFrames: Debugger.CallFrame[];
/**
* Async stack trace, if any.
*/
asyncStackTrace?: Runtime.StackTrace;
/**
* Async stack trace, if any.
* @experimental
*/
asyncStackTraceId?: Runtime.StackTraceId;
}
export interface SearchInContentReturnType {
/**
* List of search matches.
*/
result: Debugger.SearchMatch[];
}
export interface SetBreakpointReturnType {
/**
* Id of the created breakpoint for further reference.
*/
breakpointId: Debugger.BreakpointId;
/**
* Location this breakpoint resolved into.
*/
actualLocation: Debugger.Location;
}
export interface SetBreakpointByUrlReturnType {
/**
* Id of the created breakpoint for further reference.
*/
breakpointId: Debugger.BreakpointId;
/**
* List of the locations this breakpoint resolved into upon addition.
*/
locations: Debugger.Location[];
}
export interface SetScriptSourceReturnType {
/**
* New stack trace in case editing has happened while VM was stopped.
*/
callFrames?: Debugger.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.
* @experimental
*/
asyncStackTraceId?: Runtime.StackTraceId;
/**
* Exception details if any.
*/
exceptionDetails?: Runtime.ExceptionDetails;
}
export interface BreakpointResolvedEventDataType {
/**
* Breakpoint unique identifier.
*/
breakpointId: Debugger.BreakpointId;
/**
* Actual breakpoint location.
*/
location: Debugger.Location;
}
export interface PausedEventDataType {
/**
* Call stack the virtual machine stopped on.
*/
callFrames: Debugger.CallFrame[];
/**
* Pause reason.
*/
reason: string;
/**
* Object containing break-specific auxiliary properties.
*/
data?: {};
/**
* Hit breakpoints IDs
*/
hitBreakpoints?: string[];
/**
* Async stack trace, if any.
*/
asyncStackTrace?: Runtime.StackTrace;
/**
* Async stack trace, if any.
* @experimental
*/
asyncStackTraceId?: Runtime.StackTraceId;
/**
* Just scheduled async call will have this stack trace as parent stack during async execution.
This field is available only after `Debugger.stepInto` call with `breakOnAsynCall` flag.
* @experimental
*/
asyncCallStackTraceId?: Runtime.StackTraceId;
}
export interface ScriptFailedToParseEventDataType {
/**
* 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?: {};
/**
* 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.
* @experimental
*/
stackTrace?: Runtime.StackTrace;
}
export interface ScriptParsedEventDataType {
/**
* 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?: {};
/**
* True, if this script is generated as a result of the live edit operation.
* @experimental
*/
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.
* @experimental
*/
stackTrace?: Runtime.StackTrace;
}
}
export namespace 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;
/**
* Child nodes.
*/
children: HeapProfiler.SamplingHeapProfileNode[];
}
/**
* Profile.
*/
export interface SamplingHeapProfile {
head: HeapProfiler.SamplingHeapProfileNode;
}
export interface AddInspectedHeapObjectParameterType {
/**
* Heap snapshot object id to be accessible by means of $x command line API.
*/
heapObjectId: HeapProfiler.HeapSnapshotObjectId;
}
export interface GetHeapObjectIdParameterType {
/**
* Identifier of the object to get heap object id for.
*/
objectId: Runtime.RemoteObjectId;
}
export interface GetObjectByHeapObjectIdParameterType {
objectId: HeapProfiler.HeapSnapshotObjectId;
/**
* Symbolic group name that can be used to release multiple objects.
*/
objectGroup?: string;
}
export interface StartSamplingParameterType {
/**
* Average sample interval in bytes. Poisson distribution is used for the intervals. The
default value is 32768 bytes.
*/
samplingInterval?: number;
}
export interface StartTrackingHeapObjectsParameterType {
trackAllocations?: boolean;
}
export interface StopTrackingHeapObjectsParameterType {
/**
* If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken
when the tracking is stopped.
*/
reportProgress?: boolean;
}
export interface TakeHeapSnapshotParameterType {
/**
* If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken.
*/
reportProgress?: boolean;
}
export interface GetHeapObjectIdReturnType {
/**
* Id of the heap snapshot object corresponding to the passed remote object id.
*/
heapSnapshotObjectId: HeapProfiler.HeapSnapshotObjectId;
}
export interface GetObjectByHeapObjectIdReturnType {
/**
* Evaluation result.
*/
result: Runtime.RemoteObject;
}
export interface GetSamplingProfileReturnType {
/**
* Return the sampling profile being collected.
*/
profile: HeapProfiler.SamplingHeapProfile;
}
export interface StopSamplingReturnType {
/**
* Recorded sampling heap profile.
*/
profile: HeapProfiler.SamplingHeapProfile;
}
export interface AddHeapSnapshotChunkEventDataType {
chunk: string;
}
export interface HeapStatsUpdateEventDataType {
/**
* 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[];
}
export interface LastSeenObjectIdEventDataType {
lastSeenObjectId: number;
timestamp: number;
}
export interface ReportHeapSnapshotProgressEventDataType {
done: number;
total: number;
finished?: boolean;
}
}
export namespace 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?: Profiler.PositionTickInfo[];
}
/**
* Profile.
*/
export interface Profile {
/**
* The list of profile nodes. First item is the root node.
*/
nodes: Profiler.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: Profiler.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: Profiler.FunctionCoverage[];
}
/**
* Describes a type collected during runtime.
* @experimental
*/
export interface TypeObject {
/**
* Name of a type collected with type profiling.
*/
name: string;
}
/**
* Source offset and types for a parameter or return value.
* @experimental
*/
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: Profiler.TypeObject[];
}
/**
* Type profile data collected during runtime for a JavaScript script.
* @experimental
*/
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: Profiler.TypeProfileEntry[];
}
export interface SetSamplingIntervalParameterType {
/**
* New sampling interval in microseconds.
*/
interval: number;
}
export interface StartPreciseCoverageParameterType {
/**
* Collect accurate call counts beyond simple 'covered' or 'not covered'.
*/
callCount?: boolean;
/**
* Collect block-based coverage.
*/
detailed?: boolean;
}
export interface GetBestEffortCoverageReturnType {
/**
* Coverage data for the current isolate.
*/
result: Profiler.ScriptCoverage[];
}
export interface StopReturnType {
/**
* Recorded profile.
*/
profile: Profiler.Profile;
}
export interface TakePreciseCoverageReturnType {
/**
* Coverage data for the current isolate.
*/
result: Profiler.ScriptCoverage[];
}
export interface TakeTypeProfileReturnType {
/**
* Type profile for all scripts since startTypeProfile() was turned on.
*/
result: Profiler.ScriptTypeProfile[];
}
export interface ConsoleProfileFinishedEventDataType {
id: string;
/**
* Location of console.profileEnd().
*/
location: Debugger.Location;
profile: Profiler.Profile;
/**
* Profile title passed as an argument to console.profile().
*/
title?: string;
}
export interface ConsoleProfileStartedEventDataType {
id: string;
/**
* Location of console.profile().
*/
location: Debugger.Location;
/**
* Profile title passed as an argument to console.profile().
*/
title?: string;
}
}
export namespace 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: string;
/**
* Object subtype hint. Specified for `object` type values only.
*/
subtype?: string;
/**
* 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?: Runtime.UnserializableValue;
/**
* String representation of the object.
*/
description?: string;
/**
* Unique object identifier (for non-primitive values).
*/
objectId?: Runtime.RemoteObjectId;
/**
* Preview containing abbreviated property values. Specified for `object` type values only.
* @experimental
*/
preview?: Runtime.ObjectPreview;
/**
* @experimental
*/
customPreview?: Runtime.CustomPreview;
}
/**
* @experimental
*/
export interface CustomPreview {
header: string;
hasBody: boolean;
formatterObjectId: Runtime.RemoteObjectId;
bindRemoteObjectFunctionId: Runtime.RemoteObjectId;
configObjectId?: Runtime.RemoteObjectId;
}
/**
* Object containing abbreviated remote object value.
* @experimental
*/
export interface ObjectPreview {
/**
* Object type.
*/
type: string;
/**
* Object subtype hint. Specified for `object` type values only.
*/
subtype?: string;
/**
* 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: Runtime.PropertyPreview[];
/**
* List of the entries. Specified for `map` and `set` subtype values only.
*/
entries?: Runtime.EntryPreview[];
}
/**
* @experimental
*/
export interface PropertyPreview {
/**
* Property name.
*/
name: string;
/**
* Object type. Accessor means that the property itself is an accessor property.
*/
type: string;
/**
* User-friendly property value string.
*/
value?: string;
/**
* Nested value preview.
*/
valuePreview?: Runtime.ObjectPreview;
/**
* Object subtype hint. Specified for `object` type values only.
*/
subtype?: string;
}
/**
* @experimental
*/
export interface EntryPreview {
/**
* Preview of the key. Specified for map-like collection entries.
*/
key?: Runtime.ObjectPreview;
/**
* Preview of the value.
*/
value: Runtime.ObjectPreview;
}
/**
* Object property descriptor.
*/
export interface PropertyDescriptor {
/**
* Property name or symbol description.
*/
name: string;
/**
* The value associated with the property.
*/
value?: Runtime.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?: Runtime.RemoteObject;
/**
* A function which serves as a setter for the property, or `undefined` if there is no setter
(accessor descriptors only).
*/
set?: Runtime.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?: Runtime.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?: Runtime.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?: Runtime.UnserializableValue;
/**
* Remote object handle.
*/
objectId?: Runtime.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: Runtime.ExecutionContextId;
/**
* Execution context origin.
*/
origin: string;
/**
* Human readable name describing given context.
*/
name: string;
/**
* Embedder-specific auxiliary data.
*/
auxData?: {};
}
/**
* 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?: Runtime.ScriptId;
/**
* URL of the exception location, to be used when the script was not reported.
*/
url?: string;
/**
* JavaScript stack trace if available.
*/
stackTrace?: Runtime.StackTrace;
/**
* Exception object if available.
*/
exception?: Runtime.RemoteObject;
/**
* Identifier of the context where exception happened.
*/
executionContextId?: Runtime.ExecutionContextId;
}
/**
* Number of milliseconds since epoch.
*/
export type Timestamp = number;
/**
* Stack entry for runtime errors and assertions.
*/
export interface CallFrame {
/**
* JavaScript function name.
*/
functionName: string;
/**
* JavaScript script id.
*/
scriptId: Runtime.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: Runtime.CallFrame[];
/**
* Asynchronous JavaScript stack trace that preceded this stack, if available.
*/
parent?: Runtime.StackTrace;
/**
* Asynchronous JavaScript stack trace that preceded this stack, if available.
* @experimental
*/
parentId?: Runtime.StackTraceId;
}
/**
* Unique identifier of current debugger.
* @experimental
*/
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.
* @experimental
*/
export interface StackTraceId {
id: string;
debuggerId?: Runtime.UniqueDebuggerId;
}
export interface AwaitPromiseParameterType {
/**
* Identifier of the promise.
*/
promiseObjectId: Runtime.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 interface CallFunctionOnParameterType {
/**
* Declaration of the function to call.
*/
functionDeclaration: string;
/**
* Identifier of the object to call function on. Either objectId or executionContextId should
be specified.
*/
objectId?: Runtime.RemoteObjectId;
/**
* Call arguments. All call arguments must belong to the same JavaScript world as the target
object.
*/
arguments?: Runtime.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.
* @experimental
*/
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?: Runtime.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 interface CompileScriptParameterType {
/**
* 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?: Runtime.ExecutionContextId;
}
export interface EvaluateParameterType {
/**
* 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?: Runtime.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.
* @experimental
*/