shardy
Version:
Framework for online games and applications on Node.js
21 lines (20 loc) • 716 B
TypeScript
import { Client } from './Client';
import { DisconnectReason, Task } from './Commander';
import { Validator } from './Validator';
import { TransportType } from './Transport';
import { Serializer } from './Serializer';
export interface ServiceOptions {
commands?: Map<string, Task>;
validator: Validator;
serializer: Serializer;
}
export interface Service {
name: string;
transport: TransportType;
onConnect(client: Client): Promise<void>;
onDisconnect(client: Client, reason: DisconnectReason): Promise<void>;
onReady(client: Client): Promise<void>;
onListening(host: string, port: number): Promise<void>;
onError(error: Error): Promise<void>;
onClose(): Promise<void>;
}