import type http from "node:http";
import { type RunOverrides } from "../run/run-settings.js";
import type { SlideSettings } from "../slides/index.js";
import type { DaemonRequestedMode } from "./auto-mode.js";
export declare const SUMMARIZE_REQUEST_BODY_MAX_BYTES = 8000000;
export declare function parseDiagnostics(raw: unknown): {
    includeContent: boolean;
};
export declare function resolveHomeDir(env: Record<string, string | undefined>): string;
export type ParsedSummarizeRequest = {
    pageUrl: string;
    title: string | null;
    textContent: string;
    truncated: boolean;
    modelOverride: string | null;
    lengthRaw: string;
    languageRaw: string;
    promptOverride: string | null;
    noCache: boolean;
    extractOnly: boolean;
    mode: DaemonRequestedMode;
    maxCharacters: number | null;
    format: "text" | "markdown";
    overrides: RunOverrides;
    slidesSettings: SlideSettings | null;
    diagnostics: {
        includeContent: boolean;
    };
    hasText: boolean;
};
export declare function parseSummarizeRequest({ req, res, cors, env, resolveToolPath, }: {
    req: http.IncomingMessage;
    res: http.ServerResponse;
    cors: Record<string, string>;
    env: Record<string, string | undefined>;
    resolveToolPath: (binary: string, env: Record<string, string | undefined>, explicitEnvKey?: string) => string | null;
}): Promise<ParsedSummarizeRequest | null>;
