import type { CryptoOperations, RequestContext, SignatureOperations } from '../interfaces/core.js'; import type { DecryptionRequest, EncryptionRequest, EncryptionResult, SignatureRequest, SignatureResult, VerificationRequest } from '../types.js'; import type { PolicyChecker } from '../utils/policy.js'; import { CryptoOperationsDecorator, SignatureOperationsDecorator } from './base.js'; /** * Policy enforcement decorator for CryptoOperations * Centralizes policy enforcement - eliminates 4 duplicated enforce() calls in local.ts * Ensures consistent policy checking across all operations */ export declare class PolicyEnforcedCryptoOperations extends CryptoOperationsDecorator { private readonly defaultKeyId; private readonly policyChecker; constructor(wrapped: CryptoOperations, defaultKeyId: string, policyChecker: PolicyChecker); encrypt(request: EncryptionRequest & RequestContext): Promise; decrypt(request: DecryptionRequest & RequestContext): Promise; } /** * Policy enforcement decorator for SignatureOperations * Centralizes signature policy enforcement */ export declare class PolicyEnforcedSignatureOperations extends SignatureOperationsDecorator { private readonly defaultKeyId; private readonly policyChecker; constructor(wrapped: SignatureOperations, defaultKeyId: string, policyChecker: PolicyChecker); sign(request: SignatureRequest & RequestContext): Promise; verify(request: VerificationRequest & RequestContext): Promise; } //# sourceMappingURL=policy.d.ts.map