n8n
Version:
n8n Workflow Automation Tool
26 lines (25 loc) • 1.2 kB
TypeScript
import type { Logger } from '@n8n/backend-common';
import type { GlobalConfig } from '@n8n/config';
import type { ErrorReporter, InstanceSettings } from 'n8n-core';
import type { Publisher } from '../scaling/pubsub/publisher.service';
import type { RedisClientService } from '../services/redis-client.service';
import type { MultiMainStrategy } from './multi-main-setup.types';
type EmitFn = (event: 'leader-takeover' | 'leader-stepdown') => void;
export declare class MultiMainSetupLegacy implements MultiMainStrategy {
private readonly logger;
private readonly instanceSettings;
private readonly publisher;
private readonly redisClientService;
private readonly globalConfig;
private readonly errorReporter;
private readonly emit;
private leaderKey;
private readonly leaderKeyTtl;
constructor(logger: Logger, instanceSettings: InstanceSettings, publisher: Publisher, redisClientService: RedisClientService, globalConfig: GlobalConfig, errorReporter: ErrorReporter, emit: EmitFn);
init(): Promise<void>;
shutdown(): Promise<void>;
checkLeader(): Promise<void>;
private tryBecomeLeader;
fetchLeaderKey(): Promise<string | null>;
}
export {};