import { ServerRequest, ServerResponse } from '@bs-core/shell';
import { AstroIntegration, SSRManifest } from 'astro';

type Options = {
    setupEntryPoint?: string;
    staticFilesPath?: string;
    extraContentTypes?: Record<string, string>;
    immutableRegexSrc?: string | string[];
    securityHeaders?: {
        name: string;
        value: string;
    }[];
    keepAliveTimeout?: number;
    headerTimeout?: number;
    defaultRouterBasePath?: string;
    healthcheckPath?: string;
    healthcheckGoodRes?: number;
    healthcheckBadRes?: number;
};
declare class WebRequest extends Request {
    req: ServerRequest;
    res: ServerResponse;
    constructor(req: ServerRequest, res: ServerResponse);
}
declare const _default: (args: Options) => AstroIntegration;

declare const createExports: () => Record<string, any>;
declare const start: (manifest: SSRManifest, options: Options) => Promise<void>;

export { type Options, WebRequest, createExports, _default as default, start };
