import { Peer, CallOption, MediaConnection } from 'peerjs'; type MediaStatus = 'active' | 'inactive' | 'calling' | 'waiting'; interface SimplePeerMediaOptions { rmVideoElId: string; lcVideoElId?: string; callingTimeoutMs: number; onStatusChange: (status: MediaStatus) => Promise | void; } declare class SimplePeerMedia { #private; status: MediaStatus; constraints?: MediaStreamConstraints; constructor(peer: Peer, opts: SimplePeerMediaOptions); startCall(rmPeerId: Peer['id'], opts?: CallOption): Promise; _onCall(mediaConnection: MediaConnection): void; endCall(): void; acceptCall(): Promise; } export { SimplePeerMedia, type SimplePeerMediaOptions };