We should look at [`graphql-scalars`](https://github.com/Urigo/graphql-scalars) for compatibility. And Pothos' concept of Input and Output for scalars. We should also see how Strawberry and Juniper address this. Specifically, we need a way to let users define these bits of a custom scalar: https://github.com/graphql/graphql-js/blob/688ee2f2a2f938e80bcf3808bc435d3d87a3ff3e/src/type/definition.ts#L548-L551