import type Database from "libsql";
import type { X25519KeyPair, MLKEMKeyPair, SerializedPQSessionState } from "./types.js";
import type { PQSessionStore } from "./session.js";
export declare class PQSessionStoreAdapter implements PQSessionStore {
    private db;
    private userAddress;
    constructor(db: Database.Database, userAddress: string);
    private getValue;
    private putValue;
    private delValue;
    getIdentityKeyPair(): Promise<X25519KeyPair | null>;
    setIdentityKeyPair(keyPair: X25519KeyPair): Promise<void>;
    getRegistrationId(): Promise<number | null>;
    setRegistrationId(id: number): Promise<void>;
    getSignedPreKey(keyId: number): Promise<X25519KeyPair | null>;
    setSignedPreKey(keyId: number, keyPair: X25519KeyPair): Promise<void>;
    getSignedPreKeySignature(keyId: number): Promise<Uint8Array | null>;
    setSignedPreKeySignature(keyId: number, sig: Uint8Array): Promise<void>;
    getOneTimePreKey(keyId: number): Promise<X25519KeyPair | null>;
    setOneTimePreKey(keyId: number, keyPair: X25519KeyPair): Promise<void>;
    removeOneTimePreKey(keyId: number): Promise<void>;
    getPQPreKey(keyId: number): Promise<MLKEMKeyPair | null>;
    setPQPreKey(keyId: number, keyPair: MLKEMKeyPair): Promise<void>;
    getPQPreKeySignature(keyId: number): Promise<Uint8Array | null>;
    setPQPreKeySignature(keyId: number, sig: Uint8Array): Promise<void>;
    getSession(peerAddress: string, peerDeviceId: number): Promise<SerializedPQSessionState | null>;
    setSession(peerAddress: string, peerDeviceId: number, state: SerializedPQSessionState): Promise<void>;
    removeSession(peerAddress: string, peerDeviceId: number): Promise<void>;
    getPeerIdentity(peerAddress: string): Promise<Uint8Array | null>;
    setPeerIdentity(peerAddress: string, identityKey: Uint8Array): Promise<void>;
}
