The enum property is a convenient type of property when it comes to user interface or operator stuff when it comes to providing a set of options, which one might be chosen from, but when it comes to storing arbitrary data, the CollectionProperty is what you want.
Judging from your example
IF that is what your needs are mostly like, then you could store IntVectors in a CollectionProperty, since your mylist example elements are both themselves three integers. If you can expect that the number of the length of the list of the integers will always be three, then the default IntVector should store them fine (up to 32 ints or floats per vector).
However, if three ints per mylist element is merely coincidental, maybe you need to be storing collections of collections of ints, not just collections of IntVectors. A custom class foo descended from bpy.types.PropertyGroup, with the properties you want to store PER element, and then a bpy.props.CollectionProperty(type=foo) which you treat somewhat like it is a list( except with special method for adding things to the list). you would register the foo class with blender, then bpy.types.Scene.foos = bpy.props.CollectionProperty(type=foo). to add to the list, bpy.context.scene.foos.add() or n = bpy.context.scene.foos.add()