/**
 * File validation utilities for security
 * Validates mimeType, file size, and file extensions
 */
export declare const ALLOWED_MIME_TYPES: Record<string, string[]>;
export declare const DANGEROUS_MIME_TYPES: string[];
export interface FileValidationResult {
    isValid: boolean;
    error?: string;
    file: File;
}
/**
 * Validate file MIME type against allowed types
 */
export declare function validateMimeType(file: File, allowedTypes?: string): {
    isValid: boolean;
    error?: string;
};
/**
 * Validate file extension matches MIME type (additional security check)
 */
export declare function validateFileExtension(file: File): {
    isValid: boolean;
    error?: string;
};
/**
 * Validate file size
 */
export declare function validateFileSize(file: File, maxSize: number): {
    isValid: boolean;
    error?: string;
};
/**
 * Comprehensive file validation
 */
export declare function validateFile(file: File, options?: {
    allowedTypes?: string;
    maxSize?: number;
    validateExtension?: boolean;
}): FileValidationResult;
/**
 * Format file size to human readable format
 */
export declare function formatFileSize(bytes: number): string;
/**
 * Validate file magic number (file signature) against expected MIME type
 * This is a critical security check recommended by OWASP
 *
 * @param file - File object to validate
 * @param expectedMimeType - Expected MIME type
 * @returns Promise with validation result
 */
export declare function validateMagicNumber(file: File, expectedMimeType: string): Promise<{
    isValid: boolean;
    error?: string;
}>;
//# sourceMappingURL=fileValidation.d.ts.map