import { Logger } from '@n8n/backend-common'; import { DeploymentKeyRepository } from '@n8n/db'; import type { CryptoKey, JWK } from 'jose'; import { Cipher } from 'n8n-core'; import { CacheService } from '../../services/cache/cache.service'; import { type JweKeyAlgorithm } from './oauth-jwe.constants'; type OAuthJweKeyPair = { algorithm: JweKeyAlgorithm; privateKey: CryptoKey; publicKey: CryptoKey; publicJwk: JWK; kid: string; }; export declare class OAuthJweKeyService { private readonly deploymentKeyRepository; private readonly cipher; private readonly cacheService; private readonly logger; constructor(deploymentKeyRepository: DeploymentKeyRepository, cipher: Cipher, cacheService: CacheService, logger: Logger); initialize(): Promise; getKeyPair(algorithm?: JweKeyAlgorithm): Promise; getPublicJwk(algorithm?: JweKeyAlgorithm): Promise; getPublicJwks(): Promise; private findEntry; private loadData; private deriveKeyPair; private loadOrGenerate; private readActiveEntry; private generateAndPersist; } export {};