@@ -4,12 +4,15 @@ import {
44 RedisScripts ,
55 RespVersions ,
66 TypeMapping ,
7- createClient as _createClient ,
7+ createClient as genericCreateClient ,
88 RedisClientOptions ,
9- RedisClientType as _RedisClientType ,
10- createCluster as _createCluster ,
9+ RedisClientType as GenericRedisClientType ,
10+ createCluster as genericCreateCluster ,
1111 RedisClusterOptions ,
12- RedisClusterType as _RedisClusterType ,
12+ RedisClusterType as genericRedisClusterType ,
13+ RedisSentinelOptions ,
14+ RedisSentinelType as genericRedisSentinelType ,
15+ createSentinel as genericCreateSentinel
1316} from '@redis/client' ;
1417import RedisBloomModules from '@redis/bloom' ;
1518import RedisGraph from '@redis/graph' ;
@@ -40,7 +43,7 @@ export type RedisClientType<
4043 S extends RedisScripts = { } ,
4144 RESP extends RespVersions = 2 ,
4245 TYPE_MAPPING extends TypeMapping = { }
43- > = _RedisClientType < M , F , S , RESP , TYPE_MAPPING > ;
46+ > = GenericRedisClientType < M , F , S , RESP , TYPE_MAPPING > ;
4447
4548export function createClient <
4649 M extends RedisModules ,
@@ -50,8 +53,8 @@ export function createClient<
5053 TYPE_MAPPING extends TypeMapping
5154> (
5255 options ?: RedisClientOptions < M , F , S , RESP , TYPE_MAPPING >
53- ) : _RedisClientType < RedisDefaultModules & M , F , S , RESP , TYPE_MAPPING > {
54- return _createClient ( {
56+ ) : GenericRedisClientType < RedisDefaultModules & M , F , S , RESP , TYPE_MAPPING > {
57+ return genericCreateClient ( {
5558 ...options ,
5659 modules : {
5760 ...modules ,
@@ -66,7 +69,7 @@ export type RedisClusterType<
6669 S extends RedisScripts = { } ,
6770 RESP extends RespVersions = 2 ,
6871 TYPE_MAPPING extends TypeMapping = { }
69- > = _RedisClusterType < M , F , S , RESP , TYPE_MAPPING > ;
72+ > = genericRedisClusterType < M , F , S , RESP , TYPE_MAPPING > ;
7073
7174export function createCluster <
7275 M extends RedisModules ,
@@ -77,7 +80,33 @@ export function createCluster<
7780> (
7881 options : RedisClusterOptions < M , F , S , RESP , TYPE_MAPPING >
7982) : RedisClusterType < RedisDefaultModules & M , F , S , RESP , TYPE_MAPPING > {
80- return _createCluster ( {
83+ return genericCreateCluster ( {
84+ ...options ,
85+ modules : {
86+ ...modules ,
87+ ...( options ?. modules as M )
88+ }
89+ } ) ;
90+ }
91+
92+ export type RedisSentinelType <
93+ M extends RedisModules = RedisDefaultModules ,
94+ F extends RedisFunctions = { } ,
95+ S extends RedisScripts = { } ,
96+ RESP extends RespVersions = 2 ,
97+ TYPE_MAPPING extends TypeMapping = { }
98+ > = genericRedisSentinelType < M , F , S , RESP , TYPE_MAPPING > ;
99+
100+ export function createSentinel <
101+ M extends RedisModules ,
102+ F extends RedisFunctions ,
103+ S extends RedisScripts ,
104+ RESP extends RespVersions ,
105+ TYPE_MAPPING extends TypeMapping
106+ > (
107+ options : RedisSentinelOptions < M , F , S , RESP , TYPE_MAPPING >
108+ ) : RedisSentinelType < RedisDefaultModules & M , F , S , RESP , TYPE_MAPPING > {
109+ return genericCreateSentinel ( {
81110 ...options ,
82111 modules : {
83112 ...modules ,
0 commit comments