import { DBFactory } from '../db/DBFactory';
export declare class SignalProtocolStore {
    private dbFactory?;
    private _initPromise;
    private _signalStore?;
    constructor(dbFactory?: DBFactory | undefined);
    _init(): Promise<void>;
    Direction: {
        SENDING: number;
        RECEIVING: number;
    };
    getIdentityKeyPair(): Promise<{
        pubKey: ArrayBuffer;
        privKey: ArrayBuffer;
    }>;
    getLocalRegistrationId(): Promise<any>;
    put(key: string, value: any): Promise<void>;
    get(key: string, defaultValue?: any): Promise<any>;
    remove(key: string): Promise<void>;
    isTrustedIdentity(identifier: string, identityKey: ArrayBuffer): Promise<boolean>;
    loadIdentityKey(identifier: string): Promise<ArrayBuffer>;
    saveIdentity(identifier: string, identityKey: ArrayBuffer): Promise<boolean>;
    loadPreKey(keyId: string | number): Promise<any>;
    storePreKey(keyId: string | number, keyPair: any): Promise<void>;
    removePreKey(keyId: string | number): Promise<void>;
    loadSignedPreKey(keyId: string | number): Promise<any | undefined>;
    storeSignedPreKey(keyId: string | number, keyPair: any): Promise<void>;
    removeSignedPreKey(keyId: string | number): Promise<void>;
    loadSession(identifier: string): Promise<any>;
    storeSession(identifier: string, record: any): Promise<void>;
    removeSession(identifier: string): Promise<void>;
    removeAllSessions(identifier: string): Promise<void>;
    getPreKeyId(): Promise<number>;
    setOwnUserId(userId: string): Promise<void>;
    getOwnUserId(): Promise<any>;
}
//# sourceMappingURL=SignalProtocolStore.d.ts.map