@eka-care/patient-ts-sdk
Version:
TypeScript SDK for Trinity Patient Profile Management System
62 lines (61 loc) • 1.45 kB
TypeScript
/**
* Data loading service for synchronizing minified patient data
*/
import { SdkConfig } from '../types';
import { IndexedDBService } from './indexeddb';
export interface LoadProgress {
progress: number;
total: number;
isComplete: boolean;
}
export interface LoadCallbacks {
onProgress?: (progress: LoadProgress) => void;
onComplete?: () => void;
onError?: (error: string) => void;
}
/**
* Service for loading minified patient data into IndexedDB
*/
export declare class DataLoaderService {
private minifiedMethods;
private indexedDB;
private isLoading;
private abortController;
constructor(config: SdkConfig);
/**
* Initialize the data loader service
*/
init(): Promise<void>;
/**
* Check if data loading is in progress
*/
isLoadingData(): boolean;
/**
* Check if local data exists
*/
hasLocalData(): Promise<boolean>;
/**
* Load all minified patient data into IndexedDB
*/
loadAllData(callbacks?: LoadCallbacks): Promise<void>;
/**
* Stop data loading
*/
stopLoading(): void;
/**
* Clear all local data
*/
clearLocalData(): Promise<void>;
/**
* Get IndexedDB service for direct access
*/
getIndexedDB(): IndexedDBService;
/**
* Close database connection
*/
close(): void;
/**
* Sync all pages of minified data
*/
private syncAllPages;
}