UNPKG

n8n

Version:

n8n Workflow Automation Tool

57 lines (56 loc) 4.13 kB
import { type CreateSecretsProviderConnectionDto, type ReloadSecretProviderConnectionResponse, type SecretCompletionsResponse, type SecretProviderConnection, type SecretProviderConnectionListItem, type TestSecretProviderConnectionResponse } from '@n8n/api-types'; import { Logger } from '@n8n/backend-common'; import type { SecretsProviderAccessRole, SecretsProviderConnection } from '@n8n/db'; import { ProjectSecretsProviderAccessRepository, SecretsProviderConnectionRepository } from '@n8n/db'; import { Cipher } from 'n8n-core'; import type { IDataObject } from 'n8n-workflow'; import { ExternalSecretsProviderRegistry } from './provider-registry.service'; import { CredentialDependencyService } from '../../credentials/credential-dependency.service'; import { EventService } from '../../events/event.service'; import { ExternalSecretsManager } from '../../modules/external-secrets.ee/external-secrets-manager.ee'; import { RedactionService } from '../../modules/external-secrets.ee/redaction.service.ee'; export declare class SecretsProvidersConnectionsService { private readonly logger; private readonly repository; private readonly projectAccessRepository; private readonly credentialDependencyService; private readonly providerRegistry; private readonly cipher; private readonly externalSecretsManager; private readonly redactionService; private readonly eventService; constructor(logger: Logger, repository: SecretsProviderConnectionRepository, projectAccessRepository: ProjectSecretsProviderAccessRepository, credentialDependencyService: CredentialDependencyService, providerRegistry: ExternalSecretsProviderRegistry, cipher: Cipher, externalSecretsManager: ExternalSecretsManager, redactionService: RedactionService, eventService: EventService); createConnection(proposedConnection: CreateSecretsProviderConnectionDto, userId: string, projectRole: SecretsProviderAccessRole, userRole?: string): Promise<SecretsProviderConnection>; updateProjectConnection(providerKey: string, updates: { type?: string; settings?: IDataObject; isEnabled?: boolean; }, userId: string, userRole?: string): Promise<SecretsProviderConnection>; updateGlobalConnection(providerKey: string, updates: { type?: string; projectIds?: string[]; settings?: IDataObject; isEnabled?: boolean; }, userId: string, userRole?: string): Promise<SecretsProviderConnection>; private applyConnectionUpdates; private syncAndEmitUpdate; deleteConnection(providerKey: string, userId: string, userRole?: string): Promise<SecretsProviderConnection>; private findConnectionOrFail; getConnection(providerKey: string): Promise<SecretsProviderConnection>; listConnections(): Promise<SecretsProviderConnection[]>; getGlobalCompletions(): Promise<SecretsProviderConnection[]>; getProjectCompletions(projectId: string): Promise<SecretsProviderConnection[]>; listConnectionsForProject(projectId: string): Promise<SecretsProviderConnection[]>; toSecretCompletionsResponse(connections: SecretsProviderConnection[]): SecretCompletionsResponse; toPublicConnectionListItem(connection: SecretsProviderConnection): SecretProviderConnectionListItem; toPublicConnection(connection: SecretsProviderConnection): Promise<SecretProviderConnection>; testConnection(providerKey: string, userId: string, userRole?: string): Promise<TestSecretProviderConnectionResponse>; reloadConnectionSecrets(providerKey: string, userId: string, userRole?: string): Promise<ReloadSecretProviderConnectionResponse>; private extractProjectInfo; cleanupConnectionsForProjectDeletion(projectId: string): Promise<void>; private encryptConnectionSettings; getConnectionForProject(providerKey: string, projectId: string): Promise<SecretsProviderConnection>; getConnectionAccessibleFromProject(providerKey: string, projectId: string): Promise<SecretsProviderConnection>; deleteConnectionForProject(providerKey: string, projectId: string): Promise<SecretsProviderConnection>; private decryptConnectionSettings; }