@signalwire/js
Version:
57 lines • 2.95 kB
TypeScript
import { BaseComponentContract, BaseConnectionContract, EventEmitter, VideoLayoutChangedEventParams } from '@signalwire/core';
import { BaseRoomSessionConnection, BaseRoomSessionOptions } from '../BaseRoomSession';
import { RoomSessionDevice } from '../RoomSessionDevice';
import { AddCameraOptions, AddDeviceOptions, AddMicrophoneOptions, CreateScreenShareObjectOptions, VideoRoomSessionMethods, VideoRoomSessionEvents, VideoRoomSessionContract, BaseRoomSessionContract } from '../utils/interfaces';
export interface VideoRoomSession extends VideoRoomSessionContract, VideoRoomSessionMethods, BaseRoomSessionContract, BaseConnectionContract<VideoRoomSessionEvents>, BaseComponentContract {
}
export interface VideoRoomSessionOptions extends BaseRoomSessionOptions {
}
export declare class VideoRoomSessionConnection extends BaseRoomSessionConnection<VideoRoomSessionEvents> implements VideoRoomSessionContract {
private _deviceList;
private _currentLayoutEvent;
constructor(options: VideoRoomSessionOptions);
set currentLayoutEvent(event: VideoLayoutChangedEventParams);
get currentLayoutEvent(): VideoLayoutChangedEventParams;
get currentLayout(): import("@signalwire/core").InternalVideoLayout;
get currentPosition(): import("@signalwire/core").VideoPosition | undefined;
get deviceList(): RoomSessionDevice[];
get interactivityMode(): "member" | "audience";
get permissions(): string[];
private initWorker;
/** @internal */
protected getSubscriptions(): EventEmitter.EventNames<{}>[];
/** @internal */
protected _finalize(): void;
/** @internal */
hangup(id?: string): Promise<void>;
join(): Promise<VideoRoomSession>;
/**
* @deprecated Use {@link getLayouts} instead. `getLayoutList` will
* be removed in v3.0.0
*/
getLayoutList(): any;
/**
* @deprecated Use {@link getMembers} instead. `getMemberList` will
* be removed in v3.0.0
*/
getMemberList(): any;
/** @deprecated Use {@link startScreenShare} instead. */
createScreenShareObject(opts?: CreateScreenShareObjectOptions): Promise<import(".").RoomSessionScreenShare>;
/**
* Allow to add a camera to the room.
*/
addCamera(opts?: AddCameraOptions): Promise<RoomSessionDevice>;
/**
* Allow to add a microphone to the room.
*/
addMicrophone(opts?: AddMicrophoneOptions): Promise<RoomSessionDevice>;
/**
* Allow to add additional devices to the room like cameras or microphones.
*/
addDevice(opts?: AddDeviceOptions): Promise<RoomSessionDevice>;
}
export declare const VideoRoomSessionAPI: import("@signalwire/core").ConstructableType<VideoRoomSessionConnection>;
export declare const isVideoRoomSession: (room: unknown) => room is VideoRoomSession;
/** @internal */
export declare const createVideoRoomSessionObject: (params: VideoRoomSessionOptions) => VideoRoomSession;
//# sourceMappingURL=VideoRoomSession.d.ts.map