/// import handler = require('../handler/queue'); import peerconnection = require('../webrtc/peerconnection'); import ProxyConfig = require('./proxyconfig'); export interface SessionSnapshot { name: string; timestamp: number; channel_sent: number; channel_received: number; channel_buffered: number; channel_js_buffered: number; channel_queue_size: number; channel_queue_handling: boolean; socket_sent: number; socket_received: number; socket_queue_size: number; socket_queue_handling: boolean; } export interface RtcToNetSnapshot { sessions: SessionSnapshot[]; } export declare class RtcToNet { private userId_; private static SNAPSHOTTING_INTERVAL_MS; static SESSION_LIMIT: number; private static numSessions_; private static addUserSession_; private static removeUserSession_; proxyConfig: ProxyConfig; signalsForPeer: handler.QueueHandler; bytesReceivedFromPeer: handler.Queue; bytesSentToPeer: handler.Queue; onceReady: Promise; private fulfillStopping_; private onceStopping_; onceStopped: Promise; private peerConnection_; private pool_; private sessions_; constructor(userId_?: string); start: (proxyConfig: ProxyConfig, peerconnection: peerconnection.PeerConnection) => Promise; initiateSnapshotting: () => void; private getSnapshot; private onPeerOpenedChannel_; stop: () => Promise; private stopResources_; handleSignalFromPeer: (message: Object) => void; toString: () => string; } export declare class Session { private dataChannel_; private proxyConfig_; private bytesReceivedFromPeer_; private bytesSentToPeer_; private tcpConnection_; onceReady: Promise; private fulfillStopping_; private onceStopping_; private onceStopped_; onceStopped: () => Promise; channelLabel: () => string; private socketSentBytes_; private socketReceivedBytes_; private channelSentBytes_; private channelReceivedBytes_; constructor(dataChannel_: peerconnection.DataChannel, proxyConfig_: ProxyConfig, bytesReceivedFromPeer_: handler.QueueFeeder, bytesSentToPeer_: handler.QueueFeeder); start: () => Promise; stop: () => Promise; private stopResources_; private receiveEndpointFromPeer_; private getTcpConnection_; private replyToPeer_; private getReplyFromInfo_; private getReplyFromError_; private sendOnChannel_; private sendOnSocket_; private linkSocketAndChannel_; private isAllowedAddress_; getSnapshot: () => Promise; longId: () => string; toString: () => string; private static nextTick_; }