export type YoutubeAudioFormat = {
    url: string;
    mimeType: string;
    bitrate: number | null;
    contentLength: number | null;
    durationSeconds: number | null;
    filename: string;
};
export type ResolvedYoutubeAudioFormat = YoutubeAudioFormat & {
    resolver: "watch-page" | "android-vr";
};
export type YoutubePlayerBootstrap = {
    apiKey: string;
    visitorData: string | null;
};
export declare function extractYoutubePlayerBootstrap(html: string): YoutubePlayerBootstrap | null;
export declare function resolveYoutubeAudioWithAndroidVr({ fetchImpl, videoId, apiKey, visitorData, originalUrl, preferredMimeTypes, }: {
    fetchImpl: typeof fetch;
    videoId: string;
    apiKey: string;
    visitorData?: string | null;
    originalUrl?: string;
    preferredMimeTypes?: readonly string[];
}): Promise<YoutubeAudioFormat>;
export declare function extractYoutubeAudioFromWatchHtml(html: string, preferredMimeTypes?: readonly string[]): YoutubeAudioFormat | null;
export declare function resolveYoutubeAudio({ fetchImpl, videoId, apiKey, visitorData, originalUrl, preferredMimeTypes, watchHtml, }: {
    fetchImpl: typeof fetch;
    videoId: string;
    apiKey: string;
    visitorData?: string | null;
    originalUrl?: string;
    preferredMimeTypes?: readonly string[];
    watchHtml?: string | null;
}): Promise<ResolvedYoutubeAudioFormat>;
