Skip to content

Instantly share code, notes, and snippets.

@fostyfost
Last active September 1, 2021 21:56
Show Gist options
  • Save fostyfost/387eaa433fa1beb9b20409470a2f66c2 to your computer and use it in GitHub Desktop.
Save fostyfost/387eaa433fa1beb9b20409470a2f66c2 to your computer and use it in GitHub Desktop.
Next.js: `InferGetStaticParams` and `InferGetServerSideParams`
export type InferGetStaticPropsQueryType<Fn> = Fn extends GetStaticProps<any, infer Query>
? Query
: Fn extends (
context?: GetStaticPropsContext<infer Query>,
) => Promise<GetStaticPropsResult<any>> | GetStaticPropsResult<any>
? Query
: never
export type InferGetServerSidePropsQueryType<Fn> = Fn extends GetServerSideProps<any, infer Query>
? Query
: Fn extends (context?: GetServerSidePropsContext<infer Query>) => Promise<GetServerSidePropsResult<any>>
? Query
: never
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment