export declare function recommendAudioBitrate(format: AudioFormat, source: AudioProfile, content: AudioContent): number; export declare function audio(source: string): AudioBuilder; export declare function processAudioPlan(plan: AudioPlan, options?: AudioProcessOptions): Promise; export declare function assertAudioPlanExecutable(plan: AudioPlan): void; export declare function negotiateAudioOutput(outputs: readonly AudioOutput[], accept?: string): AudioOutput | undefined; export declare function createWaveform(channels: readonly Float32Array[], sampleRate: number, samples?: number, precision?: number): Waveform; export declare function normalizeTranscript(language: string, input: readonly TranscriptSegment[]): Transcript; export declare function audioResponseHeaders(bytes: number, etag: string, contentType: string): Record; export declare function signAudioAsset(path: string, expires: number, secret: string): string; export declare function verifyAudioAsset(path: string, expires: number, signature: string, secret: string, now?: number): boolean; export declare function createProtectedAudioPlaylist(segments: AudioSegment[], protection?: AudioHlsProtection): Promise<{ playlist: string, files: Record, encrypted: boolean }>; export declare interface AudioProfile { codec: AudioCodec, container: string, duration: number, sampleRate: number, channels: number, bitrate?: number } export declare interface AudioCapabilities { encoder: boolean, codecs: AudioFormat[] } export declare interface AudioOutput { format: AudioFormat, container: 'ogg' | 'aac' | 'mp3', mimeType: 'audio/ogg; codecs=opus' | 'audio/aac' | 'audio/mpeg', extension: 'ogg' | 'aac' | 'mp3', bitrate: number, action: 'copy' | 'transcode', available: boolean, reason?: string } export declare interface AudioPlan { source: string, profile: AudioProfile, outputs: AudioOutput[], loudness: number } export declare interface AudioProcessOptions { batchSize?: number, signal?: AbortSignal } export declare interface ProcessedAudioDerivative { output: AudioOutput, bytes: Uint8Array } export declare interface Waveform { version: 1, channels: number, sampleRate: number, duration: number, samplesPerPeak: number, peaks: number[][] } export declare interface TranscriptSegment { startTime: number, endTime: number, text: string, confidence?: number, speaker?: string } export declare interface Transcript { language: string, segments: Array, vtt: string } export declare interface AudioSegment { uri: string, duration: number, data: Uint8Array } export declare interface AudioHlsProtection { key: Uint8Array, keyUri: string } export type AudioFormat = 'opus' | 'aac' | 'mp3'; export type AudioContent = 'speech' | 'music' | 'general'; export type AudioCodec = 'aac' | 'mp3' | 'opus' | 'vorbis' | 'flac' | 'alac' | 'pcm_s16le' | 'pcm_s24le' | 'pcm_s32le' | 'pcm_f32le' | 'pcm_f64le'; export declare class AudioBuilder { constructor(source: string); profile(value: AudioProfile): this; output(value: AudioFormat[]): this; content(value: AudioContent): this; loudness(value: number): this; runtime(value: AudioCapabilities): this; generate(): AudioPlan; process(options?: AudioProcessOptions): Promise; }