Skip to content

Commit c97bb84

Browse files
authoredOct 3, 2024··
fix(types): infer the first generic type of Ref correctly (#12094)
1 parent 57315ab commit c97bb84

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed
 

‎packages/reactivity/src/reactive.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ export type DeepReadonly<T> = T extends Builtin
167167
? WeakSet<DeepReadonly<U>>
168168
: T extends Promise<infer U>
169169
? Promise<DeepReadonly<U>>
170-
: T extends Ref<infer U>
170+
: T extends Ref<infer U, unknown>
171171
? Readonly<Ref<DeepReadonly<U>>>
172172
: T extends {}
173173
? { readonly [K in keyof T]: DeepReadonly<T[K]> }

‎packages/reactivity/src/ref.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -489,12 +489,12 @@ export type ShallowUnwrapRef<T> = {
489489
[K in keyof T]: DistributeRef<T[K]>
490490
}
491491

492-
type DistributeRef<T> = T extends Ref<infer V> ? V : T
492+
type DistributeRef<T> = T extends Ref<infer V, unknown> ? V : T
493493

494494
export type UnwrapRef<T> =
495-
T extends ShallowRef<infer V, infer _>
495+
T extends ShallowRef<infer V, unknown>
496496
? V
497-
: T extends Ref<infer V, infer _>
497+
: T extends Ref<infer V, unknown>
498498
? UnwrapRefSimple<V>
499499
: UnwrapRefSimple<T>
500500

0 commit comments

Comments
 (0)
Please sign in to comment.