import type { CacheMode, TranscriptDiagnostics } from "../types.js";
import { type ExtractedLinkContent, type EmbeddedVideoMode, type FetchLinkContentOptions, type FinalizationArguments, type FirecrawlMode, type TranscriptResolution } from "./types.js";
export declare function resolveCacheMode(options?: FetchLinkContentOptions): "bypass" | "default";
export declare function resolveMaxCharacters(options?: FetchLinkContentOptions): number | null;
export declare function resolveTimeoutMs(options?: FetchLinkContentOptions): number;
export declare function resolveFirecrawlMode(options?: FetchLinkContentOptions): FirecrawlMode;
export declare function appendNote(existing: string | null | undefined, next: string): string;
export declare function safeHostname(rawUrl: string): string | null;
export declare function pickFirstText(candidates: Array<string | null | undefined>): string | null;
export declare function selectBaseContent(sourceContent: string, transcriptText: string | null, transcriptSegments?: TranscriptResolution["segments"]): string;
export declare function selectEmbeddedVideoContent({ articleContent, transcriptText, transcriptSegments, mode, videoUrl, }: {
    articleContent: string;
    transcriptText: string | null;
    transcriptSegments?: TranscriptResolution["segments"];
    mode: EmbeddedVideoMode;
    videoUrl: string;
}): {
    baseContent: string;
    contentSections: FinalizationArguments["contentSections"];
    composition: "article" | "transcript" | "both";
};
export declare function summarizeTranscript(transcriptText: string | null): {
    transcriptCharacters: number | null;
    transcriptLines: number | null;
    transcriptWordCount: number | null;
};
export declare function ensureTranscriptDiagnostics(resolution: TranscriptResolution, cacheMode: CacheMode): TranscriptDiagnostics;
export declare function finalizeExtractedLinkContent({ url, baseContent, contentSections, maxCharacters, title, description, siteName, transcriptResolution, video, isVideoOnly, diagnostics, }: FinalizationArguments): ExtractedLinkContent;
