UNPKG

@signalwire/js

Version:
117 lines 3.68 kB
import type { VideoPositions } from '@signalwire/core'; import { BaseConnectionState, VideoRoomDeviceEventParams, VideoRoomDeviceEventNames } from '@signalwire/core'; export interface ConnectionOptions { /** @internal */ destinationNumber?: string; /** @internal */ remoteCallerName?: string; /** @internal */ remoteCallerNumber?: string; /** @internal */ callerName?: string; /** @internal */ callerNumber?: string; /** @internal */ remoteSdp?: string; /** @internal */ localStream?: MediaStream; /** @internal */ remoteStream?: MediaStream; /** List of ICE servers. */ iceServers?: RTCIceServer[]; /** Disable ICE UDP transport policy */ disableUdpIceServers?: boolean; /** Audio constraints to use when joining the room. Default: `true`. */ audio?: MediaStreamConstraints['audio']; /** Video constraints to use when joining the room. Default: `true`. */ video?: MediaStreamConstraints['video']; /** @internal */ attach?: boolean; /** @internal */ useStereo?: boolean; /** @internal */ micId?: string; /** @internal */ micLabel?: string; /** @internal */ camId?: string; /** @internal */ camLabel?: string; /** Id of the speaker device to use for audio output. If undefined, picks a default speaker. */ speakerId?: string; /** @internal */ userVariables?: { [key: string]: any; }; /** @internal */ screenShare?: boolean; /** @internal */ additionalDevice?: boolean; /** @internal */ recoverCall?: boolean; /** @internal */ googleMaxBitrate?: number; /** @internal */ googleMinBitrate?: number; /** @internal */ googleStartBitrate?: number; /** @internal */ negotiateAudio?: boolean; /** @internal */ negotiateVideo?: boolean; /** @internal */ sfu?: boolean; /** @internal */ simulcast?: boolean; /** @internal */ msStreamsNumber?: number; /** @internal */ requestTimeout?: number; /** @internal */ shakenCheck?: string; /** @internal */ shakenResult?: string; /** @internal */ autoApplyMediaParams?: boolean; /** @internal */ rtcPeerConfig?: { [key: string]: any; }; /** @internal */ iceGatheringTimeout?: number; /** @internal */ maxIceGatheringTimeout?: number; /** @internal */ maxConnectionStateTimeout?: number; /** @internal */ watchMediaPackets?: boolean; /** @internal */ watchMediaPacketsTimeout?: number; /** @internal */ pingSupported?: boolean; /** @internal */ prevCallId?: string; /** @internal */ nodeId?: string; layout?: string; positions?: VideoPositions; } export interface EmitDeviceUpdatedEventsParams { newTrack: MediaStreamTrack; prevAudioTrack?: MediaStreamTrack | null; prevVideoTrack?: MediaStreamTrack | null; } export type UpdateMediaOptionsParams = Pick<ConnectionOptions, 'video' | 'audio' | 'negotiateVideo' | 'negotiateAudio'>; export interface OnVertoByeParams { byeCause: string; byeCauseCode: string; rtcPeerId: string; redirectDestination?: string; } export type MediaEventNames = 'media.connected' | 'media.reconnecting' | 'media.disconnected'; type BaseConnectionEventsHandlerMap = Record<BaseConnectionState, (params: any) => void> & Record<MediaEventNames, () => void> & Record<VideoRoomDeviceEventNames, (params: VideoRoomDeviceEventParams) => void>; export type BaseConnectionEvents = { [k in keyof BaseConnectionEventsHandlerMap]: BaseConnectionEventsHandlerMap[k]; }; export {}; //# sourceMappingURL=interfaces.d.ts.map