as @qoobit mentioned, it’s 100% possible, Shader Graph just does not yet have support for this. Visual Effect Graph (like Shader Graph, also essentially generates HLSL shader code and some C#) already has Gradient as an exposable type and many other types that shader graph does not support as exposable. Gradient | Visual Effect Graph | 12.0.0
Visual Effect Graph even allows for Custom Property Binders providing an API to extend and map any C# type or struct to the Visual Effect Graph compatible types: Property Binders | Visual Effect Graph | 12.0.0
This divergence is because these graph tools were largely built in isolation from eachother to get them off the ground quickly with vastly different feature scopes, so they have a lot of puzzling differences. Shader Graph’s development was broader and slower: It had many more targets / platforms to support, resulting in longer testing and development iteration, so it’s behind on a lot of nice “quality of life” features that the Visual Effect Graph team was able to develop much faster as they only needed to target HDRP and compute capable platforms during initial development. But these features are not easily transferrable to Shader Graph as they don’t share much in terms of common components and APIs. The framework to unify them to share more common ground is called Graph Tools Foundation and is currently under development. Some features may arrive sooner, but I imagine some may not come until after the Shader Graph front end is ported to use Graph Tools Foundation:
https://docs.unity3d.com/Packages/com.unity.graphtools.foundation@latest/