eye-analysis
Version:
Eye Analysis - Browser-based eye tracking and screen recording library for research and experiments
48 lines • 1.76 kB
TypeScript
import type { GazePoint, SessionData, SessionEvent, SessionInfo } from "./types";
declare global {
var __eyeAnalysisDB: IDBDatabase | null;
}
export declare const initializeStorage: () => Promise<void>;
export declare const resetDatabase: () => Promise<void>;
export declare const saveSession: (session: SessionInfo) => Promise<void>;
export declare const getSession: (sessionId: string) => Promise<SessionInfo | null>;
export declare const saveEvent: (event: SessionEvent) => Promise<void>;
export declare const saveGazeData: (sessionId: string, gazePoint: GazePoint) => Promise<void>;
export declare const saveVideoChunk: (chunk: {
id: string;
sessionId: string;
timestamp: number;
data: Blob;
chunkIndex: number;
duration: number;
}) => Promise<void>;
export declare const getSessionData: (sessionId: string, options?: {
startBrowserTime?: number;
endBrowserTime?: number;
}) => Promise<SessionData>;
export declare const getVideoChunkData: (chunkId: string) => Promise<Blob | null>;
/**
* Get database storage usage estimate
*/
export declare const getStorageUsage: () => Promise<{
used: number;
available: number;
percentage: number;
}>;
/**
* Clean up old video chunks to free space
*/
export declare const cleanupOldVideoChunks: (keepRecentHours?: number) => Promise<number>;
/**
* Auto-cleanup when storage is getting full
*/
export declare const autoCleanupStorage: (triggerPercentage?: number) => Promise<void>;
/**
* Get list of all sessions for cleanup/export
*/
export declare const getAllSessions: () => Promise<SessionInfo[]>;
/**
* Delete a complete session and all its data
*/
export declare const deleteSession: (sessionId: string) => Promise<void>;
//# sourceMappingURL=storage.d.ts.map