import { ModuleMetadata, Type } from '@nestjs/common/interfaces'; export interface RedisLockOptions { clientName?: string; prefix?: string; } export interface RedisLockOptionsFactory { createRedisLockOptions(): Promise | RedisLockOptions; } export interface RedisLockAsyncOptions extends Pick { useExisting?: Type; useClass?: Type; useFactory?: (...args: any[]) => Promise | RedisLockOptions; inject?: any[]; }