12 lines
354 B
TypeScript
12 lines
354 B
TypeScript
![]() |
/* eslint-disable @typescript-eslint/no-explicit-any */
|
||
|
|
||
|
type GetSSRResult<TProps> =
|
||
|
//
|
||
|
{ props: TProps } | { redirect: any } | { notFound: true };
|
||
|
|
||
|
type GetSSRFn<TProps> = (...args: any[]) => Promise<GetSSRResult<TProps>>;
|
||
|
|
||
|
export type inferSSRProps<TFn extends GetSSRFn<any>> = TFn extends GetSSRFn<infer TProps>
|
||
|
? NonNullable<TProps>
|
||
|
: never;
|