@signalwire/realtime-api
Version:
SignalWire RealTime SDK for Node.js
32 lines • 1.43 kB
TypeScript
/**
* Once we have new interface for Browser SDK;
* RoomSessionRecording in core should be removed
* RoomSessionRecording in realtime-api should be moved to core
*/
import type { VideoRecordingEventParams, VideoRecordingMethods } from '@signalwire/core';
import { RealTimeRoomRecordingEvents, RealTimeRoomRecordingListeners, RealtimeRoomRecordingListenersEventsMapping } from '../../types';
import { ListenSubscriber } from '../../ListenSubscriber';
import { RoomSession } from '../RoomSession';
export interface RoomSessionRecordingOptions {
roomSession: RoomSession;
payload: VideoRecordingEventParams;
}
export declare class RoomSessionRecording extends ListenSubscriber<RealTimeRoomRecordingListeners, RealTimeRoomRecordingEvents> implements VideoRecordingMethods {
private _payload;
protected _eventMap: RealtimeRoomRecordingListenersEventsMapping;
constructor(options: RoomSessionRecordingOptions);
get id(): string;
get roomId(): string;
get roomSessionId(): string;
get state(): "recording" | "paused" | "completed";
get duration(): number | undefined;
get startedAt(): Date | undefined;
get endedAt(): Date | undefined;
get hasEnded(): boolean;
/** @internal */
setPayload(payload: VideoRecordingEventParams): void;
pause(): Promise<void>;
resume(): Promise<void>;
stop(): Promise<void>;
}
//# sourceMappingURL=RoomSessionRecording.d.ts.map