Moved types to their own module