/** * Teacher avatar upload utility * Handles client-side file validation, WebP conversion, and upload orchestration */ /** * Validation error type */ export interface AvatarUploadError { type: "size" | "format" | "conversion" | "unknown"; message: string; } /** * Result of avatar upload process */ export interface AvatarUploadResult { success: true; fileBase64: string; contentType: "image/webp"; originalFileName: string; } /** * Validate file size and format */ export declare function validateAvatarFile(file: File): AvatarUploadError | null; /** * Convert image file to WebP format */ export declare function convertToWebPFormat(file: File): Promise; /** * Convert blob to base64 string */ export declare function blobToBase64(blob: Blob): Promise; /** * Process avatar file: validate, convert to WebP, return base64 */ export declare function processAvatarFile(file: File): Promise;