CR123A and 16340 are very different batteries.
CR123A has a 3 Volt voltage without load, which will sag (drop) considerably under load, due to their high internal resistance.
So if you want to us it to power an LED up to, let’s say 2 Watts, the voltage will drop below the needed voltage for the LED to draw the needed 0.7 Ampere.
So you need a boost driver for a single CR123A light.

A 16340 is like other Li-Ion batteries, it ranges from 4.2 down to 3 Volts, and it doesn’t need a boost driver to push current through the LED, because it has much lower internal resistance and thus much less voltage sag.
They can push more current too.

Maybe this is why some CR123A / 16340 lights are relatively expensive, because you need a boost driver for a CR123A and a buck or linear driver for a 16340, so they put in a complicated buck/boost or linear/boost driver, which can do both.
Low Voltage Protection is a bit of a problem though, because a CR123A will definitely drop under 2.5 Volts (which would be the absolute minimum to safely use a 16340) under maximum load and towards the end of it’s life (charge).
I guess that’s why many of those lights come with a protected 16340, often with USB charging port.
The charging / protection board also keeps recharge current lower than a regular 18650 charger would.