There is an example.
These variants work exactly how vanilla LilyPad works. You will get a random model on each placement of the block.
This has nothing to do with rotation of blocks like logs and similar.
custom_variants:
variant1:
model: "minecraft:block/end_stone_bricks"
y: 90
variant2:
model: "minecraft:block/end_stone_bricks"
y: 180
x: 90
variant3:
model: "minecraft:block/diamond_block"
uvlock: true
variant4:
model: "minecraft:block/cobblestone"
If you want directional blocks you can try this unofficial addon (I didn't make it so I don't know if it works nor I have control over it).
But keep in mind that I didn't implement directional blocks because they have some limitations and they lower down the amount of usable blocks of a lot, remember that custom blocks are limited (check the wiki for the amounts).
https://www.spigotmc.org/resources/directionalblock-itemsadder-addon.104485/