@klastra/ksync
Version:
Real-time sync engine for modern applications with 300k+ ops/sec performance
31 lines • 1.03 kB
TypeScript
import type { KSyncEvent, KSyncStorage } from '../types.js';
export interface MemoryStorageOptions {
maxEvents?: number;
maxMemoryMB?: number;
trimOnLimit?: boolean;
compressionEnabled?: boolean;
}
export declare class MemoryStorage implements KSyncStorage {
private events;
private options;
private memoryUsageBytes;
constructor(options?: MemoryStorageOptions);
getEvents(fromVersion?: number): Promise<KSyncEvent[]>;
storeEvent(event: KSyncEvent): Promise<void>;
storeEvents(events: KSyncEvent[]): Promise<void>;
saveEvents(events: KSyncEvent[]): Promise<void>;
loadEvents(): Promise<KSyncEvent[]>;
getLastVersion(): Promise<number>;
clear(): Promise<void>;
getStats(): {
eventCount: number;
memoryUsageBytes: number;
memoryUsageMB: number;
memoryUtilization: number;
maxEvents: number;
maxMemoryMB: number;
};
private calculateEventSize;
private trimToFitMemory;
}
//# sourceMappingURL=memory.d.ts.map