@skyway-sdk/core
Version:
The official Next Generation JavaScript SDK for SkyWay
37 lines • 1.42 kB
TypeScript
import { Event } from '@skyway-sdk/common';
import type { Member } from '@skyway-sdk/model';
import { type ConnectionState, SignalingClient } from '@skyway-sdk/signaling-client';
import type { SkyWayChannelImpl } from '../channel';
import type { SkyWayContext } from '../context';
import type { RemoteMember } from '../member/remoteMember';
export declare function setupSignalingSession(context: SkyWayContext, channel: SkyWayChannelImpl, memberDto: Member): Promise<SignalingSession>;
export declare class SignalingSession {
_client: SignalingClient;
private context;
readonly onConnectionFailed: Event<unknown>;
readonly onConnectionStateChanged: Event<ConnectionState>;
readonly onMessage: Event<MessageEvent>;
closed: boolean;
private _chunkedMessageBuffer;
private _backoffUpdateSkyWayAuthToken;
private _disposer;
constructor(_client: SignalingClient, context: SkyWayContext);
updateClient(client: SignalingClient): void;
private _listen;
private _updateSkyWayAuthToken;
get connectionState(): ConnectionState;
connect(): Promise<void>;
close(): void;
/**@throws {@link SkyWayError} */
send(target: RemoteMember, data: object,
/**ms */
timeout?: number): Promise<void>;
}
export interface MessageEvent {
src: {
name?: string;
id: string;
};
data: Record<string, any>;
}
//# sourceMappingURL=signaling.d.ts.map