wowok
Version:
Wowok Blockchain TypeScript API
32 lines (31 loc) • 1.84 kB
TypeScript
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>;
}