Yes, you can load each tile from an array, but it will be much easier to load the entire tilemap.
Manually create rooms in a separate project (let's call it Level Editor), and export each room tilemap to a string using Tilemap.TilesJSON expression.
Then in your main game you can quickly restore the entire room from a JSON string using "Tilemap Load" action.
You can store these tilemap strings in a dictionary, array or text files, it's up to you.
.
Another option is to use templates. Simply create all room templates on a separate layout. And in runtime spawn a room by its template name. For example:
Create RoomTilemap from template "big_boss_room"