export declare enum EndpointType {
    WEBRTC = "WEBRTC",
    SIP = "SIP",
    PHONE = "PHONE",
    VIBER = "VIBER",
    WHATSAPP = "WHATSAPP",
    WEBSOCKET = "WEBSOCKET"
}
export declare abstract class Endpoint {
    readonly type: EndpointType;
    protected constructor(type: EndpointType);
    abstract get identifier(): string;
    abstract get displayIdentifier(): string;
}
export declare class WebrtcEndpoint extends Endpoint {
    readonly identity: string;
    readonly displayName: string;
    constructor(identity?: string, displayName?: string);
    get identifier(): string;
    get displayIdentifier(): string;
}
export declare class PhoneEndpoint extends Endpoint {
    readonly phoneNumber: string;
    constructor(phoneNumber?: string);
    get identifier(): string;
    get displayIdentifier(): string;
}
export declare class ViberEndpoint extends Endpoint {
    readonly phoneNumber: string;
    constructor(phoneNumber?: string);
    get identifier(): string;
    get displayIdentifier(): string;
}
export declare class SipEndpoint extends Endpoint {
    readonly username: string;
    constructor(username?: string);
    get identifier(): string;
    get displayIdentifier(): string;
}
export declare class WhatsAppEndpoint extends Endpoint {
    readonly phoneNumber: string;
    constructor(phoneNumber?: string);
    get identifier(): string;
    get displayIdentifier(): string;
}
export declare class WebsocketEndpoint extends Endpoint {
    readonly identifier: string;
    readonly websocketEndpointConfigId: string;
    constructor(identifier?: string, websocketEndpointConfigId?: string);
    get displayIdentifier(): string;
}
