It knows the names of the streets, it knows which ones are one way and which ones are big/small. It will suggest alternative routes and let you add intermediate destinations just by dragging the blue line around.
Basically, it works just like it does in many other large cities around the world.
It is not aware of numbered addresses (house numbers), so if you want to be really exact, then you have to know where something is located on the map and you can click to get directions from or to that precise location (including one side of the street vs the other), but you cannot type in "jalan sudirman nomor 40" or anything like that, because it does not seem to know which numbers are where. (not surprising).
Typing in street names alone works just fine, although I have more success spelling out "jalan" instead of "jl" or "jln".
Perhaps most importantly, I've found the directions to actually be quite good, often matching the turns a taxi driver will take turn for turn (if that says anything)
Here's a random example that shows some alternate routes: http://maps.google.com/maps?f=d&sour...,0.090895&z=14