timer-db
Version:
A library for cubing timer results storage with CouchDB-based synchronization.
17 lines • 978 B
TypeScript
import { StoredAttempt, Attempt } from "../data/Attempt";
import { SessionMetadata, StoredSessionMetadata } from "../data/SessionMetadata";
import { SessionUUID } from "../UUID";
export declare type SyncChangeListener = (attempt: StoredAttempt[]) => void;
export declare interface Storage {
connectRemoteDB(username: string, password: string): void;
createSession(sessionMetadata: SessionMetadata): Promise<StoredSessionMetadata>;
getAllSessions(): Promise<StoredSessionMetadata[]>;
addNewAttempt(attempt: Attempt): Promise<StoredAttempt>;
updateAttempt(storedAttempt: StoredAttempt): Promise<void>;
deleteAttempt(storedAttempt: StoredAttempt): Promise<void>;
latestAttempts(sessionID: SessionUUID, n: number): Promise<StoredAttempt[]>;
sessionNumAttempts(sessionID: SessionUUID): Promise<number>;
addListener(listener: SyncChangeListener): void;
removeListener(listener: SyncChangeListener): void;
}
//# sourceMappingURL=storage.d.ts.map