export interface ConversionJob {
    id: string;
    templateId: string;
    data: any;
    outputFormat: string;
    options: any;
    userId: string;
    status: 'pending' | 'processing' | 'completed' | 'failed' | 'cancelled';
    progress?: number;
    createdAt: Date;
    updatedAt: Date;
    completedAt?: Date;
    error?: string;
    filename?: string;
    mimeType?: string;
    filePath?: string;
}
export declare class DocumentService {
    private jobs;
    createConversionJob(jobData: ConversionJob): Promise<ConversionJob>;
    createBatchConversionJobs(batchId: string, jobs: any[], userId: string, options: any): Promise<ConversionJob[]>;
    getJobStatus(jobId: string, userId?: string): Promise<ConversionJob | null>;
    downloadDocument(jobId: string, userId?: string): Promise<{
        stream: any;
        filename: string;
        mimeType: string;
    }>;
    listJobs(page: number, limit: number, sort: string, order: string, filters: {
        userId?: string;
        status?: string;
        templateId?: string;
        createdAfter?: Date;
        createdBefore?: Date;
    }): Promise<{
        jobs: ConversionJob[];
        total: number;
        page: number;
        limit: number;
    }>;
    cancelJob(jobId: string, userId?: string): Promise<boolean>;
    private simulateProcessing;
    private getMimeType;
}
//# sourceMappingURL=DocumentService.d.ts.map