UNPKG

n8n

Version:

n8n Workflow Automation Tool

340 lines (339 loc) 9.38 kB
import type { AuthenticationMethod, ProjectRelation } from '@n8n/api-types'; import type { IPersonalizationSurveyAnswersV4, IRun, IWorkflowBase, IWorkflowExecutionDataProcess } from 'n8n-workflow'; import type { ConcurrencyQueueType } from '../../concurrency/concurrency-control.service'; import type { AuthProviderType } from '../../databases/entities/auth-identity'; import type { GlobalRole, User } from '../../databases/entities/user'; import type { IWorkflowDb } from '../../interfaces'; import type { AiEventMap } from './ai.event-map'; export type UserLike = { id: string; email?: string; firstName?: string; lastName?: string; role: string; }; export type RelayEventMap = { 'server-started': {}; 'session-started': { pushRef?: string; }; 'instance-stopped': {}; 'instance-owner-setup': { userId: string; }; 'first-production-workflow-succeeded': { projectId: string; workflowId: string; userId: string; }; 'first-workflow-data-loaded': { userId: string; workflowId: string; nodeType: string; nodeId: string; credentialType?: string; credentialId?: string; }; 'workflow-created': { user: UserLike; workflow: IWorkflowBase; publicApi: boolean; projectId: string; projectType: string; }; 'workflow-deleted': { user: UserLike; workflowId: string; publicApi: boolean; }; 'workflow-saved': { user: UserLike; workflow: IWorkflowDb; publicApi: boolean; }; 'workflow-pre-execute': { executionId: string; data: IWorkflowExecutionDataProcess | IWorkflowBase; }; 'workflow-post-execute': { executionId: string; userId?: string; workflow: IWorkflowBase; runData?: IRun; }; 'workflow-sharing-updated': { workflowId: string; userIdSharer: string; userIdList: string[]; }; 'node-pre-execute': { executionId: string; workflow: IWorkflowBase; nodeName: string; }; 'node-post-execute': { executionId: string; workflow: IWorkflowBase; nodeName: string; }; 'user-submitted-personalization-survey': { userId: string; answers: IPersonalizationSurveyAnswersV4; }; 'user-deleted': { user: UserLike; publicApi: boolean; targetUserOldStatus: 'active' | 'invited'; migrationStrategy?: 'transfer_data' | 'delete_data'; targetUserId?: string; migrationUserId?: string; }; 'user-invited': { user: UserLike; targetUserId: string[]; publicApi: boolean; emailSent: boolean; inviteeRole: string; }; 'user-reinvited': { user: UserLike; targetUserId: string[]; }; 'user-updated': { user: UserLike; fieldsChanged: string[]; }; 'user-signed-up': { user: UserLike; userType: AuthProviderType; wasDisabledLdapUser: boolean; }; 'user-logged-in': { user: UserLike; authenticationMethod: AuthenticationMethod; }; 'user-login-failed': { userEmail: string; authenticationMethod: AuthenticationMethod; reason?: string; }; 'user-changed-role': { userId: string; targetUserId: string; publicApi: boolean; targetUserNewRole: string; }; 'user-retrieved-user': { userId: string; publicApi: boolean; }; 'user-retrieved-all-users': { userId: string; publicApi: boolean; }; 'user-retrieved-execution': { userId: string; publicApi: boolean; }; 'user-retrieved-all-executions': { userId: string; publicApi: boolean; }; 'user-retrieved-workflow': { userId: string; publicApi: boolean; }; 'user-retrieved-all-workflows': { userId: string; publicApi: boolean; }; 'user-invite-email-click': { inviter: UserLike; invitee: UserLike; }; 'user-password-reset-email-click': { user: UserLike; }; 'user-password-reset-request-click': { user: UserLike; }; 'user-transactional-email-sent': { userId: string; messageType: 'Reset password' | 'New user invite' | 'Resend invite' | 'Workflow shared' | 'Credentials shared'; publicApi: boolean; }; 'public-api-key-created': { user: UserLike; publicApi: boolean; }; 'public-api-key-deleted': { user: UserLike; publicApi: boolean; }; 'public-api-invoked': { userId: string; path: string; method: string; apiVersion: string; }; 'email-failed': { user: UserLike; messageType: 'Reset password' | 'New user invite' | 'Resend invite' | 'Workflow shared' | 'Credentials shared'; publicApi: boolean; }; 'credentials-created': { user: UserLike; credentialType: string; credentialId: string; publicApi: boolean; projectId?: string; projectType?: string; }; 'credentials-shared': { user: UserLike; credentialType: string; credentialId: string; userIdSharer: string; userIdsShareesAdded: string[]; shareesRemoved: number | null; }; 'credentials-updated': { user: UserLike; credentialType: string; credentialId: string; }; 'credentials-deleted': { user: UserLike; credentialType: string; credentialId: string; }; 'community-package-installed': { user: UserLike; inputString: string; packageName: string; success: boolean; packageVersion?: string; packageNodeNames?: string[]; packageAuthor?: string; packageAuthorEmail?: string; failureReason?: string; }; 'community-package-updated': { user: UserLike; packageName: string; packageVersionCurrent: string; packageVersionNew: string; packageNodeNames: string[]; packageAuthor?: string; packageAuthorEmail?: string; }; 'community-package-deleted': { user: UserLike; packageName: string; packageVersion: string; packageNodeNames: string[]; packageAuthor?: string; packageAuthorEmail?: string; }; 'execution-throttled': { executionId: string; type: ConcurrencyQueueType; }; 'execution-started-during-bootup': { executionId: string; }; 'team-project-updated': { userId: string; role: GlobalRole; members: ProjectRelation[]; projectId: string; }; 'team-project-deleted': { userId: string; role: GlobalRole; projectId: string; removalType: 'transfer' | 'delete'; targetProjectId?: string; }; 'team-project-created': { userId: string; role: GlobalRole; }; 'source-control-settings-updated': { branchName: string; readOnlyInstance: boolean; repoType: 'github' | 'gitlab' | 'other'; connected: boolean; }; 'source-control-user-started-pull-ui': { userId?: string; workflowUpdates: number; workflowConflicts: number; credConflicts: number; }; 'source-control-user-finished-pull-ui': { userId?: string; workflowUpdates: number; }; 'source-control-user-pulled-api': { workflowUpdates: number; forced: boolean; }; 'source-control-user-started-push-ui': { userId?: string; workflowsEligible: number; workflowsEligibleWithConflicts: number; credsEligible: number; credsEligibleWithConflicts: number; variablesEligible: number; }; 'source-control-user-finished-push-ui': { userId: string; workflowsEligible: number; workflowsPushed: number; credsPushed: number; variablesPushed: number; }; 'license-renewal-attempted': { success: boolean; }; 'license-community-plus-registered': { userId: User['id']; email: string; licenseKey: string; }; 'variable-created': {}; 'external-secrets-provider-settings-saved': { userId?: string; vaultType: string; isValid: boolean; isNew: boolean; errorMessage?: string; }; 'ldap-general-sync-finished': { type: string; succeeded: boolean; usersSynced: number; error: string; }; 'ldap-settings-updated': { userId: string; loginIdAttribute: string; firstNameAttribute: string; lastNameAttribute: string; emailAttribute: string; ldapIdAttribute: string; searchPageSize: number; searchTimeout: number; synchronizationEnabled: boolean; synchronizationInterval: number; loginLabel: string; loginEnabled: boolean; }; 'ldap-login-sync-failed': { error: string; }; 'login-failed-due-to-ldap-disabled': { userId: string; }; } & AiEventMap;