UNPKG

ziron-server

Version:
19 lines (18 loc) 803 B
import { DataType } from "ziron-engine"; import { InternalServerReceivers } from "ziron-events"; import Socket from "./Socket"; export type Receiver = (data: any, type: DataType) => void | Promise<void>; export type StandaloneReceiver = (socket: Socket, data: any, type: DataType) => void | Promise<void>; export type Receivers<R extends string = never> = { readonly [key in InternalServerReceivers]: Receiver; } & { readonly [key in R]: never; } & { [key: string]: Receiver | undefined; }; export type StandaloneReceivers<R extends string = never> = { readonly [key in InternalServerReceivers]?: never; } & { readonly [key in R]?: never; } & Record<string, StandaloneReceiver>; export declare function applyStandaloneReceivers(socket: Socket, receivers: StandaloneReceivers): void;