std.variant should offer a constructor that can be used with a void*, TypeInfo pair and thus be compatible with D variadic functions. Its current design relies on a large number of compile-time checks, though, and phobos entirely lacks high-level runtime reflection facilities, so this would be difficult.
By design, Variant cannot support such a feature.