import CryptoES from 'crypto-es'; type NotExistsErrorType = 'IV' | 'SESSION_ID'; export declare class UploaderChunk { chunk: CryptoES.lib.WordArray; order: number; encryptedSize: number; uploaderItemId: number; progress: number; uploadedBytes: number; abort?: () => void; status: 'UPLOADED' | 'ENCRYPTED' | 'CREATED' | 'FAILED_UPLOAD' | 'FAILED_ENCRYPTION'; iv?: string; type?: string; retry?: number; session_id?: string; dbId?: number; encryptedFile?: CryptoES.lib.WordArray; hash?: string; size: number; rollingHash?: number; updateProgressFunc?: (progress: number) => void; error?: Error | unknown; constructor(chunk: CryptoES.lib.WordArray, order: number, encryptedSize: number, uploaderItemId: number); onProgress(loadedBytes: number, totalBytes: number): void; /** * calculates the encryption values ( * 1. encryption of the chunk using the AES algorithm with CBC and PKCs7. * 2. The SHA256 hash of the encrypted chunk. * 3. The rolling hash of the SHA256 hash of the encrypted chunk) * */ encrypt(encryptionKey: string): Promise<{ encryptedFile: CryptoES.lib.WordArray; hash: string; rollingHash: number; } | undefined>; upload(): Promise; _setError(type: NotExistsErrorType): void; setError(err: Error | unknown): void; } export {};