export declare enum LoadPriority {
    high = "high",
    low = "low"
}
export interface Identifiable {
    id: string;
}
export declare class Store {
    private db;
    private transactionGroup?;
    private isLoadedMap;
    constructor(name: string, version: number, classes: any[]);
    private checkTableName;
    newTransactionGroup(name: string): void;
    commitTransaction(): Promise<void>;
    withTransaction<T>(name: string, fn: () => T): T;
    load<T extends Identifiable>(tableName: string, id: string, loadPriority: LoadPriority, onLoad: (data?: T) => void, onError: (e: Error) => void, onCommitted: () => void): void;
    save<T extends Identifiable>(tableName: string, data: T, onSaved: () => void, onError: (e: Error) => void, onCommitted: () => void): void;
    private isLoaded;
    private setIsLoaded;
}
//# sourceMappingURL=store.d.ts.map