Skip to content

Commit 1e7d195

Browse files
committed
fix: internal validation for GetKeyspaceOptions
1 parent d8cbba6 commit 1e7d195

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

packages/shared/src/couchbase/clusterTypes/cluster.types.ts

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -96,15 +96,22 @@ export type GetKeyspaceOptions<
9696
> =
9797
IsDefaultClusterTypes<T> extends true ?
9898
DefaultKeyspaceOptions :
99-
// { Options: T['@options'] } :
10099
T['@options'] extends infer ClusterOptions ?
101100
B extends keyof T ?
102-
Extract<T[B], OptionsDefinition>['@options'] extends infer BucketOptions ?
103-
S extends keyof T[B] ?
104-
Extract<T[B][S], OptionsDefinition>['@options'] extends infer ScopeOptions ?
105-
C extends keyof T[B][S] ?
106-
Extract<T[B][S][C], ClusterTypesOptions> extends infer CollectionOptions ?
107-
MergeOptions<[DefaultKeyspaceOptions, ClusterOptions, BucketOptions, ScopeOptions, CollectionOptions]> :
101+
Extract<T[B], OptionsDefinition> extends infer TB ?
102+
'@options' extends keyof TB ?
103+
TB['@options'] extends infer BucketOptions ?
104+
S extends keyof T[B] ?
105+
Extract<T[B][S], OptionsDefinition> extends infer TBS ?
106+
'@options' extends keyof TBS ?
107+
Extract<T[B][S], OptionsDefinition>['@options'] extends infer ScopeOptions ?
108+
C extends keyof T[B][S] ?
109+
Extract<T[B][S][C], ClusterTypesOptions> extends infer CollectionOptions ?
110+
MergeOptions<[DefaultKeyspaceOptions, ClusterOptions, BucketOptions, ScopeOptions, CollectionOptions]> :
111+
never :
112+
never :
113+
never :
114+
never :
108115
never :
109116
never :
110117
never :

0 commit comments

Comments
 (0)