//import { METHODS } from 'http'; import { RouteHandler } from '../routing'; import { HttpMethod, IncomingMessage, ServerResponse } from './http'; export type TroutHandler = (req: IncomingMessage, res: ServerResponse) => void; export interface Trouter { add(method: HttpMethod, pattern: string, handler: TroutHandler); find(method: HttpMethod, url: string); checkout(pattern: string, handler: TroutHandler): Trouter; copy(pattern: string, handler: TroutHandler): Trouter; delete(pattern: string, handler: TroutHandler): Trouter; get(pattern: string, handler: TroutHandler): Trouter; head(pattern: string, handler: TroutHandler): Trouter; lock(pattern: string, handler: TroutHandler): Trouter; merge(pattern: string, handler: TroutHandler): Trouter; mkactivity(pattern: string, handler: TroutHandler): Trouter; mkcol(pattern: string, handler: TroutHandler): Trouter; move(pattern: string, handler: TroutHandler): Trouter; 'm-search'(pattern: string, handler: TroutHandler): Trouter; notify(pattern: string, handler: TroutHandler): Trouter; options(pattern: string, handler: TroutHandler): Trouter; patch(pattern: string, handler: TroutHandler): Trouter; post(pattern: string, handler: TroutHandler): Trouter; purge(pattern: string, handler: TroutHandler): Trouter; put(pattern: string, handler: TroutHandler): Trouter; report(pattern: string, handler: TroutHandler): Trouter; search(pattern: string, handler: TroutHandler): Trouter; subscribe(pattern: string, handler: TroutHandler): Trouter; trace(pattern: string, handler: TroutHandler): Trouter; unlock(pattern: string, handler: TroutHandler): Trouter; unsubscribe(pattern: string, handler: TroutHandler): Trouter; }