Thanks for the answers.
Yes, i'm considering having all the variants on the same tilemap and use index offsets as necessary. Speaking of this, if i have multiple tilesets, each with multiple variants, should i still go with a single large tilemap or use a tilemap for each set + all its variants?
At least for now, the game will show 3x3 rooms on the screen and some of these may use a different tileset. I was thinking of using 9 small tilemaps, even when they all use the same tileset, but with a single large one this would not be needed.
However, tilemaps with multiple tilesets means tiles not currently used are still in memory right? Not that this is a problem but you know, good programming habits... Less wasted memory if i go with one tilemap object for each tileset. I can always change them at runtime using JSON.