import { EventEmitter } from '../utils/EventEmitter'; import { GunDataProvider } from '../data/GunDataProvider'; export declare class WebRTCAdapter extends EventEmitter { private peerConnections; private logger; private errorHandler; private gunDataProvider; constructor(gunDataProvider: GunDataProvider); private setupGunListeners; private handleNewPeer; private handlePeerDisconnect; createOffer(peerId: string): Promise; getCurrentPeerIds(): Promise; getCurrentPeerId(): Promise; handleOffer(peerId: string, offer: RTCSessionDescriptionInit): Promise; handleAnswer(peerId: string, answer: RTCSessionDescriptionInit): Promise; addIceCandidate(peerId: string, candidate: RTCIceCandidateInit): Promise; sendMessage(peerId: string, message: string): void; close(peerId: string): void; private createPeerConnection; stop(): void; listenForSignaling(): void; initiateWebRTCConnection(peerId: string): Promise; isWebRTCSupported(): boolean; getConnectionState(peerId: string): RTCPeerConnectionState | null; restartIce(peerId: string): Promise; addDataChannel(peerId: string, label: string): RTCDataChannel | null; private setupDataChannelListeners; getDataChannels(peerId: string): RTCDataChannel[]; sendFile(peerId: string, file: File): Promise; private handleFileReceive; }