The StyledBlocks mod adds the missing slabs and stairs for Minecraft stone and glass blocks as well as several new block styles and color variations for many basic material blocks like sandstone and oak planks.
I'm not sure what the confusion is for the slabs/stairs but hopefully this clarifies: with the exception of granite, the standard material slabs and stairs reuse the textures present in the vanilla game (or your resource pack I guess if you're changing it). The granite stairs do use a slightly lighter custom texture because the standard one created very dark edges that did not look right to my eyes. Frankly most of the work in the mod has to do with the ridiculous number of model files you have to create for each slab or stair variation (the code is the same and is almost 100% vanilla standard code). These model files all refer to the single shared vanilla texture.
For non-standard materials like smooth or polished sandstone (by 'smooth' I mean completely flat with no chiseled highlights), the slabs and stairs share the same texture as the custom style block of the same material. Your resource pack could just use the textures that come with the mod or replace them if you want, but you don't have to.
Wrt to coding, I don't quite follow the question, but the mod already leverages (where possible), the ability of a single block id to represent up to 16 different visual representations. So for instance, all of the glass slabs are represented by a single underlying block identifier with just the 'variant' being different and presented by that block's state information. This allows the mod to give the player dozens and dozens of visually distinct blocks, without creating nearly that many ids. I believe this "sharing" is what you were referring to; it's already being done where possible (stairs cannot share registry ids like this for instance but they all use the same code or Java class just a unique instance with a unique id).