UNPKG

n8n

Version:

n8n Workflow Automation Tool

26 lines (25 loc) 1.08 kB
import type { LeaderElectionClient } from '../scaling/leader-election-client'; import type { Logger } from '@n8n/backend-common'; import type { ErrorReporter, InstanceSettings } from 'n8n-core'; import type { MultiMainStrategy } from './multi-main-setup.types'; type EmitFn = (event: 'leader-takeover' | 'leader-stepdown') => void; export declare class MultiMainSetupV2 implements MultiMainStrategy { private readonly logger; private readonly instanceSettings; private readonly errorReporter; private readonly client; private readonly emit; private leaderCheckInProgress; private get hostId(); constructor(logger: Logger, instanceSettings: InstanceSettings, errorReporter: ErrorReporter, client: LeaderElectionClient, emit: EmitFn); init(): Promise<void>; shutdown(): Promise<void>; checkLeader(): Promise<void>; private checkAreWeStillLeader; private checkCanBecomeLeader; private takeOverAsLeader; private stepDownToFollower; fetchLeaderKey(): Promise<string | null>; private logRedisCommandFailure; } export {};