import { Logger } from '@n8n/backend-common';
import type { WorkflowExecuteBeforeContext, WorkflowExecuteAfterContext, NodeExecuteBeforeContext, NodeExecuteAfterContext } from '@n8n/decorators';
import { NodeEndHandler } from './handlers/node-end.handler';
import { NodeStartHandler } from './handlers/node-start.handler';
import { WorkflowEndHandler } from './handlers/workflow-end.handler';
import { WorkflowStartHandler } from './handlers/workflow-start.handler';
import { OtelConfig } from './otel.config';
export declare class N8nInstrumentation {
    private readonly config;
    private readonly logger;
    private readonly spans;
    private readonly tracer;
    private readonly lifecycleDispatchers;
    private readonly loggedFailureEvents;
    constructor(workflowStartHandler: WorkflowStartHandler, workflowEndHandler: WorkflowEndHandler, nodeStartHandler: NodeStartHandler, nodeEndHandler: NodeEndHandler, config: OtelConfig, logger: Logger);
    onWorkflowStart(ctx: WorkflowExecuteBeforeContext): void;
    onWorkflowEnd(ctx: WorkflowExecuteAfterContext): void;
    onNodeStart(ctx: NodeExecuteBeforeContext): void;
    onNodeEnd(ctx: NodeExecuteAfterContext): void;
    private executeLifecycleHandler;
}
