UNPKG

@roots/bud-server

Version:

Development server for @roots/bud

54 lines (53 loc) 1.24 kB
import type { Bud } from '@roots/bud-framework'; import type { Connection, Options } from '@roots/bud-framework/services/server'; import type { Server as HttpServer, IncomingMessage, ServerResponse } from 'node:http'; import type { Server as HttpsServer } from 'node:https'; /** * Node server * * @remarks * Base class. Extended by either `http` or `https` class. */ export declare abstract class BaseServer implements Connection { app: Bud; /** * Server instance */ instance: Connection['instance']; /** * Constructor * * @param app - Bud */ constructor(app: Bud); /** * Server error event */ onError(error: Error): void; /** * Server listen event */ onListening(...param: any[]): void; /** * Server request event */ onRequest(request: IncomingMessage, response: ServerResponse): Promise<ServerResponse<IncomingMessage>>; /** * Listen */ listen(): Promise<void>; /** * Logger */ get logger(): any; /** * Options */ get options(): Options; /** * Create server * * @virtual */ abstract createServer(app: any): Promise<HttpServer | HttpsServer>; }