netflux
Version:
Peer to peer isomorphic transport API based on WebRTC and WebSocket. Allows to create/join full mesh network
31 lines (30 loc) • 1.23 kB
TypeScript
import { TopologyEnum } from './service/topology/Topology';
import { SignalingState } from './Signaling';
import { IWebChannelOptions as WebGroupOptions, WebChannel } from './WebChannel';
export declare const wcs: WeakMap<WebGroup, WebChannel>;
export { WebGroupOptions };
export declare type DataType = string | Uint8Array;
export declare class WebGroup {
id: number;
myId: number;
key: string;
members: number[];
neighbors: number[];
topology: TopologyEnum;
state: number;
signalingState: SignalingState;
signalingServer: string;
autoRejoin: boolean;
onMessage: ((id: number, data: DataType) => void) | undefined | null;
onMyId: ((id: number) => void) | undefined | null;
onMemberJoin: ((id: number) => void) | undefined | null;
onMemberLeave: ((id: number) => void) | undefined | null;
onStateChange: ((state: number) => void) | undefined | null;
onSignalingStateChange: ((state: SignalingState) => void) | undefined | null;
constructor(options?: WebGroupOptions);
join(key?: string): void;
invite(url: string): void;
leave(): void;
send(data: DataType): void;
sendTo(id: number, data: DataType): void;
}