interface IIndexedDBBackend {
    clearDatabase(): Promise<void>;
    clearOutOfBandMembers(roomId: string): Promise<void>;
    connect(onClose?: () => void): Promise<void>;
    destroy(): Promise<void>;
    getClientOptions(): Promise<undefined | IStoredClientOpts>;
    getNextBatchToken(): Promise<string>;
    getOldestToDeviceBatch(): Promise<null | IndexedToDeviceBatch>;
    getOutOfBandMembers(
        roomId: string,
    ): Promise<null | IStateEventWithRoomId[]>;
    getSavedSync(): Promise<null | ISavedSync>;
    getUserPresenceEvents(): Promise<UserTuple[]>;
    isNewlyCreated(): Promise<boolean>;
    removeToDeviceBatch(id: number): Promise<void>;
    saveToDeviceBatches(batches: ToDeviceBatchWithTxnId[]): Promise<void>;
    setOutOfBandMembers(
        roomId: string,
        membershipEvents: IStateEventWithRoomId[],
    ): Promise<void>;
    setSyncData(syncData: ISyncResponse): Promise<void>;
    storeClientOptions(options: IStoredClientOpts): Promise<void>;
    syncToDatabase(userTuples: UserTuple[]): Promise<void>;
}

Methods