We can use
type ReturnType<T extends (...args: any[]) => any> = T extends (...args: any[]) => infer R ? R : any;
to get the return type of all our dataloaders.

and give it a name. Then we can do a declare of some sort for a resolver to attach that as context where we use it in the params.