/// /// import { EventEmitter } from 'events'; import { Server } from 'http'; import { PathDefinition } from './@types'; import { METHODS } from './constants'; import { Route } from './Route'; /** * @internal */ export type RouterOptions = { host?: string; }; /** * @internal * Internal Router * * Class in charge of receiving request, find the route definition and return the response * * @todo Refactoring */ export declare class Router { private options; private port; private emitter; private routes; constructor(options: RouterOptions, emitter: EventEmitter); addRoute(route: Route): Route; removeRoute(route: Route): Route; createRoute(method: METHODS, path: PathDefinition): Route; clear(): void; handle(server: Server): void; getRoutes(): Set; getHost(): string | undefined; getPort(): number | null; }