UNPKG

@ezgdev/nest-ioredis

Version:
26 lines (25 loc) 946 B
import { ModuleMetadata, Type } from '@nestjs/common/interfaces'; import { ClusterNode, ClusterOptions, RedisOptions } from 'ioredis'; export interface RedisSingleOptions { type: 'single'; url?: string; options?: RedisOptions; } export interface RedisClusterOptions { type: 'cluster'; nodes: ClusterNode[]; options?: ClusterOptions; } export type RedisModuleOptions = (RedisSingleOptions | RedisClusterOptions) & { onConnectionError?: (error: Error) => void; onConnectionReady?: () => void; }; export interface RedisModuleOptionsFactory { createRedisModuleOptions(): Promise<RedisModuleOptions> | RedisModuleOptions; } export interface RedisModuleAsyncOptions extends Pick<ModuleMetadata, 'imports'> { inject?: any[]; useClass?: Type<RedisModuleOptionsFactory>; useExisting?: Type<RedisModuleOptionsFactory>; useFactory?: (...args: any[]) => Promise<RedisModuleOptions> | RedisModuleOptions; }