import { IEncryptionStrategy, EncryptionResult } from '../encryption-strategy.interface'; /** * Base class for unsupported encryption algorithms * These require specialized libraries or are experimental * * SOLID Principles: * - Single Responsibility: Handles unsupported algorithm error messaging * - Open/Closed: Extensible through inheritance * - Liskov Substitution: Can substitute IEncryptionStrategy (throws meaningful errors) * - Interface Segregation: Implements focused IEncryptionStrategy * - Dependency Inversion: Implements abstraction */ export declare class UnsupportedStrategy implements IEncryptionStrategy { readonly algorithmName: string; private readonly libraryName; private readonly reason; readonly isSupported = false; readonly requiresExternalLibrary = true; constructor(algorithmName: string, libraryName: string, reason: string); getIvSize(): number; getSaltSize(): number; encrypt(): Promise; decrypt(): Promise; } /** * ChaCha20-Poly1305 Strategy (Unsupported - Coming Soon) * * Modern authenticated encryption algorithm * - Faster than AES on devices without hardware AES acceleration * - Used in TLS 1.3, WireGuard, Signal Protocol * - Requires: libsodium.js (ESM bundling issues with Angular) * - NOT available in Web Crypto API */ export declare class ChaCha20Poly1305Strategy extends UnsupportedStrategy { constructor(); } /** * XChaCha20-Poly1305 Strategy (Unsupported - Coming Soon) * * Extended nonce variant of ChaCha20-Poly1305 * - 192-bit nonce instead of 96-bit * - Better for random nonces * - Requires: libsodium.js */ export declare class XChaCha20Poly1305Strategy extends UnsupportedStrategy { constructor(); } /** * Kyber-KEM Strategy (Unsupported) * * Post-Quantum Key Encapsulation Mechanism * - Quantum-resistant encryption * - NIST PQC standardization finalist * - Requires: specialized PQC library */ export declare class KyberKemStrategy extends UnsupportedStrategy { constructor(); } /** * Dilithium-Signature Strategy (Unsupported) * * Post-Quantum Digital Signature * - Quantum-resistant signatures * - NIST PQC standardization finalist * - For signing, not encryption * - Requires: specialized PQC library */ export declare class DilithiumSignatureStrategy extends UnsupportedStrategy { constructor(); } //# sourceMappingURL=unsupported-strategy.d.ts.map