import Credentials from './models/credentials'; export type ContentType = 'application/vnd.android.package-archive' | 'application/octet-stream' | 'application/zip'; export interface UploadOptions { filePath: string; url: string; credentials: Credentials; contentType: ContentType; showProgress?: boolean; checksum?: string; /** Validate that the file is a valid zip-based archive (APK, IPA, ZIP) */ validateZipFormat?: boolean; } export interface UploadResult { id: number; app_url?: string; } export default class Upload { upload(options: UploadOptions): Promise; private drawProgressBar; /** * Format file size in human-readable format (KB for small files, MB for larger) */ private formatFileSize; /** * Format seconds as compact duration: "12s" or "3m04s". */ private formatDuration; private validateFile; /** * Validate that the file is a valid zip-based archive. * ZIP, APK, IPA files all start with the ZIP magic bytes (PK\x03\x04). */ private validateZipFormat; /** * Extract error message from server response data */ private extractErrorMessage; /** * Calculate MD5 checksum of a file, returning base64-encoded result * This matches ActiveStorage's checksum format */ calculateChecksum(filePath: string): Promise; } //# sourceMappingURL=upload.d.ts.map