netflux
Version:
Peer to peer isomorphic transport API based on WebRTC and WebSocket. Allows to create/join full mesh network
34 lines (33 loc) • 1.26 kB
TypeScript
import { Observable } from 'rxjs';
import { Channel } from '../../Channel';
import { channelBuilder as proto } from '../../proto/index';
import { WebChannel } from '../../WebChannel';
import { Service } from '../Service';
export declare class ChannelBuilder extends Service<proto.IMessage, proto.Message> {
static readonly SERVICE_ID: number;
private static connectResTrueEncoded;
private static connectResFalseEncoded;
onConnectionRequest: (streamId: number, data: Uint8Array) => boolean;
private negotiationEncoded;
private allStreams;
private wc;
private dataChannelBuilder;
private channelsSubject;
private connectsInProgress;
private myInfo;
constructor(wc: WebChannel);
clean(): void;
readonly onChannel: Observable<Channel>;
connectOverWebChannel(id: number, cb?: () => void, data?: Uint8Array): Promise<void>;
connectOverSignaling(cb?: () => void, data?: Uint8Array): Promise<void>;
private connectOver;
private handleMessage;
private proceedNegotiation;
private tryWs;
private tryDc;
private getType;
private isNagotiable;
private subscribeToChannels;
private subscribeToURLandIDChange;
private rejectConnection;
}