There are a couple ways of doing baked shadows that you can use with three.js:
An AO map can be embedded in the model in formats like glTF (see https://github.com/KhronosGroup/glTF-Blender-IO), which three.js can load via THREE.GLTFLoader
. I'm not aware of a way to export the lightmap as part of your model, so you'd probably need to load it separately via THREE.TextureLoader
.
In either case, the material can be modified independently of the AO or lightmap.
Finally, you could also bake the shadows directly into a base color texture, but then you lose the option of modifying the material in three.js.