You will still need models. You may be able to define those models in the blockstate file though (I have no proof of this, and I think it’s unlikely, but MAY be possible).
You should take a look at Forge’s blockstate format. Personally I prefer vanilla because of its simplicity but Forge definitely has more features & potential.
https://mcforge.readthedocs.io/en/latest/models/blockstates/forgeBlockstates/