selenium-webdriver
Version:
The official WebDriver JavaScript bindings from the Selenium project
40 lines (39 loc) • 1.53 kB
TypeScript
import type { JsUint } from './common.js';
import type { ScriptRemoteValue, ScriptSource, ScriptStackTrace } from './script.js';
export type LogEvent = 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 type LogGenericLogEntry = LogBaseLogEntry & {
type: string;
};
export type LogConsoleLogEntry = LogBaseLogEntry & {
type: "console";
method: string;
args: ScriptRemoteValue[];
};
export type LogJavascriptLogEntry = LogBaseLogEntry & {
type: "javascript";
};
export interface LogEntryAdded {
method: "log.entryAdded";
params: LogEntry;
}
/** @deprecated Use {@link Log.create} instead — will be removed in a future major version. */
export declare function getLogInspectorInstance(driver: unknown): Promise<Log>;
export declare class Log {
private readonly bidi;
private constructor();
static create(driver: unknown): Promise<Log>;
onEntryAdded(callback: (params: LogEntry) => void): Promise<void>;
onConsoleEntry(callback: (params: LogEntry) => void): Promise<void>;
onJavascriptLog(callback: (params: LogEntry) => void): Promise<void>;
onJavascriptException(callback: (params: LogEntry) => void): Promise<void>;
onLog(callback: (params: LogEntry) => void): Promise<void>;
}