@roots/bud-server
Version:
Development server for @roots/bud
54 lines (53 loc) • 1.24 kB
TypeScript
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>;
}