import { FfprobeData } from 'fluent-ffmpeg';
import { VideoFileMetadata } from '../models/videos';
declare function ffprobePromise(path: string): Promise<FfprobeData>;
declare function isAudioFile(path: string, existingProbe?: FfprobeData): Promise<boolean>;
declare function hasAudioStream(path: string, existingProbe?: FfprobeData): Promise<boolean>;
declare function getAudioStream(videoPath: string, existingProbe?: FfprobeData): Promise<{
    absolutePath: string;
    audioStream: import("fluent-ffmpeg").FfprobeStream;
    bitrate: number;
} | {
    absolutePath: string;
    audioStream?: undefined;
    bitrate?: undefined;
}>;
declare function getMaxAudioBitrate(type: 'aac' | 'mp3' | string, bitrate: number): -1 | 256 | 384 | 128;
declare function getVideoStreamDimensionsInfo(path: string, existingProbe?: FfprobeData): Promise<{
    width: any;
    height: any;
    ratio: number;
    resolution: number;
    isPortraitMode: boolean;
}>;
declare function getVideoStreamFPS(path: string, existingProbe?: FfprobeData): Promise<number>;
declare function buildFileMetadata(path: string, existingProbe?: FfprobeData): Promise<VideoFileMetadata>;
declare function getVideoStreamBitrate(path: string, existingProbe?: FfprobeData): Promise<number>;
declare function getVideoStreamDuration(path: string, existingProbe?: FfprobeData): Promise<number>;
declare function getVideoStream(path: string, existingProbe?: FfprobeData): Promise<{
    [x: string]: any;
    [x: number]: any;
}>;
export { getVideoStreamDimensionsInfo, buildFileMetadata, getMaxAudioBitrate, getVideoStream, getVideoStreamDuration, getAudioStream, getVideoStreamFPS, isAudioFile, ffprobePromise, getVideoStreamBitrate, hasAudioStream };
//# sourceMappingURL=ffprobe.d.ts.map