How to add gradient color to global light 2D

Currently 2D global lights allow to pick only one color, I’d like to retain all of the light’s functionalities but instead of having one color, I’d like to use gradients (of 2 or 3 colors).

Should I extend the Light2D class or should I use Shader Graph to modify the 2D light texture (my attempts with the latter didn’t really work) ?

A simple way to achieve a similar effect is to use sprite lights with gradients.
Set up 2 2D sprite lights: one with a white to black gradient, the other with a black to white gradient. Then set different colors for each light. Finally scale up the 2 lights to cover the entire scene