We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent a8d0b1b commit 18b3c56Copy full SHA for 18b3c56
packages/reactivity/src/ref.ts
@@ -476,14 +476,15 @@ type BaseTypes = string | number | boolean
476
*/
477
export interface RefUnwrapBailTypes {}
478
479
+type DistrubuteRef<T> = T extends Ref<infer V>
480
+ ? unknown extends V
481
+ ? never
482
+ : V
483
+ : T
484
export type ShallowUnwrapRef<T> = {
485
[K in keyof T]: T[K] extends Ref<infer V>
486
? V // if `V` is `unknown` that means it does not extend `Ref` and is undefined
- : T[K] extends Ref<infer V> | undefined
- ? unknown extends V
- ? undefined
- : V | undefined
- : T[K]
487
+ : DistrubuteRef<T[K]>
488
}
489
490
export type UnwrapRef<T> = T extends ShallowRef<infer V>
0 commit comments