file-chunkify
Version:
43 lines (39 loc) • 1.09 kB
text/typescript
interface Logger {
options?: {
debugMode?: boolean;
};
}
interface SplitFileOptions extends Logger {
file: File;
chunkSize?: number;
}
interface SplitFileResult {
chunk: File;
chunkNumber: number;
totalChunks: number;
fileName: string;
progress: number;
}
declare function splitFile({ file, chunkSize, options, }: SplitFileOptions): AsyncGenerator<SplitFileResult>;
interface File$1 {
fieldname: string;
originalname: string;
encoding: string;
mimetype: string;
buffer: any;
size: number;
}
interface SaveChunkOptions extends Logger {
file: File$1;
chunkNumber: number;
totalChunks: number;
outputDir?: string;
chunkDir?: string;
}
interface SaveChunkResult {
success: boolean;
message: string;
mergedFilePath?: string;
}
declare function saveChunk({ file, chunkNumber, totalChunks, outputDir, chunkDir, options, }: SaveChunkOptions): Promise<SaveChunkResult>;
export { type SaveChunkOptions, type SaveChunkResult, type SplitFileOptions, type SplitFileResult, saveChunk, splitFile };