How to download assets during gameplay on mobile, then delete from device after?

Here’s how the end result should look like:

Player downloads a small file of a game that opens to gameplay, and the player walks into a trigger for a quickplay mode. A random level is downloaded to play from a list of levels, then is removed from the list. Once the level is cleared, it’s deleted from the device, and a new one is downloaded at random. Once all worlds in the list have been cleared, all levels are re-added to the list to be played in a new random order. The player can always access their stats to see which worlds they have cleared, as well as how many times they’ve cleared them, with unplayed worlds remaining hidden in the game stats menu until they have been cleared. Post launch, new levels will continuously be created and added to player’s lists of unplayed levels.

That’s the base of what I’m creating. This will be done in a Paper 2D game on mobile. Any resources and explanations on how to build this would be great. I’ve read on importing .pak files and building a list that sorts in random, but ultimately decided reaching out to this community would be most beneficial to executing this in the best way possible.

Appreciate any help you can provide, thanks!