/**
 * src/server/router.ts — URL pattern matching + method dispatch for Planu HTTP API
 *
 * SPEC-610: Planu HTTP API — lightweight router using Node built-in URL
 * No framework dependencies — pure Node.js http module.
 */
import type { IncomingMessage, ServerResponse } from 'node:http';
import type { HttpRouteContext, HttpRouteHandler } from '../types/index.js';
export type { HttpRouteContext, HttpRouteHandler };
/**
 * Minimal router — registers routes by HTTP method + path pattern and
 * dispatches incoming requests to the first matching handler.
 *
 * Path patterns support `:name` named segments, e.g. `/api/specs/:id/status`.
 */
export declare class Router {
    private readonly routes;
    /** Register a GET handler. */
    get(path: string, handler: HttpRouteHandler): void;
    /** Register a POST handler. */
    post(path: string, handler: HttpRouteHandler): void;
    /** Register a PATCH handler. */
    patch(path: string, handler: HttpRouteHandler): void;
    private register;
    /**
     * Dispatch an incoming request to the matching handler.
     * Returns true if a route matched, false otherwise.
     */
    dispatch(req: IncomingMessage, res: ServerResponse): Promise<boolean>;
}
//# sourceMappingURL=router.d.ts.map