n8n/packages/@n8n/expression-runtime/src/index.ts
Iván Ovejero f3efcf8a54
feat(core): Add observability for the VM expression engine (#28715)
Co-authored-by: Danny Martini <danny@n8n.io>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 14:11:07 +00:00

44 lines
1.3 KiB
TypeScript

// Main exports
export { ExpressionEvaluator } from './evaluator/expression-evaluator';
// Bridge exports — IsolatedVmBridge lazy-loads isolated-vm internally,
// so this value re-export does NOT pull in the native binary at import time.
export { IsolatedVmBridge } from './bridge/isolated-vm-bridge';
// Types
export type {
IExpressionEvaluator,
EvaluatorConfig,
WorkflowData,
EvaluateOptions,
ExecuteOptions,
RuntimeBridge,
BridgeConfig,
Logger,
ObservabilityProvider,
MetricsAPI,
TracesAPI,
Span,
LogsAPI,
} from './types';
// Error types
export {
ExpressionError,
MemoryLimitError,
TimeoutError,
SecurityViolationError,
SyntaxError,
} from './types';
export { IsolateError } from '@n8n/errors';
export { NoOpProvider } from './observability/noop-provider';
export { EXPRESSION_METRICS } from './observability/metrics';
export type { ExpressionMetricDef, ExpressionMetricKey, MetricDef } from './observability/metrics';
export { classifyExpressionError } from './evaluator/error-classification';
export type { ExpressionErrorType } from './evaluator/error-classification';
// Extension runtime exports
export { extend, extendOptional, EXTENSION_OBJECTS } from './extensions/extend';
export { ExpressionExtensionError } from './extensions/expression-extension-error';