import { EventEmitter } from 'events';
import { type AudioProcessingConfig } from '../index';
export declare class RTC extends EventEmitter {
    private audioProcessing;
    localStream: MediaStream | null;
    peerStream: MediaStream | null;
    timer: any;
    state: number;
    pc: RTCPeerConnection;
    constructor(audioProcessing?: AudioProcessingConfig);
    createOffer(): Promise<unknown>;
    handleAnswerFromOffer(answer: RTCSessionDescriptionInit): Promise<void>;
    createAnswer(offer: RTCSessionDescriptionInit): Promise<unknown>;
    _createAnswer(offer: RTCSessionDescriptionInit): Promise<void>;
    _createOffer(): Promise<void>;
    clean(): void;
    initLocalMediaStream(): Promise<MediaStream>;
    get remoteSdp(): string;
    get localSdp(): string;
    gotRemoteStream(e: RTCTrackEvent): void;
    iceGatherIngStateChange(_e: Event): void;
}
//# sourceMappingURL=rtc.d.ts.map