@chaseleto/sessions-sdk
Version:
Privacy-conscious session recording SDK for self-hosted session tracking
59 lines • 1.31 kB
TypeScript
import { SessionData } from './types';
export declare class UploadQueue {
private queue;
private endpoint;
private apiKey;
private headers;
private maxRetries;
private retryDelay;
private maxQueueSize;
private isProcessing;
private uploadInterval;
private intervalId?;
constructor(endpoint: string, apiKey: string, headers?: Record<string, string>);
/**
* Start the upload queue processing
*/
start(): void;
/**
* Stop the upload queue processing
*/
stop(): void;
/**
* Add session data to the upload queue
*/
add(sessionData: SessionData): void;
/**
* Process the upload queue
*/
private processQueue;
/**
* Upload a single queue item
*/
private uploadItem;
/**
* Upload session data to the backend
*/
private uploadData;
/**
* Get current queue size
*/
getQueueSize(): number;
/**
* Clear the upload queue
*/
clear(): void;
/**
* Set upload interval
*/
setUploadInterval(interval: number): void;
/**
* Set max retries
*/
setMaxRetries(maxRetries: number): void;
/**
* Set retry delay
*/
setRetryDelay(delay: number): void;
}
//# sourceMappingURL=upload-queue.d.ts.map