UNPKG

n8n

Version:

n8n Workflow Automation Tool

32 lines (31 loc) 1.14 kB
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<void>; getKeyPair(algorithm?: JweKeyAlgorithm): Promise<OAuthJweKeyPair>; getPublicJwk(algorithm?: JweKeyAlgorithm): Promise<JWK>; getPublicJwks(): Promise<JWK[]>; private findEntry; private loadData; private deriveKeyPair; private loadOrGenerate; private readActiveEntry; private generateAndPersist; } export {};