Being honest, your requirements seem at odds with the Internal FileType. Unless you plan to repackage all of your users' level packs into the release, you probably want to look at using the local or external type (and then download level packs or allow the user to download and place them into the right spot). The directory operations should work just fine on local and external files (even on Android).
At that point you can decide if you expect all items in the levelpacks folder to be subfolders, then you can just list() the levelpacks folder to get them (otherwise you'd have to iterate over them and see if they are directories).
