import { PreKey } from '@wireapp/api-client/lib/auth'; import { Cryptobox } from '@wireapp/cryptobox'; import { CRUDEngine } from '@wireapp/store-engine'; import { CryptoClient } from './CryptoClient.types'; type Config = { onNewPrekeys: (prekeys: PreKey[]) => void; }; export declare function buildClient(storeEngine: CRUDEngine, config: Config & { nbPrekeys: number; }): CryptoboxWrapper; export declare class CryptoboxWrapper implements CryptoClient { private readonly cryptobox; readonly version: string; constructor(cryptobox: Cryptobox, config: Config); getNativeClient(): Cryptobox; encrypt(sessions: string[], plainText: Uint8Array): Promise>; decrypt(sessionId: string, message: Uint8Array): Promise; init(): Promise; create(_nbPrekeys: number, entropy?: Uint8Array): Promise<{ prekeys: { id: number; key: string; }[]; lastPrekey: { id: number; key: string; }; }>; getFingerprint(): Promise; getRemoteFingerprint(sessionId: string): Promise; sessionFromMessage(sessionId: string, message: Uint8Array): Promise; consumePrekey(): Promise; sessionFromPrekey(sessionId: string, prekey: Uint8Array): Promise; sessionExists(sessionId: string): Promise; saveSession(): Promise; deleteSession(sessionId: string): Promise; newPrekey(): Promise<{ id: number; key: string; }>; debugBreakSession(sessionId: string): Promise; debugResetIdentity(): Promise; wipe(): Promise; } export {}; //# sourceMappingURL=CryptoboxWrapper.d.ts.map