@hapiness/core
Version:
Project to have a HapiJS (https://hapijs.com/) based framework to create easier NodeJS back-end with some awesome features
57 lines (56 loc) • 1.41 kB
TypeScript
/// <reference types="node" />
import { connection, request as WSRequest } from 'websocket';
import { WebSocketRooms } from './rooms';
import { Observable } from 'rxjs/Rx';
export declare class Socket {
request: WSRequest;
private _connection;
private _rooms;
private static logger;
private data$;
private store;
constructor(request: WSRequest, _connection: connection, _rooms: WebSocketRooms);
/**
* Listen events
*
* @param {string} event
* @param {(data: any)=>void} callback
*/
on(event: string, callback: (data: any) => void): void;
/**
* Listen data filtered by event
* in a Observable
*
* @param {string} event
* @returns Observable
*/
on$<T = any>(event: string): Observable<T>;
/**
* Listen to binary data
*
* @param {(data:Buffer)=>void} callback
*/
onBytes(callback: (data: Buffer) => void): void;
/**
* Send data
*
* @param {string} event
* @param {any} data
*/
emit(event: string, data: any): void;
/**
* Send bytes
*
* @param {Buffer} data
*/
emitBytes(data: Buffer): void;
/**
* Close connection
*/
close(): void;
join(room: string): Socket;
leave(room: string): Socket;
setData(key: string, value: any): Socket;
getData(key: string): any;
private getJSON(data);
}