import { type Server } from "node:http"; import { type H2AReplayGuard } from "@sentropic/h2a"; import { type LocalStore } from "../local-files/index.js"; import { type H2AMirrorRejection } from "./accept.js"; export interface MirrorServerForStoreOptions { /** Operator-enrolled key PEMs allowed to mirror/bootstrap (out-of-band trust). */ enrolledKeys?: readonly string[]; /** POST endpoint path. Default `/h2a/mirror`. */ path?: string; /** Shared replay guard. Defaults to a fresh in-memory guard. */ guard?: H2AReplayGuard; /** Body-size cap (bytes). Default 256 KiB. */ maxBodyBytes?: number; /** Clock source handed to the guard. Defaults to `Date.now`. */ now?: () => number; } /** Map a mirror-pipeline rejection to an HTTP status code. */ export declare function mirrorRejectionStatus(reason: H2AMirrorRejection): number; /** Build (unstarted) the mirror ingester bound to `store`. */ export declare function mirrorServerForStore(store: LocalStore, options?: MirrorServerForStoreOptions): Server; //# sourceMappingURL=serve.d.ts.map