@csegames/camelot-unchained
Version:
Camelot Unchained Client Library
63 lines (62 loc) • 2.23 kB
TypeScript
import { EventMap } from '../utils/eventMapper';
export interface SignalRHubOptions {
debug?: boolean;
reconnectOnDisconnect?: boolean;
}
export declare enum ConnectionState {
Connecting = 0,
Connected = 1,
Reconnecting = 2,
Disconnected = 4,
}
export interface DeferredObjectInfo {
done: (...params: any[]) => DeferredObjectInfo;
fail: (...params: any[]) => DeferredObjectInfo;
isRejected: (...params: any[]) => DeferredObjectInfo;
isResolved: (...params: any[]) => DeferredObjectInfo;
reject: (...params: any[]) => DeferredObjectInfo;
rejectWith: (...params: any[]) => DeferredObjectInfo;
resolve: (...params: any[]) => DeferredObjectInfo;
resolveWith: (...params: any[]) => DeferredObjectInfo;
then: (...params: any[]) => DeferredObjectInfo;
}
export declare class SignalRHub {
private hubName;
private eventMaps;
private hub;
private signalRHost;
private debug;
private conn;
reconnectOnDisconnect: boolean;
private wantStop;
private tryingToReconnect;
connectionState: ConnectionState;
onConnected: (hub: SignalRHub) => void;
onStarting: (hub: SignalRHub) => void;
onReceived: (hub: SignalRHub, data: any) => void;
onConnectionSlow: (hub: SignalRHub) => void;
onReconnecting: (hub: SignalRHub) => void;
onReconnected: (hub: SignalRHub) => void;
onStateChanged: (hub: SignalRHub, state: {
oldState: ConnectionState;
newState: ConnectionState;
}) => void;
onDisconnected: (hub: SignalRHub) => void;
onError: (hub: SignalRHub, error: string) => void;
constructor(hubName: string, eventMaps: EventMap[], options?: SignalRHubOptions, signalRHost?: string);
start(onStart?: (hub: SignalRHub) => void, options?: {
host: string;
}): void;
stop(): void;
invoke(method: string, ...params: any[]): DeferredObjectInfo;
private internalOnStarting;
private internalOnReceived;
private internalOnConnectionSlow;
private internalOnReconnecting;
private internalOnReconnected;
private internalOnStateChanged;
private internalOnDisconnected;
private internalOnError;
private registerEvents();
private unregisterEvents();
}