svelte-firebase-upload
Version:
Enterprise-grade file upload manager for Svelte with Firebase Storage integration, featuring concurrent uploads, resumable transfers, validation, health monitoring, and plugin system
37 lines (36 loc) • 1.24 kB
TypeScript
import type { VirtualQueueConfig, FileBatch, UploadItem } from '../types.js';
export declare class MemoryManager {
private config;
private pendingFiles;
private batches;
private db;
private pendingTotalFiles;
private pendingTotalSize;
private dbInitializationAttempts;
private readonly maxDbInitAttempts;
private dbInitializationPromise;
constructor(config?: Partial<VirtualQueueConfig>);
private _validateConfig;
addFilesLazy(files: File[], batchSize?: number): Promise<string[]>;
processBatch(batchId: string): Promise<UploadItem[]>;
getNextBatch(): FileBatch | null;
cleanupProcessedBatches(): Promise<void>;
destroy(): Promise<void>;
getMemoryUsage(): {
batches: number;
pendingFiles: number;
totalSize: number;
};
getPendingTotalFiles(): number;
getPendingTotalSize(): number;
initializePersistence(): Promise<void>;
private _initializePersistenceWithRetry;
private _attemptInitialization;
saveState(state: any): Promise<void>;
loadState(): Promise<any | null>;
private _generateBatchId;
private _generateFileId;
private _openDatabase;
private _persistBatch;
private _persistBatchWithRetry;
}