I'll answer my own question. After playing on for a bit (up to level 131 now) it seems that the levels just go through a fairly repetitive cycle. Four out of every five levels can be completed using logical deduction only to find the way through to the exit (you don't need to guess or use pick axes/dynamite/maps). Then every fifth level (i.e. where the level number is a multiple of 5) has so many traps that you'll need to use some of your axes/dynamite/maps to get through unscathed. So long as you don't waste what you pick up in the intervening four levels, you have more than enough to keep going indefinitely (I typically use 5/6 dynamites and 1/2 maps in the tricky levels).
In the multiples of 5 levels, there are treasure chests which worth vastly more than all the other treasure, making it relatively pointless to waste dynamite on other levels getting at the much less valuable treasure.
I've also noticed that while you can stockpile shields, it doesn't seem to let you keep more than 3 "lives" even though you can pick up quite a few more as you progress through the levels.
Basically I think the game goes on indefinitely, with a repeating sequence of 10 levels, each having similar characteristics to the one 10 levels before, but differing slightly in the placement of walls, treasure, traps etc.
Update: I'm at level 500 now, the pattern is repeating predictably:
Update 2: Once your score goes above 2147483648 (2^31) it starts to go back down as you collect more treasure - clearly the score is held as a 32 bit signed integer. The score is shown with a leading 0 rather than a minus sign.