Andrew Ross
02/02/2022, 1:27 PMtype UnwrapPromise<T> = T extends Promise<infer U> ? U : T;
type SeedInferred = UnwrapPromise<ReturnType<typeof seed>>;
// experimenting
type SeedPropsInferred<U> = UnwrapPromise<
typeof seed extends Record<keyof U, infer U>
? Record<keyof U, U>
: UnwrapPromise<typeof seed>
>;