import type { ListEncryptionKeysQueryDto } from '@n8n/api-types'; import { Logger } from '@n8n/backend-common'; import { DeploymentKeyRepository, type DeploymentKey } from '@n8n/db'; import { Cipher, InstanceSettings, type CipherAlgorithm, type IEncryptionKeyProvider, type KeyInfo } from 'n8n-core'; export declare class KeyManagerService implements IEncryptionKeyProvider { private readonly deploymentKeyRepository; private readonly cipher; private readonly instanceSettings; private readonly logger; private cachedInstanceKeyInfo?; private cachedStoredLegacyKey?; private readonly keyInfoById; private activeKeyMemo?; constructor(deploymentKeyRepository: DeploymentKeyRepository, cipher: Cipher, instanceSettings: InstanceSettings, logger: Logger); getActiveKey(): Promise; getKeyById(id: string): Promise; private recoverLegacyDek; repairLegacyDataEncryptionKeys(): Promise; getLegacyKey(): Promise; bootstrapLegacyCbcKey(instanceEncryptionKey: string): Promise; private instanceKeyLegacyInfo; bootstrapGcmKey(): Promise; listKeys(query: ListEncryptionKeysQueryDto): Promise<{ items: DeploymentKey[]; count: number; }>; rotateKey(): Promise; addKey(plaintextValue: string, algorithm: CipherAlgorithm, setAsActive?: boolean): Promise; setActiveKey(id: string): Promise; markInactive(id: string): Promise; private rememberKeyInfo; }