import { MultimodalProcessArgs, MultimodalProcessResult, ProcessingOptions } from '../core/types.js';
export declare class MultimodalProcess {
    private layerManager;
    private authVerifier;
    private readonly MAX_FILES;
    private readonly MAX_FILE_SIZE;
    private readonly SUPPORTED_FORMATS;
    constructor(config?: any);
    processMultimodal(args: MultimodalProcessArgs): Promise<MultimodalProcessResult>;
    processSingleFile(filePath: string, instructions: string, options?: ProcessingOptions): Promise<MultimodalProcessResult>;
    processBatch(filePaths: string[], instructions: string, options?: ProcessingOptions): Promise<MultimodalProcessResult>;
    analyzeContent(filePaths: string[]): Promise<MultimodalProcessResult>;
    convertFiles(filePaths: string[], targetFormat: string, options?: ProcessingOptions): Promise<MultimodalProcessResult>;
    extractInformation(filePaths: string[], extractionType: 'text' | 'metadata' | 'data' | 'structure', options?: ProcessingOptions): Promise<MultimodalProcessResult>;
    private validateArgs;
    private prepareFiles;
    private verifyFileAccess;
    private determineFileType;
    private getMimeType;
    private verifyRequiredAuthentications;
    private determineRequiredServices;
    private needsGrounding;
    private executeWorkflow;
    private detectWorkflowType;
    private generateAnalysisInstructions;
    private generateExtractionInstructions;
    private createFileReference;
    private extractLayersFromWorkflowResult;
    private extractTotalTokens;
    private extractLayersUsed;
    getSupportedFormats(): typeof this.SUPPORTED_FORMATS;
    isFileSupported(filePath: string): boolean;
    getProcessingLimits(): {
        maxFiles: number;
        maxFileSize: number;
        maxFileSizeMB: number;
    };
}
//# sourceMappingURL=multimodalProcess.d.ts.map