For MediaStream it can be used https://www.npmjs.com/package/mediastream as:
import { MediaStream as libMediaStream } from 'mediastream';
For getUserMedia () it can be used https://www.npmjs.com/package/get-user-media-promise as:
(<any>window.navigator).mediaDevices = Object.assign({}, window.navigator.mediaDevices, { getUserMedia: require('get-user-media-promise')} );
RTCPeerConnection, depends on your unit tests, can be a mockery:
window['RTCPeerConnection'] = () => { return { close: () => { }, getTracks: () => { }, addStream: () => { }, createOffer: () => { }, addIceCandidate: () => { }, setRemoteDescription: () => { }, createAnswer: () => { }, setLocalDescription: () => { } }; };
source share