UNPKG

n8n

Version:

n8n Workflow Automation Tool

28 lines (27 loc) 947 B
import { type Class, ErrorReporter } from 'n8n-core'; import { Logger } from 'n8n-core'; import { UnexpectedError } from 'n8n-workflow'; type HandlerFn = () => Promise<void> | void; export type ServiceClass = Class<Record<string, HandlerFn>>; export interface ShutdownHandler { serviceClass: ServiceClass; methodName: string; } export declare class ComponentShutdownError extends UnexpectedError { constructor(componentName: string, cause: Error); } export declare class ShutdownService { private readonly logger; private readonly errorReporter; private readonly handlersByPriority; private shutdownPromise; constructor(logger: Logger, errorReporter: ErrorReporter); register(priority: number, handler: ShutdownHandler): void; validate(): void; shutdown(): void; waitForShutdown(): Promise<void>; isShuttingDown(): boolean; private startShutdown; private shutdownComponent; } export {};