add more structure to lua api