ScreenRecorder interface exported
Last updated: 2026-03-05T10:53:28.864Z
Metrics
LOC: 17
Complexity: 1
Params: 0
Signature
interface ScreenRecorder
Source Code
export interface ScreenRecorder {
/** Current recording state */
readonly state: RecordingState;
/** Start capturing the given tab (background/extension page context required) */
start(tabId: number, options?: Partial<ScreenRecordOptions>): Promise<void>;
/**
* Start recording from an already-obtained `chrome.tabCapture` stream ID.
* Use this from DevTools panel pages which have access to `navigator.mediaDevices`
* but cannot call `chrome.tabCapture.getMediaStreamId` on behalf of another tab.
*/
startWithStreamId(
streamId: string,
options?: Partial<ScreenRecordOptions>,
): Promise<void>;
/** Stop capturing and return the recorded Blob (WebM) */
stop(): Promise<Blob>;
}
Dependencies (Outgoing)
| Target | Type |
|---|---|
| createLogger | uses |
| RecordingState | uses |
| ScreenRecordOptions | uses |
Impact (Incoming)
| Source | Type |
|---|---|
| handle | uses |