## API Report File for "sip.js"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

import { EventEmitter } from 'events';

// @public
export class SimpleUser {
    constructor(server: string, options?: SimpleUserOptions);
    // Warning: (ae-forgotten-export) The symbol "InvitationAcceptOptions" needs to be exported by the entry point index.d.ts
    answer(invitationAcceptOptions?: InvitationAcceptOptions): Promise<void>;
    // Warning: (ae-forgotten-export) The symbol "InviterOptions" needs to be exported by the entry point index.d.ts
    // Warning: (ae-forgotten-export) The symbol "InviterInviteOptions" needs to be exported by the entry point index.d.ts
    call(destination: string, inviterOptions?: InviterOptions, inviterInviteOptions?: InviterInviteOptions): Promise<void>;
    connect(): Promise<void>;
    decline(): Promise<void>;
    delegate: SimpleUserDelegate | undefined;
    disconnect(): Promise<void>;
    hangup(): Promise<void>;
    hold(): Promise<void>;
    // @internal
    readonly id: string;
    isConnected(): boolean;
    isHeld(): boolean;
    isMuted(): boolean;
    readonly localAudioTrack: MediaStreamTrack | undefined;
    readonly localVideoTrack: MediaStreamTrack | undefined;
    message(destination: string, message: string): Promise<void>;
    mute(): void;
    // Warning: (ae-forgotten-export) The symbol "RegistererOptions" needs to be exported by the entry point index.d.ts
    // Warning: (ae-forgotten-export) The symbol "RegistererRegisterOptions" needs to be exported by the entry point index.d.ts
    register(registererOptions?: RegistererOptions, registererRegisterOptions?: RegistererRegisterOptions): Promise<void>;
    readonly remoteAudioTrack: MediaStreamTrack | undefined;
    readonly remoteVideoTrack: MediaStreamTrack | undefined;
    sendDTMF(tone: string): Promise<void>;
    unhold(): Promise<void>;
    unmute(): void;
    // Warning: (ae-forgotten-export) The symbol "RegistererUnregisterOptions" needs to be exported by the entry point index.d.ts
    unregister(registererUnregisterOptions?: RegistererUnregisterOptions): Promise<void>;
    }

// @public
export interface SimpleUserDelegate {
    onCallAnswered?(): void;
    onCallCreated?(): void;
    onCallHangup?(): void;
    onCallHold?(held: boolean): void;
    onCallReceived?(): void;
    onMessageReceived?(message: string): void;
    onRegistered?(): void;
    onServerConnect?(): void;
    onServerDisconnect?(error?: Error): void;
    onUnregistered?(): void;
}

// @public
export interface SimpleUserMedia {
    constraints?: SimpleUserMediaConstraints;
    local?: SimpleUserMediaLocal;
    remote?: SimpleUserMediaRemote;
}

// @public
export interface SimpleUserMediaConstraints {
    audio: boolean;
    video: boolean;
}

// @public
export interface SimpleUserMediaLocal {
    video?: HTMLVideoElement;
}

// @public
export interface SimpleUserMediaRemote {
    audio?: HTMLAudioElement;
    video?: HTMLVideoElement;
}

// @public
export interface SimpleUserOptions {
    aor?: string;
    delegate?: SimpleUserDelegate;
    media?: SimpleUserMedia;
    reconnectionAttempts?: number;
    reconnectionDelay?: number;
    // Warning: (ae-forgotten-export) The symbol "UserAgentOptions" needs to be exported by the entry point index.d.ts
    userAgentOptions?: UserAgentOptions;
}


```
