import http from "http";
import { z } from "zod";
type RouteHandler = (request: http.IncomingMessage) => unknown;
export declare class RestError extends Error {
    readonly status: number;
    constructor(message: string, status?: number);
}
export declare const writeObj: (response: http.ServerResponse, o: unknown, status?: number) => void;
export declare const readBodyJson: <T>(request: http.IncomingMessage, schema: z.ZodType<T>) => Promise<T>;
export declare class SimpleServer {
    private readonly routes;
    private corsEnabled;
    enableCors(): void;
    get(path: string, handler: RouteHandler): void;
    post(path: string, handler: RouteHandler): void;
    anything(path: string, handler: RouteHandler): void;
    private onRequest;
    start(host: string, port: number, listeningListener?: () => void): void;
}
export {};
