import { type ISavedSync } from "./index.ts"; import { type IEvent, type IStateEventWithRoomId, type IStoredClientOpts, type ISyncResponse } from "../matrix.ts"; import { type IndexedToDeviceBatch, type ToDeviceBatchWithTxnId } from "../models/ToDeviceMessage.ts"; export interface IIndexedDBBackend { connect(onClose?: () => void): Promise; syncToDatabase(userTuples: UserTuple[]): Promise; isNewlyCreated(): Promise; setSyncData(syncData: ISyncResponse): Promise; getSavedSync(): Promise; getNextBatchToken(): Promise; clearDatabase(): Promise; getOutOfBandMembers(roomId: string): Promise; setOutOfBandMembers(roomId: string, membershipEvents: IStateEventWithRoomId[]): Promise; clearOutOfBandMembers(roomId: string): Promise; getUserPresenceEvents(): Promise; getClientOptions(): Promise; storeClientOptions(options: IStoredClientOpts): Promise; saveToDeviceBatches(batches: ToDeviceBatchWithTxnId[]): Promise; getOldestToDeviceBatch(): Promise; removeToDeviceBatch(id: number): Promise; destroy(): Promise; } export type UserTuple = [userId: string, presenceEvent: Partial]; //# sourceMappingURL=indexeddb-backend.d.ts.map