Adapt type based on filled optional parameter - Theo's Typesafe Cult