StaticMesh from generated geometry


For my game, I have been using ProcuduralMeshComponent (PMC) as a visual representation of the game world, but I don’t see it to be fitting for what I desire right now, so actually I rather would use a StaticMeshComponent (SMC).
My game generates a terrain mesh, imagine it like Civilization. It is intended to be about several thousand tiles per map; and to accomodate for various tile terrain types (mountain, swamp, desert etc.) I will use multiple (10+) different materials. For the last part I would think that multiple UV channels would be the way to go, but PMC does not support this. Setting up a master material that displays the right material based off vertex color, including seamless transitions between different materials, seemed like a ginormous absurdity.
Also, the mesh is actually not modified after generation, so I don’t really see the point in using PMC over SMC except for I know how to do it.
To enable seamless geometry, I also prefer to not create thousands individual (predefined) meshes, but rather one/few meshes, splitting only where appropriate.

Unfortunately, I did not find any helpful information on how to create SMP from generated geometry in C++ code.
Browsing though the code, I only discovered three methods for building from (Static)MeshDescription. So I am wondering , is this he functionality I should be using?

Also, I am unsure of what MeshSections are supposed to be used for: Is it advisable to store different meshes (e.g. I could create a separate mesh for each continent) and their respective LODs in the same StaticMesh as different sections? Or is it better to use MeshSections for one mesh with its LODs only?

A less important, last question on the side, is there any reasonable limit on PMC sections? Meaning, is there some point (not talking about uint32 limits or like that) where it would make sense to split, e.g. a 2,000 sections containing PMC into two 1,000 section PMCs?

Thanks for your help!