UNPKG

@xpresser/events-server

Version:

Xpresser's Official Events Server Plugin.

70 lines (69 loc) 1.61 kB
import type { DollarSign } from "xpresser/types"; import { EventHandlerFn } from "./Types"; declare class EventsServer { #private; private server; port: number; private readonly db; private readonly $; private readonly $router; private readonly isCliCommand; private retryTimeout; /** * Take xpresser instance and port. * Create our server. * @param secretKey * @param $ */ constructor(secretKey: string, $: DollarSign); /** * Map event to function or controller * @param event * @param fn */ on(event: string, fn?: string | EventHandlerFn): this; /** * Get all loaded events */ private getAllEvents; /** * Start Listening for events */ startListening(): void; /** * Initialize Socket * @private */ private initializeSocket; private processRoutes; private addConnectionListener; private listenToAllRoutes; private triggerRetryFailedEvents; /** * Wrap a function around Events Server Before and After events. * @param $controller * @param event * @param method * @private */ private wrapControllerFunction; /** * Make Controller Context using socket passed. * @param id * @param socket * @param event * @private */ private makeControllerContext; /** * Run an event. * @param socket * @param event * @param args * @private */ private runEvent; private retryFailedEvents; private runPendingEvents; } export = EventsServer;