import CryptoES from 'crypto-es'; export type ChunkWorkerProps = { file: File; parallelTasksAmount: number; }; export type ChunkFullSchema = { actualFile: { size: number; number: number; remainder: number; }; encryptedFile: { size: number; number: number; remainder: number; }; }; export type ChunkWorker = Worker & { currentProcessPromise: Promise<{ chunkInfo: { size: number; remainder: number; number: number; }; chunks: Array<{ chunk: CryptoES.lib.WordArray; chunkNumber: number; }>; }>; }; export type ResolveInputType = { chunkInfo: { size: number; remainder: number; number: number; }; chunks: Array<{ chunk: CryptoES.lib.WordArray; chunkNumber: number; }>; }; export type RejectInputType = Error; export type OnProgressType = ((processed: number) => void) | undefined; export type ProgressMessage = { type: 'progress'; payload: number; }; export type ResultMessage = { type: 'result'; payload: { chunkInfo: { size: number; remainder: number; number: number; }; chunks: Array<{ chunk: CryptoES.lib.WordArray; chunkNumber: number; }>; }; }; export type ErrorMessage = { type: 'error'; payload: Error; }; export type WorkerProps = { file: File; parallelTasksAmount: number; };