UNPKG

@sebastianp265/safe-server-side-storage-client

Version:

Library for Confidential Server-Side Message Storage Using the Labyrinth Protocol

37 lines 1.64 kB
import { VirtualDeviceEncryptedRecoverySecretsSerialized } from "./VirtualDeviceEncryptedRecoverySecrets"; import { VirtualDeviceKeyBundle, VirtualDevicePublicKeyBundleSerialized } from "../key-bundles/VirtualDeviceKeyBundle"; export type GetVirtualDeviceRecoverySecretsResponse = { epochId: string; virtualDeviceEncryptedRecoverySecrets: VirtualDeviceEncryptedRecoverySecretsSerialized; expectedVirtualDevicePublicKeyBundle: VirtualDevicePublicKeyBundleSerialized; }; export type GetVirtualDeviceRecoverySecretsBody = { virtualDeviceId: string; }; export type GetVirtualDeviceRecoverySecretsServerClient = { getVirtualDeviceRecoverySecrets: (getVirtualDeviceRecoverySecretsBody: GetVirtualDeviceRecoverySecretsBody) => Promise<GetVirtualDeviceRecoverySecretsResponse>; }; export declare class VirtualDevice { readonly id: Uint8Array; readonly keyBundle: VirtualDeviceKeyBundle; private constructor(); static initialize(userId: string): { virtualDevice: VirtualDevice; virtualDeviceDecryptionKey: Uint8Array<ArrayBufferLike>; recoveryCode: string; }; static fromRecoveryCode(userId: string, recoveryCode: string, webClient: GetVirtualDeviceRecoverySecretsServerClient): Promise<{ virtualDevice: VirtualDevice; epoch: { sequenceId: string; rootKey: Uint8Array; id: string; }; }>; } export declare const VERSION_NUMBER = 1; export declare const IDENTIFIER = 0; export declare class InvalidRecoveryCodeFormatError extends Error { constructor(message: string); } //# sourceMappingURL=VirtualDevice.d.ts.map