Skip to content

Commit 271e1aa

Browse files
fix: types for async generators (#5366)
1 parent 0d3bba8 commit 271e1aa

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

packages/router-core/src/ssr/serializer/transformer.ts

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,20 @@ export type ValidateSerializable<T, TSerializable> =
7575
? ValidateSerializableSet<T, TSerializable>
7676
: T extends Map<any, any>
7777
? ValidateSerializableMap<T, TSerializable>
78-
: { [K in keyof T]: ValidateSerializable<T[K], TSerializable> }
78+
: T extends AsyncGenerator<any, any>
79+
? ValidateSerializableAsyncGenerator<T, TSerializable>
80+
: {
81+
[K in keyof T]: ValidateSerializable<T[K], TSerializable>
82+
}
83+
84+
export type ValidateSerializableAsyncGenerator<T, TSerializable> =
85+
T extends AsyncGenerator<infer T, infer TReturn, infer TNext>
86+
? AsyncGenerator<
87+
ValidateSerializable<T, TSerializable>,
88+
ValidateSerializable<TReturn, TSerializable>,
89+
TNext
90+
>
91+
: never
7992

8093
export type ValidateSerializablePromise<T, TSerializable> =
8194
T extends Promise<infer TAwaited>

0 commit comments

Comments
 (0)