@signalwire/realtime-api
Version:
SignalWire RealTime SDK for Node.js
49 lines • 2.26 kB
TypeScript
import { VideoMemberContract, EntityUpdated, VideoMemberJoinedEventParams, VideoMemberLeftEventParams, VideoMemberUpdatedEventParams, VideoMemberTalkingEventParams } from '@signalwire/core';
import { RoomSession } from '../RoomSession';
/**
* Represents a member of a room session. You receive instances of this type by
* listening to room events, for example on a {@link RoomSession} object.
*
* > ℹ️ State of RoomSessionMember objects
* >
* > The state of RoomSessionMember objects, for example `member.visible`, is
* > immutable. When you receive instances of RoomSessionMember from event
* > listeners, the state of the member always refers to that specific point in
* > time and remains fixed for the whole lifetime of the object.
*/
export interface RoomSessionMember extends VideoMemberContract {
setPayload(payload: RoomSessionMemberEventParams): void;
}
export type RoomSessionMemberUpdated = EntityUpdated<RoomSessionMember>;
export type RoomSessionMemberEventParams = (VideoMemberJoinedEventParams | VideoMemberLeftEventParams | VideoMemberUpdatedEventParams) & VideoMemberTalkingEventParams;
export interface RoomSessionOptions {
roomSession: RoomSession;
payload: RoomSessionMemberEventParams;
}
export declare class RoomSessionMember {
private _client;
private _payload;
constructor(options: RoomSessionOptions);
get id(): string;
get memberId(): string;
get roomSessionId(): string;
get roomId(): string;
get parentId(): string | undefined;
get name(): string;
get type(): import("@signalwire/core").VideoMemberType;
get meta(): Record<string, unknown> | undefined;
get requestedPosition(): import("@signalwire/core").VideoPosition;
get currentPosition(): import("@signalwire/core").VideoPosition | undefined;
get visible(): boolean;
get audioMuted(): boolean;
get videoMuted(): boolean;
get deaf(): boolean;
get inputVolume(): number;
get outputVolume(): number;
get inputSensitivity(): number;
get talking(): boolean;
get handraised(): boolean;
remove(): Promise<void>;
}
export declare const RoomSessionMemberAPI: import("@signalwire/core").ConstructableType<RoomSessionMember>;
//# sourceMappingURL=RoomSessionMember.d.ts.map