import type { DataTableProxyProvider, IExecutionContext, IWorkflowSettings, Result } from 'n8n-workflow'; import type { LookupFunction } from 'node:net'; import type { ExecutionLifecycleHooks } from './execution-lifecycle-hooks'; import type { ExternalSecretsProxy } from './external-secrets-proxy'; export type SsrfCheckResult = Result; export interface SsrfBridge { validateIp(ip: string): SsrfCheckResult; validateUrl(url: string | URL): Promise; validateRedirectSync(url: string): void; createSecureLookup(): LookupFunction; } declare module 'n8n-workflow' { interface IWorkflowExecuteAdditionalData { hooks?: ExecutionLifecycleHooks; externalSecretsProxy: ExternalSecretsProxy; externalSecretProviderKeysAccessibleByCredential?: Set; ssrfBridge?: SsrfBridge; 'data-table'?: { dataTableProxyProvider: DataTableProxyProvider; }; dataTableProjectId?: string; executionContext?: IExecutionContext; workflowSettings?: IWorkflowSettings; } } export * from './active-workflows'; export type * from './interfaces'; export * from './routing-node'; export * from './node-execution-context'; export * from './partial-execution-utils'; export * from './node-execution-context/utils/execution-metadata'; export * from './workflow-execute'; export * from './execution-context-hook-registry.service'; export { ExecutionLifecycleHooks } from './execution-lifecycle-hooks'; export { ExternalSecretsProxy, type IExternalSecretsManager } from './external-secrets-proxy'; export { isEngineRequest } from './requests-response';