Generate power from motion
I don't understand the "one piece" requirement, but what you need is a motor.

Electric motors have the great power of being capable of converting mechanical (rotational) energy in electricity and vice versa, and with a quite high efficiency.

But if you need to take the energy from a "linear" movement, like from the surface of a tire, you need a gear which takes the rotation from the movement of the tire, like a dinamo. But consider that the energy that you are generating (plus some losses) is taken from the wheel, so you are making an opposing force in your system.

Consider that this kind of harvesting is not the LED's best friend, as it gives a variable voltage and current, and the LED wants them to be quite regular, especially for the limiting circuit specification. That's probably one of the reasons because of many bycicle lights with dinamo use incandescent bulbs.