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 50d674b commit 42fcdadCopy full SHA for 42fcdad
src/types.ts
@@ -33,15 +33,18 @@ type TRPCSubscriptionObserver<TValue, TError> = {
33
onComplete: () => void
34
}
35
36
+type ArrayElement<T> = T extends readonly unknown[] ? T[number] : never
37
export type Exact<Shape, T extends Shape> = Shape extends void
38
? void
39
: {
40
[Key in keyof T]: Key extends keyof Shape
41
? T[Key] extends Date
42
? T[Key]
- : T[Key] extends object
43
- ? Exact<Shape[Key], T[Key]>
44
- : T[Key]
+ : T[Key] extends unknown[]
+ ? Array<Exact<ArrayElement<Shape[Key]>, ArrayElement<T[Key]>>>
45
+ : T[Key] extends object
46
+ ? Exact<Shape[Key], T[Key]>
47
+ : T[Key]
48
: never
49
50
0 commit comments