import CryptoES from 'crypto-es'; export type encryptorWorker = Worker & { currentProcessPromise: Promise<{ encryptedFile: CryptoES.lib.WordArray; hash: string; rollingHash: number; }>; }; export type ResolveInputType = { encryptedFile: CryptoES.lib.WordArray; hash: string; rollingHash: number; }; export type RejectInputType = Error; export type OnProgressType = ((processed: number) => void) | undefined; export type HashAlgo = 'md5' | 'sha1' | 'sha256' | 'sha384'; export type ProgressMessage = { type: 'progress'; payload: number; }; export type ResultMessage = { type: 'result'; payload: { encryptedFile: CryptoES.lib.WordArray; hash: string; rollingHash: number; }; }; export type ErrorMessage = { type: 'error'; payload: Error; }; export type WorkerProps = { file: CryptoES.lib.WordArray; iv: string; encryptionKey: string; };