/// <reference types="multer" />
import { FileUploadDocument } from "./schemas/file-upload.schema";
import { Model } from "mongoose";
import { FFmpegService } from "./common/ffmpeg.service";
import { Queue } from "bull";
export declare class FileUploadService {
    private readonly fileUploadModel;
    private readonly ffmpegService;
    private readonly imageMagickQueue;
    private readonly ffmpegVideoQueue;
    private readonly fileUploadQueue;
    private type;
    private name;
    private ext;
    private durationInSeconds;
    private durationInString;
    private thumbnailName;
    constructor(fileUploadModel: Model<FileUploadDocument>, ffmpegService: FFmpegService, imageMagickQueue: Queue, ffmpegVideoQueue: Queue, fileUploadQueue: Queue);
    upload(file: Express.Multer.File): Promise<any>;
    private init;
    private processVideo;
    private processAudio;
    getFileDetail(id: string): Promise<any>;
}
