import { QuantumCrypto } from '../crypto/quantum-crypto';
export declare class QuantumStorage {
    private config;
    private quantumCrypto;
    private storageKey?;
    private isEnabled;
    constructor(config: IQuantumStorage, quantumCrypto: QuantumCrypto);
    initialize(password: string): Promise<void>;
    store(key: string, data: any, metadata?: Record<string, any>): Promise<string>;
    retrieve(id: string): Promise<any>;
    createBackup(keys: string[], description?: string): Promise<QuantumBackup>;
    restoreBackup(backup: QuantumBackup, password: string): Promise<number>;
    createSecretShares(secret: Uint8Array, threshold: number, shares: number): Promise<Uint8Array[]>;
    reconstructSecret(shares: Uint8Array[], threshold: number): Promise<Uint8Array>;
    private deriveStorageKey;
    private encryptData;
    private decryptData;
    private computeMAC;
    private persistRecord;
    private getRecord;
    private findByKey;
    private verifyBackup;
    private generateStorageId;
    private calculateExpiration;
    private createRecoveryInfo;
    private compareArrays;
}
//# sourceMappingURL=quantum-storage.d.ts.map