import { ExtendedInboundGroupSessionData, GroupSessionRecord, HybridGroupSessionRecord } from './storeTypes'; import { InboundGroupSessionData } from './encryptionDevice'; import { UserDevice } from './olmLib'; import { CryptoStore } from './cryptoStore'; export declare class CryptoStoreInMemory implements CryptoStore { readonly userId: string; private accounts; private outboundGroupSessions; private inboundGroupSessions; private hybridGroupSessions; private devices; constructor(userId: string, maxEntries?: number); initialize(): Promise; deleteAllData(): Promise; deleteInboundGroupSessions(streamId: string, sessionId: string): Promise; deleteOutboundGrounpSessions(streamId: string): Promise; deleteAccount(userId: string): Promise; getAccount(): Promise; storeAccount(accountPickle: string): Promise; storeEndToEndOutboundGroupSession(sessionId: string, sessionData: string, streamId: string): Promise; getEndToEndOutboundGroupSession(streamId: string): Promise; getAllEndToEndOutboundGroupSessions(): Promise; getEndToEndInboundGroupSession(streamId: string, sessionId: string): Promise; getHybridGroupSession(streamId: string, sessionId: string): Promise; getHybridGroupSessionsForStream(streamId: string): Promise; getAllEndToEndInboundGroupSessions(): Promise; getAllHybridGroupSessions(): Promise; deleteHybridGroupSessions(streamId: string): Promise; storeEndToEndInboundGroupSession(streamId: string, sessionId: string, sessionData: InboundGroupSessionData): Promise; storeHybridGroupSession(sessionData: HybridGroupSessionRecord): Promise; getInboundGroupSessionIds(streamId: string): Promise; getHybridGroupSessionIds(streamId: string): Promise; withAccountTx(fn: () => Promise): Promise; withGroupSessions(fn: () => Promise): Promise; deviceRecordCount(): Promise; saveUserDevices(userId: string, devices: UserDevice[], expirationMs?: number): Promise; getUserDevices(userId: string): Promise; private getInboundSessionKey; private getHybridSessionKey; private getDeviceKey; } //# sourceMappingURL=CryptoStoreInMemory.d.ts.map