import { EventEmitter } from 'ee-ts';
import { Session } from './session';
import { RPC } from './rpc';
import { Answer, Outbound, SipClient, SipClientEvents } from '../index';
export declare class SipPhone extends EventEmitter<SipClientEvents> implements SipClient {
    private rpc;
    static readonly userAgent: string;
    static readonly sipVersion = "0.0.1";
    readonly type = "webrtc";
    sessions: Session[];
    registered: boolean;
    ua: object;
    constructor(rpc: RPC);
    emitSessionMedia(sess: Session): void;
    callOption(req?: Answer): Promise<Answer>;
    answer(id: string, req: Answer): Promise<boolean>;
    call(req: Outbound): Promise<void>;
    register(): Promise<void>;
    unregister(): Promise<void>;
    isRegistered(): boolean;
    sipSessionByCallId(id: string): Session | null;
    sipSessionBySipId(id: string): Session | null;
    private removeSession;
    private setRegister;
}
//# sourceMappingURL=client.d.ts.map