/**
 * HTTP request handler for the gxwf-web API.
 *
 * Routes /api/contents/* paths to the contents module.
 * Routes /workflows/* paths to workflow operations (Phase 2b).
 * Routes /api/schemas/structural to the structural JSON Schema export.
 */
import type { IncomingMessage, ServerResponse } from "node:http";
import type { ToolCache, ToolInfoService } from "@galaxy-tool-util/core";
import { type WorkflowIndex } from "@galaxy-tool-util/schema";
export interface AppState {
    directory: string;
    cache: ToolCache;
    infoService: ToolInfoService;
    workflows: WorkflowIndex;
    cacheDir?: string;
    /** Absolute path to a built gxwf-ui dist directory to serve as the frontend. */
    uiDir?: string;
    /** Extra origins appended to the CSP `connect-src` directive. */
    extraConnectSrc?: string[];
}
export declare function buildCspHeader(extraConnectSrc?: string[]): string;
export declare function buildMonacoCspHeader(extraConnectSrc?: string[]): string;
export declare function createRequestHandler(state: AppState): (req: IncomingMessage, res: ServerResponse) => Promise<void>;
//# sourceMappingURL=router.d.ts.map