Mono and true stereo reverb design


I’m making a simple reverb based somehow in the original freeverb design, in which the stereo reverb output is obtained by offset n samples the delay lines of the combs and allpass of one of the reverb output channels. My plugin has this channel config, {1,1}, {1,2}, {2,2}, so I’d like the reverb to work either in mono with one channel input, stereo with one channel input and doing the stereo spread trick, stereo with 2 channel dual mono input and again doing the trick, and finally stereo using the same delay lines in both channels with a control of the stereo image via ms matrix.

My initial guess is to analyze correlation in the inputs and then route internally to the corresponding processing paths, e.g. mono and mono dual to stereo spread / stereo to ms matrix. Would this be a normal approach with this kind of plugin channel config or is there a simpler way to go?

Thank you