add module struct and enums

add module struct and enums