import type { SummaryLength } from "@steipete/summarize-core";
export type YoutubeMode = "auto" | "web" | "apify" | "yt-dlp" | "no-auto";
export type FirecrawlMode = "off" | "auto" | "always";
export type MarkdownMode = "off" | "auto" | "llm" | "readability";
export type ExtractFormat = "text" | "markdown";
export type PreprocessMode = "off" | "auto" | "always";
export type StreamMode = "auto" | "on" | "off";
export type MetricsMode = "off" | "on" | "detailed";
export type VideoMode = "auto" | "transcript" | "understand";
export type EmbeddedVideoMode = "auto" | "off" | "prefer" | "both";
export type DiarizationMode = "auto" | "elevenlabs" | "openai";
export type LengthArg = {
    kind: "preset";
    preset: SummaryLength;
} | {
    kind: "chars";
    maxCharacters: number;
};
export declare function parseYoutubeMode(raw: string): YoutubeMode;
export declare function parseFirecrawlMode(raw: string): FirecrawlMode;
export declare function parseMarkdownMode(raw: string): MarkdownMode;
export declare function parseExtractFormat(raw: string): ExtractFormat;
export declare function parsePreprocessMode(raw: string): PreprocessMode;
export declare function parseStreamMode(raw: string): StreamMode;
export declare function parseMetricsMode(raw: string): MetricsMode;
export declare function parseVideoMode(raw: string): VideoMode;
export declare function parseEmbeddedVideoMode(raw: string): EmbeddedVideoMode;
export declare function parseDiarizationMode(raw: string): DiarizationMode;
export declare function parseDurationMs(raw: string): number;
export declare function parseLengthArg(raw: string): LengthArg;
export declare function parseMaxExtractCharactersArg(raw: string | undefined): number | null;
export declare function parseMaxOutputTokensArg(raw: string | undefined): number | null;
export declare function parseRetriesArg(raw: string): number;
