import { type DiarizationPreference } from "../../../transcription/whisper.js";
import type { TranscriptionConfig } from "../transcription-config.js";
import type { ProviderResult, TranscriptSource } from "../types.js";
import { type TranscriptionAvailability } from "./transcription-start.js";
export type TranscriptProviderCapabilities = {
    availability: TranscriptionAvailability;
    canTranscribe: boolean;
    canRunYtDlp: boolean;
    missingProviderNote: string;
};
export declare function resolveTranscriptProviderCapabilities({ transcription, ytDlpPath, diarization, }: {
    transcription: TranscriptionConfig;
    ytDlpPath?: string | null;
    diarization?: DiarizationPreference | null;
}): Promise<TranscriptProviderCapabilities>;
export declare function buildMissingTranscriptionProviderResult(args: {
    attemptedProviders: TranscriptSource[];
    metadata: NonNullable<ProviderResult["metadata"]>;
    notes?: string[] | null;
}): ProviderResult;
