import { MediaStreamTrackMock } from 'webrtc-mock'; import { default as RTCRtpSenderMock } from './RTCRtpSenderMock'; import { RTCPeerConnectionDeprecated } from '@krivega/jssip'; export declare enum EEvent { TRACK = "track" } declare class RTCPeerConnectionMock extends EventTarget implements RTCPeerConnectionDeprecated { senders: RTCRtpSender[]; transceivers: RTCRtpTransceiver[]; receivers: RTCRtpReceiver[]; canTrickleIceCandidates: boolean | null; connectionState: RTCPeerConnectionState; currentLocalDescription: RTCSessionDescription | null; currentRemoteDescription: RTCSessionDescription | null; iceConnectionState: RTCIceConnectionState; iceGatheringState: RTCIceGatheringState; idpErrorInfo: string | null; idpLoginUrl: string | null; localDescription: RTCSessionDescription | null; onconnectionstatechange: ((this: RTCPeerConnection, event_: Event) => unknown) | null; ondatachannel: ((this: RTCPeerConnection, event_: RTCDataChannelEvent) => unknown) | null; onicecandidate: ((this: RTCPeerConnection, event_: RTCPeerConnectionIceEvent) => unknown) | null; onicecandidateerror: ((this: RTCPeerConnection, event_: Event) => unknown) | null; oniceconnectionstatechange: ((this: RTCPeerConnection, event_: Event) => unknown) | null; onicegatheringstatechange: ((this: RTCPeerConnection, event_: Event) => unknown) | null; onnegotiationneeded: ((this: RTCPeerConnection, event_: Event) => unknown) | null; onsignalingstatechange: ((this: RTCPeerConnection, event_: Event) => unknown) | null; ontrack: ((this: RTCPeerConnection, event_: RTCTrackEvent) => unknown) | null; peerIdentity: undefined; pendingLocalDescription: RTCSessionDescription | null; pendingRemoteDescription: RTCSessionDescription | null; remoteDescription: RTCSessionDescription | null; sctp: null; signalingState: RTCSignalingState; close: jest.Mock; setLocalDescription: jest.Mock, [description: RTCSessionDescriptionInit], any>; setRemoteDescription: jest.Mock, [_description: RTCSessionDescriptionInit], any>; addTransceiver: jest.Mock; createOffer: { (options?: RTCOfferOptions): Promise; (successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback, options?: RTCOfferOptions): Promise; }; constructor(_config?: RTCConfiguration, tracks?: MediaStreamTrackMock[]); getRemoteStreams(): MediaStream[]; addIceCandidate(_candidate: RTCIceCandidate | RTCIceCandidateInit): Promise; restartIce(): void; createAnswer(options?: RTCAnswerOptions): Promise; createAnswer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback): Promise; createDataChannel(_label: string, _dataChannelDict?: RTCDataChannelInit): RTCDataChannel; getConfiguration(): RTCConfiguration; getIdentityAssertion(): Promise; getStats(_selector?: MediaStreamTrack | null): Promise; getTransceivers(): RTCRtpTransceiver[]; removeTrack(_sender: RTCRtpSender): void; setConfiguration(_config: RTCConfiguration): void; getReceivers: () => RTCRtpReceiver[]; getSenders: () => RTCRtpSender[]; addTrack: (track: MediaStreamTrack, ...streams: MediaStream[]) => RTCRtpSenderMock; addTrackWithMid: (track: MediaStreamTrack, mid?: string) => RTCRtpSenderMock; dispatchTrack(kind: 'audio' | 'video'): void; private dispatchTrackInternal; } export default RTCPeerConnectionMock;