n8n
Version:
n8n Workflow Automation Tool
24 lines (23 loc) • 1.19 kB
TypeScript
import type Redis from 'ioredis';
import type { Cluster } from 'ioredis';
import { Logger } from '../../Logger';
export type RedisClientType = 'subscriber' | 'client' | 'bclient' | 'subscriber(bull)' | 'client(bull)' | 'bclient(bull)' | 'client(cache)' | 'publisher' | 'consumer' | 'producer' | 'list-sender' | 'list-receiver';
export type RedisServiceMessageHandler = ((channel: string, message: string) => void) | ((stream: string, id: string, message: string[]) => void);
declare class RedisServiceBase {
protected readonly logger: Logger;
redisClient: Redis | Cluster | undefined;
isInitialized: boolean;
constructor(logger: Logger);
init(type?: RedisClientType): Promise<void>;
destroy(): Promise<void>;
}
export declare abstract class RedisServiceBaseSender extends RedisServiceBase {
senderId: string;
init(type?: RedisClientType): Promise<void>;
}
export declare abstract class RedisServiceBaseReceiver extends RedisServiceBase {
messageHandlers: Map<string, RedisServiceMessageHandler>;
addMessageHandler(handlerName: string, handler: RedisServiceMessageHandler): void;
removeMessageHandler(handlerName: string): void;
}
export {};