export type HttpMethod = "POST" | "GET" | "PUT" | "DELETE"; export type RouteDefinition = { pattern: RegExp; method: HttpMethod; }; export default class StoccaTreRequest { constructor( public method: HttpMethod, public route: string, public body: string | null, ) {} match(route: RouteDefinition): RegExpExecArray | null { const patternResult = route.pattern.exec(this.route); if (route.method !== this.method) { return null; } return patternResult; } }