import Logger from "./logger"; import { ConnectionFailedEvent, InternalMessage } from "./constants"; import { IRTCMetricsSender, RTCMetricsBatchMessage, RTCMetricsClientDescriptionMessage, RTCMetricsServerDescription } from "@flashphoner/web-sdk-metrics"; export declare type InitialUserData = { sipLogin: string; email: string; sipVisibleName: string; authToken: string; pmi: string; webRTCMetricsServerDescription: RTCMetricsServerDescription; }; declare type OnMessageCallback = (arg0: string, arg1: Array) => void; declare type OnBinaryDataCallback = (arg0: string, arg1: ArrayBuffer) => void; export declare class Connection implements IRTCMetricsSender { private ws; private onError; private onClose; private onMessage; private onBinaryData; private connected; private connectionTimeout; private logger; private pingChecker; constructor(onMessage: OnMessageCallback, onBinaryData: OnBinaryDataCallback, onError: Function, onClose: Function, logger?: Logger); sendDescription(message: RTCMetricsClientDescriptionMessage): Promise; sendBatch(message: RTCMetricsBatchMessage): Promise; connect(options: { url: string; appName: string; timeout?: number; failedProbesThreshold?: number; pingInterval?: number; authToken?: string; custom: object | null; }): Promise; send(message: string, data: any): void; sendBinaryData(data: any): void; close(error?: ConnectionFailedEvent): Promise; private stopPingChecking; private resetPingChecker; } export {};