@fakes/media-devices
Version:
A interactive fake implementation of MediaDevices interface in the browser for testing
25 lines • 1.26 kB
TypeScript
import { Context } from './context';
import { MediaDeviceDescription } from './MediaDeviceDescription';
import { OpenMediaTracks } from './OpenMediaTracks';
import { UserConsentTracker } from './UserConsentTracker';
declare type DeviceChangeListener = (this: MediaDevices, ev: Event) => any;
export declare class MediaDevicesFake extends EventTarget implements MediaDevices {
private readonly _context;
private readonly _userConsentTracker;
private readonly _openMediaTracks;
private readonly _deviceDescriptions;
private readonly _onDeviceChangeListener;
constructor(_context: Context, _userConsentTracker: UserConsentTracker, _openMediaTracks: OpenMediaTracks);
private get devices();
get ondevicechange(): DeviceChangeListener | null;
set ondevicechange(listener: DeviceChangeListener | null);
enumerateDevices(): Promise<MediaDeviceInfo[]>;
getSupportedConstraints(): MediaTrackSupportedConstraints;
getUserMedia(constraints?: MediaStreamConstraints): Promise<MediaStream>;
noDevicesAttached(): void;
attach(toAdd: MediaDeviceDescription): void;
remove(toRemove: MediaDeviceDescription): void;
private informDeviceChangeListener;
}
export {};
//# sourceMappingURL=MediaDevicesFake.d.ts.map