import type { CryptoOperations, RequestContext, SignatureOperations } from '../interfaces/core.js'; import type { DecryptionRequest, EncryptionRequest, EncryptionResult, SignatureRequest, SignatureResult, VerificationRequest } from '../types.js'; import { CryptoOperationsDecorator, SignatureOperationsDecorator } from './base.js'; /** * Retry configuration */ export type RetryConfig = { maxAttempts: number; initialDelayMs: number; maxDelayMs: number; backoffMultiplier: number; retryableErrors?: string[]; }; /** * Retry decorator for CryptoOperations * Adds automatic retry with exponential backoff for transient failures */ export declare class RetryableCryptoOperations extends CryptoOperationsDecorator { private readonly config; constructor(wrapped: CryptoOperations, config?: RetryConfig); encrypt(request: EncryptionRequest & RequestContext): Promise; decrypt(request: DecryptionRequest & RequestContext): Promise; } /** * Retry decorator for SignatureOperations * Adds automatic retry with exponential backoff for transient failures */ export declare class RetryableSignatureOperations extends SignatureOperationsDecorator { private readonly config; constructor(wrapped: SignatureOperations, config?: RetryConfig); sign(request: SignatureRequest & RequestContext): Promise; verify(request: VerificationRequest & RequestContext): Promise; } //# sourceMappingURL=retry.d.ts.map